aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MANIFEST.in108
-rwxr-xr-xbin/genenetwork218
-rwxr-xr-xbin/mechnical-rob111
-rw-r--r--doc/elasticsearch.org41
-rw-r--r--etc/VERSION2
-rw-r--r--etc/nginx-genenetwork.conf54
-rwxr-xr-xscripts/maintenance/QTL_Reaper_v6.py108
-rw-r--r--scripts/maintenance/README.txt66
-rw-r--r--scripts/maintenance/Update_Case_Attributes_MySQL_tab.py27
-rwxr-xr-xscripts/maintenance/delete_genotypes.py33
-rwxr-xr-xscripts/maintenance/delete_phenotypes.py35
-rwxr-xr-xscripts/maintenance/load_genotypes.py154
-rwxr-xr-xscripts/maintenance/load_phenotypes.py171
-rwxr-xr-xscripts/maintenance/readProbeSetMean_v7.py274
-rwxr-xr-xscripts/maintenance/readProbeSetSE_v7.py254
-rw-r--r--test/lib/gntest.rb6
-rw-r--r--test/lib/link_checker.rb50
-rw-r--r--test/lib/main_web_functionality.rb62
-rw-r--r--test/lib/mapping.rb58
-rw-r--r--test/lib/navigation.rb43
-rw-r--r--wqflask/other_config/dot.pylintrc249
-rw-r--r--wqflask/other_config/nginx-old.conf108
-rw-r--r--wqflask/other_config/nginx_conf/gn2-lei.conf41
-rw-r--r--wqflask/other_config/nginx_conf/gn2-zach.conf52
-rw-r--r--wqflask/other_config/nginx_conf/gn2.conf41
-rw-r--r--wqflask/other_config/nginx_conf/gn2_sam.conf42
-rw-r--r--wqflask/other_config/nginx_conf/penguin.conf44
-rw-r--r--wqflask/other_config/pylintrc264
-rw-r--r--wqflask/utility/elasticsearch_tools.py9
-rw-r--r--wqflask/wqflask/collect.py1
-rw-r--r--wqflask/wqflask/correlation/show_corr_results.py43
-rw-r--r--wqflask/wqflask/do_search.py1
-rw-r--r--wqflask/wqflask/static/dbdoc/TODO.md1
-rw-r--r--wqflask/wqflask/static/new/javascript/plotly_probability_plot.js246
-rw-r--r--wqflask/wqflask/static/new/javascript/show_trait.js176
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/CHANGES.md671
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/LICENSE.md1264
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/README.md39
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/adapters/jquery.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/build-config.js179
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/ckeditor.js1013
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/config.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/contents.css134
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/af.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ar.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/bg.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/bn.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/bs.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ca.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/cs.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/cy.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/da.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/de.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/el.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/en-au.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/en-ca.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/en-gb.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/en.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/eo.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/es.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/et.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/eu.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/fa.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/fi.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/fo.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/fr-ca.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/fr.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/gl.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/gu.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/he.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/hi.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/hr.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/hu.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/id.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/is.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/it.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ja.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ka.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/km.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ko.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ku.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/lt.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/lv.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/mk.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/mn.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ms.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/nb.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/nl.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/no.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/pl.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/pt-br.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/pt.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ro.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ru.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/si.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sk.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sl.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sq.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sr-latn.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sr.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/sv.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/th.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/tr.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/tt.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/ug.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/uk.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/vi.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/zh-cn.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/lang/zh.js5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt25
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/da.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/de.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/el.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/es.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/et.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/he.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/id.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/it.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/km.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/no.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/si.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/th.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/about.js7
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.pngbin13339 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/logo_ckeditor.pngbin6757 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/dialogs/paste.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/dialogs/colordialog.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/dialog/dialogDefinition.js4
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/div/dialogs/div.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/find/dialogs/find.js24
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/flash/dialogs/flash.js24
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/flash/images/placeholder.pngbin256 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/button.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/checkbox.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/form.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/hiddenfield.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/radio.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/select.js20
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textarea.js8
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textfield.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/forms/images/hiddenfield.gifbin105 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/icons.pngbin20833 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/icons_hidpi.pngbin67753 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/iframe/dialogs/iframe.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/iframe/images/placeholder.pngbin265 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/image/dialogs/image.js43
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/image/images/noimage.pngbin2115 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/anchor.js7
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/link.js26
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/link/images/anchor.pngbin589 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/link/images/hidpi/anchor.pngbin1379 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/dialogs/liststyle.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon-rtl.pngbin176 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon.pngbin199 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon-rtl.pngbin138 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon.pngbin133 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/images/pagebreak.gifbin54 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/filter/default.js31
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/preview/preview.html13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/scayt/LICENSE.md28
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/scayt/README.md25
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/options.js17
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/toolbar.css71
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_address.pngbin152 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_blockquote.pngbin154 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_div.pngbin127 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h1.pngbin120 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h2.pngbin127 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h3.pngbin123 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h4.pngbin123 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h5.pngbin126 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h6.pngbin123 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_p.pngbin115 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_pre.pngbin128 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/dialogs/smiley.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.gifbin1245 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.pngbin1172 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.gifbin1219 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.pngbin1220 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.gifbin732 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.pngbin1139 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.gifbin1202 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.pngbin1101 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.gifbin795 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.pngbin1214 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.gifbin1239 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.pngbin1220 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embaressed_smile.gifbin786 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.gifbin786 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.pngbin1145 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.gifbin506 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.pngbin760 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.gifbin692 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.pngbin999 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.gifbin683 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.pngbin1003 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.gifbin660 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.pngbin919 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.gifbin820 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.pngbin1122 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.gifbin1209 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.pngbin1084 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.gifbin782 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.pngbin1115 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.gifbin1231 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.pngbin1204 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.gifbin1201 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.pngbin1183 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.gifbin715 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.pngbin985 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.gifbin714 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.pngbin959 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.gifbin1210 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.pngbin1132 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tounge_smile.gifbin1210 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gifbin775 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.pngbin1039 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.gifbin1202 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.pngbin1114 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt20
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ar.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/bg.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ca.js14
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cs.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cy.js14
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/de.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/el.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/eo.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/es.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/et.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fa.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fi.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/gl.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/he.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hr.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hu.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/id.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/it.js14
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ja.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/km.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ku.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/lv.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nb.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nl.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/no.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pl.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ru.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/si.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sk.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sl.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sq.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sv.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/th.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tr.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tt.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ug.js13
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/uk.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/vi.js14
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js9
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh.js12
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/specialchar.js14
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/table/dialogs/table.js21
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/dialogs/tableCell.js17
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.css84
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.js10
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/default.js6
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template1.gifbin375 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template2.gifbin333 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template3.gifbin422 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/LICENSE.md28
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/README.md25
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/ciframe.html66
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/tmpFrameset.html52
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.css82
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.js74
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc_ie.js11
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/ajax.html82
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/api.html207
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/appendto.html56
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/assets/inlineall/logo.pngbin4283 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/assets/outputxhtml/outputxhtml.css204
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/assets/posteddata.php59
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/assets/sample.jpgbin14449 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/assets/uilanguages/languages.js7
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/datafiltering.html401
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/divreplace.html141
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/index.html128
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/inlineall.html311
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/inlinebycode.html121
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/inlinetextarea.html110
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/jquery.html100
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/assets/my_dialog.js48
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/dialog.html187
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/enterkey/enterkey.html103
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.flabin85504 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swfbin15571 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js18
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputforflash.html280
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputhtml.html221
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/magicline/magicline.html206
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/toolbar/toolbar.html232
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/plugins/wysiwygarea/fullpage.html77
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/readonly.html73
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/replacebyclass.html57
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/replacebycode.html56
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/sample.css365
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/sample.js50
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/sample_posteddata.php16
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/tabindex.html75
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/uicolor.html69
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/uilanguages.html119
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/samples/xhtmlstyle.html231
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie7.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie8.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_iequirks.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_gecko.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie7.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie8.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_iequirks.css5
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/icons.pngbin20833 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/icons_hidpi.pngbin67753 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/arrow.pngbin191 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/close.pngbin468 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/close.pngbin1271 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock-open.pngbin1329 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock.pngbin1299 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/refresh.pngbin1842 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock-open.pngbin349 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock.pngbin475 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/images/refresh.pngbin422 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/skins/moono/readme.md51
-rw-r--r--wqflask/wqflask/static/packages/ckeditor/styles.js111
-rw-r--r--wqflask/wqflask/static/packages/jqplot/MIT-LICENSE.txt21
-rw-r--r--wqflask/wqflask/static/packages/jqplot/README.txt77
-rw-r--r--wqflask/wqflask/static/packages/jqplot/additional-methods.js437
-rw-r--r--wqflask/wqflask/static/packages/jqplot/additional-methods.min.js4
-rw-r--r--wqflask/wqflask/static/packages/jqplot/changes.txt395
-rw-r--r--wqflask/wqflask/static/packages/jqplot/copyright.txt56
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/MIT-LICENSE-txt.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/changes-txt.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/gpl-2-0-txt.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/background.jpgbin1101 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/basicline.pngbin17024 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogaxis.pngbin19902 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogoptions.pngbin17207 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/basicoptions.pngbin19864 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/dualaxis.pngbin29672 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/logo.jpgbin14632 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocs.pngbin996 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocsover.pngbin1006 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownload.pngbin1236 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownloadover.pngbin1265 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamples.pngbin1308 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamplesover.pngbin1332 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navhome.pngbin858 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/navhomeover.pngbin886 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/new.pngbin13750 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/sample3.pngbin44781 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/images/samplesm.pngbin20874 -> 0 bytes
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotCssStyling-txt.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotOptions-txt.html292
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisLabelRenderer-js.html47
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisTickRenderer-js.html73
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-canvasGridRenderer-js.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-core-js.html389
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-divTitleRenderer-js.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-lineRenderer-js.html69
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-linearAxisRenderer-js.html61
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-markerRenderer-js.html65
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shadowRenderer-js.html61
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shapeRenderer-js.html65
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-themeEngine-js.html191
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-toImage-js.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/optionsTutorial-txt.html120
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-BezierCurveRenderer-js.html45
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-barRenderer-js.html69
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-blockRenderer-js.html53
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-bubbleRenderer-js.html71
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisLabelRenderer-js.html63
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisTickRenderer-js.html79
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasOverlay-js.html113
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-categoryAxisRenderer-js.html46
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ciParser-js.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-cursor-js.html93
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dateAxisRenderer-js.html101
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-donutRenderer-js.html98
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dragable-js.html45
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-enhancedLegendRenderer-js.html51
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-funnelRenderer-js.html87
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-highlighter-js.html80
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-logAxisRenderer-js.html47
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoAxisRenderer-js.html49
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoRenderer-js.html62
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-meterGaugeRenderer-js.html103
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ohlcRenderer-js.html65
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pieRenderer-js.html93
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pointLabels-js.html72
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidAxisRenderer-js.html49
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidGridRenderer-js.html39
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidRenderer-js.html55
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-trendline-js.html67
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/files/usage-txt.html58
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index.html1
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Classes.html70
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Files.html34
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Functions.html70
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General.html42
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General2.html42
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General3.html42
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General4.html46
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General5.html50
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General6.html34
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/General7.html58
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Hooks.html46
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties.html42
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties2.html42
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties3.html46
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties4.html50
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties5.html34
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/index/Properties6.html58
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/javascript/main.js836
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/javascript/searchdata.js182
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesA.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesD.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesG.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesH.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesJ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesL.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesS.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesSymbols.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesT.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/ClassesV.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FilesJ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsC.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsD.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsG.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsI.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsM.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsN.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsQ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsR.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsS.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsZ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralA.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralB.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralC.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralD.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralE.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralF.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralG.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralH.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralI.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralJ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralL.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralM.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralN.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralO.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralP.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralQ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralR.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralS.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralSymbols.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralT.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralU.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralV.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralW.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralX.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralY.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/GeneralZ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/HooksA.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/HooksE.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/HooksJ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/HooksP.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/NoResults.html15
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesA.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesB.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesC.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesD.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesE.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesF.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesG.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesH.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesI.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesL.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesM.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesN.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesO.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesP.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesR.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesS.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesT.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesU.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesV.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesW.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesX.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesY.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesZ.html20
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/styles/1.css767
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/styles/2.css174
-rw-r--r--wqflask/wqflask/static/packages/jqplot/docs/styles/main.css2
-rw-r--r--wqflask/wqflask/static/packages/jqplot/excanvas.js1438
-rw-r--r--wqflask/wqflask/static/packages/jqplot/excanvas.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/gpl-2.0.txt280
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jqPlotCssStyling.txt53
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jqPlotOptions.txt276
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.jqplot.css259
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.jqplot.js11381
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.css1
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.js9046
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.min.js4
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.validate.js1248
-rw-r--r--wqflask/wqflask/static/packages/jqplot/jquery.validate.min.js4
-rw-r--r--wqflask/wqflask/static/packages/jqplot/optionsTutorial.txt240
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.js313
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.js797
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.js234
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.js758
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js203
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.js243
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.js865
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.js449
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.js673
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.js116
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.js1108
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.js737
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.js804
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.js225
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.js305
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.js942
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.js465
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.js475
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.js529
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.js611
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.js437
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.js1029
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.js45
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.js373
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.js903
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.js379
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.js728
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.js429
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.js514
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.js223
-rw-r--r--wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.min.js57
-rw-r--r--wqflask/wqflask/static/packages/jqplot/usage.txt126
-rw-r--r--wqflask/wqflask/templates/base.html3
-rw-r--r--wqflask/wqflask/templates/corr_scatterplot.html1
-rw-r--r--wqflask/wqflask/templates/correlation_matrix.html1
-rw-r--r--wqflask/wqflask/templates/marker_regression_gn1.html9
-rw-r--r--wqflask/wqflask/templates/show_trait.html15
-rw-r--r--wqflask/wqflask/templates/show_trait_statistics.html4
-rw-r--r--wqflask/wqflask/user_manager.py50
637 files changed, 1599 insertions, 62918 deletions
diff --git a/MANIFEST.in b/MANIFEST.in
index bf23f9aa..fc9405fd 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -108,90 +108,6 @@ include wqflask/wqflask/static/packages/novus-nvd3-d51729c/src/models/backup/*
include wqflask/wqflask/static/packages/novus-nvd3-d51729c/examples/*
include wqflask/wqflask/static/packages/novus-nvd3-d51729c/examples/images/*
include wqflask/wqflask/static/packages/DT_bootstrap/*
-include wqflask/wqflask/static/packages/ckeditor/*
-include wqflask/wqflask/static/packages/ckeditor/lang/*
-include wqflask/wqflask/static/packages/ckeditor/adapters/*
-include wqflask/wqflask/static/packages/ckeditor/skins/*
-include wqflask/wqflask/static/packages/ckeditor/skins/moono/*
-include wqflask/wqflask/static/packages/ckeditor/skins/moono/images/*
-include wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/div/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/div/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/templates/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/find/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/find/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/scayt/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/dialog/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/flash/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/flash/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/flash/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/about/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/hidpi/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/filter/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/wsc/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/forms/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/forms/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/link/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/link/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/link/images/hidpi/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/iframe/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/iframe/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/iframe/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/table/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/table/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/smiley/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/smiley/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/magicline/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/preview/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/image/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/image/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/image/images/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/*
-include wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/dialogs/*
-include wqflask/wqflask/static/packages/ckeditor/samples/*
-include wqflask/wqflask/static/packages/ckeditor/samples/assets/*
-include wqflask/wqflask/static/packages/ckeditor/samples/assets/uilanguages/*
-include wqflask/wqflask/static/packages/ckeditor/samples/assets/outputxhtml/*
-include wqflask/wqflask/static/packages/ckeditor/samples/assets/inlineall/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/assets/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/enterkey/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/toolbar/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/magicline/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/*
-include wqflask/wqflask/static/packages/ckeditor/samples/plugins/wysiwygarea/*
include wqflask/wqflask/static/packages/colorbox/*
include wqflask/wqflask/static/packages/colorbox/example5/*
include wqflask/wqflask/static/packages/colorbox/example5/images/*
@@ -220,30 +136,6 @@ include wqflask/wqflask/static/packages/pragmaticly-smart-time-ago-40fa376/test/
include wqflask/wqflask/static/packages/pragmaticly-smart-time-ago-40fa376/test/specs/*
include wqflask/wqflask/static/packages/pragmaticly-smart-time-ago-40fa376/src/*
include wqflask/wqflask/static/packages/pragmaticly-smart-time-ago-40fa376/src/locales/*
-include wqflask/wqflask/static/packages/jqplot/*
-include wqflask/wqflask/static/packages/jqplot/docs/*
-include wqflask/wqflask/static/packages/jqplot/docs/index/*
-include wqflask/wqflask/static/packages/jqplot/docs/styles/*
-include wqflask/wqflask/static/packages/jqplot/docs/files/*
-include wqflask/wqflask/static/packages/jqplot/docs/files/images/*
-include wqflask/wqflask/static/packages/jqplot/docs/files/plugins/*
-include wqflask/wqflask/static/packages/jqplot/docs/search/*
-include wqflask/wqflask/static/packages/jqplot/docs/javascript/*
-include wqflask/wqflask/static/packages/jqplot/examples/*
-include wqflask/wqflask/static/packages/jqplot/examples/colorpicker/*
-include wqflask/wqflask/static/packages/jqplot/examples/colorpicker/images/*
-include wqflask/wqflask/static/packages/jqplot/examples/images/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/js/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/css/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/css/smoothness/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/css/smoothness/images/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/css/ui-lightness/*
-include wqflask/wqflask/static/packages/jqplot/examples/jquery-ui/css/ui-lightness/images/*
-include wqflask/wqflask/static/packages/jqplot/examples/syntaxhighlighter/*
-include wqflask/wqflask/static/packages/jqplot/examples/syntaxhighlighter/scripts/*
-include wqflask/wqflask/static/packages/jqplot/examples/syntaxhighlighter/styles/*
-include wqflask/wqflask/static/packages/jqplot/plugins/*
include wqflask/wqflask/correlation_matrix/*
include wqflask/wqflask/show_trait/*
include wqflask/wqflask/wgcna/*
diff --git a/bin/genenetwork2 b/bin/genenetwork2
index 3f06e7f9..18e02388 100755
--- a/bin/genenetwork2
+++ b/bin/genenetwork2
@@ -21,10 +21,18 @@
#
# env GN2_PROFILE=~/opt/gn-latest-guix ./bin/genenetwork2 ~/my_settings.py
#
-# To run a maintenance script with settings (instead of the webserver) add that with
-# a -c switch, e.g.
+# To run a maintenance python script with settings (instead of the
+# webserver) add that with a -c switch, e.g.
#
-# env GN2_PROFILE=~/opt/gn-latest-guix ./bin/genenetwork2 ~/my_overrides.json -c ./wqflask/maintenance/gen_select_dataset.py
+# env GN2_PROFILE=~/opt/gn-latest-guix ./bin/genenetwork2 -c ./wqflask/maintenance/gen_select_dataset.py
+#
+# To run any script in the environment
+#
+# env GN2_PROFILE=~/opt/gn-latest-guix ./bin/genenetwork2 ./etc/default_settings.py -cli echo "HELLO WORLD"
+#
+# To get a python REPL(!)
+#
+# env GN2_PROFILE=~/opt/gn-latest-guix ./bin/genenetwork2 ./etc/default_settings.py -cli python
#
# For development you may want to run
#
@@ -114,7 +122,6 @@ else
export PATH=$GN2_PROFILE/bin:$PATH
export PYTHONPATH="$GN2_PROFILE/lib/python2.7/site-packages" # never inject another PYTHONPATH!!
export R_LIBS_SITE=$GN2_PROFILE/site-library
- export GEM_PATH=$GN2_PROFILE/lib/ruby/gems/2.4.0
export JS_GUIX_PATH=$GN2_PROFILE/share/genenetwork2/javascript
export GUIX_GTK3_PATH="$GN2_PROFILE/lib/gtk-3.0"
export GI_TYPELIB_PATH="$GN2_PROFILE/lib/girepository-1.0"
@@ -134,7 +141,6 @@ else
done
done <<< "$PYTHONPATH"
if [ ! -d $R_LIBS_SITE ] ; then echo "R_LIBS_SITE not valid "$R_LIBS_SITE ; exit 1 ; fi
- if [ ! -d $GEM_PATH ] ; then echo "GEM_PATH not valid "$GEM_PATH ; exit 1 ; fi
fi
if [ -z $PYTHONPATH ] ; then
echo "ERROR PYTHONPATH has not been set - use GN2_PROFILE!"
@@ -170,9 +176,9 @@ if [ "$1" = '-c' ] ; then
python $cmd $*
exit $?
fi
+
# Now handle command parameter -cli which runs in bash
if [ "$1" = "-cli" ] ; then
- echo "HERE"
cd $GN2_BASE_DIR/wqflask
cmd=$2
echo PYTHONPATH=$PYTHONPATH
diff --git a/bin/mechnical-rob b/bin/mechnical-rob
deleted file mode 100755
index be223d94..00000000
--- a/bin/mechnical-rob
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/usr/bin/env ruby
-
-
-USAGE = <<EOT
-This is Mechanical-Rob - an automated web server tester for
- Genenetwork.org that uses the brilliant
- mechanize gem with minitest.
-
-To use this software you need to install mechanize. Run it from
-the root of the genenetwork2 source tree as, for example,
-
- ./bin/test-website http://localhost:5003/ (default)
-
-If you are using the small deployment database you can use
-
- ./bin/test-website --skip -n
-
-To run all tests
-
- ./bin/test-website --all
-
-To run individual tests on localhost you can do
-
- ruby -Itest -Itest/lib test/lib/mapping.rb --name="/Mapping/"
-
-For more information see http://genenetwork.org/
-
-EOT
-$stderr.print USAGE
-
-require 'optparse'
-
-options = { database: :small, link_checker: false}
-opts = OptionParser.new do |o|
- o.banner = "Usage: #{File.basename($0)} [options] URL"
-
- o.on('-d','--database', String, 'Use database (default db_webqtl_s)') do |s|
- options[:database] =
- case s
- when 'xx'
- :unknown
- else
- :small
- end
- end
-
- o.on('--all', 'Run all tests') do
- options[:all] = true
- end
-
- o.on('-l','--link-checker', 'Check for dead links') do
- options[:link_checker] = true
- end
-
- o.on('--navigation', 'Check for navigation') do
- options[:navigation] = true
- end
-
- o.on('--mapping', 'Check for mapping') do
- options[:mapping] = true
- end
-
- o.on('--skip-broken', 'Skip tests that are known to be broken') do
- options[:skip_broken] = true
- end
-
- o.separator ""
- o.on_tail('-h', '--help', 'display this help and exit') do
- options[:show_help] = true
- end
-end
-
-opts.parse!(ARGV)
-
-if options[:show_help]
- print opts
- exit 1
-end
-
-$options = options # we are using a global here
-$host =
- if ARGV.size>0
- ARGV.shift
- else
- "http://localhost:5003"
- end
-
-$stderr.print "Testing <",$host,">\n"
-
-require 'mechanize'
-require 'minitest/spec'
-require 'minitest/autorun'
-
-# These are the actual testing modules
-
-libpath = File.dirname(File.dirname(__FILE__))
-$: << File.join(libpath,'test/lib')
-
-require 'main_web_functionality'
-
-if options[:all] or options[:mapping]
- require 'mapping'
-end
-
-if options[:all] or options[:link_checker]
- require 'link_checker'
-end
-
-if options[:all] or options[:navigation]
- require 'navigation'
-end
diff --git a/doc/elasticsearch.org b/doc/elasticsearch.org
new file mode 100644
index 00000000..18adfc8b
--- /dev/null
+++ b/doc/elasticsearch.org
@@ -0,0 +1,41 @@
+* Elasticsearch
+
+To get the right environment, first you can get a python REPL with something like
+
+: env GN2_PROFILE=~/opt/gn-latest ./bin/genenetwork2 ../etc/default_settings.py -cli python
+
+(make sure to use the correct GN2_PROFILE!)
+
+Next try
+
+#+BEGIN_SRC python
+
+from elasticsearch import Elasticsearch, TransportError
+
+es = Elasticsearch([{ "host": 'localhost', "port": '9200' }])
+
+# Dump all data
+
+es.search("*")
+
+# To fetch an E-mail record from the users index
+
+record = es.search(
+ index = 'users', doc_type = 'local', body = {
+ "query": { "match": { "email_address": "myname@email.com" } }
+ })
+
+# It is also possible to do wild card matching
+
+q = { "query": { "wildcard" : { "full_name" : "pjot*" } }}
+es.search(index = 'users', doc_type = 'local', body = q)
+
+# To get elements from that record:
+
+record['hits']['hits'][0][u'_source']['full_name']
+u'Pjotr'
+
+record['hits']['hits'][0][u'_source']['email_address']
+u"myname@email.com"
+
+#+END_SRC
diff --git a/etc/VERSION b/etc/VERSION
index ca9e199c..a4320e6f 100644
--- a/etc/VERSION
+++ b/etc/VERSION
@@ -1 +1 @@
-2.11-rc1
+2.11-rc2
diff --git a/etc/nginx-genenetwork.conf b/etc/nginx-genenetwork.conf
deleted file mode 100644
index 06fd3c57..00000000
--- a/etc/nginx-genenetwork.conf
+++ /dev/null
@@ -1,54 +0,0 @@
-user nobody;
-worker_processes 4;
-pid /var/run/nginx.pid;
-
-error_log /var/log/nginx/error.log;
-
-events {
- worker_connections 16;
-}
-
-http {
- include mime.types;
- # default_type application/octet-stream;
-
- # sendfile on;
- keepalive_timeout 480;
-
- server {
- listen 80;
- server_name localhost;
-
- location / {
- root html;
- index index.html index.htm;
- }
-
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root html;
- }
- }
-
- server {
- listen 80;
- server_name test-gn2.genenetwork.org;
- access_log logs/test-gn2.access.log;
-
- proxy_connect_timeout 3000;
- proxy_send_timeout 3000;
- proxy_read_timeout 3000;
- send_timeout 3000;
-
- location / {
- # proxy_set_header Host $host;
- proxy_set_header Host $http_host;
- # proxy_redirect off;
- proxy_set_header Connection keep-alive;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Host $server_name;
- proxy_pass http://127.0.0.1:5003;
- }
- }
-}
diff --git a/scripts/maintenance/QTL_Reaper_v6.py b/scripts/maintenance/QTL_Reaper_v6.py
new file mode 100755
index 00000000..e50dbd40
--- /dev/null
+++ b/scripts/maintenance/QTL_Reaper_v6.py
@@ -0,0 +1,108 @@
+####### To run this program do: python QTL_Reaper_v2.py 235
+#Where 163 is the ProbeSetFreeze Id of the database that we want to calculate #the LRS
+#!/usr/bin/python
+import sys
+import os
+import reaper
+import MySQLdb
+import time
+
+con = MySQLdb.Connect(db='db_webqtl',user='username',passwd='', host="localhost")
+cursor = con.cursor()
+
+genotypeDir = '/gnshare/gn/web/genotypes/'
+genotype_1 = reaper.Dataset()
+
+#####get all of the genotypes
+cursor.execute('select Id, Name from InbredSet')
+results = cursor.fetchall()
+InbredSets = {}
+for item in results:
+ InbredSets[item[0]] = genotypeDir+str(item[1])+'.geno'
+
+ProbeSetFreezeIds=sys.argv[1:]
+if ProbeSetFreezeIds:
+ #####convert the Ids to integer
+ ProbeSetFreezeIds=map(int, ProbeSetFreezeIds)
+
+else:
+ #####get all of the dataset that need be updated
+ cursor.execute('select distinct(ProbeSetFreezeId) from ProbeSetXRef where pValue is NULL order by ProbeSetFreezeId desc')
+ results = cursor.fetchall()
+ ProbeSetFreezeIds = []
+ for item in results:
+ ProbeSetFreezeIds.append(item[0])
+
+####human dataset can NOT use this program calculate the LRS, ignore it
+if ProbeSetFreezeIds.__contains__(215):
+ ProbeSetFreezeIds.remove(215)
+
+#output_file = open ('/home/xzhou/work/DatabaseTools/cal_LRS_Additive_result.txt', 'w')
+
+#####update
+for ProbeSetFreezeId in ProbeSetFreezeIds:
+ cursor.execute("""
+ select InbredSetId
+ from ProbeFreeze, ProbeSetFreeze
+ where ProbeFreeze.Id=ProbeSetFreeze.ProbeFreezeId and ProbeSetFreeze.Id=%d
+ """%ProbeSetFreezeId);
+
+ InbredSetId = cursor.fetchone()[0]
+ if InbredSetId==3:
+ InbredSetId=1
+ #if InbredSetId==12:
+ # InbredSetId=2
+
+ print ProbeSetFreezeId, InbredSets[InbredSetId]
+
+ genotype_1.read(InbredSets[InbredSetId])
+ locuses = []
+ for geno in genotype_1:
+ for locus in geno:
+ locuses.append(locus.name)
+
+ cursor.execute('select ProbeSetId, Locus, DataId from ProbeSetXRef where ProbeSetFreezeId=%s'%ProbeSetFreezeId)
+ ProbeSetXRefInfos = cursor.fetchall()
+
+ kj=0
+ for aProbeSetXRef in ProbeSetXRefInfos:
+ ProbeSetId, Locus, DataId = aProbeSetXRef
+ prgy = genotype_1.prgy
+
+ cursor.execute("select Strain.Name, ProbeSetData.value from Strain, ProbeSetData where Strain.Id = ProbeSetData.StrainId and ProbeSetData.Id = %d" % DataId)
+ results = cursor.fetchall()
+ if not results:
+ continue
+ _strains = []
+ _values = []
+ for item2 in results:
+ strain, value = item2
+ if strain in prgy:
+ _strains.append(strain)
+ _values.append(value)
+ if not _strains or not _values:
+ continue
+
+ if len(_strains) < 8:
+ continue
+ qtlresults = genotype_1.regression(strains = _strains, trait = _values)
+ _max = max(qtlresults)
+ _locus = _max.locus.name
+ _additive = _max.additive
+ _max = _max.lrs
+
+ #output_file.write('%s\t%s\t%s\t%s\t%s\n' % (ProbeSetFreezeId, ProbeSetId, _locus, _max, _additive))
+
+ # _max(LRS) maybe is infinite sometimes, so define it as a very big number
+ if _max == float('inf'):
+ _max = 10000
+
+ cursor.execute('update ProbeSetXRef set Locus=%s, LRS=%s, additive=%s where ProbeSetId=%s and ProbeSetFreezeId=%s', \
+ (_locus, _max, _additive, ProbeSetId, ProbeSetFreezeId))
+
+ kj += 1
+ if kj%1000==0:
+ print ProbeSetFreezeId, InbredSets[InbredSetId],kj
+
+
+ print ProbeSetFreezeIds
diff --git a/scripts/maintenance/README.txt b/scripts/maintenance/README.txt
new file mode 100644
index 00000000..8604a5c9
--- /dev/null
+++ b/scripts/maintenance/README.txt
@@ -0,0 +1,66 @@
+Theses are Python2 scripts used for uploading data into the MySQL
+database (current as per April 2018)
+
+
+Last updated by A.Centeno 4-2-18
+==========================
+load_genotypes.py
+==========================
+Mainly used to enter genotype batch records
+Run load_genotypes.py as:
+python delete_genotypes.py /home/acenteno/copyfrom_spring211/Maintenance/dataset/Arthur-Geno-Pheno-Data/Load_Genotypes/config.ini
+
+==========================
+delete_genotypes.py
+==========================
+Mainly used to delete genotype batch records
+Run delete_genotypes.py as:
+python delete_genotypes.py /home/acenteno/copyfrom_spring211/Maintenance/dataset/Arthur-Geno-Pheno-Data/Delete_Genotypes/config.ini
+
+==========================
+load_phenotypes.py
+==========================
+Mainly used to enter phenotype trait batch records
+Run load_phenotypes.py as:
+python load_phenotypes.py /home/acenteno/copyfrom_spring211/Maintenance/dataset/Arthur-Geno-Pheno-Data/Load_Phenotypes/config.ini
+
+==========================
+delete_phenotypes.py
+==========================
+Mainly used to delete phenotype trait full records
+Run delete_phenotypes.py as:
+python delete_phenotypes.py /home/acenteno/copyfrom_spring211/Maintenance/dataset/Arthur-Geno-Pheno-Data/Delete_Phenotypes/config.ini
+
+==========================
+QTL_Reaper_v6.py
+==========================
+Mainly used to perform QTL reaper and obtain Max LRS values.
+Run QTL_Reaper_v6.py as:
+python QTL_Reaper_v6.py (and GN accession number here)
+
+==========================
+Update_Case_Attributes_MySQL_tab.py
+==========================
+Mainly used to enter Case attributes.
+Run Update_Case_Attributes_MySQL_tab.py as:
+python Update_Case_Attributes_MySQL_tab.py
+
+==========================
+readProbeSetMean_v7.py
+==========================
+Mainly used to enter mean expression data.
+Run readProbeSetMean_v7.py as:
+python readProbeSetMean_v7.py
+
+==========================
+readProbeSetSE_v7.py
+==========================
+Mainly used to enter Standard Error values from expression data.
+Run readProbeSetSE_v7.py as:
+python readProbeSetSE_v7.py
+
+==========================
+MYSQL command CALCULATE MEANS NEW Structure:
+==========================
+Mainly used to calculate mean from expression data values.
+update ProbeSetXRef set mean = (select AVG(value) from ProbeSetData where ProbeSetData.Id = ProbeSetXRef.DataId) where ProbeSetXRef.ProbeSetFreezeId = 811;
diff --git a/scripts/maintenance/Update_Case_Attributes_MySQL_tab.py b/scripts/maintenance/Update_Case_Attributes_MySQL_tab.py
new file mode 100644
index 00000000..0f8602c9
--- /dev/null
+++ b/scripts/maintenance/Update_Case_Attributes_MySQL_tab.py
@@ -0,0 +1,27 @@
+#!/usr/bin/python2
+########################################################################
+# Last Updated Apr 11, 2016 By Arthur and Zach
+########################################################################
+import string
+import sys
+import MySQLdb
+import getpass
+import time
+import csv
+########################################################################
+
+mydb = MySQLdb.connect(host='localhost',
+ user='username',
+ passwd='',
+ db='db_webqtl')
+cursor = mydb.cursor()
+
+csv_data = csv.reader(file('GN711_pvalues.txt'), delimiter ="\t")
+for row in csv_data:
+
+ cursor.execute("""UPDATE ProbeSetXRef SET pValue = %s WHERE ProbeSetFreezeId = %s AND ProbeSetId = %s """,
+ (row))
+#close the connection to the database.
+mydb.commit()
+cursor.close()
+print "Done" \ No newline at end of file
diff --git a/scripts/maintenance/delete_genotypes.py b/scripts/maintenance/delete_genotypes.py
new file mode 100755
index 00000000..fa693f0f
--- /dev/null
+++ b/scripts/maintenance/delete_genotypes.py
@@ -0,0 +1,33 @@
+import sys
+import csv
+
+import utilities
+import datastructure
+import genotypes
+
+def main(argv):
+ # config
+ config = utilities.get_config(argv[1])
+ print "config:"
+ for item in config.items('config'):
+ print "\t%s" % (str(item))
+ # var
+ print "variable:"
+ inbredsetid = config.get('config', 'inbredsetid')
+ print "\tinbredsetid: %s" % inbredsetid
+ # datafile
+ datafile = open(config.get('config', 'datafile'), 'r')
+ datafile = csv.reader(datafile, delimiter='\t', quotechar='"')
+ datafile.next()
+ delrowcount = 0
+ for row in datafile:
+ if len(row) == 0:
+ continue
+ genoname = row[0]
+ delrowcount += genotypes.delete(genoname, inbredsetid)
+ print "deleted %d genotypes" % (delrowcount)
+
+if __name__ == "__main__":
+ print "command line arguments:\n\t%s" % sys.argv
+ main(sys.argv)
+ print "exit successfully"
diff --git a/scripts/maintenance/delete_phenotypes.py b/scripts/maintenance/delete_phenotypes.py
new file mode 100755
index 00000000..326c466e
--- /dev/null
+++ b/scripts/maintenance/delete_phenotypes.py
@@ -0,0 +1,35 @@
+import sys
+import csv
+
+import utilities
+import datastructure
+import phenotypes
+
+def main(argv):
+ # config
+ config = utilities.get_config(argv[1])
+ print "config:"
+ for item in config.items('config'):
+ print "\t%s" % (str(item))
+ # var
+ print "variable:"
+ inbredsetid = config.get('config', 'inbredsetid')
+ print "\tinbredsetid: %s" % inbredsetid
+ # datafile
+ datafile = open(config.get('config', 'datafile'), 'r')
+ datafile = csv.reader(datafile, delimiter='\t', quotechar='"')
+ delrowcount = 0
+ for row in datafile:
+ if len(row) == 0:
+ continue
+ try:
+ publishxrefid = int(row[0])
+ except:
+ continue
+ delrowcount += phenotypes.delete(publishxrefid=publishxrefid, inbredsetid=inbredsetid)
+ print "deleted %d phenotypes" % (delrowcount)
+
+if __name__ == "__main__":
+ print "command line arguments:\n\t%s" % sys.argv
+ main(sys.argv)
+ print "exit successfully"
diff --git a/scripts/maintenance/load_genotypes.py b/scripts/maintenance/load_genotypes.py
new file mode 100755
index 00000000..338483f4
--- /dev/null
+++ b/scripts/maintenance/load_genotypes.py
@@ -0,0 +1,154 @@
+import sys
+import re
+
+import utilities
+import datastructure
+
+def main(argv):
+ config = utilities.get_config(argv[1])
+ print("config file:")
+ for item in config.items('config'):
+ print("\t%s" % str(item))
+ parse_genofile(config, fetch_parameters(config))
+
+def fetch_parameters(config):
+ config_dic = {}
+ config_dic['inbredsetid'] = config.get('config', 'inbredsetid')
+ config_dic["speciesid"] = datastructure.get_species(config_dic['inbredsetid'])[0]
+ config_dic['genofreezeid'] = datastructure.get_genofreeze_byinbredsetid(config_dic['inbredsetid'])[0]
+ config_dic['dataid'] = datastructure.get_nextdataid_genotype()
+ config_dic['genofile'] = config.get('config', 'genofile')
+ print("config dictionary:")
+ for k, v in config_dic.items():
+ print("\t%s: %s" % (k, v))
+ return config_dic
+
+def parse_genofile(config, config_dic):
+ genofile = open(config_dic['genofile'], 'r')
+ meta_dic = {}
+ for line in genofile:
+ line = line.strip()
+ if len(line) == 0:
+ continue
+ if line.startswith('#'):
+ continue
+ if line.startswith('@'):
+ line = line.strip('@')
+ items = line.split(';')
+ for item in items:
+ kv = re.split(':|=', item)
+ meta_dic[kv[0].strip()] = kv[1].strip()
+ continue
+ if line.lower().startswith("chr"):
+ #
+ print("geno file meta dictionary:")
+ for k, v in meta_dic.items():
+ print("\t%s: %s" % (k, v))
+ #
+ print("geno file head:\n\t%s" % line)
+ strainnames = line.split()[4:]
+ config_dic['strains'] = datastructure.get_strains_bynames(inbredsetid=config_dic['inbredsetid'], strainnames=strainnames, updatestrainxref="yes")
+ continue
+ # geno file line, marker
+ marker_dic = parse_marker(line)
+ marker_dic['genoid'] = check_or_insert_geno(config_dic, marker_dic)
+ if check_genoxref(config_dic, marker_dic):
+ continue
+ insert_genodata(config, config_dic, marker_dic)
+ insert_genoxref(config_dic, marker_dic)
+ config_dic['dataid'] += 1
+ genofile.close()
+
+def parse_marker(line):
+ marker_dic = {}
+ cells = line.split()
+ marker_dic['chromosome'] = cells[0]
+ marker_dic['locus'] = cells[1]
+ marker_dic['cm'] = cells[2]
+ marker_dic['mb'] = cells[3]
+ marker_dic['values'] = cells[4:]
+ return marker_dic
+
+def check_or_insert_geno(config_dic, marker_dic):
+ cursor, con = utilities.get_cursor()
+ sql = """
+ SELECT Geno.`Id`
+ FROM Geno
+ WHERE Geno.`SpeciesId`=%s
+ AND Geno.`Name` like %s
+ """
+ cursor.execute(sql, (config_dic["speciesid"], marker_dic['locus']))
+ result = cursor.fetchone()
+ if result:
+ genoid = result[0]
+ print("get geno record: %d" % genoid)
+ else:
+ sql = """
+ INSERT INTO Geno
+ SET
+ Geno.`SpeciesId`=%s,
+ Geno.`Name`=%s,
+ Geno.`Marker_Name`=%s,
+ Geno.`Chr`=%s,
+ Geno.`Mb`=%s
+ """
+ cursor.execute(sql, (config_dic['speciesid'], marker_dic['locus'], marker_dic['locus'], marker_dic['chromosome'], marker_dic['mb']))
+ rowcount = cursor.rowcount
+ genoid = con.insert_id()
+ print("INSERT INTO Geno: %d record: %d" % (rowcount, genoid))
+ return genoid
+
+def check_genoxref(config_dic, marker_dic):
+ cursor, con = utilities.get_cursor()
+ sql = """
+ select GenoXRef.*
+ from GenoXRef
+ where GenoXRef.`GenoFreezeId`=%s
+ AND GenoXRef.`GenoId`=%s
+ """
+ cursor.execute(sql, (config_dic['genofreezeid'], marker_dic['genoid']))
+ rowcount = cursor.rowcount
+ return rowcount
+
+def insert_genodata(config, config_dic, marker_dic):
+ cursor, con = utilities.get_cursor()
+ for index, strain in enumerate(config_dic['strains']):
+ strainid = strain[0]
+ value = utilities.to_db_string(marker_dic['values'][index], None)
+ if not value:
+ continue
+ value = config.get('config', "genovalue_" + value)
+ try:
+ number = int(value)
+ except:
+ continue
+ if not number in [-1, 0, 1]:
+ continue
+ sql = """
+ INSERT INTO GenoData
+ SET
+ GenoData.`Id`=%s,
+ GenoData.`StrainId`=%s,
+ GenoData.`value`=%s
+ """
+ cursor.execute(sql, (config_dic['dataid'], strainid, number))
+
+def insert_genoxref(config_dic, marker_dic):
+ cursor, con = utilities.get_cursor()
+ sql = """
+ INSERT INTO GenoXRef
+ SET
+ GenoXRef.`GenoFreezeId`=%s,
+ GenoXRef.`GenoId`=%s,
+ GenoXRef.`DataId`=%s,
+ GenoXRef.`cM`=%s,
+ GenoXRef.`Used_for_mapping`=%s
+ """
+ cursor.execute(sql, (config_dic['genofreezeid'], marker_dic['genoid'], config_dic['dataid'], marker_dic['cm'], 'N'))
+ rowcount = cursor.rowcount
+ print("INSERT INTO GenoXRef: %d record" % (rowcount))
+
+if __name__ == "__main__":
+ print("command line arguments:\n\t%s" % sys.argv)
+ main(sys.argv)
+ print("exit successfully")
diff --git a/scripts/maintenance/load_phenotypes.py b/scripts/maintenance/load_phenotypes.py
new file mode 100755
index 00000000..c3c6570b
--- /dev/null
+++ b/scripts/maintenance/load_phenotypes.py
@@ -0,0 +1,171 @@
+import sys
+import csv
+
+import utilities
+import datastructure
+
+def main(argv):
+ # config
+ config = utilities.get_config(argv[1])
+ print "config:"
+ for item in config.items('config'):
+ print "\t%s" % (str(item))
+ # var
+ inbredsetid = config.get('config', 'inbredsetid')
+ print "inbredsetid: %s" % inbredsetid
+ species = datastructure.get_species(inbredsetid)
+ speciesid = species[0]
+ print "speciesid: %s" % speciesid
+ dataid = datastructure.get_nextdataid_phenotype()
+ print "next data id: %s" % dataid
+ cursor, con = utilities.get_cursor()
+ # datafile
+ datafile = open(config.get('config', 'datafile'), 'r')
+ phenotypedata = csv.reader(datafile, delimiter='\t', quotechar='"')
+ phenotypedata_head = phenotypedata.next()
+ print "phenotypedata head:\n\t%s" % phenotypedata_head
+ strainnames = phenotypedata_head[1:]
+ strains = datastructure.get_strains_bynames(inbredsetid=inbredsetid, strainnames=strainnames, updatestrainxref="yes")
+ # metafile
+ metafile = open(config.get('config', 'metafile'), 'r')
+ phenotypemeta = csv.reader(metafile, delimiter='\t', quotechar='"')
+ phenotypemeta_head = phenotypemeta.next()
+ print "phenotypemeta head:\n\t%s" % phenotypemeta_head
+ print
+ # load
+ for metarow in phenotypemeta:
+ #
+ datarow_value = phenotypedata.next()
+ datarow_se = phenotypedata.next()
+ datarow_n = phenotypedata.next()
+ # Phenotype
+ sql = """
+ INSERT INTO Phenotype
+ SET
+ Phenotype.`Pre_publication_description`=%s,
+ Phenotype.`Post_publication_description`=%s,
+ Phenotype.`Original_description`=%s,
+ Phenotype.`Pre_publication_abbreviation`=%s,
+ Phenotype.`Post_publication_abbreviation`=%s,
+ Phenotype.`Lab_code`=%s,
+ Phenotype.`Submitter`=%s,
+ Phenotype.`Owner`=%s,
+ Phenotype.`Authorized_Users`=%s,
+ Phenotype.`Units`=%s
+ """
+ cursor.execute(sql, (
+ utilities.to_db_string(metarow[1], None),
+ utilities.to_db_string(metarow[2], None),
+ utilities.to_db_string(metarow[3], None),
+ utilities.to_db_string(metarow[4], None),
+ utilities.to_db_string(metarow[5], None),
+ utilities.to_db_string(metarow[6], None),
+ utilities.to_db_string(metarow[7], None),
+ utilities.to_db_string(metarow[8], None),
+ utilities.to_db_string(metarow[9], ""),
+ utilities.to_db_string(metarow[18], ""),
+ ))
+ rowcount = cursor.rowcount
+ phenotypeid = con.insert_id()
+ print "INSERT INTO Phenotype: %d record: %d" % (rowcount, phenotypeid)
+ # Publication
+ publicationid = None # reset
+ pubmed_id = utilities.to_db_string(metarow[0], None)
+ if pubmed_id:
+ sql = """
+ SELECT Publication.`Id`
+ FROM Publication
+ WHERE Publication.`PubMed_ID`=%s
+ """
+ cursor.execute(sql, (pubmed_id))
+ re = cursor.fetchone()
+ if re:
+ publicationid = re[0]
+ print "get Publication record: %d" % publicationid
+ if not publicationid:
+ sql = """
+ INSERT INTO Publication
+ SET
+ Publication.`PubMed_ID`=%s,
+ Publication.`Abstract`=%s,
+ Publication.`Authors`=%s,
+ Publication.`Title`=%s,
+ Publication.`Journal`=%s,
+ Publication.`Volume`=%s,
+ Publication.`Pages`=%s,
+ Publication.`Month`=%s,
+ Publication.`Year`=%s
+ """
+ cursor.execute(sql, (
+ utilities.to_db_string(metarow[0], None),
+ utilities.to_db_string(metarow[12], None),
+ utilities.to_db_string(metarow[10], ""),
+ utilities.to_db_string(metarow[11], None),
+ utilities.to_db_string(metarow[13], None),
+ utilities.to_db_string(metarow[14], None),
+ utilities.to_db_string(metarow[15], None),
+ utilities.to_db_string(metarow[16], None),
+ utilities.to_db_string(metarow[17], ""),
+ ))
+ rowcount = cursor.rowcount
+ publicationid = con.insert_id()
+ print "INSERT INTO Publication: %d record: %d" % (rowcount, publicationid)
+ # data
+ for index, strain in enumerate(strains):
+ #
+ strainid = strain[0]
+ value = utilities.to_db_float(datarow_value[index+1], None)
+ se = utilities.to_db_float(datarow_se[index+1], None)
+ n = utilities.to_db_int(datarow_n[index+1], None)
+ #
+ if value is not None:
+ sql = """
+ INSERT INTO PublishData
+ SET
+ PublishData.`Id`=%s,
+ PublishData.`StrainId`=%s,
+ PublishData.`value`=%s
+ """
+ cursor.execute(sql, (dataid, strainid, value))
+ if se is not None:
+ sql = """
+ INSERT INTO PublishSE
+ SET
+ PublishSE.`DataId`=%s,
+ PublishSE.`StrainId`=%s,
+ PublishSE.`error`=%s
+ """
+ cursor.execute(sql, (dataid, strainid, se))
+ if n is not None:
+ sql = """
+ INSERT INTO NStrain
+ SET
+ NStrain.`DataId`=%s,
+ NStrain.`StrainId`=%s,
+ NStrain.`count`=%s
+ """
+ cursor.execute(sql, (dataid, strainid, n))
+ # PublishXRef
+ sql = """
+ INSERT INTO PublishXRef
+ SET
+ PublishXRef.`InbredSetId`=%s,
+ PublishXRef.`PhenotypeId`=%s,
+ PublishXRef.`PublicationId`=%s,
+ PublishXRef.`DataId`=%s,
+ PublishXRef.`comments`=%s
+ """
+ cursor.execute(sql, (inbredsetid, phenotypeid, publicationid, dataid, ""))
+ rowcount = cursor.rowcount
+ publishxrefid = con.insert_id()
+ print "INSERT INTO PublishXRef: %d record: %d" % (rowcount, publishxrefid)
+ # for loop next
+ dataid += 1
+ print
+ # release
+ con.close()
+
+if __name__ == "__main__":
+ print "command line arguments:\n\t%s" % sys.argv
+ main(sys.argv)
+ print "exit successfully"
diff --git a/scripts/maintenance/readProbeSetMean_v7.py b/scripts/maintenance/readProbeSetMean_v7.py
new file mode 100755
index 00000000..e9c8f25c
--- /dev/null
+++ b/scripts/maintenance/readProbeSetMean_v7.py
@@ -0,0 +1,274 @@
+#!/usr/bin/python2
+"""This script use the nearest marker to the transcript as control, increasing permutation rounds according to the p-value"""
+
+########################################################################
+# Last Updated Sep 27, 2011 by Xiaodong
+########################################################################
+import string
+import sys
+import MySQLdb
+import getpass
+import time
+#import pdb
+
+#pdb.set_trace()
+
+########################################################################
+
+def translateAlias(str):
+ if str == "B6":
+ return "C57BL/6J"
+ elif str == "D2":
+ return "DBA/2J"
+ else:
+ return str
+
+########################################################################
+#
+# Indicate Data Start Position, ProbeFreezeId, GeneChipId, DataFile
+#
+########################################################################
+
+dataStart = 1
+
+GeneChipId = int( raw_input("Enter GeneChipId:") )
+ProbeSetFreezeId = int( raw_input("Enter ProbeSetFreezeId:") )
+input_file_name = raw_input("Enter file name with suffix:")
+
+fp = open("%s" % input_file_name, 'rb')
+
+try:
+ passwd = getpass.getpass('Please enter mysql password here : ')
+ con = MySQLdb.Connect(db='db_webqtl',host='localhost', user='username',passwd=passwd)
+
+ db = con.cursor()
+ print "You have successfully connected to mysql.\n"
+except:
+ print "You entered incorrect password.\n"
+ sys.exit(0)
+
+time0 = time.time()
+
+#########################################################################
+#
+# Check if each line have same number of members
+# generate the gene list of expression data here
+#
+#########################################################################
+print 'Checking if each line have same number of members'
+
+GeneList = []
+isCont = 1
+header = fp.readline()
+header = string.split(string.strip(header),'\t')
+header = map(string.strip, header)
+nfield = len(header)
+line = fp.readline()
+
+kj=0
+while line:
+ line2 = string.split(string.strip(line),'\t')
+ line2 = map(string.strip, line2)
+ if len(line2) != nfield:
+ print "Error : " + line
+ isCont = 0
+
+ GeneList.append(line2[0])
+ line = fp.readline()
+
+ kj+=1
+ if kj%100000 == 0:
+ print 'checked ',kj,' lines'
+
+GeneList = map(string.lower, GeneList)
+GeneList.sort()
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+#########################################################################
+#
+# Check if each strain exist in database
+# generate the string id list of expression data here
+#
+#########################################################################
+print 'Checking if each strain exist in database'
+
+isCont = 1
+fp.seek(0)
+header = fp.readline()
+header = string.split(string.strip(header),'\t')
+header = map(string.strip, header)
+header = map(translateAlias, header)
+header = header[dataStart:]
+Ids = []
+for item in header:
+ try:
+ db.execute('select Id from Strain where Name = "%s"' % item)
+ Ids.append(db.fetchall()[0][0])
+ except:
+ print item,'does not exist, check the if the strain name is correct'
+ isCont=0
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+########################################################################
+#
+# Check if each ProbeSet exist in database
+#
+########################################################################
+print 'Check if each ProbeSet exist in database'
+
+##---- find PID is name or target ----##
+line = fp.readline()
+line = fp.readline()
+line2 = string.split(string.strip(line),'\t')
+line2 = map(string.strip, line2)
+PId = line2[0]
+
+db.execute('select Id from ProbeSet where Name="%s" and ChipId=%d' % (PId, GeneChipId) )
+results = db.fetchall()
+IdStr = 'TargetId'
+if len(results)>0:
+ IdStr = 'Name'
+
+
+##---- get Name/TargetId list from database ----##
+db.execute('select distinct(%s) from ProbeSet where ChipId=%d order by %s' % (IdStr, GeneChipId, IdStr))
+results = db.fetchall()
+
+Names = []
+for item in results:
+ Names.append(item[0])
+
+print Names
+
+Names = map(string.lower, Names)
+
+Names.sort() # -- Fixed the lower case problem of ProbeSets affx-mur_b2_at doesn't exist --#
+
+
+##---- compare genelist with names ----##
+x=y=0
+x1=-1
+GeneList2=[]
+while x<len(GeneList) and y<len(Names):
+ if GeneList[x]==Names[y]:
+ x += 1
+ y += 1
+ elif GeneList[x]<Names[y]:
+ if x!=x1:
+ GeneList2.append(GeneList[x])
+ x1 = x
+ x += 1
+ elif GeneList[x]>Names[y]:
+ y += 1
+
+ if x%100000==0:
+ print 'check Name, checked %d lines'%x
+
+while x<len(GeneList):
+ GeneList2.append(GeneList[x])
+ x += 1
+
+isCont=1
+ferror = open("ProbeSetError.txt", "wb")
+for item in GeneList2:
+ ferror.write(item + " doesn't exist \n")
+ print item, " doesn't exist, check if the ProbeSet name is correct"
+ isCont = 0
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+#########################################################################
+#
+# Insert data into database
+#
+#########################################################################
+print 'getting ProbeSet/Id'
+
+
+#---- get Name/Id map ----#
+db.execute('select %s, Id from ProbeSet where ChipId=%d order by %s' % (IdStr, GeneChipId, IdStr))
+results = db.fetchall()
+NameIds = {}
+for item in results:
+ NameIds[item[0]] = item[1]
+print 'used ',time.time()-time0,' seconds'
+
+
+print 'inserting data'
+
+##---- get old max dataId ----##
+db.execute('select max(Id) from ProbeSetData')
+maxDataId = int(db.fetchall()[0][0])
+bmax = maxDataId
+print "old_max = %d\n" % bmax
+
+##---- insert data ----##
+fp.seek(0)
+line = fp.readline()
+line = fp.readline()
+kj = 0
+
+values1 = []
+values2 = []
+while line:
+ line2 = string.split(string.strip(line),'\t')
+ line2 = map(string.strip, line2)
+ PId = line2[0]
+ recordId = NameIds[PId]
+
+ maxDataId += 1
+ datasorig = line2[dataStart:]
+
+ ###### Data Table items ######
+ i=0
+ for item in datasorig:
+ try:
+ values1.append('(%d,%d,%s)' % (maxDataId, Ids[i], float(item)))
+ except:
+ pass
+ i += 1
+
+ values2.append("(%d,%d,%d)" % (ProbeSetFreezeId, recordId, maxDataId))
+
+
+ ##---- insert into table ----##
+ kj += 1
+ if kj % 100 == 0:
+ cmd = ','.join(values1)
+ cmd = 'insert into ProbeSetData values %s' % cmd
+ db.execute(cmd)
+
+ cmd = ','.join(values2)
+ cmd = 'insert into ProbeSetXRef(ProbeSetFreezeId, ProbeSetId, DataId) values %s' % cmd
+ db.execute(cmd)
+
+ values1=[]
+ values2=[]
+ print 'Inserted ', kj,' lines'
+ print 'used ',time.time()-time0,' seconds'
+
+ line = fp.readline()
+
+
+
+if len(values1)>0:
+ cmd = ','.join(values1)
+ cmd = 'insert into ProbeSetData values %s' % cmd
+ db.execute(cmd)
+
+ cmd = ','.join(values2)
+ cmd = 'insert into ProbeSetXRef(ProbeSetFreezeId, ProbeSetId, DataId) values %s' % cmd
+ db.execute(cmd)
+
+con.close()
diff --git a/scripts/maintenance/readProbeSetSE_v7.py b/scripts/maintenance/readProbeSetSE_v7.py
new file mode 100755
index 00000000..fd6f0bb8
--- /dev/null
+++ b/scripts/maintenance/readProbeSetSE_v7.py
@@ -0,0 +1,254 @@
+#!/usr/bin/python2
+"""This script use the nearest marker to the transcript as control, increasing permutation rounds according to the p-value"""
+########################################################################
+# Last Updated Sep 27, 2011 by Xiaodong
+# This version fix the bug that incorrectly exclude the first 2 probesetIDs
+########################################################################
+
+import string
+import sys
+import MySQLdb
+import getpass
+import time
+
+
+def translateAlias(str):
+ if str == "B6":
+ return "C57BL/6J"
+ elif str == "D2":
+ return "DBA/2J"
+ else:
+ return str
+
+########################################################################
+#
+# Indicate Data Start Position, ProbeFreezeId, GeneChipId, DataFile
+#
+########################################################################
+
+dataStart = 1
+
+GeneChipId = int( raw_input("Enter GeneChipId:") )
+ProbeSetFreezeId = int( raw_input("Enter ProbeSetFreezeId:") )
+input_file_name = raw_input("Enter file name with suffix:")
+
+fp = open("%s" % input_file_name, 'rb')
+
+
+try:
+ passwd = getpass.getpass('Please enter mysql password here : ')
+ con = MySQLdb.Connect(db='db_webqtl',host='localhost', user='username',passwd=passwd)
+
+ db = con.cursor()
+ print "You have successfully connected to mysql.\n"
+except:
+ print "You entered incorrect password.\n"
+ sys.exit(0)
+
+time0 = time.time()
+########################################################################
+#
+# Indicate Data Start Position, ProbeFreezeId, GeneChipId, DataFile
+#
+########################################################################
+
+#GeneChipId = 4
+#dataStart = 1
+#ProbeSetFreezeId = 359 #JAX Liver 6C Affy M430 2.0 (Jul11) MDP
+#fp = open("GSE10493_AllSamples_6C_Z_AvgSE.txt", 'rb')
+
+
+#########################################################################
+#
+# Check if each line have same number of members
+# generate the gene list of expression data here
+#
+#########################################################################
+print 'Checking if each line have same number of members'
+
+GeneList = []
+isCont = 1
+header = fp.readline()
+header = string.split(string.strip(header),'\t')
+header = map(string.strip, header)
+nfield = len(header)
+line = fp.readline()
+
+kj=0
+while line:
+ line2 = string.split(string.strip(line),'\t')
+ line2 = map(string.strip, line2)
+ if len(line2) != nfield:
+ print "Error : " + line
+ isCont = 0
+
+ GeneList.append(line2[0])
+ line = fp.readline()
+
+ kj+=1
+ if kj%100000 == 0:
+ print 'checked ',kj,' lines'
+
+GeneList = map(string.lower, GeneList)
+GeneList.sort()
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+#########################################################################
+#
+# Check if each strain exist in database
+# generate the string id list of expression data here
+#
+#########################################################################
+print 'Checking if each strain exist in database'
+
+isCont = 1
+fp.seek(0)
+header = fp.readline()
+header = string.split(string.strip(header),'\t')
+header = map(string.strip, header)
+header = map(translateAlias, header)
+header = header[dataStart:]
+Ids = []
+for item in header:
+ try:
+ db.execute('select Id from Strain where Name = "%s"' % item)
+ Ids.append(db.fetchall()[0][0])
+ except:
+ print item,'does not exist, check the if the strain name is correct'
+ isCont=0
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+########################################################################
+#
+# Check if each ProbeSet exist in database
+#
+########################################################################
+print 'Check if each ProbeSet exist in database'
+
+##---- find PID is name or target ----##
+line = fp.readline()
+line = fp.readline()
+line2 = string.split(string.strip(line),'\t')
+line2 = map(string.strip, line2)
+PId = line2[0]
+
+db.execute('select Id from ProbeSet where Name="%s" and ChipId=%d' % (PId, GeneChipId))
+results = db.fetchall()
+IdStr = 'TargetId'
+if len(results)>0:
+ IdStr = 'Name'
+
+
+##---- get Name/TargetId list from database ----##
+db.execute('select distinct(%s) from ProbeSet where ChipId=%d order by %s' % (IdStr, GeneChipId, IdStr))
+results = db.fetchall()
+
+Names = []
+for item in results:
+ Names.append(item[0])
+Names = map(string.lower, Names)
+Names.sort() # -- Fixed the lower case problem of ProbeSets affx-mur_b2_at doesn't exist --#
+
+##---- compare genelist with names ----##
+x=y=0
+x1=-1
+GeneList2=[]
+while x<len(GeneList) and y<len(Names):
+ if GeneList[x]==Names[y]:
+ x += 1
+ y += 1
+ elif GeneList[x]<Names[y]:
+ if x!=x1:
+ GeneList2.append(GeneList[x])
+ x1 = x
+ x += 1
+ elif GeneList[x]>Names[y]:
+ y += 1
+
+ if x%100000==0:
+ print 'check Name, checked %d lines'%x
+
+while x<len(GeneList):
+ GeneList2.append(GeneList[x])
+ x += 1
+
+isCont=1
+ferror = open("ProbeSetError.txt", "wb")
+for item in GeneList2:
+ ferror.write(item + " doesn't exist \n")
+ print item, " doesn't exist"
+ isCont = 0
+
+if isCont==0:
+ sys.exit(0)
+
+
+print 'used ',time.time()-time0,' seconds'
+#############################
+#Insert new Data into SE
+############################
+db.execute("""
+ select ProbeSet.%s, ProbeSetXRef.DataId from ProbeSet, ProbeSetXRef
+ where ProbeSet.Id=ProbeSetXRef.ProbeSetId and ProbeSetXRef.ProbeSetFreezeId=%d"""
+ % (IdStr, ProbeSetFreezeId))
+results = db.fetchall()
+
+ProbeNameId = {}
+for Name, Id in results:
+ ProbeNameId[Name] = Id
+
+ferror = open("ProbeError.txt", "wb")
+
+DataValues = []
+
+fp.seek(0) #XZ add this line
+line = fp.readline() #XZ add this line
+line = fp.readline()
+
+kj = 0
+while line:
+ line2 = string.split(string.strip(line),'\t')
+ line2 = map(string.strip, line2)
+
+ CellId = line2[0]
+ if not ProbeNameId.has_key(CellId):
+ ferror.write(CellId + " doesn't exist\n")
+ print CellId, " doesn't exist"
+ else:
+ DataId = ProbeNameId[CellId]
+ datasorig = line2[dataStart:]
+
+ i = 0
+ for item in datasorig:
+ if item != '':
+ value = '('+str(DataId)+','+str(Ids[i])+','+str(item)+')'
+ DataValues.append(value)
+ i += 1
+
+ kj += 1
+ if kj % 100 == 0:
+ Dataitems = ','.join(DataValues)
+ cmd = 'insert ProbeSetSE values %s' % Dataitems
+ db.execute(cmd)
+
+ DataValues = []
+ print 'inserted ',kj,' lines'
+ print 'used ',time.time()-time0,' seconds'
+ line = fp.readline()
+
+if len(DataValues)>0:
+ DataValues = ','.join(DataValues)
+ cmd = 'insert ProbeSetSE values %s' % DataValues
+ db.execute(cmd)
+
+con.close()
+
+
diff --git a/test/lib/gntest.rb b/test/lib/gntest.rb
deleted file mode 100644
index 5b21b3d5..00000000
--- a/test/lib/gntest.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require 'minitest/autorun'
-require 'mechanize'
-require 'json'
-
-# ---- Use some default parameters if not set
-$host = "http://localhost:5003" if !$host
diff --git a/test/lib/link_checker.rb b/test/lib/link_checker.rb
deleted file mode 100644
index 36cb36c8..00000000
--- a/test/lib/link_checker.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-
-SKIP = "mailto:"
-
-class LinkChecker
-end
-
-describe LinkChecker do
- before do
- @agent = Mechanize.new
- @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
- end
-
- it "Get to front page" do
- page = @agent.get($host)
- page.links.each do |link|
- puts link.href
- if link.href !~ /#{SKIP}/ # /static\/dbdoc\/Hippocampus/ and link.href !~ /mailto:|glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
- # Fetch link, program will crash with exception if link is broken
- linkpage = @agent.get(link.href)
- puts "Link to #{link.href} is valid, response code #{linkpage.code}"
- end
- end
-
- end
-
- describe LinkChecker do
- it "Get to trait page" do
- page = @agent.get($host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P')
- # p page
-
- # Get to trait page for 1435395_s_at
- # form2 = show_trait_page.forms_with("trait_page")[0]
- # form2.fields[30].name.must_equal "variance:C57BL/6J"
- # form2.fields[30].value.must_equal "15.287"
-
- # Test every link on the page to check if it's broken or not
- page.links.each do |link|
- puts link.href
- if link.href !~ /#{SKIP}/ # /static\/dbdoc\/Hippocampus/ and link.href !~ /mailto:|glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
- # Fetch link, program will crash with exception if link is broken
- linkpage = @agent.get(link.href)
- puts "Link to #{link.href} is valid, response code #{linkpage.code}"
- end
- end
-
- end
-
- end
-
-end
diff --git a/test/lib/main_web_functionality.rb b/test/lib/main_web_functionality.rb
deleted file mode 100644
index 9ae49995..00000000
--- a/test/lib/main_web_functionality.rb
+++ /dev/null
@@ -1,62 +0,0 @@
-# In these tests we navigate from the main page to search
-
-class MainWebFunctionality
-end
-
-describe MainWebFunctionality do
- before do
- @agent = Mechanize.new
- @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
- end
-
- describe MainWebFunctionality do
-
- it "Get to trait page" do
- page = @agent.get($host)
- p page
- form = page.forms[1]
- form.buttons[0].value.must_equal "Search" # main menu is loaded
-
- # http://localhost:5003/search?species=mouse&group=BXD&type=Hippocampus+mRNA&dataset=HC_M2_0606_P&search_terms_or=&search_terms_and=MEAN%3D%2815+16%29+LRS%3D%2823+46%29&FormID=searchResult
- form.fields[0].value.must_equal "searchResult"
- form.fields[2].value = "MEAN=(15 16) LRS=(23 46)"
- form.fields[3].value = "mouse"
- form.fields[4].value = "BXD"
- form.fields[5].value = "Hippocampus mRNA"
- form.fields[6].value = "HC_M2_0606_P"
- search_page = @agent.submit(form, form.buttons.first)
- p "=================="
- p search_page
- probe_link = search_page.links.find { |l| l.text =~ /1435395_s_at/ }
- probe_link.uri.to_s.must_equal "/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P"
- show_trait_page = probe_link.click
- # p show_trait_page
-
- # Get to trait page for 1435395_s_at
-
- form2 = show_trait_page.forms_with("trait_page")[0]
- # [name: corr_dataset value: HC_M2_0606_P]
- form2.fields.select { |fld| fld.name == 'corr_dataset' }.first.value.must_equal 'HC_M2_0606_P'
- if $options[:database] == :small
- form2.fields[30].name.must_equal "value:DBA/2J"
- else
- form2.fields[30].name.must_equal "variance:C57BL/6J"
- end
- # form2.fields[30].value.must_equal "15.287"
-
- # Test every link on the page to check if it's broken or not
- break if not $options[:link_checker]
- show_trait_page.links.each do |link|
- puts link.href
- if link.href !~ /static\/dbdoc\/Hippocampus/ and link.href !~ /glossary.html|sample_r|grits.eecs.utk.edu|correlationAnnotation.html/
- # Fetch link, program will crash with exception if link is broken
- linkpage = @agent.get(link.href)
- puts "Link to #{link.href} is valid, response code #{linkpage.code}"
- end
- end
-
- end
-
- end
-
-end
diff --git a/test/lib/mapping.rb b/test/lib/mapping.rb
deleted file mode 100644
index 20e5bd40..00000000
--- a/test/lib/mapping.rb
+++ /dev/null
@@ -1,58 +0,0 @@
-# In these tests we navigate from the main page to a specific trait then hit the different mapping tool buttons (In this case pylMM and r/qtl) followed by computing the results (marker regressions).
-
-require 'gntest'
-
-class MappingTest
-end
-
-describe MappingTest do
- before do
- @agent = Mechanize.new
- @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
- end
-
- describe MappingTest do
- it "pylmm mapping tool selection" do
- url = $host+'/marker_regression'
-
- json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
- json["method"] = "pylmm"
- # p json
- page = @agent.post(URI.encode(url), json)
- # Unpacking the page is slow - somehow - but the run is enough as a test
- # form = page.forms_with("marker_regression")[0]
- # form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
- # form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal '6.749'
- end
- end
-
- describe MappingTest do
- it "R/qtl mapping tool selection" do
- url = $host+'/marker_regression' # ?trait_id=1435395_s_at&dataset=HC_M2_0606_P'
-
- json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
- # p json
- page = @agent.post(URI.encode(url),
- json,
- ({'Content-Type' => 'application/x-www-form-urlencoded'}))
- form = page.forms_with("marker_regression")[0]
- p form
- form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
- form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal "15.034"
- end
- end
-
- describe MappingTest do
- it "CIM mapping tool selection (using reaper)" do
- url = $host+'/marker_regression'
-
- json = JSON::load(File.read('test/data/input/mapping/1435395_s_at_HC_M2_0606_P.json'))
- json["method"] = "reaper"
- page = @agent.post(URI.encode(url), json)
- form = page.forms_with("marker_regression")[0]
- form.fields.select { |fld| fld.name == 'dataset' }.first.value.must_equal 'HC_M2_0606_P'
- form.fields.select { |fld| fld.name == 'value:BXD1' }.first.value.must_equal "15.034"
- end
- end
-
-end
diff --git a/test/lib/navigation.rb b/test/lib/navigation.rb
deleted file mode 100644
index ee9f41d2..00000000
--- a/test/lib/navigation.rb
+++ /dev/null
@@ -1,43 +0,0 @@
-# In these tests we navigate from the main page to a specific trait then hit the different mapping tool buttons (In this case pylMM and r/qtl) followed by computing the results (marker regressions).
-
-
-class MappingTest
-end
-
-describe MappingTest do
- before do
- @agent = Mechanize.new
- @agent.agent.http.ca_file = '/etc/ssl/certs/ca-certificates.crt'
- end
-
- describe MappingTest do
- it "pyLMM mapping tool selection" do
- break if $options[:skip_broken]
- page = @agent.get($host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P')
-#Navigates to http://localhost:5003/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P and clicks respective buttons.
- link = page.link_with(text: 'pyLMM')
- page = link.click
- puts page.uri
- link = page.link_with(text: 'Compute')
- page = link.click
- puts page.uri
- probe_link.uri.to_s.must_equal "/marker_regression"
- end
- end
-
-end
-
-describe MappingTest do
- it "R/qtl mapping tool selection" do
- break if $options[:skip_broken]
- page = @agent.get($host+'/show_trait?trait_id=1435395_s_at&dataset=HC_M2_0606_P')
- link = page.link_with(text: 'R/qtl')
- page = link.click
- puts page.uri
- form.field_with(:name => 'Methods').options[2].select
- link = page.link_with(text: 'Compute')
- page = link.click
- puts page.uri
- probe_link.uri.to_s.must_equal "/marker_regression"
- end
-end
diff --git a/wqflask/other_config/dot.pylintrc b/wqflask/other_config/dot.pylintrc
deleted file mode 100644
index 2774300a..00000000
--- a/wqflask/other_config/dot.pylintrc
+++ /dev/null
@@ -1,249 +0,0 @@
-[MASTER]
-
-# Specify a configuration file.
-#rcfile=
-
-# Python code to execute, usually for sys.path manipulation such as
-# pygtk.require().
-#init-hook=
-
-# Profiled execution.
-profile=no
-
-# Add files or directories to the blacklist. They should be base names, not
-# paths.
-ignore=CVS
-
-# Pickle collected data for later comparisons.
-persistent=yes
-
-# List of plugins (as comma separated values of python modules names) to load,
-# usually to register additional checkers.
-load-plugins=
-
-
-[MESSAGES CONTROL]
-
-# Enable the message, report, category or checker with the given id(s). You can
-# either give multiple identifier separated by comma (,) or put this option
-# multiple time.
-#enable=
-
-# Disable the message, report, category or checker with the given id(s). You
-# can either give multiple identifier separated by comma (,) or put this option
-# multiple time (only on the command line, not in the configuration file where
-# it should appear only once).
-#disable=
-
-
-[REPORTS]
-
-# Set the output format. Available formats are text, parseable, colorized, msvs
-# (visual studio) and html
-output-format=colorized
-
-# Include message's id in output
-include-ids=no
-
-# Put messages in a separate file for each module / package specified on the
-# command line instead of printing them on stdout. Reports (if any) will be
-# written in a file name "pylint_global.[txt|html]".
-files-output=no
-
-# Tells whether to display a full report or only the messages
-reports=yes
-
-# Python expression which should return a note less than 10 (10 is the highest
-# note). You have access to the variables errors warning, statement which
-# respectively contain the number of errors / warnings messages and the total
-# number of statements analyzed. This is used by the global evaluation report
-# (RP0004).
-evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
-
-# Add a comment according to your evaluation note. This is used by the global
-# evaluation report (RP0004).
-comment=no
-
-
-[MISCELLANEOUS]
-
-# List of note tags to take in consideration, separated by a comma.
-notes=FIXME,XXX,TODO
-
-
-[TYPECHECK]
-
-# Tells whether missing members accessed in mixin class should be ignored. A
-# mixin class is detected if its name ends with "mixin" (case insensitive).
-ignore-mixin-members=yes
-
-# List of classes names for which member attributes should not be checked
-# (useful for classes with attributes dynamically set).
-ignored-classes=SQLObject
-
-# When zope mode is activated, add a predefined set of Zope acquired attributes
-# to generated-members.
-zope=no
-
-# List of members which are set dynamically and missed by pylint inference
-# system, and so shouldn't trigger E0201 when accessed. Python regular
-# expressions are accepted.
-generated-members=REQUEST,acl_users,aq_parent
-
-
-[SIMILARITIES]
-
-# Minimum lines number of a similarity.
-min-similarity-lines=4
-
-# Ignore comments when computing similarities.
-ignore-comments=yes
-
-# Ignore docstrings when computing similarities.
-ignore-docstrings=yes
-
-
-[BASIC]
-
-# Required attributes for module, separated by a comma
-required-attributes=
-
-# List of builtins function names that should not be used, separated by a comma
-bad-functions=map,filter,apply,input
-
-# Regular expression which should only match correct module names
-module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
-
-# Regular expression which should only match correct module level names
-const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
-
-# Regular expression which should only match correct class names
-class-rgx=[A-Z_][a-zA-Z0-9]+$
-
-# Regular expression which should only match correct function names
-function-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct method names
-method-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct instance attribute names
-attr-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct argument names
-argument-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct variable names
-variable-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct list comprehension /
-# generator expression variable names
-inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
-
-# Good variable names which should always be accepted, separated by a comma
-good-names=i,j,k,ex,Run,_
-
-# Bad variable names which should always be refused, separated by a comma
-bad-names=foo,bar,baz,toto,tutu,tata
-
-# Regular expression which should only match functions or classes name which do
-# not require a docstring
-no-docstring-rgx=__.*__
-
-
-[VARIABLES]
-
-# Tells whether we should check for unused import in __init__ files.
-init-import=no
-
-# A regular expression matching the beginning of the name of dummy variables
-# (i.e. not used).
-dummy-variables-rgx=_|dummy
-
-# List of additional names supposed to be defined in builtins. Remember that
-# you should avoid to define new builtins when possible.
-additional-builtins=
-
-
-[FORMAT]
-
-# Maximum number of characters on a single line.
-max-line-length=100
-
-# Maximum number of lines in a module
-max-module-lines=1000
-
-# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
-# tab).
-indent-string=' '
-
-
-[IMPORTS]
-
-# Deprecated modules which should not be used, separated by a comma
-deprecated-modules=regsub,string,TERMIOS,Bastion,rexec
-
-# Create a graph of every (i.e. internal and external) dependencies in the
-# given file (report RP0402 must not be disabled)
-import-graph=
-
-# Create a graph of external dependencies in the given file (report RP0402 must
-# not be disabled)
-ext-import-graph=
-
-# Create a graph of internal dependencies in the given file (report RP0402 must
-# not be disabled)
-int-import-graph=
-
-
-[DESIGN]
-
-# Maximum number of arguments for function / method
-max-args=5
-
-# Argument names that match this expression will be ignored. Default to name
-# with leading underscore
-ignored-argument-names=_.*
-
-# Maximum number of locals for function / method body
-max-locals=15
-
-# Maximum number of return / yield for function / method body
-max-returns=6
-
-# Maximum number of branch for function / method body
-max-branchs=12
-
-# Maximum number of statements in function / method body
-max-statements=50
-
-# Maximum number of parents for a class (see R0901).
-max-parents=7
-
-# Maximum number of attributes for a class (see R0902).
-max-attributes=7
-
-# Minimum number of public methods for a class (see R0903).
-min-public-methods=2
-
-# Maximum number of public methods for a class (see R0904).
-max-public-methods=20
-
-
-[CLASSES]
-
-# List of interface methods to ignore, separated by a comma. This is used for
-# instance to not check methods defines in Zope's Interface base class.
-ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
-
-# List of method names used to declare (i.e. assign) instance attributes.
-defining-attr-methods=__init__,__new__,setUp
-
-# List of valid names for the first argument in a class method.
-valid-classmethod-first-arg=cls
-
-
-[EXCEPTIONS]
-
-# Exceptions that will emit a warning when being caught. Defaults to
-# "Exception"
-overgeneral-exceptions=Exception
diff --git a/wqflask/other_config/nginx-old.conf b/wqflask/other_config/nginx-old.conf
deleted file mode 100644
index 65ee768c..00000000
--- a/wqflask/other_config/nginx-old.conf
+++ /dev/null
@@ -1,108 +0,0 @@
-
-#user nobody;
-worker_processes 1;
-
-#error_log logs/error.log;
-#error_log logs/error.log notice;
-#error_log logs/error.log info;
-
-#pid logs/nginx.pid;
-
-
-events {
- worker_connections 1024;
-}
-
-
-http {
- include mime.types;
- default_type application/octet-stream;
-
- #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
- # '$status $body_bytes_sent "$http_referer" '
- # '"$http_user_agent" "$http_x_forwarded_for"';
-
- #access_log logs/access.log main;
-
- sendfile on;
- #tcp_nopush on;
-
- #keepalive_timeout 0;
- keepalive_timeout 65;
-
- gzip on;
-
- server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
- listen 80;
-
- server_name _;
-
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
-
- location ^~ /css/ {
- root /home/sam/gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /home/sam/gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /home/sam/gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /home/sam/gene/wqflask/wqflask/static/;
- }
-
- location / {
- proxy_pass http://127.0.0.1:5000/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- }
-
- }
-
-
- # another virtual host using mix of IP-, name-, and port-based configuration
- #
- #server {
- # listen 8000;
- # listen somename:8080;
- # server_name somename alias another.alias;
-
- # location / {
- # root html;
- # index index.html index.htm;
- # }
- #}
-
-
- # HTTPS server
- #
- #server {
- # listen 443;
- # server_name localhost;
-
- # ssl on;
- # ssl_certificate cert.pem;
- # ssl_certificate_key cert.key;
-
- # ssl_session_timeout 5m;
-
- # ssl_protocols SSLv2 SSLv3 TLSv1;
- # ssl_ciphers HIGH:!aNULL:!MD5;
- # ssl_prefer_server_ciphers on;
-
- # location / {
- # root html;
- # index index.html index.htm;
- # }
- #}
-
-}
diff --git a/wqflask/other_config/nginx_conf/gn2-lei.conf b/wqflask/other_config/nginx_conf/gn2-lei.conf
deleted file mode 100644
index 893ad435..00000000
--- a/wqflask/other_config/nginx_conf/gn2-lei.conf
+++ /dev/null
@@ -1,41 +0,0 @@
-server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
- listen 80;
-
- server_name gn2-lei.genenetwork.org;
-
- access_log /var/log/nginx/lei_access.log;
- error_log /var/log/nginx/lei_error.log;
-
- location ^~ /css/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- ### New - added by Sam
- #location ^~ /static/ {
- # root /gene/wqflask/wqflask/static/;
- #}
-
- location / {
- proxy_pass http://127.0.0.1:5001/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-
- proxy_read_timeout 40m;
- }
-}
diff --git a/wqflask/other_config/nginx_conf/gn2-zach.conf b/wqflask/other_config/nginx_conf/gn2-zach.conf
deleted file mode 100644
index 38347292..00000000
--- a/wqflask/other_config/nginx_conf/gn2-zach.conf
+++ /dev/null
@@ -1,52 +0,0 @@
-server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
- listen 80;
-
- server_name gn2-zach.genenetwork.org;
-
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
-
- location ^~ /css/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- ### New - added by Sam
- #location ^~ /static/ {
- # root /gene/wqflask/wqflask/static/;
- #}
-
- location /plink_gemma/ {
- root /home/zas1024/gene/wqflask/wqflask/;
- autoindex on;
- }
-
- location /download/ {
- root /home/zas1024/gene/wqflask/wqflask/;
- autoindex on;
- }
-
- location / {
- proxy_pass http://127.0.0.1:5002/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-
- proxy_read_timeout 40m;
- }
-}
-
diff --git a/wqflask/other_config/nginx_conf/gn2.conf b/wqflask/other_config/nginx_conf/gn2.conf
deleted file mode 100644
index a51b4113..00000000
--- a/wqflask/other_config/nginx_conf/gn2.conf
+++ /dev/null
@@ -1,41 +0,0 @@
-server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
- listen 80;
-
- server_name gn2.genenetwork.org;
-
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
-
- location ^~ /css/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- ### New - added by Sam
- #location ^~ /static/ {
- # root /gene/wqflask/wqflask/static/;
- #}
-
- location / {
- proxy_pass http://127.0.0.1:5000/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-
- proxy_read_timeout 40m;
- }
-}
diff --git a/wqflask/other_config/nginx_conf/gn2_sam.conf b/wqflask/other_config/nginx_conf/gn2_sam.conf
deleted file mode 100644
index f9abbbd2..00000000
--- a/wqflask/other_config/nginx_conf/gn2_sam.conf
+++ /dev/null
@@ -1,42 +0,0 @@
-server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
- listen 80;
-
- server_name gn2_sam.genenetwork.org;
-
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
-
- location ^~ /css/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- ### New - added by Sam
- #location ^~ /static/ {
- # root /gene/wqflask/wqflask/static/;
- #}
-
- location / {
- proxy_pass http://127.0.0.1:5005/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-
- proxy_read_timeout 40m;
- }
-}
-
diff --git a/wqflask/other_config/nginx_conf/penguin.conf b/wqflask/other_config/nginx_conf/penguin.conf
deleted file mode 100644
index c819951c..00000000
--- a/wqflask/other_config/nginx_conf/penguin.conf
+++ /dev/null
@@ -1,44 +0,0 @@
-server {
- # Modeled after http://flask.pocoo.org/docs/deploying/wsgi-standalone/
-
- client_max_body_size 20M;
- listen 80;
-
- server_name penguin.uthsc.edu;
-
- access_log /var/log/nginx/access.log;
- error_log /var/log/nginx/error.log;
-
- location ^~ /css/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- location ^~ /javascript/ {
- root /gene/wqflask/wqflask/static/;
- }
-
-# location ^~ /image/ {
-# root /gene/wqflask/wqflask/static/;
-# }
-
- location ^~ /images/ {
- root /gene/wqflask/wqflask/static/;
- }
-
- ### New - added by Sam
- #location ^~ /static/ {
- # root /gene/wqflask/wqflask/static/;
- #}
-
- location / {
- proxy_pass http://127.0.0.1:5000/;
- proxy_redirect off;
-
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-
- proxy_read_timeout 40m;
- }
-}
-
diff --git a/wqflask/other_config/pylintrc b/wqflask/other_config/pylintrc
deleted file mode 100644
index b23af7a4..00000000
--- a/wqflask/other_config/pylintrc
+++ /dev/null
@@ -1,264 +0,0 @@
-[MASTER]
-
-# Specify a configuration file.
-#rcfile=
-
-# Python code to execute, usually for sys.path manipulation such as
-# pygtk.require().
-#init-hook=
-
-# Profiled execution.
-profile=no
-
-# Add files or directories to the blacklist. They should be base names, not
-# paths.
-ignore=CVS
-
-# Pickle collected data for later comparisons.
-persistent=yes
-
-# List of plugins (as comma separated values of python modules names) to load,
-# usually to register additional checkers.
-load-plugins=
-
-
-[MESSAGES CONTROL]
-
-# Enable the message, report, category or checker with the given id(s). You can
-# either give multiple identifier separated by comma (,) or put this option
-# multiple time. See also the "--disable" option for examples.
-#enable=
-
-# Disable the message, report, category or checker with the given id(s). You
-# can either give multiple identifiers separated by comma (,) or put this
-# option multiple times (only on the command line, not in the configuration
-# file where it should appear only once).You can also use "--disable=all" to
-# disable everything first and then reenable specific checks. For example, if
-# you want to run only the similarities checker, you can use "--disable=all
-# --enable=similarities". If you want to run only the classes checker, but have
-# no Warning level messages displayed, use"--disable=all --enable=classes
-# --disable=W"
-disable=no-init, star-args, no-member, import-error
-
-
-[REPORTS]
-
-# Set the output format. Available formats are text, parseable, colorized, msvs
-# (visual studio) and html. You can also give a reporter class, eg
-# mypackage.mymodule.MyReporterClass.
-output-format=text
-
-# Include message's id in output
-include-ids=no
-
-# Include symbolic ids of messages in output
-symbols=no
-
-# Put messages in a separate file for each module / package specified on the
-# command line instead of printing them on stdout. Reports (if any) will be
-# written in a file name "pylint_global.[txt|html]".
-files-output=no
-
-# Tells whether to display a full report or only the messages
-reports=yes
-
-# Python expression which should return a note less than 10 (10 is the highest
-# note). You have access to the variables errors warning, statement which
-# respectively contain the number of errors / warnings messages and the total
-# number of statements analyzed. This is used by the global evaluation report
-# (RP0004).
-evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
-
-# Add a comment according to your evaluation note. This is used by the global
-# evaluation report (RP0004).
-comment=no
-
-
-[SIMILARITIES]
-
-# Minimum lines number of a similarity.
-min-similarity-lines=4
-
-# Ignore comments when computing similarities.
-ignore-comments=yes
-
-# Ignore docstrings when computing similarities.
-ignore-docstrings=yes
-
-# Ignore imports when computing similarities.
-ignore-imports=no
-
-
-[VARIABLES]
-
-# Tells whether we should check for unused import in __init__ files.
-init-import=no
-
-# A regular expression matching the beginning of the name of dummy variables
-# (i.e. not used).
-dummy-variables-rgx=_|dummy
-
-# List of additional names supposed to be defined in builtins. Remember that
-# you should avoid to define new builtins when possible.
-additional-builtins=
-
-
-[BASIC]
-
-# Required attributes for module, separated by a comma
-required-attributes=
-
-# List of builtins function names that should not be used, separated by a comma
-bad-functions=map,filter,apply,input
-
-# Regular expression which should only match correct module names
-module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
-
-# Regular expression which should only match correct module level names
-const-rgx=(([A-Z_][A-Za-z0-9_]*)|(__.*__))$
-
-# Regular expression which should only match correct class names
-class-rgx=[A-Z_][a-zA-Z0-9]+$
-
-# Regular expression which should only match correct function names
-function-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct method names
-method-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct instance attribute names
-attr-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct argument names
-argument-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct variable names
-variable-rgx=[a-z_][a-z0-9_]{2,30}$
-
-# Regular expression which should only match correct list comprehension /
-# generator expression variable names
-inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
-
-# Good variable names which should always be accepted, separated by a comma
-good-names=i,j,k,ex,Run,_
-
-# Bad variable names which should always be refused, separated by a comma
-bad-names=foo,bar,baz,toto,tutu,tata
-
-# Regular expression which should only match functions or classes name which do
-# not require a docstring
-no-docstring-rgx=__.*__
-
-
-[FORMAT]
-
-# Maximum number of characters on a single line.
-max-line-length=100
-
-# Maximum number of lines in a module
-max-module-lines=1000
-
-# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
-# tab).
-indent-string=' '
-
-
-[MISCELLANEOUS]
-
-# List of note tags to take in consideration, separated by a comma.
-notes=FIXME,XXX,TODO
-
-
-[TYPECHECK]
-
-# Tells whether missing members accessed in mixin class should be ignored. A
-# mixin class is detected if its name ends with "mixin" (case insensitive).
-ignore-mixin-members=yes
-
-# List of classes names for which member attributes should not be checked
-# (useful for classes with attributes dynamically set).
-ignored-classes=SQLObject
-
-# When zope mode is activated, add a predefined set of Zope acquired attributes
-# to generated-members.
-zope=no
-
-# List of members which are set dynamically and missed by pylint inference
-# system, and so shouldn't trigger E0201 when accessed. Python regular
-# expressions are accepted.
-generated-members=REQUEST,acl_users,aq_parent
-
-
-[DESIGN]
-
-# Maximum number of arguments for function / method
-max-args=5
-
-# Argument names that match this expression will be ignored. Default to name
-# with leading underscore
-ignored-argument-names=_.*
-
-# Maximum number of locals for function / method body
-max-locals=15
-
-# Maximum number of return / yield for function / method body
-max-returns=6
-
-# Maximum number of branch for function / method body
-max-branchs=12
-
-# Maximum number of statements in function / method body
-max-statements=50
-
-# Maximum number of parents for a class (see R0901).
-max-parents=7
-
-# Maximum number of attributes for a class (see R0902).
-max-attributes=7
-
-# Minimum number of public methods for a class (see R0903).
-min-public-methods=2
-
-# Maximum number of public methods for a class (see R0904).
-max-public-methods=20
-
-
-[IMPORTS]
-
-# Deprecated modules which should not be used, separated by a comma
-deprecated-modules=regsub,string,TERMIOS,Bastion,rexec
-
-# Create a graph of every (i.e. internal and external) dependencies in the
-# given file (report RP0402 must not be disabled)
-import-graph=
-
-# Create a graph of external dependencies in the given file (report RP0402 must
-# not be disabled)
-ext-import-graph=
-
-# Create a graph of internal dependencies in the given file (report RP0402 must
-# not be disabled)
-int-import-graph=
-
-
-[CLASSES]
-
-# List of interface methods to ignore, separated by a comma. This is used for
-# instance to not check methods defines in Zope's Interface base class.
-ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
-
-# List of method names used to declare (i.e. assign) instance attributes.
-defining-attr-methods=__init__,__new__,setUp
-
-# List of valid names for the first argument in a class method.
-valid-classmethod-first-arg=cls
-
-# List of valid names for the first argument in a metaclass class method.
-valid-metaclass-classmethod-first-arg=mcs
-
-
-[EXCEPTIONS]
-
-# Exceptions that will emit a warning when being caught. Defaults to
-# "Exception"
-overgeneral-exceptions=Exception
diff --git a/wqflask/utility/elasticsearch_tools.py b/wqflask/utility/elasticsearch_tools.py
index 075a8f65..d35cb5ee 100644
--- a/wqflask/utility/elasticsearch_tools.py
+++ b/wqflask/utility/elasticsearch_tools.py
@@ -12,6 +12,7 @@ def test_elasticsearch_connection():
logger.warning("Elasticsearch is DOWN")
def get_elasticsearch_connection():
+ """Return a connection to ES. Returns None on failure"""
logger.info("get_elasticsearch_connection")
es = None
try:
@@ -20,14 +21,14 @@ def get_elasticsearch_connection():
logger.info("ES HOST",ELASTICSEARCH_HOST)
es = Elasticsearch([{
- "host": ELASTICSEARCH_HOST
- , "port": ELASTICSEARCH_PORT
+ "host": ELASTICSEARCH_HOST, "port": ELASTICSEARCH_PORT
}]) if (ELASTICSEARCH_HOST and ELASTICSEARCH_PORT) else None
es_logger = logging.getLogger("elasticsearch")
es_logger.setLevel(logging.INFO)
es_logger.addHandler(logging.NullHandler())
except:
+ logger.error("Failed to get elasticsearch connection")
es = None
return es
@@ -42,9 +43,7 @@ def get_item_by_unique_column(es, column_name, column_value, index, doc_type):
item_details = None
try:
response = es.search(
- index = index
- , doc_type = doc_type
- , body = {
+ index = index, doc_type = doc_type, body = {
"query": { "match": { column_name: column_value } }
})
if len(response["hits"]["hits"]) > 0:
diff --git a/wqflask/wqflask/collect.py b/wqflask/wqflask/collect.py
index 629977ac..ffc698de 100644
--- a/wqflask/wqflask/collect.py
+++ b/wqflask/wqflask/collect.py
@@ -227,6 +227,7 @@ def collections_add():
traits=request.args['traits']
if g.user_session.logged_in:
+ logger.debug("user_session",g.user_session)
user_collections = g.user_session.user_ob.user_collections
logger.debug("user_collections are:", user_collections)
return render_template("collections/add.html",
diff --git a/wqflask/wqflask/correlation/show_corr_results.py b/wqflask/wqflask/correlation/show_corr_results.py
index 2c6c3a14..73072423 100644
--- a/wqflask/wqflask/correlation/show_corr_results.py
+++ b/wqflask/wqflask/correlation/show_corr_results.py
@@ -196,28 +196,29 @@ class CorrelationResults(object):
self.get_sample_r_and_p_values(trait, self.target_dataset.trait_data[trait])
elif self.corr_type == "sample":
- if self.dataset.type == "ProbeSet" and cache_available:
- dataset_file = open(webqtlConfig.GENERATED_TEXT_DIR+db_filename,'r')
-
- #XZ, 01/08/2009: read the first line
- line = dataset_file.readline()
- dataset_strains = webqtlUtil.readLineCSV(line)[1:]
-
- self.this_trait_vals = []
- for item in dataset_strains:
- if item in self.sample_data:
- self.this_trait_vals.append(self.sample_data[item])
- else:
- self.this_trait_vals.append("None")
- num_overlap = len(self.this_trait_vals)
- logger.debug("DOING PARALLEL")
- self.do_parallel_correlation(db_filename, num_overlap)
- else:
- for trait, values in self.target_dataset.trait_data.iteritems():
- self.get_sample_r_and_p_values(trait, values)
+ #ZS: Commented out since parallel correlation has issues with gunicorn
+ # if self.dataset.type == "ProbeSet" and cache_available:
+ # dataset_file = open(webqtlConfig.GENERATED_TEXT_DIR+db_filename,'r')
+
+ ##XZ, 01/08/2009: read the first line
+ # line = dataset_file.readline()
+ # dataset_strains = webqtlUtil.readLineCSV(line)[1:]
+
+ # self.this_trait_vals = []
+ # for item in dataset_strains:
+ # if item in self.sample_data:
+ # self.this_trait_vals.append(self.sample_data[item])
+ # else:
+ # self.this_trait_vals.append("None")
+ # num_overlap = len(self.this_trait_vals)
+ # logger.debug("DOING PARALLEL")
+ # self.do_parallel_correlation(db_filename, num_overlap)
+ # else:
+ for trait, values in self.target_dataset.trait_data.iteritems():
+ self.get_sample_r_and_p_values(trait, values)
- self.correlation_data = collections.OrderedDict(sorted(self.correlation_data.items(),
- key=lambda t: -abs(t[1][0])))
+ self.correlation_data = collections.OrderedDict(sorted(self.correlation_data.items(),
+ key=lambda t: -abs(t[1][0])))
if self.target_dataset.type == "ProbeSet" or self.target_dataset.type == "Geno":
diff --git a/wqflask/wqflask/do_search.py b/wqflask/wqflask/do_search.py
index e1df1e63..17625474 100644
--- a/wqflask/wqflask/do_search.py
+++ b/wqflask/wqflask/do_search.py
@@ -989,3 +989,4 @@ if __name__ == "__main__":
#results = GoSearch("0045202", dataset, cursor, db_conn).run()
logger.debug("results are:", pf(results))
+ db_conn.close()
diff --git a/wqflask/wqflask/static/dbdoc/TODO.md b/wqflask/wqflask/static/dbdoc/TODO.md
deleted file mode 100644
index c0a8bab7..00000000
--- a/wqflask/wqflask/static/dbdoc/TODO.md
+++ /dev/null
@@ -1 +0,0 @@
-TODO: Add all database documentation into this folder
diff --git a/wqflask/wqflask/static/new/javascript/plotly_probability_plot.js b/wqflask/wqflask/static/new/javascript/plotly_probability_plot.js
new file mode 100644
index 00000000..49fd53b1
--- /dev/null
+++ b/wqflask/wqflask/static/new/javascript/plotly_probability_plot.js
@@ -0,0 +1,246 @@
+// Generated by CoffeeScript 1.9.2
+(function() {
+ var get_z_scores, redraw_prob_plot, root;
+
+ root = typeof exports !== "undefined" && exports !== null ? exports : this;
+
+ get_z_scores = function(n) {
+ var i, j, osm_uniform, ref, x;
+ osm_uniform = new Array(n);
+ osm_uniform[n - 1] = Math.pow(0.5, 1.0 / n);
+ osm_uniform[0] = 1 - osm_uniform[n - 1];
+ for (i = j = 1, ref = n - 2; 1 <= ref ? j <= ref : j >= ref; i = 1 <= ref ? ++j : --j) {
+ osm_uniform[i] = (i + 1 - 0.3175) / (n + 0.365);
+ }
+ return (function() {
+ var k, len, results;
+ results = [];
+ for (k = 0, len = osm_uniform.length; k < len; k++) {
+ x = osm_uniform[k];
+ results.push(jStat.normal.inv(x, 0, 1));
+ }
+ return results;
+ })();
+ };
+
+ redraw_prob_plot = function(samples, sample_group) {
+ var container, h, margin, totalh, totalw, w;
+ h = 600;
+ w = 600;
+ margin = {
+ left: 60,
+ top: 40,
+ right: 40,
+ bottom: 40,
+ inner: 5
+ };
+ totalh = h + margin.top + margin.bottom;
+ totalw = w + margin.left + margin.right;
+ container = $("#prob_plot_container");
+ container.width(totalw);
+ container.height(totalh);
+ var W, all_samples, chart, data, intercept, make_data, names, pvalue, pvalue_str, slope, sorted_names, sorted_values, sw_result, test_str, x, z_scores;
+ all_samples = samples[sample_group];
+ names = (function() {
+ var j, len, ref, results;
+ ref = _.keys(all_samples);
+ results = [];
+ for (j = 0, len = ref.length; j < len; j++) {
+ x = ref[j];
+ if (all_samples[x] !== null) {
+ results.push(x);
+ }
+ }
+ return results;
+ })();
+ sorted_names = names.sort(function(x, y) {
+ return all_samples[x].value - all_samples[y].value;
+ });
+ max_decimals = 0
+ sorted_values = (function() {
+ var j, len, results;
+ results = [];
+ for (j = 0, len = sorted_names.length; j < len; j++) {
+ x = sorted_names[j];
+ results.push(all_samples[x].value);
+ if (all_samples[x].value.countDecimals() > max_decimals) {
+ max_decimals = all_samples[x].value.countDecimals()-1
+ }
+ }
+ return results;
+ })();
+ //ZS: 0.1 indicates buffer, increase to increase buffer
+ y_domain = [sorted_values[0] - (sorted_values.slice(-1)[0] - sorted_values[0])*0.1, sorted_values.slice(-1)[0] + (sorted_values.slice(-1)[0] - sorted_values[0])*0.1]
+ sw_result = ShapiroWilkW(sorted_values);
+ W = sw_result.w.toFixed(3);
+ pvalue = sw_result.p.toFixed(3);
+ pvalue_str = pvalue > 0.05 ? pvalue.toString() : "<span style='color:red'>" + pvalue + "</span>";
+ test_str = "Shapiro-Wilk test statistic is " + W + " (p = " + pvalue_str + ")";
+ z_scores = get_z_scores(sorted_values.length);
+ //ZS: 0.1 indicates buffer, increase to increase buffer
+ x_domain = [z_scores[0] - (z_scores.slice(-1)[0] - z_scores[0])*0.1, z_scores.slice(-1)[0] + (z_scores.slice(-1)[0] - z_scores[0])*0.1]
+ slope = jStat.stdev(sorted_values);
+ intercept = jStat.mean(sorted_values);
+ make_data = function(group_name) {
+ var sample, value, z_score;
+ return {
+ key: js_data.sample_group_types[group_name],
+ slope: slope,
+ intercept: intercept,
+ values: (function() {
+ var j, len, ref, ref1, results;
+ ref = _.zip(get_z_scores(sorted_values.length), sorted_values, sorted_names);
+ results = [];
+ for (j = 0, len = ref.length; j < len; j++) {
+ ref1 = ref[j], z_score = ref1[0], value = ref1[1], sample = ref1[2];
+ if (sample in samples[group_name]) {
+ results.push({
+ x: z_score,
+ y: value,
+ name: sample
+ });
+ }
+ }
+ return results;
+ })()
+ };
+ };
+ data = [make_data('samples_primary'), make_data('samples_other'), make_data('samples_all')];
+ console.log("THE DATA IS:", data);
+ x_values = {}
+ y_values = {}
+ point_names = {}
+ for (i = 0; i < 3; i++){
+ these_x_values = []
+ these_y_values = []
+ these_names = []
+ for (j = 0; j < data[i].values.length; j++){
+ these_x_values.push(data[i].values[j].x)
+ these_y_values.push(data[i].values[j].y)
+ these_names.push(data[i].values[j].name)
+ }
+ if (i == 0){
+ x_values['samples_primary'] = these_x_values
+ y_values['samples_primary'] = these_y_values
+ point_names['samples_primary'] = these_names
+ } else if (i == 1) {
+ x_values['samples_other'] = these_x_values
+ y_values['samples_other'] = these_y_values
+ point_names['samples_other'] = these_names
+ } else {
+ x_values['samples_all'] = these_x_values
+ y_values['samples_all'] = these_y_values
+ point_names['samples_all'] = these_names
+ }
+ }
+
+ intercept_line = {}
+
+ if (sample_group == "samples_primary"){
+ first_x = Math.floor(x_values['samples_primary'][0])
+ first_x = first_x - first_x*0.1
+ last_x = Math.ceil(x_values['samples_primary'][x_values['samples_primary'].length - 1])
+ last_x = last_x + last_x*0.1
+ first_value = data[0].intercept + data[0].slope * first_x
+ last_value = data[0].intercept + data[0].slope * last_x
+ intercept_line['samples_primary'] = [[first_x, last_x], [first_value, last_value]]
+ } else if (sample_group == "samples_other") {
+ first_x = Math.floor(x_values['samples_other'][0])
+ first_x = first_x - first_x*0.1
+ last_x = Math.ceil(x_values['samples_other'][x_values['samples_other'].length - 1])
+ last_x = last_x + last_x*0.1
+ first_value = data[1].intercept + data[1].slope * first_x
+ last_value = data[1].intercept + data[1].slope * last_x
+ intercept_line['samples_other'] = [[first_x, last_x], [first_value, last_value]]
+ } else {
+ first_x = Math.floor(x_values['samples_all'][0])
+ first_x = first_x - first_x*0.1
+ last_x = Math.ceil(x_values['samples_all'][x_values['samples_all'].length - 1])
+ first_value = data[2].intercept + data[2].slope * first_x
+ last_x = last_x + last_x*0.1
+ last_value = data[2].intercept + data[2].slope * last_x
+ intercept_line['samples_all'] = [[first_x, last_x], [first_value, last_value]]
+ }
+
+ var layout = {
+ margin: {
+ l: 50,
+ r: 30,
+ t: 30,
+ b: 80
+ },
+ xaxis: {
+ range: [first_x, last_x],
+ zeroline: false,
+ visible: true,
+ linecolor: 'black',
+ linewidth: 1,
+ },
+ yaxis: {
+ zeroline: false,
+ visible: true,
+ linecolor: 'black',
+ linewidth: 1,
+ }
+ }
+
+ var primary_trace = {
+ x: x_values['samples_primary'],
+ y: y_values['samples_primary'],
+ mode: 'markers',
+ type: 'scatter',
+ name: js_data.sample_group_types['samples_primary'],
+ text: point_names['samples_primary']
+ }
+ if ("samples_other" in js_data.sample_group_types) {
+ var other_trace = {
+ x: x_values['samples_other'],
+ y: y_values['samples_other'],
+ mode: 'markers',
+ type: 'scatter',
+ name: js_data.sample_group_types['samples_other'],
+ text: point_names['samples_other']
+ }
+ }
+
+ if (sample_group == "samples_primary"){
+ var primary_intercept_trace = {
+ x: intercept_line['samples_primary'][0],
+ y: intercept_line['samples_primary'][1],
+ mode: 'lines',
+ type: 'scatter',
+ name: 'Intercept',
+ }
+ } else if (sample_group == "samples_other"){
+ var other_intercept_trace = {
+ x: intercept_line['samples_other'][0],
+ y: intercept_line['samples_other'][1],
+ mode: 'lines',
+ type: 'scatter',
+ name: 'Intercept',
+ }
+ } else {
+ var all_intercept_trace = {
+ x: intercept_line['samples_all'][0],
+ y: intercept_line['samples_all'][1],
+ mode: 'lines',
+ type: 'scatter',
+ name: 'Intercept',
+ }
+ }
+
+ if (sample_group == "samples_primary"){
+ var data = [primary_trace, primary_intercept_trace]
+ } else if (sample_group == "samples_other"){
+ var data = [other_trace, other_intercept_trace]
+ } else {
+ var data = [primary_trace, other_trace, all_intercept_trace]
+ }
+
+ console.log("TRACE:", data)
+ Plotly.newPlot('prob_plot_div', data, layout)
+ };
+
+ root.redraw_prob_plot_impl = redraw_prob_plot;
+
+}).call(this);
diff --git a/wqflask/wqflask/static/new/javascript/show_trait.js b/wqflask/wqflask/static/new/javascript/show_trait.js
index df10c060..117d8f12 100644
--- a/wqflask/wqflask/static/new/javascript/show_trait.js
+++ b/wqflask/wqflask/static/new/javascript/show_trait.js
@@ -250,15 +250,29 @@
};
redraw_box_plot = function() {
- var x;
- var _i, _len, _ref, data;
- _ref = _.values(root.selected_samples[root.stats_group]);
- trait_vals = [];
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- x = _ref[_i];
- trait_vals.push(x.value);
+ var y_value_list = []
+ for (var sample_group in root.selected_samples){
+ var trait_sample_data = _.values(root.selected_samples[sample_group])
+ var trait_vals = [];
+ for (i = 0, len = trait_sample_data.length; i < len; i++) {
+ this_sample_data = trait_sample_data[i];
+ trait_vals.push(this_sample_data.value);
+ }
+ y_value_list.push(trait_vals)
+ }
+
+ if (Object.keys(js_data.sample_group_types).length > 1) {
+ var update = {
+ y: y_value_list
+ }
+ console.log("REDRAW UPDATE:", update)
+ Plotly.restyle('box_plot', update, [0, 1, 2])
+ } else {
+ var update = {
+ y: y_value_list
+ }
+ Plotly.restyle('box_plot', update)
}
- Plotly.restyle('box_plot', 'y', [trait_vals])
}
redraw_prob_plot = function() {
@@ -640,6 +654,108 @@
};
root.stats_group = 'samples_primary';
+
+ if (Object.keys(js_data.sample_group_types).length > 1) {
+ full_sample_lists = [sample_lists[0], sample_lists[1], sample_lists[0].concat(sample_lists[1])]
+ sample_group_list = [js_data.sample_group_types['samples_primary'], js_data.sample_group_types['samples_other'], js_data.sample_group_types['samples_all']]
+ } else {
+ full_sample_lists = [sample_lists[0]]
+ sample_group_list = [js_data.sample_group_types['samples_primary']]
+ }
+
+ if (full_sample_lists.length > 1) {
+ var box_layout = {
+ width: 1200,
+ height: 500,
+ margin: {
+ l: 50,
+ r: 30,
+ t: 30,
+ b: 80
+ }
+ };
+ var trace1 = {
+ y: get_sample_vals(full_sample_lists[0]),
+ type: 'box',
+ name: sample_group_list[0],
+ boxpoints: 'all',
+ jitter: 0.5,
+ whiskerwidth: 0.2,
+ fillcolor: 'cls',
+ marker: {
+ size: 2
+ },
+ line: {
+ width: 1
+ }
+ }
+ var trace2 = {
+ y: get_sample_vals(full_sample_lists[1]),
+ type: 'box',
+ name: sample_group_list[1],
+ boxpoints: 'all',
+ jitter: 0.5,
+ whiskerwidth: 0.2,
+ fillcolor: 'cls',
+ marker: {
+ size: 2
+ },
+ line: {
+ width: 1
+ }
+ }
+ var trace3 = {
+ y: get_sample_vals(full_sample_lists[2]),
+ type: 'box',
+ name: sample_group_list[2],
+ boxpoints: 'all',
+ jitter: 0.5,
+ whiskerwidth: 0.2,
+ fillcolor: 'cls',
+ marker: {
+ size: 2
+ },
+ line: {
+ width: 1
+ }
+ }
+ box_data = [trace1, trace2, trace3]
+ } else {
+ var box_layout = {
+ width: 500,
+ height: 500,
+ margin: {
+ l: 50,
+ r: 30,
+ t: 30,
+ b: 80
+ }
+ };
+ box_data = [
+ {
+ type: 'box',
+ y: get_sample_vals(full_sample_lists[0]),
+ name: sample_group_list[0],
+ boxpoints: 'all',
+ jitter: 0.5,
+ whiskerwidth: 0.2,
+ fillcolor: 'cls',
+ marker: {
+ size: 2
+ },
+ line: {
+ width: 1
+ }
+ }
+ ]
+ }
+
+ obj = {
+ data: box_data,
+ layout: box_layout
+ }
+ Plotly.newPlot('box_plot', obj);
+
// Histogram
var hist_trace = {
x: get_sample_vals(sample_lists[0]),
@@ -686,50 +802,6 @@
root.bar_layout = layout
Plotly.newPlot('bar_chart', root.bar_data, layout)
- if (Object.keys(js_data.sample_group_types).length > 1) {
- full_sample_lists = [sample_lists[0], sample_lists[1], sample_lists[0].concat(sample_lists[1])]
- sample_group_list = [js_data.sample_group_types['samples_primary'], js_data.sample_group_types['samples_other'], js_data.sample_group_types['samples_all']]
- } else {
- full_sample_lists = [sample_lists[0]]
- sample_group_list = [js_data.sample_group_types['samples_primary']]
- }
-
- data = []
- for ( var i = 0; i < full_sample_lists.length; i ++ ) {
- var box_trace = {
- type: 'box',
- y: get_sample_vals(full_sample_lists[i]),
- name: sample_group_list[i],
- boxpoints: 'all',
- jitter: 0.5,
- whiskerwidth: 0.2,
- fillcolor: 'cls',
- marker: {
- size: 2
- },
- line: {
- width: 1
- }
- };
- data.push(box_trace)
- };
- layout = {
- title: 'Box Plot',
- yaxis: {
- autorange: true,
- showgrid: true,
- zeroline: true
- },
- margin: {
- l: 50,
- r: 30,
- t: 80,
- b: 80
- }
- };
-
- Plotly.newPlot('box_plot', data, layout);
-
$('.histogram_samples_group').val(root.stats_group);
$('.histogram_samples_group').change(function() {
root.stats_group = $(this).val();
diff --git a/wqflask/wqflask/static/packages/ckeditor/CHANGES.md b/wqflask/wqflask/static/packages/ckeditor/CHANGES.md
deleted file mode 100644
index 9bfaef34..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/CHANGES.md
+++ /dev/null
@@ -1,671 +0,0 @@
-CKEditor 4 Changelog
-====================
-
-## CKEditor 4.4.5
-
-New Features:
-
-* [#12279](http://dev.ckeditor.com/ticket/12279): Added a possibility to pass a custom evaluator to [`node.getAscendant()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.node-method-getAscendant).
-
-Fixed Issues:
-
-* [#12423](http://dev.ckeditor.com/ticket/12423): [Safari7.1+] Fixed: *Enter* key moved cursor to a strange position.
-* [#12381](http://dev.ckeditor.com/ticket/12381): [iOS] Fixed: Selection issue. Thanks to [Remiremi](https://github.com/Remiremi)!
-* [#10804](http://dev.ckeditor.com/ticket/10804): Fixed: `CKEDITOR_GETURL` is not used with some plugins where it should be used. Thanks to [Thomas Andraschko](https://github.com/tandraschko)!
-* [#9137](http://dev.ckeditor.com/ticket/9137): Fixed: The `<base>` tag is not created when `<head>` has an attribute. Thanks to [naoki.fujikawa](https://github.com/naoki-fujikawa)!
-* [#12377](http://dev.ckeditor.com/ticket/12377): Fixed: Errors thrown in the [Image](http://ckeditor.com/addon/image) plugin when removing preview from the dialog window definition. Thanks to [Axinet](https://github.com/Axinet)!
-* [#12162](http://dev.ckeditor.com/ticket/12162): Fixed: Auto paragraphing and *Enter* key in nested editables.
-* [#12315](http://dev.ckeditor.com/ticket/12315): Fixed: Marked [`config.autoParagraph`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-autoParagraph) as deprecated.
-* [#12113](http://dev.ckeditor.com/ticket/12113): Fixed: A [code snippet](http://ckeditor.com/addon/codesnippet) should be presented in the [elements path](http://ckeditor.com/addon/elementspath) as "code snippet" (translatable).
-* [#12311](http://dev.ckeditor.com/ticket/12311): Fixed: [Remove Format](http://ckeditor.com/addon/removeformat) should also remove `<cite>` elements.
-* [#12261](http://dev.ckeditor.com/ticket/12261): Fixed: Filter has to be destroyed and removed from [`CKEDITOR.filter.instances`](http://docs.ckeditor.com/#!/api/CKEDITOR.filter-static-property-instances) on editor destroy.
-* [#12398](http://dev.ckeditor.com/ticket/12398): Fixed: [Maximize](http://ckeditor.com/addon/maximize) does not work on an instance without a [title](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-title).
-* [#12097](http://dev.ckeditor.com/ticket/12097): Fixed: JAWS not reading the number of options correctly in the [Text Color and Background Color](http://ckeditor.com/addon/colorbutton) button menu.
-* [#12411](http://dev.ckeditor.com/ticket/12411): Fixed: [Page Break](http://ckeditor.com/addon/pagebreak) used directly in the editable breaks the editor.
-* [#12354](http://dev.ckeditor.com/ticket/12354): Fixed: Various issues in undo manager when holding keys.
-* [#12324](http://dev.ckeditor.com/ticket/12324): [IE8] Fixed: Undo steps are not recorded when changing the caret position by clicking below the body.
-* [#12332](http://dev.ckeditor.com/ticket/12332): Fixed: Lowered DOM events listeners' priorities in undo manager in order to avoid ambiguity.
-* [#12402](http://dev.ckeditor.com/ticket/12402): [Blink] Fixed: Workaround for Blink bug with `document.title` which breaks updating title in the full HTML mode.
-* [#12338](http://dev.ckeditor.com/ticket/12338): Fixed: The CKEditor package contains unoptimized images.
-
-
-## CKEditor 4.4.4
-
-Fixed Issues:
-
-* [#12268](http://dev.ckeditor.com/ticket/12268): Cleanup of [UI Color](http://ckeditor.com/addon/uicolor) YUI styles. Thanks to [CasherWest](https://github.com/CasherWest)!
-* [#12263](http://dev.ckeditor.com/ticket/12263): Fixed: [Paste from Word]((http://ckeditor.com/addon/pastefromword)) filter does not properly normalize semicolons style text. Thanks to [Alin Purcaru](https://github.com/mesmerizero)!
-* [#12243](http://dev.ckeditor.com/ticket/12243): Fixed: Text formatting lost when pasting from Word. Thanks to [Alin Purcaru](https://github.com/mesmerizero)!
-* [#111739](http://dev.ckeditor.com/ticket/11739): Fixed: `keypress` listeners should not be used in the undo manager. A complete rewrite of keyboard handling in the undo manager was made. Numerous smaller issues were fixed, among others:
- * [#10926](http://dev.ckeditor.com/ticket/10926): [Chrome@Android] Fixed: Typing does not record snapshots and does not fire the [`editor.change`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-change) event.
- * [#11611](http://dev.ckeditor.com/ticket/11611): [Firefox] Fixed: The [`editor.change`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-change) event is fired when pressing Arrow keys.
- * [#12219](http://dev.ckeditor.com/ticket/12219): [Safari] Fixed: Some modifications of the [`UndoManager.locked`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.undo.UndoManager-property-locked) property violate strict mode in the [Undo](http://ckeditor.com/addon/undo) plugin.
-* [#10916](http://dev.ckeditor.com/ticket/10916): Fixed: [Magic Line](http://ckeditor.com/addon/magicline) icon in Right-To-Left environments.
-* [#11970](http://dev.ckeditor.com/ticket/11970): [IE] Fixed: CKEditor `paste` event is not fired when pasting with *Shift+Ins*.
-* [#12111](http://dev.ckeditor.com/ticket/12111): Fixed: Linked image attributes are not read when opening the image dialog window by doubleclicking.
-* [#10030](http://dev.ckeditor.com/ticket/10030): [IE] Fixed: Prevented "Unspecified Error" thrown in various cases when IE8-9 does not allow access to `document.activeElement`.
-* [#12273](http://dev.ckeditor.com/ticket/12273): Fixed: Applying block style in a description list breaks it.
-* [#12218](http://dev.ckeditor.com/ticket/12218): Fixed: Minor syntax issue in CSS files.
-* [#12178](http://dev.ckeditor.com/ticket/12178): [Blink/WebKit] Fixed: Iterator does not return the block if the selection is located at the end of it.
-* [#12185](http://dev.ckeditor.com/ticket/12185): [IE9QM] Fixed: Error thrown when moving the mouse over focused editor's scrollbar.
-* [#12215](http://dev.ckeditor.com/ticket/12215): Fixed: Basepath resolution does not recognize semicolon as a query separator.
-* [#12135](http://dev.ckeditor.com/ticket/12135): Fixed: [Remove Format](http://ckeditor.com/addon/removeformat) does not work on widgets.
-* [#12298](http://dev.ckeditor.com/ticket/12298): [IE11] Fixed: Clicking below `<body>` in Compatibility Mode will no longer reset selection to the first line.
-* [#12204](http://dev.ckeditor.com/ticket/12204): Fixed: Editor's voice label is not affected by [`config.title`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-title).
-* [#11915](http://dev.ckeditor.com/ticket/11915): Fixed: With [SCAYT](http://ckeditor.com/addon/scayt) enabled, cursor moves to the beginning of the first highlighted, misspelled word after typing or pasting into the editor.
-* [SCAYT](https://github.com/WebSpellChecker/ckeditor-plugin-scayt/issues/69): Fixed: Error thrown in the console after enabling [SCAYT](http://ckeditor.com/addon/scayt) and trying to add a new image.
-
-
-Other Changes:
-
-* [#12296](http://dev.ckeditor.com/ticket/12296): Merged `benderjs-ckeditor` into the main CKEditor repository.
-
-## CKEditor 4.4.3
-
-**Security Updates:**
-
-* Fixed XSS vulnerability in the Preview plugin reported by Mario Heiderich of [Cure53](https://cure53.de/).
-
-**An upgrade is highly recommended!**
-
-New Features:
-
-* [#12164](http://dev.ckeditor.com/ticket/12164): Added the "Justify" option to the "Horizontal Alignment" drop-down in the Table Cell Properties dialog window.
-
-Fixed Issues:
-
-* [#12110](http://dev.ckeditor.com/ticket/12110): Fixed: Editor crash after deleting a table. Thanks to [Alin Purcaru](https://github.com/mesmerizero)!
-* [#11897](http://dev.ckeditor.com/ticket/11897): Fixed: **Enter** key used in an empty list item creates a new line instead of breaking the list. Thanks to [noam-si](https://github.com/noam-si)!
-* [#12140](http://dev.ckeditor.com/ticket/12140): Fixed: Double-clicking linked widgets opens two dialog windows.
-* [#12132](http://dev.ckeditor.com/ticket/12132): Fixed: Image is inserted with `width` and `height` styles even when they are not allowed.
-* [#9317](http://dev.ckeditor.com/ticket/9317): [IE] Fixed: [`config.disableObjectResizing`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-disableObjectResizing) does not work on IE. **Note**: We were not able to fix this issue on IE11+ because necessary events stopped working. See a [last resort workaround](http://dev.ckeditor.com/ticket/9317#comment:16) and make sure to [support our complaint to Microsoft](https://connect.microsoft.com/IE/feedback/details/742593/please-respect-execcommand-enableobjectresizing-in-contenteditable-elements).
-* [#9638](http://dev.ckeditor.com/ticket/9638): Fixed: There should be no information about accessibility help available under the *Alt+0* keyboard shortcut if the [Accessibility Help](http://ckeditor.com/addon/a11yhelp) plugin is not available.
-* [#8117](http://dev.ckeditor.com/ticket/8117) and [#9186](http://dev.ckeditor.com/ticket/9186): Fixed: In HTML5 `<meta>` tags should be allowed everywhere, including inside the `<body>` element.
-* [#10422](http://dev.ckeditor.com/ticket/10422): Fixed: [`config.fillEmptyBlocks`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-fillEmptyBlocks) not working properly if a function is specified.
-
-## CKEditor 4.4.2
-
-Important Notes:
-
-* The CKEditor testing environment is now publicly available. Read more about how to set up the environment and execute tests in the [CKEditor Testing Environment](http://docs.ckeditor.com/#!/guide/dev_tests) guide.
- Please note that the [`tests/`](https://github.com/ckeditor/ckeditor-dev/tree/master/tests) directory which contains editor tests is not available in release packages. It can only be found in the development version of CKEditor on [GitHub](https://github.com/ckeditor/ckeditor-dev/).
-
-New Features:
-
-* [#11909](http://dev.ckeditor.com/ticket/11909): Introduced a parameter to prevent the [`editor.setData()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setData) method from recording undo snapshots.
-
-Fixed Issues:
-
-* [#11757](http://dev.ckeditor.com/ticket/11757): Fixed: Imperfections in the [Moono](http://ckeditor.com/addon/moono) skin. Thanks to [danyaPostfactum](https://github.com/danyaPostfactum)!
-* [#10091](http://dev.ckeditor.com/ticket/10091): Blockquote should be treated like an object by the styles system. Thanks to [dan-james-deeson](https://github.com/dan-james-deeson)!
-* [#11478](http://dev.ckeditor.com/ticket/11478): Fixed: Issue with passing jQuery objects to [adapter](http://docs.ckeditor.com/#!/guide/dev_jquery) configuration.
-* [#10867](http://dev.ckeditor.com/ticket/10867): Fixed: Issue with setting encoded URI as image link.
-* [#11983](http://dev.ckeditor.com/ticket/11983): Fixed: Clicking a nested widget does not focus it. Additionally, performance of the [`widget.repository.getByElement()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-method-getByElement) method was improved.
-* [#12000](http://dev.ckeditor.com/ticket/12000): Fixed: Nested widgets should be initialized on [`editor.setData()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setData) and [`nestedEditable.setData()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.nestedEditable-method-setData).
-* [#12022](http://dev.ckeditor.com/ticket/12022): Fixed: Outer widget's drag handler is not created at all if it has any nested widgets inside.
-* [#11960](http://dev.ckeditor.com/ticket/11960): [Blink/WebKit] Fixed: The caret should be scrolled into view on *Backspace* and *Delete* (covers only the merging blocks case).
-* [#11306](http://dev.ckeditor.com/ticket/11306): [OSX][Blink/WebKit] Fixed: No widget entries in the context menu on widget right-click.
-* [#11957](http://dev.ckeditor.com/ticket/11957): Fixed: Alignment labels in the [Enhanced Image](http://ckeditor.com/addon/image2) dialog window are not translated.
-* [#11980](http://dev.ckeditor.com/ticket/11980): [Blink/WebKit] Fixed: `<span>` elements created when joining adjacent elements (non-collapsed selection).
-* [#12009](http://dev.ckeditor.com/ticket/12009): [Nested widgets] Integration with the [Magic Line](http://ckeditor.com/addon/magicline) plugin.
-* [#11387](http://dev.ckeditor.com/ticket/11387): Fixed: `role="radiogroup"` should be applied only to radio inputs' container.
-* [#7975](http://dev.ckeditor.com/ticket/7975): [IE8] Fixed: Errors when trying to select an empty table cell.
-* [#11947](http://dev.ckeditor.com/ticket/11947): [Firefox+IE11] Fixed: *Shift+Enter* in lists produces two line breaks.
-* [#11972](http://dev.ckeditor.com/ticket/11972): Fixed: Feature detection in the [`element.setText()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-setText) method should not trigger the layout engine.
-* [#7634](http://dev.ckeditor.com/ticket/7634): Fixed: The [Flash Dialog](http://ckeditor.com/addon/flash) plugin omits the `allowFullScreen` parameter in the editor data if set to `true`.
-* [#11910](http://dev.ckeditor.com/ticket/11910): Fixed: [Enhanced Image](http://ckeditor.com/addon/image2) does not take [`config.baseHref`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-baseHref) into account when updating image dimensions.
-* [#11753](http://dev.ckeditor.com/ticket/11753): Fixed: Wrong [`checkDirty()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-checkDirty) method value after focusing or blurring a widget.
-* [#11830](http://dev.ckeditor.com/ticket/11830): Fixed: Impossible to pass some arguments to [CKBuilder](https://github.com/ckeditor/ckbuilder) when using the `/dev/builder/build.sh` script.
-* [#11945](http://dev.ckeditor.com/ticket/11945): Fixed: [Form Elements](http://ckeditor.com/addon/forms) plugin should not change a core method.
-* [#11384](http://dev.ckeditor.com/ticket/11384): [IE9+] Fixed: `IndexSizeError` thrown when pasting into a non-empty selection anchored in one text node.
-
-## CKEditor 4.4.1
-
-New Features:
-
-* [#9661](http://dev.ckeditor.com/ticket/9661): Added the option to [configure](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-linkJavaScriptLinksAllowed) anchor tags with JavaScript code in the `href` attribute.
-
-Fixed Issues:
-
-* [#11861](http://dev.ckeditor.com/ticket/11861): [Webkit/Blink] Fixed: Span elements created while joining adjacent elements. **Note:** This patch only covers cases when *Backspace* or *Delete* is pressed on a collapsed (empty) selection. The remaining case, with a non-empty selection, will be fixed in the next release.
-* [#10714](http://dev.ckeditor.com/ticket/10714): [iOS] Fixed: Selection and drop-downs are broken if a touch event listener is used due to a [Webkit bug](https://bugs.webkit.org/show_bug.cgi?id=128924). Thanks to [Arty Gus](https://github.com/artygus)!
-* [#11911](http://dev.ckeditor.com/ticket/11911): Fixed setting the `dir` attribute for a preloaded language in [CKEDITOR.lang](http://docs.ckeditor.com/#!/api/CKEDITOR.lang). Thanks to [Akash Mohapatra](https://github.com/akashmohapatra)!
-* [#11926](http://dev.ckeditor.com/ticket/11926): Fixed: [Code Snippet](http://ckeditor.com/addon/codesnippet) does not decode HTML entities when loading code from the `<code>` element.
-* [#11223](http://dev.ckeditor.com/ticket/11223): Fixed: Issue when [Protected Source](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-protectedSource) was not working in the `<title>` element.
-* [#11859](http://dev.ckeditor.com/ticket/11859): Fixed: Removed the [Source Dialog](http://ckeditor.com/addon/sourcedialog) plugin dependency from the [Code Snippet](http://ckeditor.com/addon/codesnippet) sample.
-* [#11754](http://dev.ckeditor.com/ticket/11754): [Chrome] Fixed: Infinite loop when content includes not closed attributes.
-* [#11848](http://dev.ckeditor.com/ticket/11848): [IE] Fixed: [`editor.insertElement()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertElement) throwing an exception when there was no selection in the editor.
-* [#11801](http://dev.ckeditor.com/ticket/11801): Fixed: Editor anchors unavailable when linking the [Enhanced Image](http://ckeditor.com/addon/image2) widget.
-* [#11626](http://dev.ckeditor.com/ticket/11626): Fixed: [Table Resize](http://ckeditor.com/addon/tableresize) sets invalid column width.
-* [#11872](http://dev.ckeditor.com/ticket/11872): Made [`element.addClass()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-addClass) chainable symmetrically to [`element.removeClass()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-removeClass).
-* [#11813](http://dev.ckeditor.com/ticket/11813): Fixed: Link lost while pasting a captioned image and restoring an undo snapshot ([Enhanced Image](http://ckeditor.com/addon/image2)).
-* [#11814](http://dev.ckeditor.com/ticket/11814): Fixed: _Link_ and _Unlink_ entries persistently displayed in the [Enhanced Image](http://ckeditor.com/addon/image2) context menu.
-* [#11839](http://dev.ckeditor.com/ticket/11839): [IE9] Fixed: The caret jumps out of the editable area when resizing the editor in the source mode.
-* [#11822](http://dev.ckeditor.com/ticket/11822): [Webkit] Fixed: Editing anchors by double-click is broken in some cases.
-* [#11823](http://dev.ckeditor.com/ticket/11823): [IE8] Fixed: [Table Resize](http://ckeditor.com/addon/tableresize) throws an error over scrollbar.
-* [#11788](http://dev.ckeditor.com/ticket/11788): Fixed: It is not possible to change the language back to _Not set_ in the [Code Snippet](http://ckeditor.com/addon/codesnippet) dialog window.
-* [#11788](http://dev.ckeditor.com/ticket/11788): Fixed: [Filter](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.filter) rules are not applied inside elements with the `contenteditable` attribute set to `true`.
-* [#11798](http://dev.ckeditor.com/ticket/11798): Fixed: Inserting a non-editable element inside a table cell breaks the table.
-* [#11793](http://dev.ckeditor.com/ticket/11793): Fixed: Drop-down is not "on" when clicking it while the editor is blurred.
-* [#11850](http://dev.ckeditor.com/ticket/11850): Fixed: Fake objects with the `contenteditable` attribute set to `false` are not downcasted properly.
-* [#11811](http://dev.ckeditor.com/ticket/11811): Fixed: Widget's data is not encoded correctly when passed to an attribute.
-* [#11777](http://dev.ckeditor.com/ticket/11777): Fixed encoding ampersand in the [Mathematical Formulas](http://ckeditor.com/addon/mathjax) plugin.
-* [#11880](http://dev.ckeditor.com/ticket/11880): [IE8-9] Fixed: Linked image has a default thick border.
-
-Other Changes:
-
-* [#11807](http://dev.ckeditor.com/ticket/11807): Updated jQuery version used in the sample to 1.11.0 and tested CKEditor jQuery Adapter with version 1.11.0 and 2.1.0.
-* [#9504](http://dev.ckeditor.com/ticket/9504): Stopped using deprecated `attribute.specified` in all browsers except Internet Explorer.
-* [#11809](http://dev.ckeditor.com/ticket/11809): Changed tab size in `<pre>` to 4 spaces.
-
-## CKEditor 4.4
-
-**Important Notes:**
-
-* Marked the [`editor.beforePaste`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-beforePaste) event as deprecated.
-* The default class of captioned images has changed to `image` (was: `caption`). Please note that once edited in CKEditor 4.4+, all existing images of the `caption` class (`<figure class="caption">`) will be [filtered out](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) unless the [`config.image2_captionedClass`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-image2_captionedClass) option is set to `caption`. For backward compatibility (i.e. when upgrading), it is highly recommended to use this setting, which also helps prevent CSS conflicts, etc. This does not apply to new CKEditor integrations.
-* Widgets without defined buttons are no longer registered automatically to the [Advanced Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter). Before CKEditor 4.4 widgets were registered to the ACF which was an incorrect behavior ([#11567](http://dev.ckeditor.com/ticket/11567)). This change should not have any impact on standard scenarios, but if your button does not execute the widget command, you need to set [`allowedContent`](http://docs.ckeditor.com/#!/api/CKEDITOR.feature-property-allowedContent) and [`requiredContent`](http://docs.ckeditor.com/#!/api/CKEDITOR.feature-property-requiredContent) properties for it manually, because the editor will not be able to find them.
-* The [Show Borders](http://ckeditor.com/addon/showborders) plugin was added to the Standard installation package in order to ensure that unstyled tables are still visible for the user ([#11665](http://dev.ckeditor.com/ticket/11665)).
-* Since CKEditor 4.4 the editor instance should be passed to [`CKEDITOR.style`](http://docs.ckeditor.com/#!/api/CKEDITOR.style) methods to ensure full compatibility with other features (e.g. applying styles to widgets requires that). We ensured backward compatibility though, so the [`CKEDITOR.style`](http://docs.ckeditor.com/#!/api/CKEDITOR.style) will work even when the editor instance is not provided.
-
-New Features:
-
-* [#11297](http://dev.ckeditor.com/ticket/11297): Styles can now be applied to widgets. The definition of a style which can be applied to a specific widget must contain two additional properties &mdash; `type` and `widget`. Read more in the [Widget Styles](http://docs.ckeditor.com/#!/guide/dev_styles-section-widget-styles) section of the "Syles Drop-down" guide. Note that by default, widgets support only classes and no other attributes or styles. Related changes and features:
- * Introduced the [`CKEDITOR.style.addCustomHandler()`](http://docs.ckeditor.com/#!/api/CKEDITOR.style-static-method-addCustomHandler) method for registering custom style handlers.
- * The [`CKEDITOR.style.apply()`](http://docs.ckeditor.com/#!/api/CKEDITOR.style-method-apply) and [`CKEDITOR.style.remove()`](http://docs.ckeditor.com/#!/api/CKEDITOR.style-method-remove) methods are now called with an editor instance instead of the document so they can be reused by the [`CKEDITOR.editor.applyStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-applyStyle) and [`CKEDITOR.editor.removeStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-removeStyle) methods. Backward compatibility was preserved, but from CKEditor 4.4 it is highly recommended to pass an editor instead of a document to these methods.
- * Many new methods and properties were introduced in the [Widget API](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget) to make the handling of styles by widgets fully customizable. See: [`widget.definition.styleableElements`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.definition-property-styleableElements), [`widget.definition.styleToAllowedContentRule`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.definition-property-styleToAllowedContentRules), [`widget.addClass()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-addClass), [`widget.removeClass()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-removeClass), [`widget.getClasses()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-getClasses), [`widget.hasClass()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-hasClass), [`widget.applyStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-applyStyle), [`widget.removeStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-removeStyle), [`widget.checkStyleActive()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-method-checkStyleActive).
- * Integration with the [Allowed Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) required an introduction of the [`CKEDITOR.style.toAllowedContent()`](http://docs.ckeditor.com/#!/api/CKEDITOR.style-method-toAllowedContentRules) method which can be implemented by the custom style handler and if exists, it is used by the [`CKEDITOR.filter`](http://docs.ckeditor.com/#!/api/CKEDITOR.filter) to translate a style to [allowed content rules](http://docs.ckeditor.com/#!/api/CKEDITOR.filter.allowedContentRules).
-* [#11300](http://dev.ckeditor.com/ticket/11300): Various changes in the [Enhanced Image](http://ckeditor.com/addon/image2) plugin:
- * Introduced the [`config.image2_captionedClass`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-image2_captionedClass) option to configure the class of captioned images.
- * Introduced the [`config.image2_alignClasses`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-image2_alignClasses) option to configure the way images are aligned with CSS classes.
- If this setting is defined, the editor produces classes instead of inline styles for aligned images.
- * Default image caption can be translated (customized) with the `editor.lang.image2.captionPlaceholder` string.
-* [#11341](http://dev.ckeditor.com/ticket/11341): [Enhanced Image](http://ckeditor.com/addon/image2) plugin: It is now possible to add a link to any image type.
-* [#10202](http://dev.ckeditor.com/ticket/10202): Introduced wildcard support in the [Allowed Content Rules](http://docs.ckeditor.com/#!/guide/dev_allowed_content_rules) format.
-* [#10276](http://dev.ckeditor.com/ticket/10276): Introduced blacklisting in the [Allowed Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter).
-* [#10480](http://dev.ckeditor.com/ticket/10480): Introduced code snippets with code highlighting. There are two versions available so far &mdash; the default [Code Snippet](http://ckeditor.com/addon/codesnippet) which uses the [highlight.js](http://highlightjs.org) library and the [Code Snippet GeSHi](http://ckeditor.com/addon/codesnippetgeshi) which uses the [GeSHi](http://qbnz.com/highlighter/) library.
-* [#11737](http://dev.ckeditor.com/ticket/11737): Introduced an option to prevent [filtering](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) of an element that matches custom criteria (see [`filter.addElementCallback()`](http://docs.ckeditor.com/#!/api/CKEDITOR.filter-method-addElementCallback)).
-* [#11532](http://dev.ckeditor.com/ticket/11532): Introduced the [`editor.addContentsCss()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-addContentsCss) method that can be used for [adding custom CSS files](http://docs.ckeditor.com/#!/guide/plugin_sdk_styles).
-* [#11536](http://dev.ckeditor.com/ticket/11536): Added the [`CKEDITOR.tools.htmlDecode()`](http://docs.ckeditor.com/#!/api/CKEDITOR.tools-method-htmlDecode) method for decoding HTML entities.
-* [#11225](http://dev.ckeditor.com/ticket/11225): Introduced the [`CKEDITOR.tools.transparentImageData`](http://docs.ckeditor.com/#!/api/CKEDITOR.tools-property-transparentImageData) property which contains transparent image data to be used in CSS or as image source.
-
-Other Changes:
-
-* [#11377](http://dev.ckeditor.com/ticket/11377): Unified internal representation of empty anchors using the [fake objects](http://ckeditor.com/addon/fakeobjects).
-* [#11422](http://dev.ckeditor.com/ticket/11422): Removed Firefox 3.x, Internet Explorer 6 and Opera 12.x leftovers in code.
-* [#5217](http://dev.ckeditor.com/ticket/5217): Setting data (including switching between modes) creates a new undo snapshot. Besides that:
- * Introduced the [`editable.status`](http://docs.ckeditor.com/#!/api/CKEDITOR.editable-property-status) property.
- * Introduced a new `forceUpdate` option for the [`editor.lockSnapshot`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-lockSnapshot) event.
- * Fixed: Selection not being unlocked in inline editor after setting data ([#11500](http://dev.ckeditor.com/ticket/11500)).
-* The [WebSpellChecker](http://ckeditor.com/addon/wsc) plugin was updated to the latest version.
-
-Fixed Issues:
-
-* [#10190](http://dev.ckeditor.com/ticket/10190): Fixed: Removing block style with [`editor.removeStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-removeStyle) should result in a paragraph and not a div.
-* [#11727](http://dev.ckeditor.com/ticket/11727): Fixed: The editor tries to select a non-editable image which was clicked.
-
-## CKEditor 4.3.5
-
-New Features:
-
-* Added new translation: Tatar.
-
-Fixed Issues:
-
-* [#11677](http://dev.ckeditor.com/ticket/11677): Fixed: Undo/Redo keystrokes are blocked in the source mode.
-* [#11717](http://dev.ckeditor.com/ticket/11717): [Document Properties](http://ckeditor.com/addon/docprops) plugin requires the [Color Dialog](http://ckeditor.com/addon/colordialog) plugin to work.
-
-## CKEditor 4.3.4
-
-Fixed Issues:
-
-* [#11597](http://dev.ckeditor.com/ticket/11597): [IE11] Fixed: Error thrown when trying to open the [preview](http://ckeditor.com/addon/preview) using the keyboard.
-* [#11544](http://dev.ckeditor.com/ticket/11544): [Placeholders](http://ckeditor.com/addon/placeholder) will no longer be upcasted in parents not accepting `<span>` elements.
-* [#8663](http://dev.ckeditor.com/ticket/8663): Fixed [`element.renameNode()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-renameNode) not clearing the [`element.getName()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.element-method-getName) cache.
-* [#11574](http://dev.ckeditor.com/ticket/11574): Fixed: *Backspace* destroying the DOM structure if an inline editable is placed in a list item.
-* [#11603](http://dev.ckeditor.com/ticket/11603): Fixed: [Table Resize](http://ckeditor.com/addon/tableresize) attaches to tables outside the editable.
-* [#9205](http://dev.ckeditor.com/ticket/9205), [#7805](http://dev.ckeditor.com/ticket/7805), [#8216](http://dev.ckeditor.com/ticket/8216): Fixed: `{cke_protected_1}` appearing in data in various cases where HTML comments are placed next to `"` or `'`.
-* [#11635](http://dev.ckeditor.com/ticket/11635): Fixed: Some attributes are not protected before the content is passed through the fix bin.
-* [#11660](http://dev.ckeditor.com/ticket/11660): [IE] Fixed: Table content is lost when some extra markup is inside the table.
-* [#11641](http://dev.ckeditor.com/ticket/11641): Fixed: Switching between modes in the classic editor removes content styles for the inline editor.
-* [#11568](http://dev.ckeditor.com/ticket/11568): Fixed: [Styles](http://ckeditor.com/addon/stylescombo) drop-down list is not enabled on selection change.
-
-## CKEditor 4.3.3
-
-Fixed Issues:
-
-* [#11500](http://dev.ckeditor.com/ticket/11500): [Webkit/Blink] Fixed: Selection lost when setting data in another inline editor. Additionally, [`selection.removeAllRanges()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.selection-method-removeAllRanges) is now scoped to selection's [root](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.selection-property-root).
-* [#11104](http://dev.ckeditor.com/ticket/11104): [IE] Fixed: Various issues with scrolling and selection when focusing widgets.
-* [#11487](http://dev.ckeditor.com/ticket/11487): Moving mouse over the [Enhanced Image](http://ckeditor.com/addon/image2) widget will no longer change the value returned by the [`editor.checkDirty()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-checkDirty) method.
-* [#8673](http://dev.ckeditor.com/ticket/8673): [WebKit] Fixed: Cannot select and remove the [Page Break](http://ckeditor.com/addon/pagebreak).
-* [#11413](http://dev.ckeditor.com/ticket/11413): Fixed: Incorrect [`editor.execCommand()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-execCommand) behavior.
-* [#11438](http://dev.ckeditor.com/ticket/11438): Splitting table cells vertically is no longer changing table structure.
-* [#8899](http://dev.ckeditor.com/ticket/8899): Fixed: Links in the [About CKEditor](http://ckeditor.com/addon/about) dialog window now open in a new browser window or tab.
-* [#11490](http://dev.ckeditor.com/ticket/11490): Fixed: [Menu button](http://ckeditor.com/addon/menubutton) panel not showing in the source mode.
-* [#11417](http://dev.ckeditor.com/ticket/11417): The [`widget.doubleclick`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget-event-doubleclick) event is not canceled anymore after editing was triggered.
-* [#11253](http://dev.ckeditor.com/ticket/11253): [IE] Fixed: Clipped upload button in the [Enhanced Image](http://ckeditor.com/addon/image2) dialog window.
-* [#11359](http://dev.ckeditor.com/ticket/11359): Standardized the way anchors are discovered by the [Link](http://ckeditor.com/addon/link) plugin.
-* [#11058](http://dev.ckeditor.com/ticket/11058): [IE8] Fixed: Error when deleting a table row.
-* [#11508](http://dev.ckeditor.com/ticket/11508): Fixed: [`htmlDataProcessor`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlDataProcessor) discovering protected attributes within other attributes' values.
-* [#11533](http://dev.ckeditor.com/ticket/11533): Widgets: Avoid recurring upcasts if the DOM structure was modified during an upcast.
-* [#11400](http://dev.ckeditor.com/ticket/11400): Fixed: The [`domObject.removeAllListeners()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.domObject-method-removeAllListeners) method does not remove custom listeners completely.
-* [#11493](http://dev.ckeditor.com/ticket/11493): Fixed: The [`selection.getRanges()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.selection-method-getRanges) method does not override cached ranges when used with the `onlyEditables` argument.
-* [#11390](http://dev.ckeditor.com/ticket/11390): [IE] All [XML](http://ckeditor.com/addon/xml) plugin [methods](http://docs.ckeditor.com/#!/api/CKEDITOR.xml) now work in IE10+.
-* [#11542](http://dev.ckeditor.com/ticket/11542): [IE11] Fixed: Blurry toolbar icons when Right-to-Left UI language is set.
-* [#11504](http://dev.ckeditor.com/ticket/11504): Fixed: When [`config.fullPage`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-fullPage) is set to `true`, entities are not encoded in editor output.
-* [#11004](http://dev.ckeditor.com/ticket/11004): Integrated [Enhanced Image](http://ckeditor.com/addon/image2) dialog window with [Advanced Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter).
-* [#11439](http://dev.ckeditor.com/ticket/11439): Fixed: Properties get cloned in the Cell Properties dialog window if multiple cells are selected.
-
-## CKEditor 4.3.2
-
-Fixed Issues:
-
-* [#11331](http://dev.ckeditor.com/ticket/11331): A menu button will have a changed label when selected instead of using the `aria-pressed` attribute.
-* [#11177](http://dev.ckeditor.com/ticket/11177): Widget drag handler improvements:
- * [#11176](http://dev.ckeditor.com/ticket/11176): Fixed: Initial position is not updated when the widget data object is empty.
- * [#11001](http://dev.ckeditor.com/ticket/11001): Fixed: Multiple synchronous layout recalculations are caused by initial drag handler positioning causing performance issues.
- * [#11161](http://dev.ckeditor.com/ticket/11161): Fixed: Drag handler is not repositioned in various situations.
- * [#11281](http://dev.ckeditor.com/ticket/11281): Fixed: Drag handler and mask are duplicated after widget reinitialization.
-* [#11207](http://dev.ckeditor.com/ticket/11207): [Firefox] Fixed: Misplaced [Enhanced Image](http://ckeditor.com/addon/image2) resizer in the inline editor.
-* [#11102](http://dev.ckeditor.com/ticket/11102): `CKEDITOR.template` improvements:
- * [#11102](http://dev.ckeditor.com/ticket/11102): Added newline character support.
- * [#11216](http://dev.ckeditor.com/ticket/11216): Added "\\'" substring support.
-* [#11121](http://dev.ckeditor.com/ticket/11121): [Firefox] Fixed: High Contrast mode is enabled when the editor is loaded in a hidden iframe.
-* [#11350](http://dev.ckeditor.com/ticket/11350): The default value of [`config.contentsCss`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-contentsCss) is affected by [`CKEDITOR.getUrl()`](http://docs.ckeditor.com/#!/api/CKEDITOR-method-getUrl).
-* [#11097](http://dev.ckeditor.com/ticket/11097): Improved the [Autogrow](http://ckeditor.com/addon/autogrow) plugin performance when dealing with very big tables.
-* [#11290](http://dev.ckeditor.com/ticket/11290): Removed redundant code in the [Source Dialog](http://ckeditor.com/addon/sourcedialog) plugin.
-* [#11133](http://dev.ckeditor.com/ticket/11133): [Page Break](http://ckeditor.com/addon/pagebreak) becomes editable if pasted.
-* [#11126](http://dev.ckeditor.com/ticket/11126): Fixed: Native Undo executed once the bottom of the snapshot stack is reached.
-* [#11131](http://dev.ckeditor.com/ticket/11131): [Div Editing Area](http://ckeditor.com/addon/divarea): Fixed: Error thrown when switching to source mode if the selection was in widget's nested editable.
-* [#11139](http://dev.ckeditor.com/ticket/11139): [Div Editing Area](http://ckeditor.com/addon/divarea): Fixed: Elements Path is not cleared after switching to source mode.
-* [#10778](http://dev.ckeditor.com/ticket/10778): Fixed a bug with range enlargement. The range no longer expands to visible whitespace.
-* [#11146](http://dev.ckeditor.com/ticket/11146): [IE] Fixed: Preview window switches Internet Explorer to Quirks Mode.
-* [#10762](http://dev.ckeditor.com/ticket/10762): [IE] Fixed: JavaScript code displayed in preview window's URL bar.
-* [#11186](http://dev.ckeditor.com/ticket/11186): Introduced the [`widgets.repository.addUpcastCallback()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-method-addUpcastCallback) method that allows to block upcasting given element to a widget.
-* [#11307](http://dev.ckeditor.com/ticket/11307): Fixed: Paste as Plain Text conflict with the [MooTools](http://mootools.net) library.
-* [#11140](http://dev.ckeditor.com/ticket/11140): [IE11] Fixed: Anchors are not draggable.
-* [#11379](http://dev.ckeditor.com/ticket/11379): Changed default contents `line-height` to unitless values to avoid huge text overlapping (like in [#9696](http://dev.ckeditor.com/ticket/9696)).
-* [#10787](http://dev.ckeditor.com/ticket/10787): [Firefox] Fixed: Broken replacement of text while pasting into `div`-based editor.
-* [#10884](http://dev.ckeditor.com/ticket/10884): Widgets integration with the [Show Blocks](http://ckeditor.com/addon/showblocks) plugin.
-* [#11021](http://dev.ckeditor.com/ticket/11021): Fixed: An error thrown when selecting entire editable contents while fake selection is on.
-* [#11086](http://dev.ckeditor.com/ticket/11086): [IE8] Re-enable inline widgets drag&drop in Internet Explorer 8.
-* [#11372](http://dev.ckeditor.com/ticket/11372): Widgets: Special characters encoded twice in nested editables.
-* [#10068](http://dev.ckeditor.com/ticket/10068): Fixed: Support for protocol-relative URLs.
-* [#11283](http://dev.ckeditor.com/ticket/11283): [Enhanced Image](http://ckeditor.com/addon/image2): A `<div>` element with `text-align: center` and an image inside is not recognised correctly.
-* [#11196](http://dev.ckeditor.com/ticket/11196): [Accessibility Instructions](http://ckeditor.com/addon/a11yhelp): Allowed additional keyboard button labels to be translated in the dialog window.
-
-## CKEditor 4.3.1
-
-**Important Notes:**
-
-* To match the naming convention, the `language` button is now `Language` ([#11201](http://dev.ckeditor.com/ticket/11201)).
-* [Enhanced Image](http://ckeditor.com/addon/image2) button, context menu, command, and icon names match those of the [Image](http://ckeditor.com/addon/image) plugin ([#11222](http://dev.ckeditor.com/ticket/11222)).
-
-Fixed Issues:
-
-* [#11244](http://dev.ckeditor.com/ticket/11244): Changed: The [`widget.repository.checkWidgets()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-method-checkWidgets) method now fires the [`widget.repository.checkWidgets`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-event-checkWidgets) event, so from CKEditor 4.3.1 it is preferred to use the method rather than fire the event.
-* [#11171](http://dev.ckeditor.com/ticket/11171): Fixed: [`editor.insertElement()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertElement) and [`editor.insertText()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertText) methods do not call the [`widget.repository.checkWidgets()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.repository-method-checkWidgets) method.
-* [#11085](http://dev.ckeditor.com/ticket/11085): [IE8] Replaced preview generated by the [Mathematical Formulas](http://ckeditor.com/addon/mathjax) widget with a placeholder.
-* [#11044](http://dev.ckeditor.com/ticket/11044): Enhanced WAI-ARIA support for the [Language](http://ckeditor.com/addon/language) plugin drop-down menu.
-* [#11075](http://dev.ckeditor.com/ticket/11075): With drop-down menu button focused, pressing the *Down Arrow* key will now open the menu and focus its first option.
-* [#11165](http://dev.ckeditor.com/ticket/11165): Fixed: The [File Browser](http://ckeditor.com/addon/filebrowser) plugin cannot be removed from the editor.
-* [#11159](http://dev.ckeditor.com/ticket/11159): [IE9-10] [Enhanced Image](http://ckeditor.com/addon/image2): Fixed buggy discovery of image dimensions.
-* [#11101](http://dev.ckeditor.com/ticket/11101): Drop-down lists no longer break when given double quotes.
-* [#11077](http://dev.ckeditor.com/ticket/11077): [Enhanced Image](http://ckeditor.com/addon/image2): Empty undo step recorded when resizing the image.
-* [#10853](http://dev.ckeditor.com/ticket/10853): [Enhanced Image](http://ckeditor.com/addon/image2): Widget has paragraph wrapper when de-captioning unaligned image.
-* [#11198](http://dev.ckeditor.com/ticket/11198): Widgets: Drag handler is not fully visible when an inline widget is in a heading.
-* [#11132](http://dev.ckeditor.com/ticket/11132): [Firefox] Fixed: Caret is lost after drag and drop of an inline widget.
-* [#11182](http://dev.ckeditor.com/ticket/11182): [IE10-11] Fixed: Editor crashes (IE11) or works with minor issues (IE10) if a page is loaded in Quirks Mode. See [`env.quirks`](http://docs.ckeditor.com/#!/api/CKEDITOR.env-property-quirks) for more details.
-* [#11204](http://dev.ckeditor.com/ticket/11204): Added `figure` and `figcaption` styles to the `contents.css` file so [Enhanced Image](http://ckeditor.com/addon/image2) looks nicer.
-* [#11202](http://dev.ckeditor.com/ticket/11202): Fixed: No newline in [BBCode](http://ckeditor.com/addon/bbcode) mode.
-* [#10890](http://dev.ckeditor.com/ticket/10890): Fixed: Error thrown when pressing the *Delete* key in a list item.
-* [#10055](http://dev.ckeditor.com/ticket/10055): [IE8-10] Fixed: *Delete* pressed on a selected image causes the browser to go back.
-* [#11183](http://dev.ckeditor.com/ticket/11183): Fixed: Inserting a horizontal rule or a table in multiple row selection causes a browser crash. Additionally, the [`editor.insertElement()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertElement) method does not insert the element into every range of a selection any more.
-* [#11042](http://dev.ckeditor.com/ticket/11042): Fixed: Selection made on an element containing a non-editable element was not auto faked.
-* [#11125](http://dev.ckeditor.com/ticket/11125): Fixed: Keyboard navigation through menu and drop-down items will now cycle.
-* [#11011](http://dev.ckeditor.com/ticket/11011): Fixed: The [`editor.applyStyle()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-applyStyle) method removes attributes from nested elements.
-* [#11179](http://dev.ckeditor.com/ticket/11179): Fixed: [`editor.destroy()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-destroy) does not cleanup content generated by the [Table Resize](http://ckeditor.com/addon/tableresize) plugin for inline editors.
-* [#11237](http://dev.ckeditor.com/ticket/11237): Fixed: Table border attribute value is deleted when pasting content from Microsoft Word.
-* [#11250](http://dev.ckeditor.com/ticket/11250): Fixed: HTML entities inside the `<textarea>` element are not encoded.
-* [#11260](http://dev.ckeditor.com/ticket/11260): Fixed: Initially disabled buttons are not read by JAWS as disabled.
-* [#11200](http://dev.ckeditor.com/ticket/11200): Added [Clipboard](http://ckeditor.com/addon/clipboard) plugin as a dependency for [Widget](http://ckeditor.com/addon/widget) to fix drag and drop.
-
-## CKEditor 4.3
-
-New Features:
-
-* [#10612](http://dev.ckeditor.com/ticket/10612): Internet Explorer 11 support.
-* [#10869](http://dev.ckeditor.com/ticket/10869): Widgets: Added better integration with the [Elements Path](http://ckeditor.com/addon/elementspath) plugin.
-* [#10886](http://dev.ckeditor.com/ticket/10886): Widgets: Added tooltip to the drag handle.
-* [#10933](http://dev.ckeditor.com/ticket/10933): Widgets: Introduced drag and drop of block widgets with the [Line Utilities](http://ckeditor.com/addon/lineutils) plugin.
-* [#10936](http://dev.ckeditor.com/ticket/10936): Widget System changes for easier integration with other dialog systems.
-* [#10895](http://dev.ckeditor.com/ticket/10895): [Enhanced Image](http://ckeditor.com/addon/image2): Added file browser integration.
-* [#11002](http://dev.ckeditor.com/ticket/11002): Added the [`draggable`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget.definition-property-draggable) option to disable drag and drop support for widgets.
-* [#10937](http://dev.ckeditor.com/ticket/10937): [Mathematical Formulas](http://ckeditor.com/addon/mathjax) widget improvements:
- * loading indicator ([#10948](http://dev.ckeditor.com/ticket/10948)),
- * applying paragraph changes (like font color change) to iframe ([#10841](http://dev.ckeditor.com/ticket/10841)),
- * Firefox and IE9 clipboard fixes ([#10857](http://dev.ckeditor.com/ticket/10857)),
- * fixing same origin policy issue ([#10840](http://dev.ckeditor.com/ticket/10840)),
- * fixing undo bugs ([#10842](http://dev.ckeditor.com/ticket/10842), [#10930](http://dev.ckeditor.com/ticket/10930)),
- * fixing other minor bugs.
-* [#10862](http://dev.ckeditor.com/ticket/10862): [Placeholder](http://ckeditor.com/addon/placeholder) plugin was rewritten as a widget.
-* [#10822](http://dev.ckeditor.com/ticket/10822): Added styles system integration with non-editable elements (for example widgets) and their nested editables. Styles cannot change non-editable content and are applied in nested editable only if allowed by its type and content filter.
-* [#10856](http://dev.ckeditor.com/ticket/10856): Menu buttons will now toggle the visibility of their panels when clicked multiple times. [Language](http://ckeditor.com/addon/language) plugin fixes: Added active language highlighting, added an option to remove the language.
-* [#10028](http://dev.ckeditor.com/ticket/10028): New [`config.dialog_noConfirmCancel`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-dialog_noConfirmCancel) configuration option that eliminates the need to confirm closing of a dialog window when the user changed any of its fields.
-* [#10848](http://dev.ckeditor.com/ticket/10848): Integrate remaining plugins ([Styles](http://ckeditor.com/addon/stylescombo), [Format](http://ckeditor.com/addon/format), [Font](http://ckeditor.com/addon/font), [Color Button](http://ckeditor.com/addon/colorbutton), [Language](http://ckeditor.com/addon/language) and [Indent](http://ckeditor.com/addon/indent)) with [active filter](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-activeFilter).
-* [#10855](http://dev.ckeditor.com/ticket/10855): Change the extension of emoticons in the [BBCode](http://ckeditor.com/addon/bbcode) sample from GIF to PNG.
-
-Fixed Issues:
-
-* [#10831](http://dev.ckeditor.com/ticket/10831): [Enhanced Image](http://ckeditor.com/addon/image2): Merged `image2inline` and `image2block` into one `image2` widget.
-* [#10835](http://dev.ckeditor.com/ticket/10835): [Enhanced Image](http://ckeditor.com/addon/image2): Improved visibility of the resize handle.
-* [#10836](http://dev.ckeditor.com/ticket/10836): [Enhanced Image](http://ckeditor.com/addon/image2): Preserve custom mouse cursor while resizing the image.
-* [#10939](http://dev.ckeditor.com/ticket/10939): [Firefox] [Enhanced Image](http://ckeditor.com/addon/image2): hovering the image causes it to change.
-* [#10866](http://dev.ckeditor.com/ticket/10866): Fixed: Broken *Tab* key navigation in the [Enhanced Image](http://ckeditor.com/addon/image2) dialog window.
-* [#10833](http://dev.ckeditor.com/ticket/10833): Fixed: *Lock ratio* option should be on by default in the [Enhanced Image](http://ckeditor.com/addon/image2) dialog window.
-* [#10881](http://dev.ckeditor.com/ticket/10881): Various improvements to *Enter* key behavior in nested editables.
-* [#10879](http://dev.ckeditor.com/ticket/10879): [Remove Format](http://ckeditor.com/addon/removeformat) should not leak from a nested editable.
-* [#10877](http://dev.ckeditor.com/ticket/10877): Fixed: [WebSpellChecker](http://ckeditor.com/addon/wsc) fails to apply changes if a nested editable was focused.
-* [#10877](http://dev.ckeditor.com/ticket/10877): Fixed: [SCAYT](http://ckeditor.com/addon/wsc) blocks typing in nested editables.
-* [#11079](http://dev.ckeditor.com/ticket/11079): Add button icons to the [Placeholder](http://ckeditor.com/addon/placeholder) sample.
-* [#10870](http://dev.ckeditor.com/ticket/10870): The `paste` command is no longer being disabled when the clipboard is empty.
-* [#10854](http://dev.ckeditor.com/ticket/10854): Fixed: Firefox prepends `<br>` to `<body>`, so it is stripped by the HTML data processor.
-* [#10823](http://dev.ckeditor.com/ticket/10823): Fixed: [Link](http://ckeditor.com/addon/link) plugin does not work with non-editable content.
-* [#10828](http://dev.ckeditor.com/ticket/10828): [Magic Line](http://ckeditor.com/addon/magicline) integration with the Widget System.
-* [#10865](http://dev.ckeditor.com/ticket/10865): Improved hiding copybin, so copying widgets works smoothly.
-* [#11066](http://dev.ckeditor.com/ticket/11066): Widget's private parts use CSS reset.
-* [#11027](http://dev.ckeditor.com/ticket/11027): Fixed: Block commands break on widgets; added the [`contentDomInvalidated`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-contentDomInvalidated) event.
-* [#10430](http://dev.ckeditor.com/ticket/10430): Resolve dependence of the [Image](http://ckeditor.com/addon/image) plugin on the [Form Elements](http://ckeditor.com/addon/forms) plugin.
-* [#10911](http://dev.ckeditor.com/ticket/10911): Fixed: Browser *Alt* hotkeys will no longer be blocked while a widget is focused.
-* [#11082](http://dev.ckeditor.com/ticket/11082): Fixed: Selected widget is not copied or cut when using toolbar buttons or context menu.
-* [#11083](http://dev.ckeditor.com/ticket/11083): Fixed list and div element application to block widgets.
-* [#10887](http://dev.ckeditor.com/ticket/10887): Internet Explorer 8 compatibility issues related to the Widget System.
-* [#11074](http://dev.ckeditor.com/ticket/11074): Temporarily disabled inline widget drag and drop, because of seriously buggy native `range#moveToPoint` method.
-* [#11098](http://dev.ckeditor.com/ticket/11098): Fixed: Wrong selection position after undoing widget drag and drop.
-* [#11110](http://dev.ckeditor.com/ticket/11110): Fixed: IFrame and Flash objects are being incorrectly pasted in certain conditions.
-* [#11129](http://dev.ckeditor.com/ticket/11129): Page break is lost when loading data.
-* [#11123](http://dev.ckeditor.com/ticket/11123): [Firefox] Widget is destroyed after being dragged outside of `<body>`.
-* [#11124](http://dev.ckeditor.com/ticket/11124): Fixed the [Elements Path](http://ckeditor.com/addon/elementspath) in an editor using the [Div Editing Area](http://ckeditor.com/addon/divarea).
-
-## CKEditor 4.3 Beta
-
-New Features:
-
-* [#9764](http://dev.ckeditor.com/ticket/9764): Widget System.
- * [Widget plugin](http://ckeditor.com/addon/widget) introducing the [Widget API](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.widget).
- * New [`editor.enterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-enterMode) and [`editor.shiftEnterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-shiftEnterMode) properties &ndash; normalized versions of [`config.enterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-enterMode) and [`config.shiftEnterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-shiftEnterMode).
- * Dynamic editor settings. Starting from CKEditor 4.3 Beta, *Enter* mode values and [content filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) instances may be changed dynamically (for example when the caret was placed in an element in which editor features should be adjusted). When you are implementing a new editor feature, you should base its behavior on [dynamic](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-activeEnterMode) or [static](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-enterMode) *Enter* mode values depending on whether this feature works in selection context or globally on editor content.
- * Dynamic *Enter* mode values &ndash; [`editor.setActiveEnterMode()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setActiveEnterMode) method, [`editor.activeEnterModeChange`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-activeEnterModeChange) event, and two properties: [`editor.activeEnterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-activeEnterMode) and [`editor.activeShiftEnterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-activeShiftEnterMode).
- * Dynamic content filter instances &ndash; [`editor.setActiveFilter()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setActiveFilter) method, [`editor.activeFilterChange`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-activeFilterChange) event, and [`editor.activeFilter`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-activeFilter) property.
- * "Fake" selection was introduced. It makes it possible to virtually select any element when the real selection remains hidden. See the [`selection.fake()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.selection-method-fake) method.
- * Default [`htmlParser.filter`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.filter) rules are not applied to non-editable elements (elements with `contenteditable` attribute set to `false` and their descendants) anymore. To add a rule which will be applied to all elements you need to pass an additional argument to the [`filter.addRules()`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.filter-method-addRules) method.
- * Dozens of new methods were introduced &ndash; most interesting ones:
- * [`document.find()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.document-method-find),
- * [`document.findOne()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.document-method-findOne),
- * [`editable.insertElementIntoRange()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editable-method-insertElementIntoRange),
- * [`range.moveToClosestEditablePosition()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-moveToClosestEditablePosition),
- * New methods for [`htmlParser.node`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.node) and [`htmlParser.element`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.element).
-* [#10659](http://dev.ckeditor.com/ticket/10659): New [Enhanced Image](http://ckeditor.com/addon/image2) plugin that introduces a widget with integrated image captions, an option to center images, and dynamic "click and drag" resizing.
-* [#10664](http://dev.ckeditor.com/ticket/10664): New [Mathematical Formulas](http://ckeditor.com/addon/mathjax) plugin that introduces the MathJax widget.
-* [#7987](https://dev.ckeditor.com/ticket/7987): New [Language](http://ckeditor.com/addon/language) plugin that implements Language toolbar button to support [WCAG 3.1.2 Language of Parts](http://www.w3.org/TR/UNDERSTANDING-WCAG20/meaning-other-lang-id.html).
-* [#10708](http://dev.ckeditor.com/ticket/10708): New [smileys](http://ckeditor.com/addon/smiley).
-
-## CKEditor 4.2.3
-
-Fixed Issues:
-
-* [#10994](http://dev.ckeditor.com/ticket/10994): Fixed: Loading external jQuery library when opening the [jQuery Adapter](http://docs.ckeditor.com/#!/guide/dev_jquery) sample directly from file.
-* [#10975](http://dev.ckeditor.com/ticket/10975): [IE] Fixed: Error thrown while opening the color palette.
-* [#9929](http://dev.ckeditor.com/ticket/9929): [Blink/WebKit] Fixed: A non-breaking space is created once a character is deleted and a regular space is typed.
-* [#10963](http://dev.ckeditor.com/ticket/10963): Fixed: JAWS issue with the keyboard shortcut for [Magic Line](http://ckeditor.com/addon/magicline).
-* [#11096](http://dev.ckeditor.com/ticket/11096): Fixed: TypeError: Object has no method 'is'.
-
-## CKEditor 4.2.2
-
-Fixed Issues:
-
-* [#9314](http://dev.ckeditor.com/ticket/9314): Fixed: Incorrect error message on closing a dialog window without saving changs.
-* [#10308](http://dev.ckeditor.com/ticket/10308): [IE10] Fixed: Unspecified error when deleting a row.
-* [#10945](http://dev.ckeditor.com/ticket/10945): [Chrome] Fixed: Clicking with a mouse inside the editor does not show the caret.
-* [#10912](http://dev.ckeditor.com/ticket/10912): Prevent default action when content of a non-editable link is clicked.
-* [#10913](http://dev.ckeditor.com/ticket/10913): Fixed [`CKEDITOR.plugins.addExternal()`](http://docs.ckeditor.com/#!/api/CKEDITOR.resourceManager-method-addExternal) not handling paths including file name specified.
-* [#10666](http://dev.ckeditor.com/ticket/10666): Fixed [`CKEDITOR.tools.isArray()`](http://docs.ckeditor.com/#!/api/CKEDITOR.tools-method-isArray) not working cross frame.
-* [#10910](http://dev.ckeditor.com/ticket/10910): [IE9] Fixed JavaScript error thrown in Compatibility Mode when clicking and/or typing in the editing area.
-* [#10868](http://dev.ckeditor.com/ticket/10868): [IE8] Prevent the browser from crashing when applying the Inline Quotation style.
-* [#10915](http://dev.ckeditor.com/ticket/10915): Fixed: Invalid CSS filter in the Kama skin.
-* [#10914](http://dev.ckeditor.com/ticket/10914): Plugins [Indent List](http://ckeditor.com/addon/indentlist) and [Indent Block](http://ckeditor.com/addon/indentblock) are now included in the build configuration.
-* [#10812](http://dev.ckeditor.com/ticket/10812): Fixed [`range.createBookmark2()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-createBookmark2) incorrectly normalizing offsets. This bug was causing many issues: [#10850](http://dev.ckeditor.com/ticket/10850), [#10842](http://dev.ckeditor.com/ticket/10842).
-* [#10951](http://dev.ckeditor.com/ticket/10951): Reviewed and optimized focus handling on panels (combo, menu buttons, color buttons, and context menu) to enhance accessibility. Fixed [#10705](http://dev.ckeditor.com/ticket/10705), [#10706](http://dev.ckeditor.com/ticket/10706) and [#10707](http://dev.ckeditor.com/ticket/10707).
-* [#10704](http://dev.ckeditor.com/ticket/10704): Fixed a JAWS issue with the Select Color dialog window title not being announced.
-* [#10753](http://dev.ckeditor.com/ticket/10753): The floating toolbar in inline instances now has a dedicated accessibility label.
-
-## CKEditor 4.2.1
-
-Fixed Issues:
-
-* [#10301](http://dev.ckeditor.com/ticket/10301): [IE9-10] Undo fails after 3+ consecutive paste actions with a JavaScript error.
-* [#10689](http://dev.ckeditor.com/ticket/10689): Save toolbar button saves only the first editor instance.
-* [#10368](http://dev.ckeditor.com/ticket/10368): Move language reading direction definition (`dir`) from main language file to core.
-* [#9330](http://dev.ckeditor.com/ticket/9330): Fixed pasting anchors from MS Word.
-* [#8103](http://dev.ckeditor.com/ticket/8103): Fixed pasting nested lists from MS Word.
-* [#9958](http://dev.ckeditor.com/ticket/9958): [IE9] Pressing the "OK" button will trigger the `onbeforeunload` event in the popup dialog.
-* [#10662](http://dev.ckeditor.com/ticket/10662): Fixed styles from the Styles drop-down list not registering to the ACF in case when the [Shared Spaces plugin](http://ckeditor.com/addon/sharedspace) is used.
-* [#9654](http://dev.ckeditor.com/ticket/9654): Problems with Internet Explorer 10 Quirks Mode.
-* [#9816](http://dev.ckeditor.com/ticket/9816): Floating toolbar does not reposition vertically in several cases.
-* [#10646](http://dev.ckeditor.com/ticket/10646): Removing a selected sublist or nested table with *Backspace/Delete* removes the parent element.
-* [#10623](http://dev.ckeditor.com/ticket/10623): [WebKit] Page is scrolled when opening a drop-down list.
-* [#10004](http://dev.ckeditor.com/ticket/10004): [ChromeVox] Button names are not announced.
-* [#10731](http://dev.ckeditor.com/ticket/10731): [WebSpellChecker](http://ckeditor.com/addon/wsc) plugin breaks cloning of editor configuration.
-* It is now possible to set per instance [WebSpellChecker](http://ckeditor.com/addon/wsc) plugin configuration instead of setting the configuration globally.
-
-## CKEditor 4.2
-
-**Important Notes:**
-
-* Dropped compatibility support for Internet Explorer 7 and Firefox 3.6.
-
-* Both the Basic and the Standard distribution packages will not contain the new [Indent Block](http://ckeditor.com/addon/indentblock) plugin. Because of this the [Advanced Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) might remove block indentations from existing contents. If you want to prevent this, either [add an appropriate ACF rule to your filter](http://docs.ckeditor.com/#!/guide/dev_allowed_content_rules) or create a custom build based on the Basic/Standard package and add the Indent Block plugin in [CKBuilder](http://ckeditor.com/builder).
-
-New Features:
-
-* [#10027](http://dev.ckeditor.com/ticket/10027): Separated list and block indentation into two plugins: [Indent List](http://ckeditor.com/addon/indentlist) and [Indent Block](http://ckeditor.com/addon/indentblock).
-* [#8244](http://dev.ckeditor.com/ticket/8244): Use *(Shift+)Tab* to indent and outdent lists.
-* [#10281](http://dev.ckeditor.com/ticket/10281): The [jQuery Adapter](http://docs.ckeditor.com/#!/guide/dev_jquery) is now available. Several jQuery-related issues fixed: [#8261](http://dev.ckeditor.com/ticket/8261), [#9077](http://dev.ckeditor.com/ticket/9077), [#8710](http://dev.ckeditor.com/ticket/8710), [#8530](http://dev.ckeditor.com/ticket/8530), [#9019](http://dev.ckeditor.com/ticket/9019), [#6181](http://dev.ckeditor.com/ticket/6181), [#7876](http://dev.ckeditor.com/ticket/7876), [#6906](http://dev.ckeditor.com/ticket/6906).
-* [#10042](http://dev.ckeditor.com/ticket/10042): Introduced [`config.title`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-title) setting to change the human-readable title of the editor.
-* [#9794](http://dev.ckeditor.com/ticket/9794): Added [`editor.change`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-change) event.
-* [#9923](http://dev.ckeditor.com/ticket/9923): HiDPI support in the editor UI. HiDPI icons for [Moono skin](http://ckeditor.com/addon/moono) added.
-* [#8031](http://dev.ckeditor.com/ticket/8031): Handle `required` attributes on `<textarea>` elements &mdash; introduced [`editor.required`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-required) event.
-* [#10280](http://dev.ckeditor.com/ticket/10280): Ability to replace `<textarea>` elements with the inline editor.
-
-Fixed Issues:
-
-* [#10599](http://dev.ckeditor.com/ticket/10599): [Indent](http://ckeditor.com/addon/indent) plugin is no longer required by the [List](http://ckeditor.com/addon/list) plugin.
-* [#10370](http://dev.ckeditor.com/ticket/10370): Inconsistency in data events between framed and inline editors.
-* [#10438](http://dev.ckeditor.com/ticket/10438): [FF, IE] No selection is done on an editable element on executing [`editor.setData()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setData).
-
-## CKEditor 4.1.3
-
-New Features:
-
-* Added new translation: Indonesian.
-
-Fixed Issues:
-
-* [#10644](http://dev.ckeditor.com/ticket/10644): Fixed a critical bug when pasting plain text in Blink-based browsers.
-* [#5189](http://dev.ckeditor.com/ticket/5189): [Find/Replace](http://ckeditor.com/addon/find) dialog window: rename "Cancel" button to "Close".
-* [#10562](http://dev.ckeditor.com/ticket/10562): [Housekeeping] Unified CSS gradient filter formats in the [Moono](http://ckeditor.com/addon/moono) skin.
-* [#10537](http://dev.ckeditor.com/ticket/10537): Advanced Content Filter should register a default rule for [`config.shiftEnterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-shiftEnterMode).
-* [#10610](http://dev.ckeditor.com/ticket/10610): [`CKEDITOR.dialog.addIframe()`](http://docs.ckeditor.com/#!/api/CKEDITOR.dialog-static-method-addIframe) incorrectly sets the iframe size in dialog windows.
-
-## CKEditor 4.1.2
-
-New Features:
-
-* Added new translation: Sinhala.
-
-Fixed Issues:
-
-* [#10339](http://dev.ckeditor.com/ticket/10339): Fixed: Error thrown when inserted data was totally stripped out after filtering and processing.
-* [#10298](http://dev.ckeditor.com/ticket/10298): Fixed: Data processor breaks attributes containing protected parts.
-* [#10367](http://dev.ckeditor.com/ticket/10367): Fixed: [`editable.insertText()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editable-method-insertText) loses characters when `RegExp` replace controls are being inserted.
-* [#10165](http://dev.ckeditor.com/ticket/10165): [IE] Access denied error when `document.domain` has been altered.
-* [#9761](http://dev.ckeditor.com/ticket/9761): Update the *Backspace* key state in [`keystrokeHandler.blockedKeystrokes`](http://docs.ckeditor.com/#!/api/CKEDITOR.keystrokeHandler-property-blockedKeystrokes) when calling [`editor.setReadOnly()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setReadOnly).
-* [#6504](http://dev.ckeditor.com/ticket/6504): Fixed: Race condition while loading several [`config.customConfig`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-customConfig) files.
-* [#10146](http://dev.ckeditor.com/ticket/10146): [Firefox] Empty lines are being removed while [`config.enterMode`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-enterMode) is [`CKEDITOR.ENTER_BR`](http://docs.ckeditor.com/#!/api/CKEDITOR-property-ENTER_BR).
-* [#10360](http://dev.ckeditor.com/ticket/10360): Fixed: ARIA `role="application"` should not be used for dialog windows.
-* [#10361](http://dev.ckeditor.com/ticket/10361): Fixed: ARIA `role="application"` should not be used for floating panels.
-* [#10510](http://dev.ckeditor.com/ticket/10510): Introduced unique voice labels to differentiate between different editor instances.
-* [#9945](http://dev.ckeditor.com/ticket/9945): [iOS] Scrolling not possible on iPad.
-* [#10389](http://dev.ckeditor.com/ticket/10389): Fixed: Invalid HTML in the "Text and Table" template.
-* [WebSpellChecker](http://ckeditor.com/addon/wsc) plugin user interface was changed to match CKEditor 4 style.
-
-## CKEditor 4.1.1
-
-New Features:
-
-* Added new translation: Albanian.
-
-Fixed Issues:
-
-* [#10172](http://dev.ckeditor.com/ticket/10172): Pressing *Delete* or *Backspace* in an empty table cell moves the cursor to the next/previous cell.
-* [#10219](http://dev.ckeditor.com/ticket/10219): Error thrown when destroying an editor instance in parallel with a `mouseup` event.
-* [#10265](http://dev.ckeditor.com/ticket/10265): Wrong loop type in the [File Browser](http://ckeditor.com/addon/filebrowser) plugin.
-* [#10249](http://dev.ckeditor.com/ticket/10249): Wrong undo/redo states at start.
-* [#10268](http://dev.ckeditor.com/ticket/10268): [Show Blocks](http://ckeditor.com/addon/showblocks) does not recover after switching to Source view.
-* [#9995](http://dev.ckeditor.com/ticket/9995): HTML code in the `<textarea>` should not be modified by the [`htmlDataProcessor`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlDataProcessor).
-* [#10320](http://dev.ckeditor.com/ticket/10320): [Justify](http://ckeditor.com/addon/justify) plugin should add elements to Advanced Content Filter based on current [Enter mode](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-enterMode).
-* [#10260](http://dev.ckeditor.com/ticket/10260): Fixed: Advanced Content Filter blocks [`tabSpaces`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-tabSpaces). Unified `data-cke-*` attributes filtering.
-* [#10315](http://dev.ckeditor.com/ticket/10315): [WebKit] [Undo manager](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.undo.UndoManager) should not record snapshots after a filling character was added/removed.
-* [#10291](http://dev.ckeditor.com/ticket/10291): [WebKit] Space after a filling character should be secured.
-* [#10330](http://dev.ckeditor.com/ticket/10330): [WebKit] The filling character is not removed on `keydown` in specific cases.
-* [#10285](http://dev.ckeditor.com/ticket/10285): Fixed: Styled text pasted from MS Word causes an infinite loop.
-* [#10131](http://dev.ckeditor.com/ticket/10131): Fixed: [`undoManager.update()`](http://docs.ckeditor.com/#!/api/CKEDITOR.plugins.undo.UndoManager-method-update) does not refresh the command state.
-* [#10337](http://dev.ckeditor.com/ticket/10337): Fixed: Unable to remove `<s>` using [Remove Format](http://ckeditor.com/addon/removeformat).
-
-## CKEditor 4.1
-
-Fixed Issues:
-
-* [#10192](http://dev.ckeditor.com/ticket/10192): Closing lists with the *Enter* key does not work with [Advanced Content Filter](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) in several cases.
-* [#10191](http://dev.ckeditor.com/ticket/10191): Fixed allowed content rules unification, so the [`filter.allowedContent`](http://docs.ckeditor.com/#!/api/CKEDITOR.filter-property-allowedContent) property always contains rules in the same format.
-* [#10224](http://dev.ckeditor.com/ticket/10224): Advanced Content Filter does not remove non-empty `<a>` elements anymore.
-* Minor issues in plugin integration with Advanced Content Filter:
- * [#10166](http://dev.ckeditor.com/ticket/10166): Added transformation from the `align` attribute to `float` style to preserve backward compatibility after the introduction of Advanced Content Filter.
- * [#10195](http://dev.ckeditor.com/ticket/10195): [Image](http://ckeditor.com/addon/image) plugin no longer registers rules for links to Advanced Content Filter.
- * [#10213](http://dev.ckeditor.com/ticket/10213): [Justify](http://ckeditor.com/addon/justify) plugin is now correctly registering rules to Advanced Content Filter when [`config.justifyClasses`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-justifyClasses) is defined.
-
-## CKEditor 4.1 RC
-
-New Features:
-
-* [#9829](http://dev.ckeditor.com/ticket/9829): Advanced Content Filter - data and features activation based on editor configuration.
-
- Brand new data filtering system that works in 2 modes:
-
- * Based on loaded features (toolbar items, plugins) - the data will be filtered according to what the editor in its
- current configuration can handle.
- * Based on [`config.allowedContent`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent) rules - the data
- will be filtered and the editor features (toolbar items, commands, keystrokes) will be enabled if they are allowed.
-
- See the `datafiltering.html` sample, [guides](http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter) and [`CKEDITOR.filter` API documentation](http://docs.ckeditor.com/#!/api/CKEDITOR.filter).
-* [#9387](http://dev.ckeditor.com/ticket/9387): Reintroduced [Shared Spaces](http://ckeditor.com/addon/sharedspace) - the ability to display toolbar and bottom editor space in selected locations and to share them by different editor instances.
-* [#9907](http://dev.ckeditor.com/ticket/9907): Added the [`contentPreview`](http://docs.ckeditor.com/#!/api/CKEDITOR-event-contentPreview) event for preview data manipulation.
-* [#9713](http://dev.ckeditor.com/ticket/9713): Introduced the [Source Dialog](http://ckeditor.com/addon/sourcedialog) plugin that brings raw HTML editing for inline editor instances.
-* Included in [#9829](http://dev.ckeditor.com/ticket/9829): Introduced new events, [`toHtml`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-toHtml) and [`toDataFormat`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-toDataFormat), allowing for better integration with data processing.
-* [#9981](http://dev.ckeditor.com/ticket/9981): Added ability to filter [`htmlParser.fragment`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.fragment), [`htmlParser.element`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.element) etc. by many [`htmlParser.filter`](http://docs.ckeditor.com/#!/api/CKEDITOR.htmlParser.filter)s before writing structure to an HTML string.
-* Included in [#10103](http://dev.ckeditor.com/ticket/10103):
- * Introduced the [`editor.status`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-status) property to make it easier to check the current status of the editor.
- * Default [`command`](http://docs.ckeditor.com/#!/api/CKEDITOR.command) state is now [`CKEDITOR.TRISTATE_DISABLE`](http://docs.ckeditor.com/#!/api/CKEDITOR-property-TRISTATE_DISABLED). It will be activated on [`editor.instanceReady`](http://docs.ckeditor.com/#!/api/CKEDITOR-event-instanceReady) or immediately after being added if the editor is already initialized.
-* [#9796](http://dev.ckeditor.com/ticket/9796): Introduced `<s>` as a default tag for strikethrough, which replaces obsolete `<strike>` in HTML5.
-
-## CKEditor 4.0.3
-
-Fixed Issues:
-
-* [#10196](http://dev.ckeditor.com/ticket/10196): Fixed context menus not opening with keyboard shortcuts when [Autogrow](http://ckeditor.com/addon/autogrow) is enabled.
-* [#10212](http://dev.ckeditor.com/ticket/10212): [IE7-10] Undo command throws errors after multiple switches between Source and WYSIWYG view.
-* [#10219](http://dev.ckeditor.com/ticket/10219): [Inline editor] Error thrown after calling [`editor.destroy()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-destroy).
-
-## CKEditor 4.0.2
-
-Fixed Issues:
-
-* [#9779](http://dev.ckeditor.com/ticket/9779): Fixed overriding [`CKEDITOR.getUrl()`](http://docs.ckeditor.com/#!/api/CKEDITOR-method-getUrl) with `CKEDITOR_GETURL`.
-* [#9772](http://dev.ckeditor.com/ticket/9772): Custom buttons in the dialog window footer have different look and size ([Moono](http://ckeditor.com/addon/moono), [Kama](http://ckeditor.com/addon/kama) skins).
-* [#9029](http://dev.ckeditor.com/ticket/9029): Custom styles added with the [`stylesSet.add()`](http://docs.ckeditor.com/#!/api/CKEDITOR.stylesSet-method-add) are displayed in the wrong order.
-* [#9887](http://dev.ckeditor.com/ticket/9887): Disable [Magic Line](http://ckeditor.com/addon/magicline) when [`editor.readOnly`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-property-readOnly) is set.
-* [#9882](http://dev.ckeditor.com/ticket/9882): Fixed empty document title on [`editor.getData()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getData) if set via the Document Properties dialog window.
-* [#9773](http://dev.ckeditor.com/ticket/9773): Fixed rendering problems with selection fields in the Kama skin.
-* [#9851](http://dev.ckeditor.com/ticket/9851): The [`selectionChange`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-selectionChange) event is not fired when mouse selection ended outside editable.
-* [#9903](http://dev.ckeditor.com/ticket/9903): [Inline editor] Bad positioning of floating space with page horizontal scroll.
-* [#9872](http://dev.ckeditor.com/ticket/9872): [`editor.checkDirty()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-checkDirty) returns `true` when called onload. Removed the obsolete `editor.mayBeDirty` flag.
-* [#9893](http://dev.ckeditor.com/ticket/9893): [IE] Fixed broken toolbar when editing mixed direction content in Quirks mode.
-* [#9845](http://dev.ckeditor.com/ticket/9845): Fixed TAB navigation in the [Link](http://ckeditor.com/addon/link) dialog window when the Anchor option is used and no anchors are available.
-* [#9883](http://dev.ckeditor.com/ticket/9883): Maximizing was making the entire page editable with [divarea](http://ckeditor.com/addon/divarea)-based editors.
-* [#9940](http://dev.ckeditor.com/ticket/9940): [Firefox] Navigating back to a page with the editor was making the entire page editable.
-* [#9966](http://dev.ckeditor.com/ticket/9966): Fixed: Unable to type square brackets with French keyboard layout. Changed [Magic Line](http://ckeditor.com/addon/magicline) keystrokes.
-* [#9507](http://dev.ckeditor.com/ticket/9507): [Firefox] Selection is moved before editable position when the editor is focused for the first time.
-* [#9947](http://dev.ckeditor.com/ticket/9947): [WebKit] Editor overflows parent container in some edge cases.
-* [#10105](http://dev.ckeditor.com/ticket/10105): Fixed: Broken [sourcearea](http://ckeditor.com/addon/sourcearea) view when an RTL language is set.
-* [#10123](http://dev.ckeditor.com/ticket/10123): [WebKit] Fixed: Several dialog windows have broken layout since the latest WebKit release.
-* [#10152](http://dev.ckeditor.com/ticket/10152): Fixed: Invalid ARIA property used on menu items.
-
-## CKEditor 4.0.1.1
-
-Fixed Issues:
-
-* Security update: Added protection against XSS attack and possible path disclosure in the PHP sample.
-
-## CKEditor 4.0.1
-
-Fixed Issues:
-
-* [#9655](http://dev.ckeditor.com/ticket/9655): Support for IE Quirks Mode in the new [Moono skin](http://ckeditor.com/addon/moono).
-* Accessibility issues (mainly in inline editor): [#9364](http://dev.ckeditor.com/ticket/9364), [#9368](http://dev.ckeditor.com/ticket/9368), [#9369](http://dev.ckeditor.com/ticket/9369), [#9370](http://dev.ckeditor.com/ticket/9370), [#9541](http://dev.ckeditor.com/ticket/9541), [#9543](http://dev.ckeditor.com/ticket/9543), [#9841](http://dev.ckeditor.com/ticket/9841), [#9844](http://dev.ckeditor.com/ticket/9844).
-* [Magic Line](http://ckeditor.com/addon/magicline) plugin:
- * [#9481](http://dev.ckeditor.com/ticket/9481): Added accessibility support for Magic Line.
- * [#9509](http://dev.ckeditor.com/ticket/9509): Added Magic Line support for forms.
- * [#9573](http://dev.ckeditor.com/ticket/9573): Magic Line does not disappear on `mouseout` in a specific case.
-* [#9754](http://dev.ckeditor.com/ticket/9754): [WebKit] Cutting & pasting simple unformatted text generates an inline wrapper in WebKit browsers.
-* [#9456](http://dev.ckeditor.com/ticket/9456): [Chrome] Properly paste bullet list style from MS Word.
-* [#9699](http://dev.ckeditor.com/ticket/9699), [#9758](http://dev.ckeditor.com/ticket/9758): Improved selection locking when selecting by dragging.
-* Context menu:
- * [#9712](http://dev.ckeditor.com/ticket/9712): Opening the context menu destroys editor focus.
- * [#9366](http://dev.ckeditor.com/ticket/9366): Context menu should be displayed over the floating toolbar.
- * [#9706](http://dev.ckeditor.com/ticket/9706): Context menu generates a JavaScript error in inline mode when the editor is attached to a header element.
-* [#9800](http://dev.ckeditor.com/ticket/9800): Hide float panel when resizing the window.
-* [#9721](http://dev.ckeditor.com/ticket/9721): Padding in content of div-based editor puts the editing area under the bottom UI space.
-* [#9528](http://dev.ckeditor.com/ticket/9528): Host page `box-sizing` style should not influence the editor UI elements.
-* [#9503](http://dev.ckeditor.com/ticket/9503): [Form Elements](http://ckeditor.com/addon/forms) plugin adds context menu listeners only on supported input types. Added support for `tel`, `email`, `search` and `url` input types.
-* [#9769](http://dev.ckeditor.com/ticket/9769): Improved floating toolbar positioning in a narrow window.
-* [#9875](http://dev.ckeditor.com/ticket/9875): Table dialog window does not populate width correctly.
-* [#8675](http://dev.ckeditor.com/ticket/8675): Deleting cells in a nested table removes the outer table cell.
-* [#9815](http://dev.ckeditor.com/ticket/9815): Cannot edit dialog window fields in an editor initialized in the jQuery UI modal dialog.
-* [#8888](http://dev.ckeditor.com/ticket/8888): CKEditor dialog windows do not show completely in a small window.
-* [#9360](http://dev.ckeditor.com/ticket/9360): [Inline editor] Blocks shown for a `<div>` element stay permanently even after the user exits editing the `<div>`.
-* [#9531](http://dev.ckeditor.com/ticket/9531): [Firefox & Inline editor] Toolbar is lost when closing the Format drop-down list by clicking its button.
-* [#9553](http://dev.ckeditor.com/ticket/9553): Table width incorrectly set when the `border-width` style is specified.
-* [#9594](http://dev.ckeditor.com/ticket/9594): Cannot tab past CKEditor when it is in read-only mode.
-* [#9658](http://dev.ckeditor.com/ticket/9658): [IE9] Justify not working on selected images.
-* [#9686](http://dev.ckeditor.com/ticket/9686): Added missing contents styles for `<pre>` elements.
-* [#9709](http://dev.ckeditor.com/ticket/9709): [Paste from Word](http://ckeditor.com/addon/pastefromword) should not depend on configuration from other styles.
-* [#9726](http://dev.ckeditor.com/ticket/9726): Removed [Color Dialog](http://ckeditor.com/addon/colordialog) plugin dependency from [Table Tools](http://ckeditor.com/addon/tabletools).
-* [#9765](http://dev.ckeditor.com/ticket/9765): Toolbar Collapse command documented incorrectly in the [Accessibility Instructions](http://ckeditor.com/addon/a11yhelp) dialog window.
-* [#9771](http://dev.ckeditor.com/ticket/9771): [WebKit & Opera] Fixed scrolling issues when pasting.
-* [#9787](http://dev.ckeditor.com/ticket/9787): [IE9] `onChange` is not fired for checkboxes in dialogs.
-* [#9842](http://dev.ckeditor.com/ticket/9842): [Firefox 17] When opening a toolbar menu for the first time and pressing the *Down Arrow* key, focus goes to the next toolbar button instead of the menu options.
-* [#9847](http://dev.ckeditor.com/ticket/9847): [Elements Path](http://ckeditor.com/addon/elementspath) should not be initialized in the inline editor.
-* [#9853](http://dev.ckeditor.com/ticket/9853): [`editor.addRemoveFormatFilter()`](http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-addRemoveFormatFilter) is exposed before it really works.
-* [#8893](http://dev.ckeditor.com/ticket/8893): Value of the [`pasteFromWordCleanupFile`](http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-pasteFromWordCleanupFile) configuration option is now taken from the instance configuration.
-* [#9693](http://dev.ckeditor.com/ticket/9693): Removed "Live Preview" checkbox from UI color picker.
-
-
-## CKEditor 4.0
-
-The first stable release of the new CKEditor 4 code line.
-
-The CKEditor JavaScript API has been kept compatible with CKEditor 4, whenever
-possible. The list of relevant changes can be found in the [API Changes page of
-the CKEditor 4 documentation][1].
-
-[1]: http://docs.ckeditor.com/#!/guide/dev_api_changes "API Changes"
diff --git a/wqflask/wqflask/static/packages/ckeditor/LICENSE.md b/wqflask/wqflask/static/packages/ckeditor/LICENSE.md
deleted file mode 100644
index b6e0b9ca..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/LICENSE.md
+++ /dev/null
@@ -1,1264 +0,0 @@
-Software License Agreement
-==========================
-
-CKEditor - The text editor for Internet - http://ckeditor.com
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-
-Licensed under the terms of any of the following licenses at your
-choice:
-
- - GNU General Public License Version 2 or later (the "GPL")
- http://www.gnu.org/licenses/gpl.html
- (See Appendix A)
-
- - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
- http://www.gnu.org/licenses/lgpl.html
- (See Appendix B)
-
- - Mozilla Public License Version 1.1 or later (the "MPL")
- http://www.mozilla.org/MPL/MPL-1.1.html
- (See Appendix C)
-
-You are not required to, but if you want to explicitly declare the
-license you have chosen to be bound to when using, reproducing,
-modifying and distributing this software, just include a text file
-titled "legal.txt" in your version of this software, indicating your
-license choice. In any case, your choice will not restrict any
-recipient of your version of this software to use, reproduce, modify
-and distribute this software under any of the above licenses.
-
-Sources of Intellectual Property Included in CKEditor
------------------------------------------------------
-
-Where not otherwise indicated, all CKEditor content is authored by
-CKSource engineers and consists of CKSource-owned intellectual
-property. In some specific instances, CKEditor will incorporate work
-done by developers outside of CKSource with their express permission.
-
-Trademarks
-----------
-
-CKEditor is a trademark of CKSource - Frederico Knabben. All other brand
-and product names are trademarks, registered trademarks or service
-marks of their respective holders.
-
----
-
-Appendix A: The GPL License
----------------------------
-
-GNU GENERAL PUBLIC LICENSE
-Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software-to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
-GNU GENERAL PUBLIC LICENSE
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-END OF TERMS AND CONDITIONS
-
-
-Appendix B: The LGPL License
-----------------------------
-
-GNU LESSER GENERAL PUBLIC LICENSE
-Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software-to make sure the software is free for all its users.
-
- This license, the Lesser General Public License, applies to some
-specially designated software packages-typically libraries-of the
-Free Software Foundation and other authors who decide to use it. You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
- When we speak of free software, we are referring to freedom of use,
-not price. Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
- To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights. These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
- To protect each distributor, we want to make it very clear that
-there is no warranty for the free library. Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
- Finally, software patents pose a constant threat to the existence of
-any free program. We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder. Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
- Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License. This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License. We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
- When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library. The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom. The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
- We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License. It also provides other free software developers Less
-of an advantage over competing non-free programs. These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries. However, the Lesser license provides advantages in certain
-special circumstances.
-
- For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard. To achieve this, non-free programs must be
-allowed to use the library. A more frequent case is that a free
-library does the same job as widely used non-free libraries. In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
- In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software. For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
- Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
-GNU LESSER GENERAL PUBLIC LICENSE
-TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
- 6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (1) uses at run time a
- copy of the library already present on the user's computer system,
- rather than copying library functions into the executable, and (2)
- will operate properly with a modified version of the library, if
- the user installs one, as long as the modified version is
- interface-compatible with the version that the work was made with.
-
- c) Accompany the work with a written offer, valid for at
- least three years, to give the same user the materials
- specified in Subsection 6a, above, for a charge no more
- than the cost of performing this distribution.
-
- d) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- e) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded. In such case, this License incorporates the limitation as if
-written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
-NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
-END OF TERMS AND CONDITIONS
-
-
-Appendix C: The MPL License
----------------------------
-
-MOZILLA PUBLIC LICENSE
-Version 1.1
-
-1. Definitions.
-
- 1.0.1. "Commercial Use" means distribution or otherwise making the
- Covered Code available to a third party.
-
- 1.1. "Contributor" means each entity that creates or contributes to
- the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the Original
- Code, prior Modifications used by a Contributor, and the Modifications
- made by that particular Contributor.
-
- 1.3. "Covered Code" means the Original Code or Modifications or the
- combination of the Original Code and Modifications, in each case
- including portions thereof.
-
- 1.4. "Electronic Distribution Mechanism" means a mechanism generally
- accepted in the software development community for the electronic
- transfer of data.
-
- 1.5. "Executable" means Covered Code in any form other than Source
- Code.
-
- 1.6. "Initial Developer" means the individual or entity identified
- as the Initial Developer in the Source Code notice required by Exhibit
- A.
-
- 1.7. "Larger Work" means a work which combines Covered Code or
- portions thereof with code not governed by the terms of this License.
-
- 1.8. "License" means this document.
-
- 1.8.1. "Licensable" means having the right to grant, to the maximum
- extent possible, whether at the time of the initial grant or
- subsequently acquired, any and all of the rights conveyed herein.
-
- 1.9. "Modifications" means any addition to or deletion from the
- substance or structure of either the Original Code or any previous
- Modifications. When Covered Code is released as a series of files, a
- Modification is:
- A. Any addition to or deletion from the contents of a file
- containing Original Code or previous Modifications.
-
- B. Any new file that contains any part of the Original Code or
- previous Modifications.
-
- 1.10. "Original Code" means Source Code of computer software code
- which is described in the Source Code notice required by Exhibit A as
- Original Code, and which, at the time of its release under this
- License is not already Covered Code governed by this License.
-
- 1.10.1. "Patent Claims" means any patent claim(s), now owned or
- hereafter acquired, including without limitation, method, process,
- and apparatus claims, in any patent Licensable by grantor.
-
- 1.11. "Source Code" means the preferred form of the Covered Code for
- making modifications to it, including all modules it contains, plus
- any associated interface definition files, scripts used to control
- compilation and installation of an Executable, or source code
- differential comparisons against either the Original Code or another
- well known, available Covered Code of the Contributor's choice. The
- Source Code can be in a compressed or archival form, provided the
- appropriate decompression or de-archiving software is widely available
- for no charge.
-
- 1.12. "You" (or "Your") means an individual or a legal entity
- exercising rights under, and complying with all of the terms of, this
- License or a future version of this License issued under Section 6.1.
- For legal entities, "You" includes any entity which controls, is
- controlled by, or is under common control with You. For purposes of
- this definition, "control" means (a) the power, direct or indirect,
- to cause the direction or management of such entity, whether by
- contract or otherwise, or (b) ownership of more than fifty percent
- (50%) of the outstanding shares or beneficial ownership of such
- entity.
-
-2. Source Code License.
-
- 2.1. The Initial Developer Grant.
- The Initial Developer hereby grants You a world-wide, royalty-free,
- non-exclusive license, subject to third party intellectual property
- claims:
- (a) under intellectual property rights (other than patent or
- trademark) Licensable by Initial Developer to use, reproduce,
- modify, display, perform, sublicense and distribute the Original
- Code (or portions thereof) with or without Modifications, and/or
- as part of a Larger Work; and
-
- (b) under Patents Claims infringed by the making, using or
- selling of Original Code, to make, have made, use, practice,
- sell, and offer for sale, and/or otherwise dispose of the
- Original Code (or portions thereof).
-
- (c) the licenses granted in this Section 2.1(a) and (b) are
- effective on the date Initial Developer first distributes
- Original Code under the terms of this License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent license is
- granted: 1) for code that You delete from the Original Code; 2)
- separate from the Original Code; or 3) for infringements caused
- by: i) the modification of the Original Code or ii) the
- combination of the Original Code with other software or devices.
-
- 2.2. Contributor Grant.
- Subject to third party intellectual property claims, each Contributor
- hereby grants You a world-wide, royalty-free, non-exclusive license
-
- (a) under intellectual property rights (other than patent or
- trademark) Licensable by Contributor, to use, reproduce, modify,
- display, perform, sublicense and distribute the Modifications
- created by such Contributor (or portions thereof) either on an
- unmodified basis, with other Modifications, as Covered Code
- and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making, using, or
- selling of Modifications made by that Contributor either alone
- and/or in combination with its Contributor Version (or portions
- of such combination), to make, use, sell, offer for sale, have
- made, and/or otherwise dispose of: 1) Modifications made by that
- Contributor (or portions thereof); and 2) the combination of
- Modifications made by that Contributor with its Contributor
- Version (or portions of such combination).
-
- (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
- effective on the date Contributor first makes Commercial Use of
- the Covered Code.
-
- (d) Notwithstanding Section 2.2(b) above, no patent license is
- granted: 1) for any code that Contributor has deleted from the
- Contributor Version; 2) separate from the Contributor Version;
- 3) for infringements caused by: i) third party modifications of
- Contributor Version or ii) the combination of Modifications made
- by that Contributor with other software (except as part of the
- Contributor Version) or other devices; or 4) under Patent Claims
- infringed by Covered Code in the absence of Modifications made by
- that Contributor.
-
-3. Distribution Obligations.
-
- 3.1. Application of License.
- The Modifications which You create or to which You contribute are
- governed by the terms of this License, including without limitation
- Section 2.2. The Source Code version of Covered Code may be
- distributed only under the terms of this License or a future version
- of this License released under Section 6.1, and You must include a
- copy of this License with every copy of the Source Code You
- distribute. You may not offer or impose any terms on any Source Code
- version that alters or restricts the applicable version of this
- License or the recipients' rights hereunder. However, You may include
- an additional document offering the additional rights described in
- Section 3.5.
-
- 3.2. Availability of Source Code.
- Any Modification which You create or to which You contribute must be
- made available in Source Code form under the terms of this License
- either on the same media as an Executable version or via an accepted
- Electronic Distribution Mechanism to anyone to whom you made an
- Executable version available; and if made available via Electronic
- Distribution Mechanism, must remain available for at least twelve (12)
- months after the date it initially became available, or at least six
- (6) months after a subsequent version of that particular Modification
- has been made available to such recipients. You are responsible for
- ensuring that the Source Code version remains available even if the
- Electronic Distribution Mechanism is maintained by a third party.
-
- 3.3. Description of Modifications.
- You must cause all Covered Code to which You contribute to contain a
- file documenting the changes You made to create that Covered Code and
- the date of any change. You must include a prominent statement that
- the Modification is derived, directly or indirectly, from Original
- Code provided by the Initial Developer and including the name of the
- Initial Developer in (a) the Source Code, and (b) in any notice in an
- Executable version or related documentation in which You describe the
- origin or ownership of the Covered Code.
-
- 3.4. Intellectual Property Matters
- (a) Third Party Claims.
- If Contributor has knowledge that a license under a third party's
- intellectual property rights is required to exercise the rights
- granted by such Contributor under Sections 2.1 or 2.2,
- Contributor must include a text file with the Source Code
- distribution titled "LEGAL" which describes the claim and the
- party making the claim in sufficient detail that a recipient will
- know whom to contact. If Contributor obtains such knowledge after
- the Modification is made available as described in Section 3.2,
- Contributor shall promptly modify the LEGAL file in all copies
- Contributor makes available thereafter and shall take other steps
- (such as notifying appropriate mailing lists or newsgroups)
- reasonably calculated to inform those who received the Covered
- Code that new knowledge has been obtained.
-
- (b) Contributor APIs.
- If Contributor's Modifications include an application programming
- interface and Contributor has knowledge of patent licenses which
- are reasonably necessary to implement that API, Contributor must
- also include this information in the LEGAL file.
-
- (c) Representations.
- Contributor represents that, except as disclosed pursuant to
- Section 3.4(a) above, Contributor believes that Contributor's
- Modifications are Contributor's original creation(s) and/or
- Contributor has sufficient rights to grant the rights conveyed by
- this License.
-
- 3.5. Required Notices.
- You must duplicate the notice in Exhibit A in each file of the Source
- Code. If it is not possible to put such notice in a particular Source
- Code file due to its structure, then You must include such notice in a
- location (such as a relevant directory) where a user would be likely
- to look for such a notice. If You created one or more Modification(s)
- You may add your name as a Contributor to the notice described in
- Exhibit A. You must also duplicate this License in any documentation
- for the Source Code where You describe recipients' rights or ownership
- rights relating to Covered Code. You may choose to offer, and to
- charge a fee for, warranty, support, indemnity or liability
- obligations to one or more recipients of Covered Code. However, You
- may do so only on Your own behalf, and not on behalf of the Initial
- Developer or any Contributor. You must make it absolutely clear than
- any such warranty, support, indemnity or liability obligation is
- offered by You alone, and You hereby agree to indemnify the Initial
- Developer and every Contributor for any liability incurred by the
- Initial Developer or such Contributor as a result of warranty,
- support, indemnity or liability terms You offer.
-
- 3.6. Distribution of Executable Versions.
- You may distribute Covered Code in Executable form only if the
- requirements of Section 3.1-3.5 have been met for that Covered Code,
- and if You include a notice stating that the Source Code version of
- the Covered Code is available under the terms of this License,
- including a description of how and where You have fulfilled the
- obligations of Section 3.2. The notice must be conspicuously included
- in any notice in an Executable version, related documentation or
- collateral in which You describe recipients' rights relating to the
- Covered Code. You may distribute the Executable version of Covered
- Code or ownership rights under a license of Your choice, which may
- contain terms different from this License, provided that You are in
- compliance with the terms of this License and that the license for the
- Executable version does not attempt to limit or alter the recipient's
- rights in the Source Code version from the rights set forth in this
- License. If You distribute the Executable version under a different
- license You must make it absolutely clear that any terms which differ
- from this License are offered by You alone, not by the Initial
- Developer or any Contributor. You hereby agree to indemnify the
- Initial Developer and every Contributor for any liability incurred by
- the Initial Developer or such Contributor as a result of any such
- terms You offer.
-
- 3.7. Larger Works.
- You may create a Larger Work by combining Covered Code with other code
- not governed by the terms of this License and distribute the Larger
- Work as a single product. In such a case, You must make sure the
- requirements of this License are fulfilled for the Covered Code.
-
-4. Inability to Comply Due to Statute or Regulation.
-
- If it is impossible for You to comply with any of the terms of this
- License with respect to some or all of the Covered Code due to
- statute, judicial order, or regulation then You must: (a) comply with
- the terms of this License to the maximum extent possible; and (b)
- describe the limitations and the code they affect. Such description
- must be included in the LEGAL file described in Section 3.4 and must
- be included with all distributions of the Source Code. Except to the
- extent prohibited by statute or regulation, such description must be
- sufficiently detailed for a recipient of ordinary skill to be able to
- understand it.
-
-5. Application of this License.
-
- This License applies to code to which the Initial Developer has
- attached the notice in Exhibit A and to related Covered Code.
-
-6. Versions of the License.
-
- 6.1. New Versions.
- Netscape Communications Corporation ("Netscape") may publish revised
- and/or new versions of the License from time to time. Each version
- will be given a distinguishing version number.
-
- 6.2. Effect of New Versions.
- Once Covered Code has been published under a particular version of the
- License, You may always continue to use it under the terms of that
- version. You may also choose to use such Covered Code under the terms
- of any subsequent version of the License published by Netscape. No one
- other than Netscape has the right to modify the terms applicable to
- Covered Code created under this License.
-
- 6.3. Derivative Works.
- If You create or use a modified version of this License (which you may
- only do in order to apply it to code which is not already Covered Code
- governed by this License), You must (a) rename Your license so that
- the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape",
- "MPL", "NPL" or any confusingly similar phrase do not appear in your
- license (except to note that your license differs from this License)
- and (b) otherwise make it clear that Your version of the license
- contains terms which differ from the Mozilla Public License and
- Netscape Public License. (Filling in the name of the Initial
- Developer, Original Code or Contributor in the notice described in
- Exhibit A shall not of themselves be deemed to be modifications of
- this License.)
-
-7. DISCLAIMER OF WARRANTY.
-
- COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
- WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF
- DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
- THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE
- IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT,
- YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE
- COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER
- OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
- ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
-
-8. TERMINATION.
-
- 8.1. This License and the rights granted hereunder will terminate
- automatically if You fail to comply with terms herein and fail to cure
- such breach within 30 days of becoming aware of the breach. All
- sublicenses to the Covered Code which are properly granted shall
- survive any termination of this License. Provisions which, by their
- nature, must remain in effect beyond the termination of this License
- shall survive.
-
- 8.2. If You initiate litigation by asserting a patent infringement
- claim (excluding declatory judgment actions) against Initial Developer
- or a Contributor (the Initial Developer or Contributor against whom
- You file such action is referred to as "Participant") alleging that:
-
- (a) such Participant's Contributor Version directly or indirectly
- infringes any patent, then any and all rights granted by such
- Participant to You under Sections 2.1 and/or 2.2 of this License
- shall, upon 60 days notice from Participant terminate prospectively,
- unless if within 60 days after receipt of notice You either: (i)
- agree in writing to pay Participant a mutually agreeable reasonable
- royalty for Your past and future use of Modifications made by such
- Participant, or (ii) withdraw Your litigation claim with respect to
- the Contributor Version against such Participant. If within 60 days
- of notice, a reasonable royalty and payment arrangement are not
- mutually agreed upon in writing by the parties or the litigation claim
- is not withdrawn, the rights granted by Participant to You under
- Sections 2.1 and/or 2.2 automatically terminate at the expiration of
- the 60 day notice period specified above.
-
- (b) any software, hardware, or device, other than such Participant's
- Contributor Version, directly or indirectly infringes any patent, then
- any rights granted to You by such Participant under Sections 2.1(b)
- and 2.2(b) are revoked effective as of the date You first made, used,
- sold, distributed, or had made, Modifications made by that
- Participant.
-
- 8.3. If You assert a patent infringement claim against Participant
- alleging that such Participant's Contributor Version directly or
- indirectly infringes any patent where such claim is resolved (such as
- by license or settlement) prior to the initiation of patent
- infringement litigation, then the reasonable value of the licenses
- granted by such Participant under Sections 2.1 or 2.2 shall be taken
- into account in determining the amount or value of any payment or
- license.
-
- 8.4. In the event of termination under Sections 8.1 or 8.2 above,
- all end user license agreements (excluding distributors and resellers)
- which have been validly granted by You or any distributor hereunder
- prior to termination shall survive termination.
-
-9. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
- (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
- DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE,
- OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR
- ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
- CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL,
- WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
- COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
- INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
- LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
- RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
- PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
- EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
- THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-
-10. U.S. GOVERNMENT END USERS.
-
- The Covered Code is a "commercial item," as that term is defined in
- 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer
- software" and "commercial computer software documentation," as such
- terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48
- C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995),
- all U.S. Government End Users acquire Covered Code with only those
- rights set forth herein.
-
-11. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject
- matter hereof. If any provision of this License is held to be
- unenforceable, such provision shall be reformed only to the extent
- necessary to make it enforceable. This License shall be governed by
- California law provisions (except to the extent applicable law, if
- any, provides otherwise), excluding its conflict-of-law provisions.
- With respect to disputes in which at least one party is a citizen of,
- or an entity chartered or registered to do business in the United
- States of America, any litigation relating to this License shall be
- subject to the jurisdiction of the Federal Courts of the Northern
- District of California, with venue lying in Santa Clara County,
- California, with the losing party responsible for costs, including
- without limitation, court costs and reasonable attorneys' fees and
- expenses. The application of the United Nations Convention on
- Contracts for the International Sale of Goods is expressly excluded.
- Any law or regulation which provides that the language of a contract
- shall be construed against the drafter shall not apply to this
- License.
-
-12. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
- responsible for claims and damages arising, directly or indirectly,
- out of its utilization of rights under this License and You agree to
- work with Initial Developer and Contributors to distribute such
- responsibility on an equitable basis. Nothing herein is intended or
- shall be deemed to constitute any admission of liability.
-
-13. MULTIPLE-LICENSED CODE.
-
- Initial Developer may designate portions of the Covered Code as
- "Multiple-Licensed". "Multiple-Licensed" means that the Initial
- Developer permits you to utilize portions of the Covered Code under
- Your choice of the NPL or the alternative licenses, if any, specified
- by the Initial Developer in the file described in Exhibit A.
-
-EXHIBIT A -Mozilla Public License.
-
- ``The contents of this file are subject to the Mozilla Public License
- Version 1.1 (the "License"); you may not use this file except in
- compliance with the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS"
- basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
- License for the specific language governing rights and limitations
- under the License.
-
- The Original Code is ______________________________________.
-
- The Initial Developer of the Original Code is ________________________.
- Portions created by ______________________ are Copyright (C) ______
- _______________________. All Rights Reserved.
-
- Contributor(s): ______________________________________.
-
- Alternatively, the contents of this file may be used under the terms
- of the _____ license (the "[___] License"), in which case the
- provisions of [______] License are applicable instead of those
- above. If you wish to allow use of your version of this file only
- under the terms of the [____] License and not to allow others to use
- your version of this file under the MPL, indicate your decision by
- deleting the provisions above and replace them with the notice and
- other provisions required by the [___] License. If you do not delete
- the provisions above, a recipient may use your version of this file
- under either the MPL or the [___] License."
-
- [NOTE: The text of this Exhibit A may differ slightly from the text of
- the notices in the Source Code files of the Original Code. You should
- use the text of this Exhibit A rather than the text found in the
- Original Code Source Code for Your Modifications.]
diff --git a/wqflask/wqflask/static/packages/ckeditor/README.md b/wqflask/wqflask/static/packages/ckeditor/README.md
deleted file mode 100644
index c5a55cd8..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/README.md
+++ /dev/null
@@ -1,39 +0,0 @@
-CKEditor 4
-==========
-
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-http://ckeditor.com - See LICENSE.md for license information.
-
-CKEditor is a text editor to be used inside web pages. It's not a replacement
-for desktop text editors like Word or OpenOffice, but a component to be used as
-part of web applications and websites.
-
-## Documentation
-
-The full editor documentation is available online at the following address:
-http://docs.ckeditor.com
-
-## Installation
-
-Installing CKEditor is an easy task. Just follow these simple steps:
-
- 1. **Download** the latest version from the CKEditor website:
- http://ckeditor.com. You should have already completed this step, but be
- sure you have the very latest version.
- 2. **Extract** (decompress) the downloaded file into the root of your website.
-
-**Note:** CKEditor is by default installed in the `ckeditor` folder. You can
-place the files in whichever you want though.
-
-## Checking Your Installation
-
-The editor comes with a few sample pages that can be used to verify that
-installation proceeded properly. Take a look at the `samples` directory.
-
-To test your installation, just call the following page at your website:
-
- http://<your site>/<CKEditor installation path>/samples/index.html
-
-For example:
-
- http://www.example.com/ckeditor/samples/index.html
diff --git a/wqflask/wqflask/static/packages/ckeditor/adapters/jquery.js b/wqflask/wqflask/static/packages/ckeditor/adapters/jquery.js
deleted file mode 100644
index 3ec908b0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/adapters/jquery.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(a){CKEDITOR.config.jqueryOverrideVal="undefined"==typeof CKEDITOR.config.jqueryOverrideVal?!0:CKEDITOR.config.jqueryOverrideVal;"undefined"!=typeof a&&(a.extend(a.fn,{ckeditorGet:function(){var a=this.eq(0).data("ckeditorInstance");if(!a)throw"CKEditor is not initialized yet, use ckeditor() with a callback.";return a},ckeditor:function(g,d){if(!CKEDITOR.env.isCompatible)throw Error("The environment is incompatible.");if(!a.isFunction(g))var k=d,d=g,g=k;var i=[],d=d||{};this.each(function(){var b=
-a(this),c=b.data("ckeditorInstance"),f=b.data("_ckeditorInstanceLock"),h=this,j=new a.Deferred;i.push(j.promise());if(c&&!f)g&&g.apply(c,[this]),j.resolve();else if(f)c.once("instanceReady",function(){setTimeout(function(){c.element?(c.element.$==h&&g&&g.apply(c,[h]),j.resolve()):setTimeout(arguments.callee,100)},0)},null,null,9999);else{if(d.autoUpdateElement||"undefined"==typeof d.autoUpdateElement&&CKEDITOR.config.autoUpdateElement)d.autoUpdateElementJquery=!0;d.autoUpdateElement=!1;b.data("_ckeditorInstanceLock",
-!0);c=a(this).is("textarea")?CKEDITOR.replace(h,d):CKEDITOR.inline(h,d);b.data("ckeditorInstance",c);c.on("instanceReady",function(d){var e=d.editor;setTimeout(function(){if(e.element){d.removeListener();e.on("dataReady",function(){b.trigger("dataReady.ckeditor",[e])});e.on("setData",function(a){b.trigger("setData.ckeditor",[e,a.data])});e.on("getData",function(a){b.trigger("getData.ckeditor",[e,a.data])},999);e.on("destroy",function(){b.trigger("destroy.ckeditor",[e])});e.on("save",function(){a(h.form).submit();
-return!1},null,null,20);if(e.config.autoUpdateElementJquery&&b.is("textarea")&&a(h.form).length){var c=function(){b.ckeditor(function(){e.updateElement()})};a(h.form).submit(c);a(h.form).bind("form-pre-serialize",c);b.bind("destroy.ckeditor",function(){a(h.form).unbind("submit",c);a(h.form).unbind("form-pre-serialize",c)})}e.on("destroy",function(){b.removeData("ckeditorInstance")});b.removeData("_ckeditorInstanceLock");b.trigger("instanceReady.ckeditor",[e]);g&&g.apply(e,[h]);j.resolve()}else setTimeout(arguments.callee,
-100)},0)},null,null,9999)}});var f=new a.Deferred;this.promise=f.promise();a.when.apply(this,i).then(function(){f.resolve()});this.editor=this.eq(0).data("ckeditorInstance");return this}}),CKEDITOR.config.jqueryOverrideVal&&(a.fn.val=CKEDITOR.tools.override(a.fn.val,function(g){return function(d){if(arguments.length){var k=this,i=[],f=this.each(function(){var b=a(this),c=b.data("ckeditorInstance");if(b.is("textarea")&&c){var f=new a.Deferred;c.setData(d,function(){f.resolve()});i.push(f.promise());
-return!0}return g.call(b,d)});if(i.length){var b=new a.Deferred;a.when.apply(this,i).done(function(){b.resolveWith(k)});return b.promise()}return f}var f=a(this).eq(0),c=f.data("ckeditorInstance");return f.is("textarea")&&c?c.getData():g.call(f)}})))})(window.jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/build-config.js b/wqflask/wqflask/static/packages/ckeditor/build-config.js
deleted file mode 100644
index 5ea8379e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/build-config.js
+++ /dev/null
@@ -1,179 +0,0 @@
-/**
- * @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- */
-
-/**
- * This file was added automatically by CKEditor builder.
- * You may re-use it at any time to build CKEditor again.
- *
- * If you would like to build CKEditor online again
- * (for example to upgrade), visit one the following links:
- *
- * (1) http://ckeditor.com/builder
- * Visit online builder to build CKEditor from scratch.
- *
- * (2) http://ckeditor.com/builder/e6b8a045f8f984a69463975ca3e6524a
- * Visit online builder to build CKEditor, starting with the same setup as before.
- *
- * (3) http://ckeditor.com/builder/download/e6b8a045f8f984a69463975ca3e6524a
- * Straight download link to the latest version of CKEditor (Optimized) with the same setup as before.
- *
- * NOTE:
- * This file is not used by CKEditor, you may remove it.
- * Changing this file will not change your CKEditor configuration.
- */
-
-var CKBUILDER_CONFIG = {
- skin: 'moono',
- preset: 'full',
- ignore: [
- '.bender',
- 'bender.js',
- 'bender-err.log',
- 'bender-out.log',
- 'dev',
- '.DS_Store',
- '.gitattributes',
- '.gitignore',
- 'Gruntfile.js',
- '.idea',
- '.jscsrc',
- '.jshintignore',
- '.jshintrc',
- '.mailmap',
- 'node_modules',
- 'package.json',
- 'README.md',
- 'tests'
- ],
- plugins : {
- 'a11yhelp' : 1,
- 'about' : 1,
- 'basicstyles' : 1,
- 'bidi' : 1,
- 'blockquote' : 1,
- 'clipboard' : 1,
- 'colorbutton' : 1,
- 'colordialog' : 1,
- 'contextmenu' : 1,
- 'dialogadvtab' : 1,
- 'div' : 1,
- 'elementspath' : 1,
- 'enterkey' : 1,
- 'entities' : 1,
- 'filebrowser' : 1,
- 'find' : 1,
- 'flash' : 1,
- 'floatingspace' : 1,
- 'font' : 1,
- 'format' : 1,
- 'forms' : 1,
- 'horizontalrule' : 1,
- 'htmlwriter' : 1,
- 'iframe' : 1,
- 'image' : 1,
- 'indentblock' : 1,
- 'indentlist' : 1,
- 'justify' : 1,
- 'language' : 1,
- 'link' : 1,
- 'list' : 1,
- 'liststyle' : 1,
- 'magicline' : 1,
- 'maximize' : 1,
- 'newpage' : 1,
- 'pagebreak' : 1,
- 'pastefromword' : 1,
- 'pastetext' : 1,
- 'preview' : 1,
- 'print' : 1,
- 'removeformat' : 1,
- 'resize' : 1,
- 'save' : 1,
- 'scayt' : 1,
- 'selectall' : 1,
- 'showblocks' : 1,
- 'showborders' : 1,
- 'smiley' : 1,
- 'sourcearea' : 1,
- 'specialchar' : 1,
- 'stylescombo' : 1,
- 'tab' : 1,
- 'table' : 1,
- 'tabletools' : 1,
- 'templates' : 1,
- 'toolbar' : 1,
- 'undo' : 1,
- 'wsc' : 1,
- 'wysiwygarea' : 1
- },
- languages : {
- 'af' : 1,
- 'ar' : 1,
- 'bg' : 1,
- 'bn' : 1,
- 'bs' : 1,
- 'ca' : 1,
- 'cs' : 1,
- 'cy' : 1,
- 'da' : 1,
- 'de' : 1,
- 'el' : 1,
- 'en' : 1,
- 'en-au' : 1,
- 'en-ca' : 1,
- 'en-gb' : 1,
- 'eo' : 1,
- 'es' : 1,
- 'et' : 1,
- 'eu' : 1,
- 'fa' : 1,
- 'fi' : 1,
- 'fo' : 1,
- 'fr' : 1,
- 'fr-ca' : 1,
- 'gl' : 1,
- 'gu' : 1,
- 'he' : 1,
- 'hi' : 1,
- 'hr' : 1,
- 'hu' : 1,
- 'id' : 1,
- 'is' : 1,
- 'it' : 1,
- 'ja' : 1,
- 'ka' : 1,
- 'km' : 1,
- 'ko' : 1,
- 'ku' : 1,
- 'lt' : 1,
- 'lv' : 1,
- 'mk' : 1,
- 'mn' : 1,
- 'ms' : 1,
- 'nb' : 1,
- 'nl' : 1,
- 'no' : 1,
- 'pl' : 1,
- 'pt' : 1,
- 'pt-br' : 1,
- 'ro' : 1,
- 'ru' : 1,
- 'si' : 1,
- 'sk' : 1,
- 'sl' : 1,
- 'sq' : 1,
- 'sr' : 1,
- 'sr-latn' : 1,
- 'sv' : 1,
- 'th' : 1,
- 'tr' : 1,
- 'tt' : 1,
- 'ug' : 1,
- 'uk' : 1,
- 'vi' : 1,
- 'zh' : 1,
- 'zh-cn' : 1
- }
-}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/ckeditor.js b/wqflask/wqflask/static/packages/ckeditor/ckeditor.js
deleted file mode 100644
index d35e8bc3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/ckeditor.js
+++ /dev/null
@@ -1,1013 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){if(window.CKEDITOR&&window.CKEDITOR.dom)return;window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,e={timestamp:"E8PB",version:"4.4.5",revision:"25cdcad",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var f=window.CKEDITOR_BASEPATH||"";if(!f)for(var d=document.getElementsByTagName("script"),c=0;c<d.length;c++){var b=d[c].src.match(a);if(b){f=b[1];break}}-1==f.indexOf(":/")&&"//"!=f.slice(0,2)&&(f=0===f.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+
-f:location.href.match(/^[^\?]*\/(?:)/)[0]+f);if(!f)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return f}(),getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",
-a,!1),d()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),d())}catch(c){}}function d(){for(var a;a=c.shift();)a()}var c=[];return function(d){function b(){try{document.documentElement.doScroll("left")}catch(p){setTimeout(b,1);return}a()}c.push(d);"complete"===document.readyState&&setTimeout(a,1);if(1==c.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",
-a);window.attachEvent("onload",a);d=!1;try{d=!window.frameElement}catch(e){}document.documentElement.doScroll&&d&&b()}}}()},b=window.CKEDITOR_GETURL;if(b){var c=e.getUrl;e.getUrl=function(a){return b.call(e,a)||c.call(e,a)}}return e}());
-CKEDITOR.event||(CKEDITOR.event=function(){},CKEDITOR.event.implementOn=function(a){var e=CKEDITOR.event.prototype,b;for(b in e)a[b]==null&&(a[b]=e[b])},CKEDITOR.event.prototype=function(){function a(a){var f=e(this);return f[a]||(f[a]=new b(a))}var e=function(a){a=a.getPrivate&&a.getPrivate()||a._||(a._={});return a.events||(a.events={})},b=function(a){this.name=a;this.listeners=[]};b.prototype={getListenerIndex:function(a){for(var f=0,d=this.listeners;f<d.length;f++)if(d[f].fn==a)return f;return-1}};
-return{define:function(c,f){var d=a.call(this,c);CKEDITOR.tools.extend(d,f,true)},on:function(c,f,d,b,e){function m(a,p,u,e){a={name:c,sender:this,editor:a,data:p,listenerData:b,stop:u,cancel:e,removeListener:j};return f.call(d,a)===false?false:a.data}function j(){u.removeListener(c,f)}var p=a.call(this,c);if(p.getListenerIndex(f)<0){p=p.listeners;d||(d=this);isNaN(e)&&(e=10);var u=this;m.fn=f;m.priority=e;for(var t=p.length-1;t>=0;t--)if(p[t].priority<=e){p.splice(t+1,0,m);return{removeListener:j}}p.unshift(m)}return{removeListener:j}},
-once:function(){var a=Array.prototype.slice.call(arguments),f=a[1];a[1]=function(a){a.removeListener();return f.apply(this,arguments)};return this.on.apply(this,a)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);CKEDITOR.event.useCapture=0;return a},fire:function(){var a=0,f=function(){a=1},d=0,b=function(){d=1};return function(h,m,j){var p=e(this)[h],h=a,u=d;a=d=0;if(p){var t=p.listeners;if(t.length)for(var t=t.slice(0),y,n=0;n<t.length;n++){if(p.errorProof)try{y=
-t[n].call(this,j,m,f,b)}catch(w){}else y=t[n].call(this,j,m,f,b);y===false?d=1:typeof y!="undefined"&&(m=y);if(a||d)break}}m=d?false:typeof m=="undefined"?true:m;a=h;d=u;return m}}(),fireOnce:function(a,f,d){f=this.fire(a,f,d);delete e(this)[a];return f},removeListener:function(a,f){var d=e(this)[a];if(d){var b=d.getListenerIndex(f);b>=0&&d.listeners.splice(b,1)}},removeAllListeners:function(){var a=e(this),f;for(f in a)delete a[f]},hasListeners:function(a){return(a=e(this)[a])&&a.listeners.length>
-0}}}());CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]);CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,e){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fire.call(this,a,e,this)},CKEDITOR.editor.prototype.fireOnce=function(a,e){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fireOnce.call(this,a,e,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype));
-CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),e={ie:a.indexOf("trident/")>-1,webkit:a.indexOf(" applewebkit/")>-1,air:a.indexOf(" adobeair/")>-1,mac:a.indexOf("macintosh")>-1,quirks:document.compatMode=="BackCompat"&&(!document.documentMode||document.documentMode<10),mobile:a.indexOf("mobile")>-1,iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return false;var a=document.domain,d=window.location.hostname;return a!=d&&a!="["+d+"]"},secure:location.protocol==
-"https:"};e.gecko=navigator.product=="Gecko"&&!e.webkit&&!e.ie;if(e.webkit)a.indexOf("chrome")>-1?e.chrome=true:e.safari=true;var b=0;if(e.ie){b=e.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode;e.ie9Compat=b==9;e.ie8Compat=b==8;e.ie7Compat=b==7;e.ie6Compat=b<7||e.quirks}if(e.gecko){var c=a.match(/rv:([\d\.]+)/);if(c){c=c[1].split(".");b=c[0]*1E4+(c[1]||0)*100+(c[2]||0)*1}}e.air&&(b=parseFloat(a.match(/ adobeair\/(\d+)/)[1]));e.webkit&&(b=parseFloat(a.match(/ applewebkit\/(\d+)/)[1]));
-e.version=b;e.isCompatible=e.iOS&&b>=534||!e.mobile&&(e.ie&&b>6||e.gecko&&b>=2E4||e.air&&b>=1||e.webkit&&b>=522||false);e.hidpi=window.devicePixelRatio>=2;e.needsBrFiller=e.gecko||e.webkit||e.ie&&b>10;e.needsNbspFiller=e.ie&&b<11;e.cssClass="cke_browser_"+(e.ie?"ie":e.gecko?"gecko":e.webkit?"webkit":"unknown");if(e.quirks)e.cssClass=e.cssClass+" cke_browser_quirks";if(e.ie)e.cssClass=e.cssClass+(" cke_browser_ie"+(e.quirks?"6 cke_browser_iequirks":e.version));if(e.air)e.cssClass=e.cssClass+" cke_browser_air";
-if(e.iOS)e.cssClass=e.cssClass+" cke_browser_ios";if(e.hidpi)e.cssClass=e.cssClass+" cke_hidpi";return e}());
-"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR);CKEDITOR.loadFullCore=function(){if(CKEDITOR.status!="basic_ready")CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript";a.src=CKEDITOR.basePath+"ckeditor.js";document.getElementsByTagName("head")[0].appendChild(a)}};CKEDITOR.loadFullCoreTimeout=0;CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)};(function(){CKEDITOR.domReady(function(){var a=
-CKEDITOR.loadFullCore,e=CKEDITOR.loadFullCoreTimeout;if(a){CKEDITOR.status="basic_ready";a&&a._load?a():e&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},e*1E3)}})})();CKEDITOR.status="basic_loaded"}();CKEDITOR.dom={};
-(function(){var a=[],e=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.ie?"-ms-":"",b=/&/g,c=/>/g,f=/</g,d=/"/g,g=/&amp;/g,h=/&gt;/g,m=/&lt;/g,j=/&quot;/g;CKEDITOR.on("reset",function(){a=[]});CKEDITOR.tools={arrayCompare:function(a,f){if(!a&&!f)return true;if(!a||!f||a.length!=f.length)return false;for(var d=0;d<a.length;d++)if(a[d]!=f[d])return false;return true},clone:function(a){var f;if(a&&a instanceof Array){f=[];for(var d=0;d<a.length;d++)f[d]=CKEDITOR.tools.clone(a[d]);
-return f}if(a===null||typeof a!="object"||a instanceof String||a instanceof Number||a instanceof Boolean||a instanceof Date||a instanceof RegExp||a.nodeType||a.window===a)return a;f=new a.constructor;for(d in a)f[d]=CKEDITOR.tools.clone(a[d]);return f},capitalize:function(a,f){return a.charAt(0).toUpperCase()+(f?a.slice(1):a.slice(1).toLowerCase())},extend:function(a){var f=arguments.length,d,b;if(typeof(d=arguments[f-1])=="boolean")f--;else if(typeof(d=arguments[f-2])=="boolean"){b=arguments[f-1];
-f=f-2}for(var c=1;c<f;c++){var e=arguments[c],o;for(o in e)if(d===true||a[o]==null)if(!b||o in b)a[o]=e[o]}return a},prototypedCopy:function(a){var f=function(){};f.prototype=a;return new f},copy:function(a){var f={},d;for(d in a)f[d]=a[d];return f},isArray:function(a){return Object.prototype.toString.call(a)=="[object Array]"},isEmpty:function(a){for(var f in a)if(a.hasOwnProperty(f))return false;return true},cssVendorPrefix:function(a,f,d){if(d)return e+a+":"+f+";"+a+":"+f;d={};d[a]=f;d[e+a]=f;
-return d},cssStyleToDomStyle:function(){var a=document.createElement("div").style,f=typeof a.cssFloat!="undefined"?"cssFloat":typeof a.styleFloat!="undefined"?"styleFloat":"float";return function(a){return a=="float"?f:a.replace(/-./g,function(a){return a.substr(1).toUpperCase()})}}(),buildStyleHtml:function(a){for(var a=[].concat(a),f,d=[],b=0;b<a.length;b++)if(f=a[b])/@import|[{}]/.test(f)?d.push("<style>"+f+"</style>"):d.push('<link type="text/css" rel=stylesheet href="'+f+'">');return d.join("")},
-htmlEncode:function(a){return(""+a).replace(b,"&amp;").replace(c,"&gt;").replace(f,"&lt;")},htmlDecode:function(a){return a.replace(g,"&").replace(h,">").replace(m,"<")},htmlEncodeAttr:function(a){return a.replace(d,"&quot;").replace(f,"&lt;").replace(c,"&gt;")},htmlDecodeAttr:function(a){return a.replace(j,'"').replace(m,"<").replace(h,">")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},override:function(a,f){var d=f(a);d.prototype=
-a.prototype;return d},setTimeout:function(a,f,d,b,c){c||(c=window);d||(d=c);return c.setTimeout(function(){b?a.apply(d,[].concat(b)):a.apply(d)},f||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(f){return f.replace(a,"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(f){return f.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(f){return f.replace(a,"")}}(),indexOf:function(a,f){if(typeof f=="function")for(var d=0,b=a.length;d<b;d++){if(f(a[d]))return d}else{if(a.indexOf)return a.indexOf(f);
-d=0;for(b=a.length;d<b;d++)if(a[d]===f)return d}return-1},search:function(a,f){var d=CKEDITOR.tools.indexOf(a,f);return d>=0?a[d]:null},bind:function(a,f){return function(){return a.apply(f,arguments)}},createClass:function(a){var f=a.$,d=a.base,b=a.privates||a._,c=a.proto,a=a.statics;!f&&(f=function(){d&&this.base.apply(this,arguments)});if(b)var e=f,f=function(){var a=this._||(this._={}),f;for(f in b){var d=b[f];a[f]=typeof d=="function"?CKEDITOR.tools.bind(d,this):d}e.apply(this,arguments)};if(d){f.prototype=
-this.prototypedCopy(d.prototype);f.prototype.constructor=f;f.base=d;f.baseProto=d.prototype;f.prototype.base=function(){this.base=d.prototype.base;d.apply(this,arguments);this.base=arguments.callee}}c&&this.extend(f.prototype,c,true);a&&this.extend(f,a,true);return f},addFunction:function(f,d){return a.push(function(){return f.apply(d||this,arguments)})-1},removeFunction:function(f){a[f]=null},callFunction:function(f){var d=a[f];return d&&d.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a=
-/^-?\d+\.?\d*px$/,f;return function(d){f=CKEDITOR.tools.trim(d+"")+"px";return a.test(f)?f:d||""}}(),convertToPx:function(){var a;return function(f){if(!a){a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;margin:0px;padding:0px;border:0px;"></div>',CKEDITOR.document);CKEDITOR.document.getBody().append(a)}if(!/%$/.test(f)){a.setStyle("width",f);return a.$.clientWidth}return f}}(),repeat:function(a,f){return Array(f+1).join(a)},tryThese:function(){for(var a,
-f=0,d=arguments.length;f<d;f++){var b=arguments[f];try{a=b();break}catch(c){}}return a},genKey:function(){return Array.prototype.slice.call(arguments).join("-")},defer:function(a){return function(){var f=arguments,d=this;window.setTimeout(function(){a.apply(d,f)},0)}},normalizeCssText:function(a,f){var d=[],b,c=CKEDITOR.tools.parseCssText(a,true,f);for(b in c)d.push(b+":"+c[b]);d.sort();return d.length?d.join(";")+";":""},convertRgbToHex:function(a){return a.replace(/(?:rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\))/gi,
-function(a,f,d,b){a=[f,d,b];for(f=0;f<3;f++)a[f]=("0"+parseInt(a[f],10).toString(16)).slice(-2);return"#"+a.join("")})},parseCssText:function(a,f,d){var b={};if(d){d=new CKEDITOR.dom.element("span");d.setAttribute("style",a);a=CKEDITOR.tools.convertRgbToHex(d.getAttribute("style")||"")}if(!a||a==";")return b;a.replace(/&quot;/g,'"').replace(/\s*([^:;\s]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,d,c){if(f){d=d.toLowerCase();d=="font-family"&&(c=c.toLowerCase().replace(/["']/g,"").replace(/\s*,\s*/g,","));
-c=CKEDITOR.tools.trim(c)}b[d]=c});return b},writeCssText:function(a,f){var d,b=[];for(d in a)b.push(d+":"+a[d]);f&&b.sort();return b.join("; ")},objectCompare:function(a,f,d){var b;if(!a&&!f)return true;if(!a||!f)return false;for(b in a)if(a[b]!=f[b])return false;if(!d)for(b in f)if(a[b]!=f[b])return false;return true},objectKeys:function(a){var f=[],d;for(d in a)f.push(d);return f},convertArrayToObject:function(a,f){var d={};arguments.length==1&&(f=true);for(var b=0,c=a.length;b<c;++b)d[a[b]]=f;
-return d},fixDomain:function(){for(var a;;)try{a=window.parent.document.domain;break}catch(f){a=a?a.replace(/.+?(?:\.|$)/,""):document.domain;if(!a)break;document.domain=a}return!!a},eventsBuffer:function(a,f){function d(){c=(new Date).getTime();b=false;f()}var b,c=0;return{input:function(){if(!b){var f=(new Date).getTime()-c;f<a?b=setTimeout(d,a-f):d()}},reset:function(){b&&clearTimeout(b);b=c=0}}},enableHtml5Elements:function(a,f){for(var d=["abbr","article","aside","audio","bdi","canvas","data",
-"datalist","details","figcaption","figure","footer","header","hgroup","mark","meter","nav","output","progress","section","summary","time","video"],b=d.length,c;b--;){c=a.createElement(d[b]);f&&a.appendChild(c)}},checkIfAnyArrayItemMatches:function(a,f){for(var d=0,b=a.length;d<b;++d)if(a[d].match(f))return true;return false},checkIfAnyObjectPropertyMatches:function(a,f){for(var d in a)if(d.match(f))return true;return false},transparentImageData:"data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw=="}})();
-CKEDITOR.dtd=function(){var a=CKEDITOR.tools.extend,e=function(a,f){for(var d=CKEDITOR.tools.clone(a),b=1;b<arguments.length;b++){var f=arguments[b],c;for(c in f)delete d[c]}return d},b={},c={},f={address:1,article:1,aside:1,blockquote:1,details:1,div:1,dl:1,fieldset:1,figure:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,hr:1,menu:1,nav:1,ol:1,p:1,pre:1,section:1,table:1,ul:1},d={command:1,link:1,meta:1,noscript:1,script:1,style:1},g={},h={"#":1},m={center:1,dir:1,noframes:1};
-a(b,{a:1,abbr:1,area:1,audio:1,b:1,bdi:1,bdo:1,br:1,button:1,canvas:1,cite:1,code:1,command:1,datalist:1,del:1,dfn:1,em:1,embed:1,i:1,iframe:1,img:1,input:1,ins:1,kbd:1,keygen:1,label:1,map:1,mark:1,meter:1,noscript:1,object:1,output:1,progress:1,q:1,ruby:1,s:1,samp:1,script:1,select:1,small:1,span:1,strong:1,sub:1,sup:1,textarea:1,time:1,u:1,"var":1,video:1,wbr:1},h,{acronym:1,applet:1,basefont:1,big:1,font:1,isindex:1,strike:1,style:1,tt:1});a(c,f,b,m);e={a:e(b,{a:1,button:1}),abbr:b,address:c,
-area:g,article:a({style:1},c),aside:a({style:1},c),audio:a({source:1,track:1},c),b:b,base:g,bdi:b,bdo:b,blockquote:c,body:c,br:g,button:e(b,{a:1,button:1}),canvas:b,caption:c,cite:b,code:b,col:g,colgroup:{col:1},command:g,datalist:a({option:1},b),dd:c,del:b,details:a({summary:1},c),dfn:b,div:a({style:1},c),dl:{dt:1,dd:1},dt:c,em:b,embed:g,fieldset:a({legend:1},c),figcaption:c,figure:a({figcaption:1},c),footer:c,form:c,h1:b,h2:b,h3:b,h4:b,h5:b,h6:b,head:a({title:1,base:1},d),header:c,hgroup:{h1:1,
-h2:1,h3:1,h4:1,h5:1,h6:1},hr:g,html:a({head:1,body:1},c,d),i:b,iframe:h,img:g,input:g,ins:b,kbd:b,keygen:g,label:b,legend:b,li:c,link:g,map:c,mark:b,menu:a({li:1},c),meta:g,meter:e(b,{meter:1}),nav:c,noscript:a({link:1,meta:1,style:1},b),object:a({param:1},b),ol:{li:1},optgroup:{option:1},option:h,output:b,p:b,param:g,pre:b,progress:e(b,{progress:1}),q:b,rp:b,rt:b,ruby:a({rp:1,rt:1},b),s:b,samp:b,script:h,section:a({style:1},c),select:{optgroup:1,option:1},small:b,source:g,span:b,strong:b,style:h,
-sub:b,summary:b,sup:b,table:{caption:1,colgroup:1,thead:1,tfoot:1,tbody:1,tr:1},tbody:{tr:1},td:c,textarea:h,tfoot:{tr:1},th:c,thead:{tr:1},time:e(b,{time:1}),title:h,tr:{th:1,td:1},track:g,u:b,ul:{li:1},"var":b,video:a({source:1,track:1},c),wbr:g,acronym:b,applet:a({param:1},c),basefont:g,big:b,center:c,dialog:g,dir:{li:1},font:b,isindex:g,noframes:c,strike:b,tt:b};a(e,{$block:a({audio:1,dd:1,dt:1,figcaption:1,li:1,video:1},f,m),$blockLimit:{article:1,aside:1,audio:1,body:1,caption:1,details:1,dir:1,
-div:1,dl:1,fieldset:1,figcaption:1,figure:1,footer:1,form:1,header:1,hgroup:1,menu:1,nav:1,ol:1,section:1,table:1,td:1,th:1,tr:1,ul:1,video:1},$cdata:{script:1,style:1},$editable:{address:1,article:1,aside:1,blockquote:1,body:1,details:1,div:1,fieldset:1,figcaption:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,nav:1,p:1,pre:1,section:1},$empty:{area:1,base:1,basefont:1,br:1,col:1,command:1,dialog:1,embed:1,hr:1,img:1,input:1,isindex:1,keygen:1,link:1,meta:1,param:1,source:1,track:1,
-wbr:1},$inline:b,$list:{dl:1,ol:1,ul:1},$listItem:{dd:1,dt:1,li:1},$nonBodyContent:a({body:1,head:1,html:1},e.head),$nonEditable:{applet:1,audio:1,button:1,embed:1,iframe:1,map:1,object:1,option:1,param:1,script:1,textarea:1,video:1},$object:{applet:1,audio:1,button:1,hr:1,iframe:1,img:1,input:1,object:1,select:1,table:1,textarea:1,video:1},$removeEmpty:{abbr:1,acronym:1,b:1,bdi:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,mark:1,meter:1,output:1,q:1,ruby:1,s:1,samp:1,
-small:1,span:1,strike:1,strong:1,sub:1,sup:1,time:1,tt:1,u:1,"var":1},$tabIndex:{a:1,area:1,button:1,input:1,object:1,select:1,textarea:1},$tableContent:{caption:1,col:1,colgroup:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1},$transparent:{a:1,audio:1,canvas:1,del:1,ins:1,map:1,noscript:1,object:1,video:1},$intermediate:{caption:1,colgroup:1,dd:1,dt:1,figcaption:1,legend:1,li:1,optgroup:1,option:1,rp:1,rt:1,summary:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1}});return e}();
-CKEDITOR.dom.event=function(a){this.$=a};
-CKEDITOR.dom.event.prototype={getKey:function(){return this.$.keyCode||this.$.which},getKeystroke:function(){var a=this.getKey();if(this.$.ctrlKey||this.$.metaKey)a=a+CKEDITOR.CTRL;this.$.shiftKey&&(a=a+CKEDITOR.SHIFT);this.$.altKey&&(a=a+CKEDITOR.ALT);return a},preventDefault:function(a){var e=this.$;e.preventDefault?e.preventDefault():e.returnValue=false;a&&this.stopPropagation()},stopPropagation:function(){var a=this.$;a.stopPropagation?a.stopPropagation():a.cancelBubble=true},getTarget:function(){var a=
-this.$.target||this.$.srcElement;return a?new CKEDITOR.dom.node(a):null},getPhase:function(){return this.$.eventPhase||2},getPageOffset:function(){var a=this.getTarget().getDocument().$;return{x:this.$.pageX||this.$.clientX+(a.documentElement.scrollLeft||a.body.scrollLeft),y:this.$.pageY||this.$.clientY+(a.documentElement.scrollTop||a.body.scrollTop)}}};CKEDITOR.CTRL=1114112;CKEDITOR.SHIFT=2228224;CKEDITOR.ALT=4456448;CKEDITOR.EVENT_PHASE_CAPTURING=1;CKEDITOR.EVENT_PHASE_AT_TARGET=2;
-CKEDITOR.EVENT_PHASE_BUBBLING=3;CKEDITOR.dom.domObject=function(a){if(a)this.$=a};
-CKEDITOR.dom.domObject.prototype=function(){var a=function(a,b){return function(c){typeof CKEDITOR!="undefined"&&a.fire(b,new CKEDITOR.dom.event(c))}};return{getPrivate:function(){var a;if(!(a=this.getCustomData("_")))this.setCustomData("_",a={});return a},on:function(e){var b=this.getCustomData("_cke_nativeListeners");if(!b){b={};this.setCustomData("_cke_nativeListeners",b)}if(!b[e]){b=b[e]=a(this,e);this.$.addEventListener?this.$.addEventListener(e,b,!!CKEDITOR.event.useCapture):this.$.attachEvent&&
-this.$.attachEvent("on"+e,b)}return CKEDITOR.event.prototype.on.apply(this,arguments)},removeListener:function(a){CKEDITOR.event.prototype.removeListener.apply(this,arguments);if(!this.hasListeners(a)){var b=this.getCustomData("_cke_nativeListeners"),c=b&&b[a];if(c){this.$.removeEventListener?this.$.removeEventListener(a,c,false):this.$.detachEvent&&this.$.detachEvent("on"+a,c);delete b[a]}}},removeAllListeners:function(){var a=this.getCustomData("_cke_nativeListeners"),b;for(b in a){var c=a[b];this.$.detachEvent?
-this.$.detachEvent("on"+b,c):this.$.removeEventListener&&this.$.removeEventListener(b,c,false);delete a[b]}CKEDITOR.event.prototype.removeAllListeners.call(this)}}}();
-(function(a){var e={};CKEDITOR.on("reset",function(){e={}});a.equals=function(a){try{return a&&a.$===this.$}catch(c){return false}};a.setCustomData=function(a,c){var f=this.getUniqueId();(e[f]||(e[f]={}))[a]=c;return this};a.getCustomData=function(a){var c=this.$["data-cke-expando"];return(c=c&&e[c])&&a in c?c[a]:null};a.removeCustomData=function(a){var c=this.$["data-cke-expando"],c=c&&e[c],f,d;if(c){f=c[a];d=a in c;delete c[a]}return d?f:null};a.clearCustomData=function(){this.removeAllListeners();
-var a=this.$["data-cke-expando"];a&&delete e[a]};a.getUniqueId=function(){return this.$["data-cke-expando"]||(this.$["data-cke-expando"]=CKEDITOR.tools.getNextNumber())};CKEDITOR.event.implementOn(a)})(CKEDITOR.dom.domObject.prototype);
-CKEDITOR.dom.node=function(a){return a?new CKEDITOR.dom[a.nodeType==CKEDITOR.NODE_DOCUMENT?"document":a.nodeType==CKEDITOR.NODE_ELEMENT?"element":a.nodeType==CKEDITOR.NODE_TEXT?"text":a.nodeType==CKEDITOR.NODE_COMMENT?"comment":a.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT?"documentFragment":"domObject"](a):this};CKEDITOR.dom.node.prototype=new CKEDITOR.dom.domObject;CKEDITOR.NODE_ELEMENT=1;CKEDITOR.NODE_DOCUMENT=9;CKEDITOR.NODE_TEXT=3;CKEDITOR.NODE_COMMENT=8;CKEDITOR.NODE_DOCUMENT_FRAGMENT=11;
-CKEDITOR.POSITION_IDENTICAL=0;CKEDITOR.POSITION_DISCONNECTED=1;CKEDITOR.POSITION_FOLLOWING=2;CKEDITOR.POSITION_PRECEDING=4;CKEDITOR.POSITION_IS_CONTAINED=8;CKEDITOR.POSITION_CONTAINS=16;
-CKEDITOR.tools.extend(CKEDITOR.dom.node.prototype,{appendTo:function(a,e){a.append(this,e);return a},clone:function(a,e){var b=this.$.cloneNode(a),c=function(f){f["data-cke-expando"]&&(f["data-cke-expando"]=false);if(f.nodeType==CKEDITOR.NODE_ELEMENT){e||f.removeAttribute("id",false);if(a)for(var f=f.childNodes,d=0;d<f.length;d++)c(f[d])}};c(b);return new CKEDITOR.dom.node(b)},hasPrevious:function(){return!!this.$.previousSibling},hasNext:function(){return!!this.$.nextSibling},insertAfter:function(a){a.$.parentNode.insertBefore(this.$,
-a.$.nextSibling);return a},insertBefore:function(a){a.$.parentNode.insertBefore(this.$,a.$);return a},insertBeforeMe:function(a){this.$.parentNode.insertBefore(a.$,this.$);return a},getAddress:function(a){for(var e=[],b=this.getDocument().$.documentElement,c=this.$;c&&c!=b;){var f=c.parentNode;f&&e.unshift(this.getIndex.call({$:c},a));c=f}return e},getDocument:function(){return new CKEDITOR.dom.document(this.$.ownerDocument||this.$.parentNode.ownerDocument)},getIndex:function(a){var e=this.$,b=-1,
-c;if(!this.$.parentNode)return b;do if(!a||!(e!=this.$&&e.nodeType==CKEDITOR.NODE_TEXT&&(c||!e.nodeValue))){b++;c=e.nodeType==CKEDITOR.NODE_TEXT}while(e=e.previousSibling);return b},getNextSourceNode:function(a,e,b){if(b&&!b.call)var c=b,b=function(a){return!a.equals(c)};var a=!a&&this.getFirst&&this.getFirst(),f;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&b&&b(this,true)===false)return null;a=this.getNext()}for(;!a&&(f=(f||this).getParent());){if(b&&b(f,true)===false)return null;a=f.getNext()}return!a||
-b&&b(a)===false?null:e&&e!=a.type?a.getNextSourceNode(false,e,b):a},getPreviousSourceNode:function(a,e,b){if(b&&!b.call)var c=b,b=function(a){return!a.equals(c)};var a=!a&&this.getLast&&this.getLast(),f;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&b&&b(this,true)===false)return null;a=this.getPrevious()}for(;!a&&(f=(f||this).getParent());){if(b&&b(f,true)===false)return null;a=f.getPrevious()}return!a||b&&b(a)===false?null:e&&a.type!=e?a.getPreviousSourceNode(false,e,b):a},getPrevious:function(a){var e=
-this.$,b;do b=(e=e.previousSibling)&&e.nodeType!=10&&new CKEDITOR.dom.node(e);while(b&&a&&!a(b));return b},getNext:function(a){var e=this.$,b;do b=(e=e.nextSibling)&&new CKEDITOR.dom.node(e);while(b&&a&&!a(b));return b},getParent:function(a){var e=this.$.parentNode;return e&&(e.nodeType==CKEDITOR.NODE_ELEMENT||a&&e.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)?new CKEDITOR.dom.node(e):null},getParents:function(a){var e=this,b=[];do b[a?"push":"unshift"](e);while(e=e.getParent());return b},getCommonAncestor:function(a){if(a.equals(this))return this;
-if(a.contains&&a.contains(this))return a;var e=this.contains?this:this.getParent();do if(e.contains(a))return e;while(e=e.getParent());return null},getPosition:function(a){var e=this.$,b=a.$;if(e.compareDocumentPosition)return e.compareDocumentPosition(b);if(e==b)return CKEDITOR.POSITION_IDENTICAL;if(this.type==CKEDITOR.NODE_ELEMENT&&a.type==CKEDITOR.NODE_ELEMENT){if(e.contains){if(e.contains(b))return CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING;if(b.contains(e))return CKEDITOR.POSITION_IS_CONTAINED+
-CKEDITOR.POSITION_FOLLOWING}if("sourceIndex"in e)return e.sourceIndex<0||b.sourceIndex<0?CKEDITOR.POSITION_DISCONNECTED:e.sourceIndex<b.sourceIndex?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING}for(var e=this.getAddress(),a=a.getAddress(),b=Math.min(e.length,a.length),c=0;c<=b-1;c++)if(e[c]!=a[c]){if(c<b)return e[c]<a[c]?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING;break}return e.length<a.length?CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_IS_CONTAINED+
-CKEDITOR.POSITION_FOLLOWING},getAscendant:function(a,e){var b=this.$,c,f;if(!e)b=b.parentNode;if(typeof a=="function"){f=true;c=a}else{f=false;c=function(f){f=typeof f.nodeName=="string"?f.nodeName.toLowerCase():"";return typeof a=="string"?f==a:f in a}}for(;b;){if(c(f?new CKEDITOR.dom.node(b):b))return new CKEDITOR.dom.node(b);try{b=b.parentNode}catch(d){b=null}}return null},hasAscendant:function(a,e){var b=this.$;if(!e)b=b.parentNode;for(;b;){if(b.nodeName&&b.nodeName.toLowerCase()==a)return true;
-b=b.parentNode}return false},move:function(a,e){a.append(this.remove(),e)},remove:function(a){var e=this.$,b=e.parentNode;if(b){if(a)for(;a=e.firstChild;)b.insertBefore(e.removeChild(a),e);b.removeChild(e)}return this},replace:function(a){this.insertBefore(a);a.remove()},trim:function(){this.ltrim();this.rtrim()},ltrim:function(){for(var a;this.getFirst&&(a=this.getFirst());){if(a.type==CKEDITOR.NODE_TEXT){var e=CKEDITOR.tools.ltrim(a.getText()),b=a.getLength();if(e){if(e.length<b){a.split(b-e.length);
-this.$.removeChild(this.$.firstChild)}}else{a.remove();continue}}break}},rtrim:function(){for(var a;this.getLast&&(a=this.getLast());){if(a.type==CKEDITOR.NODE_TEXT){var e=CKEDITOR.tools.rtrim(a.getText()),b=a.getLength();if(e){if(e.length<b){a.split(e.length);this.$.lastChild.parentNode.removeChild(this.$.lastChild)}}else{a.remove();continue}}break}if(CKEDITOR.env.needsBrFiller)(a=this.$.lastChild)&&(a.type==1&&a.nodeName.toLowerCase()=="br")&&a.parentNode.removeChild(a)},isReadOnly:function(){var a=
-this;this.type!=CKEDITOR.NODE_ELEMENT&&(a=this.getParent());if(a&&typeof a.$.isContentEditable!="undefined")return!(a.$.isContentEditable||a.data("cke-editable"));for(;a;){if(a.data("cke-editable"))break;if(a.getAttribute("contentEditable")=="false")return true;if(a.getAttribute("contentEditable")=="true")break;a=a.getParent()}return!a}});CKEDITOR.dom.window=function(a){CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.window.prototype=new CKEDITOR.dom.domObject;
-CKEDITOR.tools.extend(CKEDITOR.dom.window.prototype,{focus:function(){this.$.focus()},getViewPaneSize:function(){var a=this.$.document,e=a.compatMode=="CSS1Compat";return{width:(e?a.documentElement.clientWidth:a.body.clientWidth)||0,height:(e?a.documentElement.clientHeight:a.body.clientHeight)||0}},getScrollPosition:function(){var a=this.$;if("pageXOffset"in a)return{x:a.pageXOffset||0,y:a.pageYOffset||0};a=a.document;return{x:a.documentElement.scrollLeft||a.body.scrollLeft||0,y:a.documentElement.scrollTop||
-a.body.scrollTop||0}},getFrame:function(){var a=this.$.frameElement;return a?new CKEDITOR.dom.element.get(a):null}});CKEDITOR.dom.document=function(a){CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.document.prototype=new CKEDITOR.dom.domObject;
-CKEDITOR.tools.extend(CKEDITOR.dom.document.prototype,{type:CKEDITOR.NODE_DOCUMENT,appendStyleSheet:function(a){if(this.$.createStyleSheet)this.$.createStyleSheet(a);else{var e=new CKEDITOR.dom.element("link");e.setAttributes({rel:"stylesheet",type:"text/css",href:a});this.getHead().append(e)}},appendStyleText:function(a){if(this.$.createStyleSheet){var e=this.$.createStyleSheet("");e.cssText=a}else{var b=new CKEDITOR.dom.element("style",this);b.append(new CKEDITOR.dom.text(a,this));this.getHead().append(b)}return e||
-b.$.sheet},createElement:function(a,e){var b=new CKEDITOR.dom.element(a,this);if(e){e.attributes&&b.setAttributes(e.attributes);e.styles&&b.setStyles(e.styles)}return b},createText:function(a){return new CKEDITOR.dom.text(a,this)},focus:function(){this.getWindow().focus()},getActive:function(){var a;try{a=this.$.activeElement}catch(e){return null}return new CKEDITOR.dom.element(a)},getById:function(a){return(a=this.$.getElementById(a))?new CKEDITOR.dom.element(a):null},getByAddress:function(a,e){for(var b=
-this.$.documentElement,c=0;b&&c<a.length;c++){var f=a[c];if(e)for(var d=-1,g=0;g<b.childNodes.length;g++){var h=b.childNodes[g];if(!(e===true&&h.nodeType==3&&h.previousSibling&&h.previousSibling.nodeType==3)){d++;if(d==f){b=h;break}}}else b=b.childNodes[f]}return b?new CKEDITOR.dom.node(b):null},getElementsByTag:function(a,e){!(CKEDITOR.env.ie&&document.documentMode<=8)&&e&&(a=e+":"+a);return new CKEDITOR.dom.nodeList(this.$.getElementsByTagName(a))},getHead:function(){var a=this.$.getElementsByTagName("head")[0];
-return a=a?new CKEDITOR.dom.element(a):this.getDocumentElement().append(new CKEDITOR.dom.element("head"),true)},getBody:function(){return new CKEDITOR.dom.element(this.$.body)},getDocumentElement:function(){return new CKEDITOR.dom.element(this.$.documentElement)},getWindow:function(){return new CKEDITOR.dom.window(this.$.parentWindow||this.$.defaultView)},write:function(a){this.$.open("text/html","replace");CKEDITOR.env.ie&&(a=a.replace(/(?:^\s*<!DOCTYPE[^>]*?>)|^/i,'$&\n<script data-cke-temp="1">('+
-CKEDITOR.tools.fixDomain+")();<\/script>"));this.$.write(a);this.$.close()},find:function(a){return new CKEDITOR.dom.nodeList(this.$.querySelectorAll(a))},findOne:function(a){return(a=this.$.querySelector(a))?new CKEDITOR.dom.element(a):null},_getHtml5ShivFrag:function(){var a=this.getCustomData("html5ShivFrag");if(!a){a=this.$.createDocumentFragment();CKEDITOR.tools.enableHtml5Elements(a,true);this.setCustomData("html5ShivFrag",a)}return a}});CKEDITOR.dom.nodeList=function(a){this.$=a};
-CKEDITOR.dom.nodeList.prototype={count:function(){return this.$.length},getItem:function(a){if(a<0||a>=this.$.length)return null;return(a=this.$[a])?new CKEDITOR.dom.node(a):null}};CKEDITOR.dom.element=function(a,e){typeof a=="string"&&(a=(e?e.$:document).createElement(a));CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.element.get=function(a){return(a=typeof a=="string"?document.getElementById(a)||document.getElementsByName(a)[0]:a)&&(a.$?a:new CKEDITOR.dom.element(a))};
-CKEDITOR.dom.element.prototype=new CKEDITOR.dom.node;CKEDITOR.dom.element.createFromHtml=function(a,e){var b=new CKEDITOR.dom.element("div",e);b.setHtml(a);return b.getFirst().remove()};
-CKEDITOR.dom.element.setMarker=function(a,e,b,c){var f=e.getCustomData("list_marker_id")||e.setCustomData("list_marker_id",CKEDITOR.tools.getNextNumber()).getCustomData("list_marker_id"),d=e.getCustomData("list_marker_names")||e.setCustomData("list_marker_names",{}).getCustomData("list_marker_names");a[f]=e;d[b]=1;return e.setCustomData(b,c)};CKEDITOR.dom.element.clearAllMarkers=function(a){for(var e in a)CKEDITOR.dom.element.clearMarkers(a,a[e],1)};
-CKEDITOR.dom.element.clearMarkers=function(a,e,b){var c=e.getCustomData("list_marker_names"),f=e.getCustomData("list_marker_id"),d;for(d in c)e.removeCustomData(d);e.removeCustomData("list_marker_names");if(b){e.removeCustomData("list_marker_id");delete a[f]}};
-(function(){function a(a){var d=true;if(!a.$.id){a.$.id="cke_tmp_"+CKEDITOR.tools.getNextNumber();d=false}return function(){d||a.removeAttribute("id")}}function e(a,d){return"#"+a.$.id+" "+d.split(/,\s*/).join(", #"+a.$.id+" ")}function b(a){for(var d=0,b=0,e=c[a].length;b<e;b++)d=d+(parseInt(this.getComputedStyle(c[a][b])||0,10)||0);return d}CKEDITOR.tools.extend(CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_ELEMENT,addClass:function(a){var d=this.$.className;d&&(RegExp("(?:^|\\s)"+a+"(?:\\s|$)",
-"").test(d)||(d=d+(" "+a)));this.$.className=d||a;return this},removeClass:function(a){var d=this.getAttribute("class");if(d){a=RegExp("(?:^|\\s+)"+a+"(?=\\s|$)","i");if(a.test(d))(d=d.replace(a,"").replace(/^\s+/,""))?this.setAttribute("class",d):this.removeAttribute("class")}return this},hasClass:function(a){return RegExp("(?:^|\\s+)"+a+"(?=\\s|$)","").test(this.getAttribute("class"))},append:function(a,d){typeof a=="string"&&(a=this.getDocument().createElement(a));d?this.$.insertBefore(a.$,this.$.firstChild):
-this.$.appendChild(a.$);return a},appendHtml:function(a){if(this.$.childNodes.length){var d=new CKEDITOR.dom.element("div",this.getDocument());d.setHtml(a);d.moveChildren(this)}else this.setHtml(a)},appendText:function(a){this.$.text!=null?this.$.text=this.$.text+a:this.append(new CKEDITOR.dom.text(a))},appendBogus:function(a){if(a||CKEDITOR.env.needsBrFiller){for(a=this.getLast();a&&a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.rtrim(a.getText());)a=a.getPrevious();if(!a||!a.is||!a.is("br")){a=this.getDocument().createElement("br");
-CKEDITOR.env.gecko&&a.setAttribute("type","_moz");this.append(a)}}},breakParent:function(a){var d=new CKEDITOR.dom.range(this.getDocument());d.setStartAfter(this);d.setEndAfter(a);a=d.extractContents();d.insertNode(this.remove());a.insertAfterNode(this)},contains:CKEDITOR.env.ie||CKEDITOR.env.webkit?function(a){var d=this.$;return a.type!=CKEDITOR.NODE_ELEMENT?d.contains(a.getParent().$):d!=a.$&&d.contains(a.$)}:function(a){return!!(this.$.compareDocumentPosition(a.$)&16)},focus:function(){function a(){try{this.$.focus()}catch(f){}}
-return function(d){d?CKEDITOR.tools.setTimeout(a,100,this):a.call(this)}}(),getHtml:function(){var a=this.$.innerHTML;return CKEDITOR.env.ie?a.replace(/<\?[^>]*>/g,""):a},getOuterHtml:function(){if(this.$.outerHTML)return this.$.outerHTML.replace(/<\?[^>]*>/,"");var a=this.$.ownerDocument.createElement("div");a.appendChild(this.$.cloneNode(true));return a.innerHTML},getClientRect:function(){var a=CKEDITOR.tools.extend({},this.$.getBoundingClientRect());!a.width&&(a.width=a.right-a.left);!a.height&&
-(a.height=a.bottom-a.top);return a},setHtml:CKEDITOR.env.ie&&CKEDITOR.env.version<9?function(a){try{var d=this.$;if(this.getParent())return d.innerHTML=a;var b=this.getDocument()._getHtml5ShivFrag();b.appendChild(d);d.innerHTML=a;b.removeChild(d);return a}catch(c){this.$.innerHTML="";d=new CKEDITOR.dom.element("body",this.getDocument());d.$.innerHTML=a;for(d=d.getChildren();d.count();)this.append(d.getItem(0));return a}}:function(a){return this.$.innerHTML=a},setText:function(){var a=document.createElement("p");
-a.innerHTML="x";a=a.textContent;return function(d){this.$[a?"textContent":"innerText"]=d}}(),getAttribute:function(){var a=function(a){return this.$.getAttribute(a,2)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){switch(a){case "class":a="className";break;case "http-equiv":a="httpEquiv";break;case "name":return this.$.name;case "tabindex":a=this.$.getAttribute(a,2);a!==0&&this.$.tabIndex===0&&(a=null);return a;case "checked":a=this.$.attributes.getNamedItem(a);
-return(a.specified?a.nodeValue:this.$.checked)?"checked":null;case "hspace":case "value":return this.$[a];case "style":return this.$.style.cssText;case "contenteditable":case "contentEditable":return this.$.attributes.getNamedItem("contentEditable").specified?this.$.getAttribute("contentEditable"):null}return this.$.getAttribute(a,2)}:a}(),getChildren:function(){return new CKEDITOR.dom.nodeList(this.$.childNodes)},getComputedStyle:CKEDITOR.env.ie?function(a){return this.$.currentStyle[CKEDITOR.tools.cssStyleToDomStyle(a)]}:
-function(a){var d=this.getWindow().$.getComputedStyle(this.$,null);return d?d.getPropertyValue(a):""},getDtd:function(){var a=CKEDITOR.dtd[this.getName()];this.getDtd=function(){return a};return a},getElementsByTag:CKEDITOR.dom.document.prototype.getElementsByTag,getTabIndex:CKEDITOR.env.ie?function(){var a=this.$.tabIndex;a===0&&(!CKEDITOR.dtd.$tabIndex[this.getName()]&&parseInt(this.getAttribute("tabindex"),10)!==0)&&(a=-1);return a}:CKEDITOR.env.webkit?function(){var a=this.$.tabIndex;if(a===void 0){a=
-parseInt(this.getAttribute("tabindex"),10);isNaN(a)&&(a=-1)}return a}:function(){return this.$.tabIndex},getText:function(){return this.$.textContent||this.$.innerText||""},getWindow:function(){return this.getDocument().getWindow()},getId:function(){return this.$.id||null},getNameAtt:function(){return this.$.name||null},getName:function(){var a=this.$.nodeName.toLowerCase();if(CKEDITOR.env.ie&&document.documentMode<=8){var d=this.$.scopeName;d!="HTML"&&(a=d.toLowerCase()+":"+a)}this.getName=function(){return a};
-return this.getName()},getValue:function(){return this.$.value},getFirst:function(a){var d=this.$.firstChild;(d=d&&new CKEDITOR.dom.node(d))&&(a&&!a(d))&&(d=d.getNext(a));return d},getLast:function(a){var d=this.$.lastChild;(d=d&&new CKEDITOR.dom.node(d))&&(a&&!a(d))&&(d=d.getPrevious(a));return d},getStyle:function(a){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]},is:function(){var a=this.getName();if(typeof arguments[0]=="object")return!!arguments[0][a];for(var d=0;d<arguments.length;d++)if(arguments[d]==
-a)return true;return false},isEditable:function(a){var d=this.getName();if(this.isReadOnly()||this.getComputedStyle("display")=="none"||this.getComputedStyle("visibility")=="hidden"||CKEDITOR.dtd.$nonEditable[d]||CKEDITOR.dtd.$empty[d]||this.is("a")&&(this.data("cke-saved-name")||this.hasAttribute("name"))&&!this.getChildCount())return false;if(a!==false){a=CKEDITOR.dtd[d]||CKEDITOR.dtd.span;return!(!a||!a["#"])}return true},isIdentical:function(a){var d=this.clone(0,1),a=a.clone(0,1);d.removeAttributes(["_moz_dirty",
-"data-cke-expando","data-cke-saved-href","data-cke-saved-name"]);a.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]);if(d.$.isEqualNode){d.$.style.cssText=CKEDITOR.tools.normalizeCssText(d.$.style.cssText);a.$.style.cssText=CKEDITOR.tools.normalizeCssText(a.$.style.cssText);return d.$.isEqualNode(a.$)}d=d.getOuterHtml();a=a.getOuterHtml();if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&this.is("a")){var b=this.getParent();if(b.type==CKEDITOR.NODE_ELEMENT){b=
-b.clone();b.setHtml(d);d=b.getHtml();b.setHtml(a);a=b.getHtml()}}return d==a},isVisible:function(){var a=(this.$.offsetHeight||this.$.offsetWidth)&&this.getComputedStyle("visibility")!="hidden",d,b;if(a&&CKEDITOR.env.webkit){d=this.getWindow();if(!d.equals(CKEDITOR.document.getWindow())&&(b=d.$.frameElement))a=(new CKEDITOR.dom.element(b)).isVisible()}return!!a},isEmptyInlineRemoveable:function(){if(!CKEDITOR.dtd.$removeEmpty[this.getName()])return false;for(var a=this.getChildren(),d=0,b=a.count();d<
-b;d++){var c=a.getItem(d);if(!(c.type==CKEDITOR.NODE_ELEMENT&&c.data("cke-bookmark"))&&(c.type==CKEDITOR.NODE_ELEMENT&&!c.isEmptyInlineRemoveable()||c.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(c.getText())))return false}return true},hasAttributes:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(){for(var a=this.$.attributes,d=0;d<a.length;d++){var b=a[d];switch(b.nodeName){case "class":if(this.getAttribute("class"))return true;case "data-cke-expando":continue;default:if(b.specified)return true}}return false}:
-function(){var a=this.$.attributes,d=a.length,b={"data-cke-expando":1,_moz_dirty:1};return d>0&&(d>2||!b[a[0].nodeName]||d==2&&!b[a[1].nodeName])},hasAttribute:function(){function a(d){var f=this.$.attributes.getNamedItem(d);if(this.getName()=="input")switch(d){case "class":return this.$.className.length>0;case "checked":return!!this.$.checked;case "value":d=this.getAttribute("type");return d=="checkbox"||d=="radio"?this.$.value!="on":!!this.$.value}return!f?false:f.specified}return CKEDITOR.env.ie?
-CKEDITOR.env.version<8?function(d){return d=="name"?!!this.$.name:a.call(this,d)}:a:function(a){return!!this.$.attributes.getNamedItem(a)}}(),hide:function(){this.setStyle("display","none")},moveChildren:function(a,d){var b=this.$,a=a.$;if(b!=a){var c;if(d)for(;c=b.lastChild;)a.insertBefore(b.removeChild(c),a.firstChild);else for(;c=b.firstChild;)a.appendChild(b.removeChild(c))}},mergeSiblings:function(){function a(d,f,b){if(f&&f.type==CKEDITOR.NODE_ELEMENT){for(var c=[];f.data("cke-bookmark")||f.isEmptyInlineRemoveable();){c.push(f);
-f=b?f.getNext():f.getPrevious();if(!f||f.type!=CKEDITOR.NODE_ELEMENT)return}if(d.isIdentical(f)){for(var e=b?d.getLast():d.getFirst();c.length;)c.shift().move(d,!b);f.moveChildren(d,!b);f.remove();e&&e.type==CKEDITOR.NODE_ELEMENT&&e.mergeSiblings()}}}return function(d){if(d===false||CKEDITOR.dtd.$removeEmpty[this.getName()]||this.is("a")){a(this,this.getNext(),true);a(this,this.getPrevious())}}}(),show:function(){this.setStyles({display:"",visibility:""})},setAttribute:function(){var a=function(a,
-f){this.$.setAttribute(a,f);return this};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(d,b){d=="class"?this.$.className=b:d=="style"?this.$.style.cssText=b:d=="tabindex"?this.$.tabIndex=b:d=="checked"?this.$.checked=b:d=="contenteditable"?a.call(this,"contentEditable",b):a.apply(this,arguments);return this}:CKEDITOR.env.ie8Compat&&CKEDITOR.env.secure?function(d,b){if(d=="src"&&b.match(/^http:\/\//))try{a.apply(this,arguments)}catch(c){}else a.apply(this,arguments);
-return this}:a}(),setAttributes:function(a){for(var d in a)this.setAttribute(d,a[d]);return this},setValue:function(a){this.$.value=a;return this},removeAttribute:function(){var a=function(a){this.$.removeAttribute(a)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){a=="class"?a="className":a=="tabindex"?a="tabIndex":a=="contenteditable"&&(a="contentEditable");this.$.removeAttribute(a)}:a}(),removeAttributes:function(a){if(CKEDITOR.tools.isArray(a))for(var d=0;d<
-a.length;d++)this.removeAttribute(a[d]);else for(d in a)a.hasOwnProperty(d)&&this.removeAttribute(d)},removeStyle:function(a){var d=this.$.style;if(!d.removeProperty&&(a=="border"||a=="margin"||a=="padding")){var b=["top","left","right","bottom"],c;a=="border"&&(c=["color","style","width"]);for(var d=[],e=0;e<b.length;e++)if(c)for(var j=0;j<c.length;j++)d.push([a,b[e],c[j]].join("-"));else d.push([a,b[e]].join("-"));for(a=0;a<d.length;a++)this.removeStyle(d[a])}else{d.removeProperty?d.removeProperty(a):
-d.removeAttribute(CKEDITOR.tools.cssStyleToDomStyle(a));this.$.style.cssText||this.removeAttribute("style")}},setStyle:function(a,d){this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]=d;return this},setStyles:function(a){for(var d in a)this.setStyle(d,a[d]);return this},setOpacity:function(a){if(CKEDITOR.env.ie&&CKEDITOR.env.version<9){a=Math.round(a*100);this.setStyle("filter",a>=100?"":"progid:DXImageTransform.Microsoft.Alpha(opacity="+a+")")}else this.setStyle("opacity",a)},unselectable:function(){this.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select",
-"none"));if(CKEDITOR.env.ie){this.setAttribute("unselectable","on");for(var a,d=this.getElementsByTag("*"),b=0,c=d.count();b<c;b++){a=d.getItem(b);a.setAttribute("unselectable","on")}}},getPositionedAncestor:function(){for(var a=this;a.getName()!="html";){if(a.getComputedStyle("position")!="static")return a;a=a.getParent()}return null},getDocumentPosition:function(a){var d=0,b=0,c=this.getDocument(),e=c.getBody(),j=c.$.compatMode=="BackCompat";if(document.documentElement.getBoundingClientRect){var p=
-this.$.getBoundingClientRect(),u=c.$.documentElement,t=u.clientTop||e.$.clientTop||0,y=u.clientLeft||e.$.clientLeft||0,n=true;if(CKEDITOR.env.ie){n=c.getDocumentElement().contains(this);c=c.getBody().contains(this);n=j&&c||!j&&n}if(n){d=p.left+(!j&&u.scrollLeft||e.$.scrollLeft);d=d-y;b=p.top+(!j&&u.scrollTop||e.$.scrollTop);b=b-t}}else{e=this;for(c=null;e&&!(e.getName()=="body"||e.getName()=="html");){d=d+(e.$.offsetLeft-e.$.scrollLeft);b=b+(e.$.offsetTop-e.$.scrollTop);if(!e.equals(this)){d=d+(e.$.clientLeft||
-0);b=b+(e.$.clientTop||0)}for(;c&&!c.equals(e);){d=d-c.$.scrollLeft;b=b-c.$.scrollTop;c=c.getParent()}c=e;e=(p=e.$.offsetParent)?new CKEDITOR.dom.element(p):null}}if(a){e=this.getWindow();c=a.getWindow();if(!e.equals(c)&&e.$.frameElement){a=(new CKEDITOR.dom.element(e.$.frameElement)).getDocumentPosition(a);d=d+a.x;b=b+a.y}}if(!document.documentElement.getBoundingClientRect&&CKEDITOR.env.gecko&&!j){d=d+(this.$.clientLeft?1:0);b=b+(this.$.clientTop?1:0)}return{x:d,y:b}},scrollIntoView:function(a){var b=
-this.getParent();if(b){do{(b.$.clientWidth&&b.$.clientWidth<b.$.scrollWidth||b.$.clientHeight&&b.$.clientHeight<b.$.scrollHeight)&&!b.is("body")&&this.scrollIntoParent(b,a,1);if(b.is("html")){var c=b.getWindow();try{var e=c.$.frameElement;e&&(b=new CKEDITOR.dom.element(e))}catch(m){}}}while(b=b.getParent())}},scrollIntoParent:function(a,b,c){var e,m,j,p;function u(b,d){if(/body|html/.test(a.getName()))a.getWindow().$.scrollBy(b,d);else{a.$.scrollLeft=a.$.scrollLeft+b;a.$.scrollTop=a.$.scrollTop+d}}
-function t(a,b){var d={x:0,y:0};if(!a.is(n?"body":"html")){var c=a.$.getBoundingClientRect();d.x=c.left;d.y=c.top}c=a.getWindow();if(!c.equals(b)){c=t(CKEDITOR.dom.element.get(c.$.frameElement),b);d.x=d.x+c.x;d.y=d.y+c.y}return d}function y(a,b){return parseInt(a.getComputedStyle("margin-"+b)||0,10)||0}!a&&(a=this.getWindow());j=a.getDocument();var n=j.$.compatMode=="BackCompat";a instanceof CKEDITOR.dom.window&&(a=n?j.getBody():j.getDocumentElement());j=a.getWindow();m=t(this,j);var w=t(a,j),o=this.$.offsetHeight;
-e=this.$.offsetWidth;var r=a.$.clientHeight,i=a.$.clientWidth;j=m.x-y(this,"left")-w.x||0;p=m.y-y(this,"top")-w.y||0;e=m.x+e+y(this,"right")-(w.x+i)||0;m=m.y+o+y(this,"bottom")-(w.y+r)||0;if(p<0||m>0)u(0,b===true?p:b===false?m:p<0?p:m);if(c&&(j<0||e>0))u(j<0?j:e,0)},setState:function(a,b,c){b=b||"cke";switch(a){case CKEDITOR.TRISTATE_ON:this.addClass(b+"_on");this.removeClass(b+"_off");this.removeClass(b+"_disabled");c&&this.setAttribute("aria-pressed",true);c&&this.removeAttribute("aria-disabled");
-break;case CKEDITOR.TRISTATE_DISABLED:this.addClass(b+"_disabled");this.removeClass(b+"_off");this.removeClass(b+"_on");c&&this.setAttribute("aria-disabled",true);c&&this.removeAttribute("aria-pressed");break;default:this.addClass(b+"_off");this.removeClass(b+"_on");this.removeClass(b+"_disabled");c&&this.removeAttribute("aria-pressed");c&&this.removeAttribute("aria-disabled")}},getFrameDocument:function(){var a=this.$;try{a.contentWindow.document}catch(b){a.src=a.src}return a&&new CKEDITOR.dom.document(a.contentWindow.document)},
-copyAttributes:function(a,b){for(var c=this.$.attributes,b=b||{},e=0;e<c.length;e++){var m=c[e],j=m.nodeName.toLowerCase(),p;if(!(j in b))if(j=="checked"&&(p=this.getAttribute(j)))a.setAttribute(j,p);else if(!CKEDITOR.env.ie||this.hasAttribute(j)){p=this.getAttribute(j);if(p===null)p=m.nodeValue;a.setAttribute(j,p)}}if(this.$.style.cssText!=="")a.$.style.cssText=this.$.style.cssText},renameNode:function(a){if(this.getName()!=a){var b=this.getDocument(),a=new CKEDITOR.dom.element(a,b);this.copyAttributes(a);
-this.moveChildren(a);this.getParent()&&this.$.parentNode.replaceChild(a.$,this.$);a.$["data-cke-expando"]=this.$["data-cke-expando"];this.$=a.$;delete this.getName}},getChild:function(){function a(b,c){var f=b.childNodes;if(c>=0&&c<f.length)return f[c]}return function(b){var c=this.$;if(b.slice)for(;b.length>0&&c;)c=a(c,b.shift());else c=a(c,b);return c?new CKEDITOR.dom.node(c):null}}(),getChildCount:function(){return this.$.childNodes.length},disableContextMenu:function(){this.on("contextmenu",function(a){a.data.getTarget().hasClass("cke_enable_context_menu")||
-a.data.preventDefault()})},getDirection:function(a){return a?this.getComputedStyle("direction")||this.getDirection()||this.getParent()&&this.getParent().getDirection(1)||this.getDocument().$.dir||"ltr":this.getStyle("direction")||this.getAttribute("dir")},data:function(a,b){a="data-"+a;if(b===void 0)return this.getAttribute(a);b===false?this.removeAttribute(a):this.setAttribute(a,b);return null},getEditor:function(){var a=CKEDITOR.instances,b,c;for(b in a){c=a[b];if(c.element.equals(this)&&c.elementMode!=
-CKEDITOR.ELEMENT_MODE_APPENDTO)return c}return null},find:function(b){var c=a(this),b=new CKEDITOR.dom.nodeList(this.$.querySelectorAll(e(this,b)));c();return b},findOne:function(b){var c=a(this),b=this.$.querySelector(e(this,b));c();return b?new CKEDITOR.dom.element(b):null},forEach:function(a,b,c){if(!c&&(!b||this.type==b))var e=a(this);if(e!==false)for(var c=this.getChildren(),m=0;m<c.count();m++){e=c.getItem(m);e.type==CKEDITOR.NODE_ELEMENT?e.forEach(a,b):(!b||e.type==b)&&a(e)}}});var c={width:["border-left-width",
-"border-right-width","padding-left","padding-right"],height:["border-top-width","border-bottom-width","padding-top","padding-bottom"]};CKEDITOR.dom.element.prototype.setSize=function(a,c,e){if(typeof c=="number"){if(e&&(!CKEDITOR.env.ie||!CKEDITOR.env.quirks))c=c-b.call(this,a);this.setStyle(a,c+"px")}};CKEDITOR.dom.element.prototype.getSize=function(a,c){var e=Math.max(this.$["offset"+CKEDITOR.tools.capitalize(a)],this.$["client"+CKEDITOR.tools.capitalize(a)])||0;c&&(e=e-b.call(this,a));return e}})();
-CKEDITOR.dom.documentFragment=function(a){a=a||CKEDITOR.document;this.$=a.type==CKEDITOR.NODE_DOCUMENT?a.$.createDocumentFragment():a};
-CKEDITOR.tools.extend(CKEDITOR.dom.documentFragment.prototype,CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,insertAfterNode:function(a){a=a.$;a.parentNode.insertBefore(this.$,a.nextSibling)}},!0,{append:1,appendBogus:1,getFirst:1,getLast:1,getParent:1,getNext:1,getPrevious:1,appendTo:1,moveChildren:1,insertBefore:1,insertAfterNode:1,replace:1,trim:1,type:1,ltrim:1,rtrim:1,getDocument:1,getChildCount:1,getChild:1,getChildren:1});
-(function(){function a(a,b){var c=this.range;if(this._.end)return null;if(!this._.start){this._.start=1;if(c.collapsed){this.end();return null}c.optimize()}var d,f=c.startContainer;d=c.endContainer;var e=c.startOffset,p=c.endOffset,i,k=this.guard,l=this.type,q=a?"getPreviousSourceNode":"getNextSourceNode";if(!a&&!this._.guardLTR){var x=d.type==CKEDITOR.NODE_ELEMENT?d:d.getParent(),s=d.type==CKEDITOR.NODE_ELEMENT?d.getChild(p):d.getNext();this._.guardLTR=function(a,b){return(!b||!x.equals(a))&&(!s||
-!a.equals(s))&&(a.type!=CKEDITOR.NODE_ELEMENT||!b||!a.equals(c.root))}}if(a&&!this._.guardRTL){var g=f.type==CKEDITOR.NODE_ELEMENT?f:f.getParent(),j=f.type==CKEDITOR.NODE_ELEMENT?e?f.getChild(e-1):null:f.getPrevious();this._.guardRTL=function(a,b){return(!b||!g.equals(a))&&(!j||!a.equals(j))&&(a.type!=CKEDITOR.NODE_ELEMENT||!b||!a.equals(c.root))}}var m=a?this._.guardRTL:this._.guardLTR;i=k?function(a,b){return m(a,b)===false?false:k(a,b)}:m;if(this.current)d=this.current[q](false,l,i);else{if(a)d.type==
-CKEDITOR.NODE_ELEMENT&&(d=p>0?d.getChild(p-1):i(d,true)===false?null:d.getPreviousSourceNode(true,l,i));else{d=f;if(d.type==CKEDITOR.NODE_ELEMENT&&!(d=d.getChild(e)))d=i(f,true)===false?null:f.getNextSourceNode(true,l,i)}d&&i(d)===false&&(d=null)}for(;d&&!this._.end;){this.current=d;if(!this.evaluator||this.evaluator(d)!==false){if(!b)return d}else if(b&&this.evaluator)return false;d=d[q](false,l,i)}this.end();return this.current=null}function e(b){for(var c,d=null;c=a.call(this,b);)d=c;return d}
-function b(a){if(j(a))return false;if(a.type==CKEDITOR.NODE_TEXT)return true;if(a.type==CKEDITOR.NODE_ELEMENT){if(a.is(CKEDITOR.dtd.$inline)||a.is("hr")||a.getAttribute("contenteditable")=="false")return true;var b;if(b=!CKEDITOR.env.needsBrFiller)if(b=a.is(p))a:{b=0;for(var c=a.getChildCount();b<c;++b)if(!j(a.getChild(b))){b=false;break a}b=true}if(b)return true}return false}CKEDITOR.dom.walker=CKEDITOR.tools.createClass({$:function(a){this.range=a;this._={}},proto:{end:function(){this._.end=1},
-next:function(){return a.call(this)},previous:function(){return a.call(this,1)},checkForward:function(){return a.call(this,0,1)!==false},checkBackward:function(){return a.call(this,1,1)!==false},lastForward:function(){return e.call(this)},lastBackward:function(){return e.call(this,1)},reset:function(){delete this.current;this._={}}}});var c={block:1,"list-item":1,table:1,"table-row-group":1,"table-header-group":1,"table-footer-group":1,"table-row":1,"table-column-group":1,"table-column":1,"table-cell":1,
-"table-caption":1},f={absolute:1,fixed:1};CKEDITOR.dom.element.prototype.isBlockBoundary=function(a){return this.getComputedStyle("float")=="none"&&!(this.getComputedStyle("position")in f)&&c[this.getComputedStyle("display")]?true:!!(this.is(CKEDITOR.dtd.$block)||a&&this.is(a))};CKEDITOR.dom.walker.blockBoundary=function(a){return function(b){return!(b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary(a))}};CKEDITOR.dom.walker.listItemBoundary=function(){return this.blockBoundary({br:1})};CKEDITOR.dom.walker.bookmark=
-function(a,b){function c(a){return a&&a.getName&&a.getName()=="span"&&a.data("cke-bookmark")}return function(d){var f,e;f=d&&d.type!=CKEDITOR.NODE_ELEMENT&&(e=d.getParent())&&c(e);f=a?f:f||c(d);return!!(b^f)}};CKEDITOR.dom.walker.whitespaces=function(a){return function(b){var c;b&&b.type==CKEDITOR.NODE_TEXT&&(c=!CKEDITOR.tools.trim(b.getText())||CKEDITOR.env.webkit&&b.getText()=="​");return!!(a^c)}};CKEDITOR.dom.walker.invisible=function(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.env.webkit?
-1:0;return function(d){if(b(d))d=1;else{d.type==CKEDITOR.NODE_TEXT&&(d=d.getParent());d=d.$.offsetWidth<=c}return!!(a^d)}};CKEDITOR.dom.walker.nodeType=function(a,b){return function(c){return!!(b^c.type==a)}};CKEDITOR.dom.walker.bogus=function(a){function b(a){return!g(a)&&!h(a)}return function(c){var f=CKEDITOR.env.needsBrFiller?c.is&&c.is("br"):c.getText&&d.test(c.getText());if(f){f=c.getParent();c=c.getNext(b);f=f.isBlockBoundary()&&(!c||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary())}return!!(a^
-f)}};CKEDITOR.dom.walker.temp=function(a){return function(b){b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent());b=b&&b.hasAttribute("data-cke-temp");return!!(a^b)}};var d=/^[\t\r\n ]*(?:&nbsp;|\xa0)$/,g=CKEDITOR.dom.walker.whitespaces(),h=CKEDITOR.dom.walker.bookmark(),m=CKEDITOR.dom.walker.temp();CKEDITOR.dom.walker.ignored=function(a){return function(b){b=g(b)||h(b)||m(b);return!!(a^b)}};var j=CKEDITOR.dom.walker.ignored(),p=function(a){var b={},c;for(c in a)CKEDITOR.dtd[c]["#"]&&(b[c]=1);return b}(CKEDITOR.dtd.$block);
-CKEDITOR.dom.walker.editable=function(a){return function(c){return!!(a^b(c))}};CKEDITOR.dom.element.prototype.getBogus=function(){var a=this;do a=a.getPreviousSourceNode();while(h(a)||g(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.is(CKEDITOR.dtd.$inline)&&!a.is(CKEDITOR.dtd.$empty));return a&&(CKEDITOR.env.needsBrFiller?a.is&&a.is("br"):a.getText&&d.test(a.getText()))?a:false}})();
-CKEDITOR.dom.range=function(a){this.endOffset=this.endContainer=this.startOffset=this.startContainer=null;this.collapsed=true;var e=a instanceof CKEDITOR.dom.document;this.document=e?a:a.getDocument();this.root=e?a.getBody():a};
-(function(){function a(){var a=false,b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(true),f=CKEDITOR.dom.walker.bogus();return function(e){if(c(e)||b(e))return true;if(f(e)&&!a)return a=true;return e.type==CKEDITOR.NODE_TEXT&&(e.hasAscendant("pre")||CKEDITOR.tools.trim(e.getText()).length)||e.type==CKEDITOR.NODE_ELEMENT&&!e.is(d)?false:true}}function e(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(1);return function(d){return c(d)||b(d)?true:!a&&g(d)||
-d.type==CKEDITOR.NODE_ELEMENT&&d.is(CKEDITOR.dtd.$removeEmpty)}}function b(a){return function(){var b;return this[a?"getPreviousNode":"getNextNode"](function(a){!b&&j(a)&&(b=a);return m(a)&&!(g(a)&&a.equals(b))})}}var c=function(a){a.collapsed=a.startContainer&&a.endContainer&&a.startContainer.equals(a.endContainer)&&a.startOffset==a.endOffset},f=function(a,b,c,d){a.optimizeBookmark();var f=a.startContainer,e=a.endContainer,o=a.startOffset,r=a.endOffset,i,k;if(e.type==CKEDITOR.NODE_TEXT)e=e.split(r);
-else if(e.getChildCount()>0)if(r>=e.getChildCount()){e=e.append(a.document.createText(""));k=true}else e=e.getChild(r);if(f.type==CKEDITOR.NODE_TEXT){f.split(o);f.equals(e)&&(e=f.getNext())}else if(o)if(o>=f.getChildCount()){f=f.append(a.document.createText(""));i=true}else f=f.getChild(o).getPrevious();else{f=f.append(a.document.createText(""),1);i=true}var o=f.getParents(),r=e.getParents(),l,q,x;for(l=0;l<o.length;l++){q=o[l];x=r[l];if(!q.equals(x))break}for(var s=c,g,j,m,F=l;F<o.length;F++){g=
-o[F];s&&!g.equals(f)&&(j=s.append(g.clone()));for(g=g.getNext();g;){if(g.equals(r[F])||g.equals(e))break;m=g.getNext();if(b==2)s.append(g.clone(true));else{g.remove();b==1&&s.append(g)}g=m}s&&(s=j)}s=c;for(c=l;c<r.length;c++){g=r[c];b>0&&!g.equals(e)&&(j=s.append(g.clone()));if(!o[c]||g.$.parentNode!=o[c].$.parentNode)for(g=g.getPrevious();g;){if(g.equals(o[c])||g.equals(f))break;m=g.getPrevious();if(b==2)s.$.insertBefore(g.$.cloneNode(true),s.$.firstChild);else{g.remove();b==1&&s.$.insertBefore(g.$,
-s.$.firstChild)}g=m}s&&(s=j)}if(b==2){q=a.startContainer;if(q.type==CKEDITOR.NODE_TEXT){q.$.data=q.$.data+q.$.nextSibling.data;q.$.parentNode.removeChild(q.$.nextSibling)}a=a.endContainer;if(a.type==CKEDITOR.NODE_TEXT&&a.$.nextSibling){a.$.data=a.$.data+a.$.nextSibling.data;a.$.parentNode.removeChild(a.$.nextSibling)}}else{if(q&&x&&(f.$.parentNode!=q.$.parentNode||e.$.parentNode!=x.$.parentNode)){b=x.getIndex();i&&x.$.parentNode==f.$.parentNode&&b--;if(d&&q.type==CKEDITOR.NODE_ELEMENT){d=CKEDITOR.dom.element.createFromHtml('<span data-cke-bookmark="1" style="display:none">&nbsp;</span>',
-a.document);d.insertAfter(q);q.mergeSiblings(false);a.moveToBookmark({startNode:d})}else a.setStart(x.getParent(),b)}a.collapse(true)}i&&f.remove();k&&e.$.parentNode&&e.remove()},d={abbr:1,acronym:1,b:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,q:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,tt:1,u:1,"var":1},g=CKEDITOR.dom.walker.bogus(),h=/^[\t\r\n ]*(?:&nbsp;|\xa0)$/,m=CKEDITOR.dom.walker.editable(),j=CKEDITOR.dom.walker.ignored(true);CKEDITOR.dom.range.prototype=
-{clone:function(){var a=new CKEDITOR.dom.range(this.root);a.startContainer=this.startContainer;a.startOffset=this.startOffset;a.endContainer=this.endContainer;a.endOffset=this.endOffset;a.collapsed=this.collapsed;return a},collapse:function(a){if(a){this.endContainer=this.startContainer;this.endOffset=this.startOffset}else{this.startContainer=this.endContainer;this.startOffset=this.endOffset}this.collapsed=true},cloneContents:function(){var a=new CKEDITOR.dom.documentFragment(this.document);this.collapsed||
-f(this,2,a);return a},deleteContents:function(a){this.collapsed||f(this,0,null,a)},extractContents:function(a){var b=new CKEDITOR.dom.documentFragment(this.document);this.collapsed||f(this,1,b,a);return b},createBookmark:function(a){var b,c,d,f,e=this.collapsed;b=this.document.createElement("span");b.data("cke-bookmark",1);b.setStyle("display","none");b.setHtml("&nbsp;");if(a){d="cke_bm_"+CKEDITOR.tools.getNextNumber();b.setAttribute("id",d+(e?"C":"S"))}if(!e){c=b.clone();c.setHtml("&nbsp;");a&&c.setAttribute("id",
-d+"E");f=this.clone();f.collapse();f.insertNode(c)}f=this.clone();f.collapse(true);f.insertNode(b);if(c){this.setStartAfter(b);this.setEndBefore(c)}else this.moveToPosition(b,CKEDITOR.POSITION_AFTER_END);return{startNode:a?d+(e?"C":"S"):b,endNode:a?d+"E":c,serializable:a,collapsed:e}},createBookmark2:function(){function a(b){var c=b.container,d=b.offset,f;f=c;var e=d;f=f.type!=CKEDITOR.NODE_ELEMENT||e===0||e==f.getChildCount()?0:f.getChild(e-1).type==CKEDITOR.NODE_TEXT&&f.getChild(e).type==CKEDITOR.NODE_TEXT;
-if(f){c=c.getChild(d-1);d=c.getLength()}c.type==CKEDITOR.NODE_ELEMENT&&d>1&&(d=c.getChild(d-1).getIndex(true)+1);if(c.type==CKEDITOR.NODE_TEXT){f=c;for(e=0;(f=f.getPrevious())&&f.type==CKEDITOR.NODE_TEXT;)e=e+f.getLength();d=d+e}b.container=c;b.offset=d}return function(b){var c=this.collapsed,d={container:this.startContainer,offset:this.startOffset},f={container:this.endContainer,offset:this.endOffset};if(b){a(d);c||a(f)}return{start:d.container.getAddress(b),end:c?null:f.container.getAddress(b),
-startOffset:d.offset,endOffset:f.offset,normalized:b,collapsed:c,is2:true}}}(),moveToBookmark:function(a){if(a.is2){var b=this.document.getByAddress(a.start,a.normalized),c=a.startOffset,d=a.end&&this.document.getByAddress(a.end,a.normalized),a=a.endOffset;this.setStart(b,c);d?this.setEnd(d,a):this.collapse(true)}else{b=(c=a.serializable)?this.document.getById(a.startNode):a.startNode;a=c?this.document.getById(a.endNode):a.endNode;this.setStartBefore(b);b.remove();if(a){this.setEndBefore(a);a.remove()}else this.collapse(true)}},
-getBoundaryNodes:function(){var a=this.startContainer,b=this.endContainer,c=this.startOffset,d=this.endOffset,f;if(a.type==CKEDITOR.NODE_ELEMENT){f=a.getChildCount();if(f>c)a=a.getChild(c);else if(f<1)a=a.getPreviousSourceNode();else{for(a=a.$;a.lastChild;)a=a.lastChild;a=new CKEDITOR.dom.node(a);a=a.getNextSourceNode()||a}}if(b.type==CKEDITOR.NODE_ELEMENT){f=b.getChildCount();if(f>d)b=b.getChild(d).getPreviousSourceNode(true);else if(f<1)b=b.getPreviousSourceNode();else{for(b=b.$;b.lastChild;)b=
-b.lastChild;b=new CKEDITOR.dom.node(b)}}a.getPosition(b)&CKEDITOR.POSITION_FOLLOWING&&(a=b);return{startNode:a,endNode:b}},getCommonAncestor:function(a,b){var c=this.startContainer,d=this.endContainer,c=c.equals(d)?a&&c.type==CKEDITOR.NODE_ELEMENT&&this.startOffset==this.endOffset-1?c.getChild(this.startOffset):c:c.getCommonAncestor(d);return b&&!c.is?c.getParent():c},optimize:function(){var a=this.startContainer,b=this.startOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setStartAfter(a):
-this.setStartBefore(a));a=this.endContainer;b=this.endOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setEndAfter(a):this.setEndBefore(a))},optimizeBookmark:function(){var a=this.startContainer,b=this.endContainer;a.is&&(a.is("span")&&a.data("cke-bookmark"))&&this.setStartAt(a,CKEDITOR.POSITION_BEFORE_START);b&&(b.is&&b.is("span")&&b.data("cke-bookmark"))&&this.setEndAt(b,CKEDITOR.POSITION_AFTER_END)},trim:function(a,b){var c=this.startContainer,d=this.startOffset,f=this.collapsed;
-if((!a||f)&&c&&c.type==CKEDITOR.NODE_TEXT){if(d)if(d>=c.getLength()){d=c.getIndex()+1;c=c.getParent()}else{var e=c.split(d),d=c.getIndex()+1,c=c.getParent();if(this.startContainer.equals(this.endContainer))this.setEnd(e,this.endOffset-this.startOffset);else if(c.equals(this.endContainer))this.endOffset=this.endOffset+1}else{d=c.getIndex();c=c.getParent()}this.setStart(c,d);if(f){this.collapse(true);return}}c=this.endContainer;d=this.endOffset;if(!b&&!f&&c&&c.type==CKEDITOR.NODE_TEXT){if(d){d>=c.getLength()||
-c.split(d);d=c.getIndex()+1}else d=c.getIndex();c=c.getParent();this.setEnd(c,d)}},enlarge:function(a,b){function c(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.hasAttribute("contenteditable")?null:a}var d=RegExp(/[^\s\ufeff]/);switch(a){case CKEDITOR.ENLARGE_INLINE:var f=1;case CKEDITOR.ENLARGE_ELEMENT:if(this.collapsed)break;var e=this.getCommonAncestor(),o=this.root,r,i,k,l,q,x=false,s,g;s=this.startContainer;var j=this.startOffset;if(s.type==CKEDITOR.NODE_TEXT){if(j){s=!CKEDITOR.tools.trim(s.substring(0,
-j)).length&&s;x=!!s}if(s&&!(l=s.getPrevious()))k=s.getParent()}else{j&&(l=s.getChild(j-1)||s.getLast());l||(k=s)}for(k=c(k);k||l;){if(k&&!l){!q&&k.equals(e)&&(q=true);if(f?k.isBlockBoundary():!o.contains(k))break;if(!x||k.getComputedStyle("display")!="inline"){x=false;q?r=k:this.setStartBefore(k)}l=k.getPrevious()}for(;l;){s=false;if(l.type==CKEDITOR.NODE_COMMENT)l=l.getPrevious();else{if(l.type==CKEDITOR.NODE_TEXT){g=l.getText();d.test(g)&&(l=null);s=/[\s\ufeff]$/.test(g)}else if((l.$.offsetWidth>
-(CKEDITOR.env.webkit?1:0)||b&&l.is("br"))&&!l.data("cke-bookmark"))if(x&&CKEDITOR.dtd.$removeEmpty[l.getName()]){g=l.getText();if(d.test(g))l=null;else for(var j=l.$.getElementsByTagName("*"),m=0,F;F=j[m++];)if(!CKEDITOR.dtd.$removeEmpty[F.nodeName.toLowerCase()]){l=null;break}l&&(s=!!g.length)}else l=null;s&&(x?q?r=k:k&&this.setStartBefore(k):x=true);if(l){s=l.getPrevious();if(!k&&!s){k=l;l=null;break}l=s}else k=null}}k&&(k=c(k.getParent()))}s=this.endContainer;j=this.endOffset;k=l=null;q=x=false;
-var h=function(a,b){var c=new CKEDITOR.dom.range(o);c.setStart(a,b);c.setEndAt(o,CKEDITOR.POSITION_BEFORE_END);var c=new CKEDITOR.dom.walker(c),f;for(c.guard=function(a){return!(a.type==CKEDITOR.NODE_ELEMENT&&a.isBlockBoundary())};f=c.next();){if(f.type!=CKEDITOR.NODE_TEXT)return false;g=f!=a?f.getText():f.substring(b);if(d.test(g))return false}return true};if(s.type==CKEDITOR.NODE_TEXT)if(CKEDITOR.tools.trim(s.substring(j)).length)x=true;else{x=!s.getLength();if(j==s.getLength()){if(!(l=s.getNext()))k=
-s.getParent()}else h(s,j)&&(k=s.getParent())}else(l=s.getChild(j))||(k=s);for(;k||l;){if(k&&!l){!q&&k.equals(e)&&(q=true);if(f?k.isBlockBoundary():!o.contains(k))break;if(!x||k.getComputedStyle("display")!="inline"){x=false;q?i=k:k&&this.setEndAfter(k)}l=k.getNext()}for(;l;){s=false;if(l.type==CKEDITOR.NODE_TEXT){g=l.getText();h(l,0)||(l=null);s=/^[\s\ufeff]/.test(g)}else if(l.type==CKEDITOR.NODE_ELEMENT){if((l.$.offsetWidth>0||b&&l.is("br"))&&!l.data("cke-bookmark"))if(x&&CKEDITOR.dtd.$removeEmpty[l.getName()]){g=
-l.getText();if(d.test(g))l=null;else{j=l.$.getElementsByTagName("*");for(m=0;F=j[m++];)if(!CKEDITOR.dtd.$removeEmpty[F.nodeName.toLowerCase()]){l=null;break}}l&&(s=!!g.length)}else l=null}else s=1;s&&x&&(q?i=k:this.setEndAfter(k));if(l){s=l.getNext();if(!k&&!s){k=l;l=null;break}l=s}else k=null}k&&(k=c(k.getParent()))}if(r&&i){e=r.contains(i)?i:r;this.setStartBefore(e);this.setEndAfter(e)}break;case CKEDITOR.ENLARGE_BLOCK_CONTENTS:case CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:k=new CKEDITOR.dom.range(this.root);
-o=this.root;k.setStartAt(o,CKEDITOR.POSITION_AFTER_START);k.setEnd(this.startContainer,this.startOffset);k=new CKEDITOR.dom.walker(k);var J,A,E=CKEDITOR.dom.walker.blockBoundary(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?{br:1}:null),v=null,z=function(a){if(a.type==CKEDITOR.NODE_ELEMENT&&a.getAttribute("contenteditable")=="false")if(v){if(v.equals(a)){v=null;return}}else v=a;else if(v)return;var b=E(a);b||(J=a);return b},f=function(a){var b=z(a);!b&&(a.is&&a.is("br"))&&(A=a);return b};k.guard=z;k=k.lastBackward();
-J=J||o;this.setStartAt(J,!J.is("br")&&(!k&&this.checkStartOfBlock()||k&&J.contains(k))?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_AFTER_END);if(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS){k=this.clone();k=new CKEDITOR.dom.walker(k);var B=CKEDITOR.dom.walker.whitespaces(),D=CKEDITOR.dom.walker.bookmark();k.evaluator=function(a){return!B(a)&&!D(a)};if((k=k.previous())&&k.type==CKEDITOR.NODE_ELEMENT&&k.is("br"))break}k=this.clone();k.collapse();k.setEndAt(o,CKEDITOR.POSITION_BEFORE_END);k=new CKEDITOR.dom.walker(k);
-k.guard=a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?f:z;J=v=A=null;k=k.lastForward();J=J||o;this.setEndAt(J,!k&&this.checkEndOfBlock()||k&&J.contains(k)?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_BEFORE_START);A&&this.setEndAfter(A)}},shrink:function(a,b,c){if(!this.collapsed){var a=a||CKEDITOR.SHRINK_TEXT,d=this.clone(),f=this.startContainer,e=this.endContainer,o=this.startOffset,g=this.endOffset,i=1,k=1;if(f&&f.type==CKEDITOR.NODE_TEXT)if(o)if(o>=f.getLength())d.setStartAfter(f);else{d.setStartBefore(f);
-i=0}else d.setStartBefore(f);if(e&&e.type==CKEDITOR.NODE_TEXT)if(g)if(g>=e.getLength())d.setEndAfter(e);else{d.setEndAfter(e);k=0}else d.setEndBefore(e);var d=new CKEDITOR.dom.walker(d),l=CKEDITOR.dom.walker.bookmark();d.evaluator=function(b){return b.type==(a==CKEDITOR.SHRINK_ELEMENT?CKEDITOR.NODE_ELEMENT:CKEDITOR.NODE_TEXT)};var q;d.guard=function(b,d){if(l(b))return true;if(a==CKEDITOR.SHRINK_ELEMENT&&b.type==CKEDITOR.NODE_TEXT||d&&b.equals(q)||c===false&&b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary()||
-b.type==CKEDITOR.NODE_ELEMENT&&b.hasAttribute("contenteditable"))return false;!d&&b.type==CKEDITOR.NODE_ELEMENT&&(q=b);return true};if(i)(f=d[a==CKEDITOR.SHRINK_ELEMENT?"lastForward":"next"]())&&this.setStartAt(f,b?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_START);if(k){d.reset();(d=d[a==CKEDITOR.SHRINK_ELEMENT?"lastBackward":"previous"]())&&this.setEndAt(d,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_END)}return!(!i&&!k)}},insertNode:function(a){this.optimizeBookmark();this.trim(false,
-true);var b=this.startContainer,c=b.getChild(this.startOffset);c?a.insertBefore(c):b.append(a);a.getParent()&&a.getParent().equals(this.endContainer)&&this.endOffset++;this.setStartBefore(a)},moveToPosition:function(a,b){this.setStartAt(a,b);this.collapse(true)},moveToRange:function(a){this.setStart(a.startContainer,a.startOffset);this.setEnd(a.endContainer,a.endOffset)},selectNodeContents:function(a){this.setStart(a,0);this.setEnd(a,a.type==CKEDITOR.NODE_TEXT?a.getLength():a.getChildCount())},setStart:function(a,
-b){if(a.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[a.getName()]){b=a.getIndex();a=a.getParent()}this.startContainer=a;this.startOffset=b;if(!this.endContainer){this.endContainer=a;this.endOffset=b}c(this)},setEnd:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[a.getName()]){b=a.getIndex()+1;a=a.getParent()}this.endContainer=a;this.endOffset=b;if(!this.startContainer){this.startContainer=a;this.startOffset=b}c(this)},setStartAfter:function(a){this.setStart(a.getParent(),a.getIndex()+
-1)},setStartBefore:function(a){this.setStart(a.getParent(),a.getIndex())},setEndAfter:function(a){this.setEnd(a.getParent(),a.getIndex()+1)},setEndBefore:function(a){this.setEnd(a.getParent(),a.getIndex())},setStartAt:function(a,b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setStart(a,0);break;case CKEDITOR.POSITION_BEFORE_END:a.type==CKEDITOR.NODE_TEXT?this.setStart(a,a.getLength()):this.setStart(a,a.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setStartBefore(a);break;case CKEDITOR.POSITION_AFTER_END:this.setStartAfter(a)}c(this)},
-setEndAt:function(a,b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setEnd(a,0);break;case CKEDITOR.POSITION_BEFORE_END:a.type==CKEDITOR.NODE_TEXT?this.setEnd(a,a.getLength()):this.setEnd(a,a.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setEndBefore(a);break;case CKEDITOR.POSITION_AFTER_END:this.setEndAfter(a)}c(this)},fixBlock:function(a,b){var c=this.createBookmark(),d=this.document.createElement(b);this.collapse(a);this.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS);this.extractContents().appendTo(d);
-d.trim();d.appendBogus();this.insertNode(d);this.moveToBookmark(c);return d},splitBlock:function(a){var b=new CKEDITOR.dom.elementPath(this.startContainer,this.root),c=new CKEDITOR.dom.elementPath(this.endContainer,this.root),d=b.block,f=c.block,e=null;if(!b.blockLimit.equals(c.blockLimit))return null;if(a!="br"){if(!d){d=this.fixBlock(true,a);f=(new CKEDITOR.dom.elementPath(this.endContainer,this.root)).block}f||(f=this.fixBlock(false,a))}a=d&&this.checkStartOfBlock();b=f&&this.checkEndOfBlock();
-this.deleteContents();if(d&&d.equals(f))if(b){e=new CKEDITOR.dom.elementPath(this.startContainer,this.root);this.moveToPosition(f,CKEDITOR.POSITION_AFTER_END);f=null}else if(a){e=new CKEDITOR.dom.elementPath(this.startContainer,this.root);this.moveToPosition(d,CKEDITOR.POSITION_BEFORE_START);d=null}else{f=this.splitElement(d);d.is("ul","ol")||d.appendBogus()}return{previousBlock:d,nextBlock:f,wasStartOfBlock:a,wasEndOfBlock:b,elementPath:e}},splitElement:function(a){if(!this.collapsed)return null;
-this.setEndAt(a,CKEDITOR.POSITION_BEFORE_END);var b=this.extractContents(),c=a.clone(false);b.appendTo(c);c.insertAfter(a);this.moveToPosition(a,CKEDITOR.POSITION_AFTER_END);return c},removeEmptyBlocksAtEnd:function(){function a(d){return function(a){return b(a)||(c(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.isEmptyInlineRemoveable())||d.is("table")&&a.is("caption")?false:true}}var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(false);return function(b){for(var c=this.createBookmark(),
-d=this[b?"endPath":"startPath"](),f=d.block||d.blockLimit,e;f&&!f.equals(d.root)&&!f.getFirst(a(f));){e=f.getParent();this[b?"setEndAt":"setStartAt"](f,CKEDITOR.POSITION_AFTER_END);f.remove(1);f=e}this.moveToBookmark(c)}}(),startPath:function(){return new CKEDITOR.dom.elementPath(this.startContainer,this.root)},endPath:function(){return new CKEDITOR.dom.elementPath(this.endContainer,this.root)},checkBoundaryOfElement:function(a,b){var c=b==CKEDITOR.START,d=this.clone();d.collapse(c);d[c?"setStartAt":
-"setEndAt"](a,c?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END);d=new CKEDITOR.dom.walker(d);d.evaluator=e(c);return d[c?"checkBackward":"checkForward"]()},checkStartOfBlock:function(){var b=this.startContainer,c=this.startOffset;if(CKEDITOR.env.ie&&c&&b.type==CKEDITOR.NODE_TEXT){b=CKEDITOR.tools.ltrim(b.substring(0,c));h.test(b)&&this.trim(0,1)}this.trim();b=new CKEDITOR.dom.elementPath(this.startContainer,this.root);c=this.clone();c.collapse(true);c.setStartAt(b.block||b.blockLimit,
-CKEDITOR.POSITION_AFTER_START);b=new CKEDITOR.dom.walker(c);b.evaluator=a();return b.checkBackward()},checkEndOfBlock:function(){var b=this.endContainer,c=this.endOffset;if(CKEDITOR.env.ie&&b.type==CKEDITOR.NODE_TEXT){b=CKEDITOR.tools.rtrim(b.substring(c));h.test(b)&&this.trim(1,0)}this.trim();b=new CKEDITOR.dom.elementPath(this.endContainer,this.root);c=this.clone();c.collapse(false);c.setEndAt(b.block||b.blockLimit,CKEDITOR.POSITION_BEFORE_END);b=new CKEDITOR.dom.walker(c);b.evaluator=a();return b.checkForward()},
-getPreviousNode:function(a,b,c){var d=this.clone();d.collapse(1);d.setStartAt(c||this.root,CKEDITOR.POSITION_AFTER_START);c=new CKEDITOR.dom.walker(d);c.evaluator=a;c.guard=b;return c.previous()},getNextNode:function(a,b,c){var d=this.clone();d.collapse();d.setEndAt(c||this.root,CKEDITOR.POSITION_BEFORE_END);c=new CKEDITOR.dom.walker(d);c.evaluator=a;c.guard=b;return c.next()},checkReadOnly:function(){function a(b,c){for(;b;){if(b.type==CKEDITOR.NODE_ELEMENT){if(b.getAttribute("contentEditable")==
-"false"&&!b.data("cke-editable"))return 0;if(b.is("html")||b.getAttribute("contentEditable")=="true"&&(b.contains(c)||b.equals(c)))break}b=b.getParent()}return 1}return function(){var b=this.startContainer,c=this.endContainer;return!(a(b,c)&&a(c,b))}}(),moveToElementEditablePosition:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&!a.isEditable(false)){this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START);return true}for(var c=0;a;){if(a.type==CKEDITOR.NODE_TEXT){b&&this.endContainer&&
-this.checkEndOfBlock()&&h.test(a.getText())?this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START):this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START);c=1;break}if(a.type==CKEDITOR.NODE_ELEMENT)if(a.isEditable()){this.moveToPosition(a,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_START);c=1}else if(b&&a.is("br")&&this.endContainer&&this.checkEndOfBlock())this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START);else if(a.getAttribute("contenteditable")=="false"&&
-a.is(CKEDITOR.dtd.$block)){this.setStartBefore(a);this.setEndAfter(a);return true}var d=a,f=c,e=void 0;d.type==CKEDITOR.NODE_ELEMENT&&d.isEditable(false)&&(e=d[b?"getLast":"getFirst"](j));!f&&!e&&(e=d[b?"getPrevious":"getNext"](j));a=e}return!!c},moveToClosestEditablePosition:function(a,b){var c=new CKEDITOR.dom.range(this.root),d=0,f,e=[CKEDITOR.POSITION_AFTER_END,CKEDITOR.POSITION_BEFORE_START];c.moveToPosition(a,e[b?0:1]);if(a.is(CKEDITOR.dtd.$block)){if(f=c[b?"getNextEditableNode":"getPreviousEditableNode"]()){d=
-1;if(f.type==CKEDITOR.NODE_ELEMENT&&f.is(CKEDITOR.dtd.$block)&&f.getAttribute("contenteditable")=="false"){c.setStartAt(f,CKEDITOR.POSITION_BEFORE_START);c.setEndAt(f,CKEDITOR.POSITION_AFTER_END)}else c.moveToPosition(f,e[b?1:0])}}else d=1;d&&this.moveToRange(c);return!!d},moveToElementEditStart:function(a){return this.moveToElementEditablePosition(a)},moveToElementEditEnd:function(a){return this.moveToElementEditablePosition(a,true)},getEnclosedNode:function(){var a=this.clone();a.optimize();if(a.startContainer.type!=
-CKEDITOR.NODE_ELEMENT||a.endContainer.type!=CKEDITOR.NODE_ELEMENT)return null;var a=new CKEDITOR.dom.walker(a),b=CKEDITOR.dom.walker.bookmark(false,true),c=CKEDITOR.dom.walker.whitespaces(true);a.evaluator=function(a){return c(a)&&b(a)};var d=a.next();a.reset();return d&&d.equals(a.previous())?d:null},getTouchedStartNode:function(){var a=this.startContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.startOffset)||a},getTouchedEndNode:function(){var a=this.endContainer;
-return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.endOffset-1)||a},getNextEditableNode:b(),getPreviousEditableNode:b(1),scrollIntoView:function(){var a=new CKEDITOR.dom.element.createFromHtml("<span>&nbsp;</span>",this.document),b,c,d,f=this.clone();f.optimize();if(d=f.startContainer.type==CKEDITOR.NODE_TEXT){c=f.startContainer.getText();b=f.startContainer.split(f.startOffset);a.insertAfter(f.startContainer)}else f.insertNode(a);a.scrollIntoView();if(d){f.startContainer.setText(c);
-b.remove()}a.remove()}}})();CKEDITOR.POSITION_AFTER_START=1;CKEDITOR.POSITION_BEFORE_END=2;CKEDITOR.POSITION_BEFORE_START=3;CKEDITOR.POSITION_AFTER_END=4;CKEDITOR.ENLARGE_ELEMENT=1;CKEDITOR.ENLARGE_BLOCK_CONTENTS=2;CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS=3;CKEDITOR.ENLARGE_INLINE=4;CKEDITOR.START=1;CKEDITOR.END=2;CKEDITOR.SHRINK_ELEMENT=1;CKEDITOR.SHRINK_TEXT=2;"use strict";
-(function(){function a(a){if(!(arguments.length<1)){this.range=a;this.forceBrBreak=0;this.enlargeBr=1;this.enforceRealBlocks=0;this._||(this._={})}}function e(a,b,c){for(a=a.getNextSourceNode(b,null,c);!g(a);)a=a.getNextSourceNode(b,null,c);return a}function b(a){var b=[];a.forEach(function(a){if(a.getAttribute("contenteditable")=="true"){b.push(a);return false}},CKEDITOR.NODE_ELEMENT,true);return b}function c(a,d,f,e){a:{e==null&&(e=b(f));for(var g;g=e.shift();)if(g.getDtd().p){e={element:g,remaining:e};
-break a}e=null}if(!e)return 0;if((g=CKEDITOR.filter.instances[e.element.data("cke-filter")])&&!g.check(d))return c(a,d,f,e.remaining);d=new CKEDITOR.dom.range(e.element);d.selectNodeContents(e.element);d=d.createIterator();d.enlargeBr=a.enlargeBr;d.enforceRealBlocks=a.enforceRealBlocks;d.activeFilter=d.filter=g;a._.nestedEditable={element:e.element,container:f,remaining:e.remaining,iterator:d};return 1}function f(a,b,c){if(!b)return false;a=a.clone();a.collapse(!c);return a.checkBoundaryOfElement(b,
-c?CKEDITOR.START:CKEDITOR.END)}var d=/^[\r\n\t ]+$/,g=CKEDITOR.dom.walker.bookmark(false,true),h=CKEDITOR.dom.walker.whitespaces(true),m=function(a){return g(a)&&h(a)},j={dd:1,dt:1,li:1};a.prototype={getNextParagraph:function(a){var b,h,y,n,w,a=a||"p";if(this._.nestedEditable){if(b=this._.nestedEditable.iterator.getNextParagraph(a)){this.activeFilter=this._.nestedEditable.iterator.activeFilter;return b}this.activeFilter=this.filter;if(c(this,a,this._.nestedEditable.container,this._.nestedEditable.remaining)){this.activeFilter=
-this._.nestedEditable.iterator.activeFilter;return this._.nestedEditable.iterator.getNextParagraph(a)}this._.nestedEditable=null}if(!this.range.root.getDtd()[a])return null;if(!this._.started){var o=this.range.clone();h=o.startPath();var r=o.endPath(),i=!o.collapsed&&f(o,h.block),k=!o.collapsed&&f(o,r.block,1);o.shrink(CKEDITOR.SHRINK_ELEMENT,true);i&&o.setStartAt(h.block,CKEDITOR.POSITION_BEFORE_END);k&&o.setEndAt(r.block,CKEDITOR.POSITION_AFTER_START);h=o.endContainer.hasAscendant("pre",true)||
-o.startContainer.hasAscendant("pre",true);o.enlarge(this.forceBrBreak&&!h||!this.enlargeBr?CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:CKEDITOR.ENLARGE_BLOCK_CONTENTS);if(!o.collapsed){h=new CKEDITOR.dom.walker(o.clone());r=CKEDITOR.dom.walker.bookmark(true,true);h.evaluator=r;this._.nextNode=h.next();h=new CKEDITOR.dom.walker(o.clone());h.evaluator=r;h=h.previous();this._.lastNode=h.getNextSourceNode(true);if(this._.lastNode&&this._.lastNode.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(this._.lastNode.getText())&&
-this._.lastNode.getParent().isBlockBoundary()){r=this.range.clone();r.moveToPosition(this._.lastNode,CKEDITOR.POSITION_AFTER_END);if(r.checkEndOfBlock()){r=new CKEDITOR.dom.elementPath(r.endContainer,r.root);this._.lastNode=(r.block||r.blockLimit).getNextSourceNode(true)}}if(!this._.lastNode||!o.root.contains(this._.lastNode)){this._.lastNode=this._.docEndMarker=o.document.createText("");this._.lastNode.insertAfter(h)}o=null}this._.started=1;h=o}r=this._.nextNode;o=this._.lastNode;for(this._.nextNode=
-null;r;){var i=0,k=r.hasAscendant("pre"),l=r.type!=CKEDITOR.NODE_ELEMENT,q=0;if(l)r.type==CKEDITOR.NODE_TEXT&&d.test(r.getText())&&(l=0);else{var x=r.getName();if(CKEDITOR.dtd.$block[x]&&r.getAttribute("contenteditable")=="false"){b=r;c(this,a,b);break}else if(r.isBlockBoundary(this.forceBrBreak&&!k&&{br:1})){if(x=="br")l=1;else if(!h&&!r.getChildCount()&&x!="hr"){b=r;y=r.equals(o);break}if(h){h.setEndAt(r,CKEDITOR.POSITION_BEFORE_START);if(x!="br")this._.nextNode=r}i=1}else{if(r.getFirst()){if(!h){h=
-this.range.clone();h.setStartAt(r,CKEDITOR.POSITION_BEFORE_START)}r=r.getFirst();continue}l=1}}if(l&&!h){h=this.range.clone();h.setStartAt(r,CKEDITOR.POSITION_BEFORE_START)}y=(!i||l)&&r.equals(o);if(h&&!i)for(;!r.getNext(m)&&!y;){x=r.getParent();if(x.isBlockBoundary(this.forceBrBreak&&!k&&{br:1})){i=1;l=0;y||x.equals(o);h.setEndAt(x,CKEDITOR.POSITION_BEFORE_END);break}r=x;l=1;y=r.equals(o);q=1}l&&h.setEndAt(r,CKEDITOR.POSITION_AFTER_END);r=e(r,q,o);if((y=!r)||i&&h)break}if(!b){if(!h){this._.docEndMarker&&
-this._.docEndMarker.remove();return this._.nextNode=null}b=new CKEDITOR.dom.elementPath(h.startContainer,h.root);r=b.blockLimit;i={div:1,th:1,td:1};b=b.block;if(!b&&r&&!this.enforceRealBlocks&&i[r.getName()]&&h.checkStartOfBlock()&&h.checkEndOfBlock()&&!r.equals(h.root))b=r;else if(!b||this.enforceRealBlocks&&b.is(j)){b=this.range.document.createElement(a);h.extractContents().appendTo(b);b.trim();h.insertNode(b);n=w=true}else if(b.getName()!="li"){if(!h.checkStartOfBlock()||!h.checkEndOfBlock()){b=
-b.clone(false);h.extractContents().appendTo(b);b.trim();w=h.splitBlock();n=!w.wasStartOfBlock;w=!w.wasEndOfBlock;h.insertNode(b)}}else if(!y)this._.nextNode=b.equals(o)?null:e(h.getBoundaryNodes().endNode,1,o)}if(n)(n=b.getPrevious())&&n.type==CKEDITOR.NODE_ELEMENT&&(n.getName()=="br"?n.remove():n.getLast()&&n.getLast().$.nodeName.toLowerCase()=="br"&&n.getLast().remove());if(w)(n=b.getLast())&&n.type==CKEDITOR.NODE_ELEMENT&&n.getName()=="br"&&(!CKEDITOR.env.needsBrFiller||n.getPrevious(g)||n.getNext(g))&&
-n.remove();if(!this._.nextNode)this._.nextNode=y||b.equals(o)||!o?null:e(b,1,o);return b}};CKEDITOR.dom.range.prototype.createIterator=function(){return new a(this)}})();
-CKEDITOR.command=function(a,e){this.uiItems=[];this.exec=function(b){if(this.state==CKEDITOR.TRISTATE_DISABLED||!this.checkAllowed())return false;this.editorFocus&&a.focus();return this.fire("exec")===false?true:e.exec.call(this,a,b)!==false};this.refresh=function(a,b){if(!this.readOnly&&a.readOnly)return true;if(this.context&&!b.isContextFor(this.context)){this.disable();return true}if(!this.checkAllowed(true)){this.disable();return true}this.startDisabled||this.enable();this.modes&&!this.modes[a.mode]&&
-this.disable();return this.fire("refresh",{editor:a,path:b})===false?true:e.refresh&&e.refresh.apply(this,arguments)!==false};var b;this.checkAllowed=function(c){return!c&&typeof b=="boolean"?b:b=a.activeFilter.checkFeature(this)};CKEDITOR.tools.extend(this,e,{modes:{wysiwyg:1},editorFocus:1,contextSensitive:!!e.context,state:CKEDITOR.TRISTATE_DISABLED});CKEDITOR.event.call(this)};
-CKEDITOR.command.prototype={enable:function(){this.state==CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()&&this.setState(!this.preserveState||typeof this.previousState=="undefined"?CKEDITOR.TRISTATE_OFF:this.previousState)},disable:function(){this.setState(CKEDITOR.TRISTATE_DISABLED)},setState:function(a){if(this.state==a||a!=CKEDITOR.TRISTATE_DISABLED&&!this.checkAllowed())return false;this.previousState=this.state;this.state=a;this.fire("state");return true},toggleState:function(){this.state==CKEDITOR.TRISTATE_OFF?
-this.setState(CKEDITOR.TRISTATE_ON):this.state==CKEDITOR.TRISTATE_ON&&this.setState(CKEDITOR.TRISTATE_OFF)}};CKEDITOR.event.implementOn(CKEDITOR.command.prototype);CKEDITOR.ENTER_P=1;CKEDITOR.ENTER_BR=2;CKEDITOR.ENTER_DIV=3;
-CKEDITOR.config={customConfig:"config.js",autoUpdateElement:!0,language:"",defaultLanguage:"en",contentsLangDirection:"",enterMode:CKEDITOR.ENTER_P,forceEnterMode:!1,shiftEnterMode:CKEDITOR.ENTER_BR,docType:"<!DOCTYPE html>",bodyId:"",bodyClass:"",fullPage:!1,height:200,extraPlugins:"",removePlugins:"",protectedSource:[],tabIndex:0,width:"",baseFloatZIndex:1E4,blockedKeystrokes:[CKEDITOR.CTRL+66,CKEDITOR.CTRL+73,CKEDITOR.CTRL+85]};
-(function(){function a(a,b,c,d,f){var e,i,a=[];for(e in b){i=b[e];i=typeof i=="boolean"?{}:typeof i=="function"?{match:i}:Q(i);if(e.charAt(0)!="$")i.elements=e;if(c)i.featureName=c.toLowerCase();var q=i;q.elements=g(q.elements,/\s+/)||null;q.propertiesOnly=q.propertiesOnly||q.elements===true;var o=/\s*,\s*/,k=void 0;for(k in v){q[k]=g(q[k],o)||null;var l=q,B=z[k],s=g(q[z[k]],o),n=q[k],x=[],A=true,h=void 0;s?A=false:s={};for(h in n)if(h.charAt(0)=="!"){h=h.slice(1);x.push(h);s[h]=true;A=false}for(;h=
-x.pop();){n[h]=n["!"+h];delete n["!"+h]}l[B]=(A?false:s)||null}q.match=q.match||null;d.push(i);a.push(i)}for(var b=f.elements,f=f.generic,D,c=0,d=a.length;c<d;++c){e=Q(a[c]);i=e.classes===true||e.styles===true||e.attributes===true;q=e;k=B=o=void 0;for(o in v)q[o]=r(q[o]);l=true;for(k in z){o=z[k];B=q[o];s=[];n=void 0;for(n in B)n.indexOf("*")>-1?s.push(RegExp("^"+n.replace(/\*/g,".*")+"$")):s.push(n);B=s;if(B.length){q[o]=B;l=false}}q.nothingRequired=l;q.noProperties=!(q.attributes||q.classes||q.styles);
-if(e.elements===true||e.elements===null)f[i?"unshift":"push"](e);else{q=e.elements;delete e.elements;for(D in q)if(b[D])b[D][i?"unshift":"push"](e);else b[D]=[e]}}}function e(a,c,d,f){if(!a.match||a.match(c))if(f||h(a,c)){if(!a.propertiesOnly)d.valid=true;if(!d.allAttributes)d.allAttributes=b(a.attributes,c.attributes,d.validAttributes);if(!d.allStyles)d.allStyles=b(a.styles,c.styles,d.validStyles);if(!d.allClasses){a=a.classes;c=c.classes;f=d.validClasses;if(a)if(a===true)a=true;else{for(var e=0,
-i=c.length,q;e<i;++e){q=c[e];f[q]||(f[q]=a(q))}a=false}else a=false;d.allClasses=a}}}function b(a,b,c){if(!a)return false;if(a===true)return true;for(var d in b)c[d]||(c[d]=a(d));return false}function c(a,b,c){if(!a.match||a.match(b)){if(a.noProperties)return false;c.hadInvalidAttribute=f(a.attributes,b.attributes)||c.hadInvalidAttribute;c.hadInvalidStyle=f(a.styles,b.styles)||c.hadInvalidStyle;a=a.classes;b=b.classes;if(a){for(var d=false,e=a===true,i=b.length;i--;)if(e||a(b[i])){b.splice(i,1);d=
-true}a=d}else a=false;c.hadInvalidClass=a||c.hadInvalidClass}}function f(a,b){if(!a)return false;var c=false,d=a===true,f;for(f in b)if(d||a(f)){delete b[f];c=true}return c}function d(a,b,c){if(a.disabled||a.customConfig&&!c||!b)return false;a._.cachedChecks={};return true}function g(a,b){if(!a)return false;if(a===true)return a;if(typeof a=="string"){a=J(a);return a=="*"?true:CKEDITOR.tools.convertArrayToObject(a.split(b))}if(CKEDITOR.tools.isArray(a))return a.length?CKEDITOR.tools.convertArrayToObject(a):
-false;var c={},d=0,f;for(f in a){c[f]=a[f];d++}return d?c:false}function h(a,b){if(a.nothingRequired)return true;var c,d,f,e;if(f=a.requiredClasses){e=b.classes;for(c=0;c<f.length;++c){d=f[c];if(typeof d=="string"){if(CKEDITOR.tools.indexOf(e,d)==-1)return false}else if(!CKEDITOR.tools.checkIfAnyArrayItemMatches(e,d))return false}}return m(b.styles,a.requiredStyles)&&m(b.attributes,a.requiredAttributes)}function m(a,b){if(!b)return true;for(var c=0,d;c<b.length;++c){d=b[c];if(typeof d=="string"){if(!(d in
-a))return false}else if(!CKEDITOR.tools.checkIfAnyObjectPropertyMatches(a,d))return false}return true}function j(a){if(!a)return{};for(var a=a.split(/\s*,\s*/).sort(),b={};a.length;)b[a.shift()]=A;return b}function p(a){for(var b,c,d,f,e={},i=1,a=J(a);b=a.match(B);){if(c=b[2]){d=u(c,"styles");f=u(c,"attrs");c=u(c,"classes")}else d=f=c=null;e["$"+i++]={elements:b[1],classes:c,styles:d,attributes:f};a=a.slice(b[0].length)}return e}function u(a,b){var c=a.match(D[b]);return c?J(c[1]):null}function t(a){var b=
-a.styleBackup=a.attributes.style,c=a.classBackup=a.attributes["class"];if(!a.styles)a.styles=CKEDITOR.tools.parseCssText(b||"",1);if(!a.classes)a.classes=c?c.split(/\s+/):[]}function y(a,b,d,f){var i=0,k;if(f.toHtml)b.name=b.name.replace(G,"$1");if(f.doCallbacks&&a.elementCallbacks){a:for(var l=a.elementCallbacks,B=0,s=l.length,g;B<s;++B)if(g=l[B](b)){k=g;break a}if(k)return k}if(f.doTransform)if(k=a._.transformations[b.name]){t(b);for(l=0;l<k.length;++l)q(a,b,k[l]);w(b)}if(f.doFilter){a:{l=b.name;
-B=a._;a=B.allowedRules.elements[l];k=B.allowedRules.generic;l=B.disallowedRules.elements[l];B=B.disallowedRules.generic;s=f.skipRequired;g={valid:false,validAttributes:{},validClasses:{},validStyles:{},allAttributes:false,allClasses:false,allStyles:false,hadInvalidAttribute:false,hadInvalidClass:false,hadInvalidStyle:false};var n,r;if(!a&&!k)a=null;else{t(b);if(l){n=0;for(r=l.length;n<r;++n)if(c(l[n],b,g)===false){a=null;break a}}if(B){n=0;for(r=B.length;n<r;++n)c(B[n],b,g)}if(a){n=0;for(r=a.length;n<
-r;++n)e(a[n],b,g,s)}if(k){n=0;for(r=k.length;n<r;++n)e(k[n],b,g,s)}a=g}}if(!a){d.push(b);return F}if(!a.valid){d.push(b);return F}r=a.validAttributes;var x=a.validStyles;k=a.validClasses;var l=b.attributes,A=b.styles,B=b.classes,s=b.classBackup,z=b.styleBackup,v,h,D=[];g=[];var j=/^data-cke-/;n=false;delete l.style;delete l["class"];delete b.classBackup;delete b.styleBackup;if(!a.allAttributes)for(v in l)if(!r[v])if(j.test(v)){if(v!=(h=v.replace(/^data-cke-saved-/,""))&&!r[h]){delete l[v];n=true}}else{delete l[v];
-n=true}if(!a.allStyles||a.hadInvalidStyle){for(v in A)a.allStyles||x[v]?D.push(v+":"+A[v]):n=true;if(D.length)l.style=D.sort().join("; ")}else if(z)l.style=z;if(!a.allClasses||a.hadInvalidClass){for(v=0;v<B.length;++v)(a.allClasses||k[B[v]])&&g.push(B[v]);g.length&&(l["class"]=g.sort().join(" "));s&&g.length<s.split(/\s+/).length&&(n=true)}else s&&(l["class"]=s);n&&(i=F);if(!f.skipFinalValidation&&!o(b)){d.push(b);return F}}if(f.toHtml)b.name=b.name.replace(aa,"cke:$1");return i}function n(a){var b=
-[],c;for(c in a)c.indexOf("*")>-1&&b.push(c.replace(/\*/g,".*"));return b.length?RegExp("^(?:"+b.join("|")+")$"):null}function w(a){var b=a.attributes,c;delete b.style;delete b["class"];if(c=CKEDITOR.tools.writeCssText(a.styles,true))b.style=c;a.classes.length&&(b["class"]=a.classes.sort().join(" "))}function o(a){switch(a.name){case "a":if(!a.children.length&&!a.attributes.name)return false;break;case "img":if(!a.attributes.src)return false}return true}function r(a){if(!a)return false;if(a===true)return true;
-var b=n(a);return function(c){return c in a||b&&c.match(b)}}function i(){return new CKEDITOR.htmlParser.element("br")}function k(a){return a.type==CKEDITOR.NODE_ELEMENT&&(a.name=="br"||N.$block[a.name])}function l(a,b,c){var d=a.name;if(N.$empty[d]||!a.children.length)if(d=="hr"&&b=="br")a.replaceWith(i());else{a.parent&&c.push({check:"it",el:a.parent});a.remove()}else if(N.$block[d]||d=="tr")if(b=="br"){if(a.previous&&!k(a.previous)){b=i();b.insertBefore(a)}if(a.next&&!k(a.next)){b=i();b.insertAfter(a)}a.replaceWithChildren()}else{var d=
-a.children,f;b:{f=N[b];for(var e=0,q=d.length,o;e<q;++e){o=d[e];if(o.type==CKEDITOR.NODE_ELEMENT&&!f[o.name]){f=false;break b}}f=true}if(f){a.name=b;a.attributes={};c.push({check:"parent-down",el:a})}else{f=a.parent;for(var e=f.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||f.name=="body",l,q=d.length;q>0;){o=d[--q];if(e&&(o.type==CKEDITOR.NODE_TEXT||o.type==CKEDITOR.NODE_ELEMENT&&N.$inline[o.name])){if(!l){l=new CKEDITOR.htmlParser.element(b);l.insertAfter(a);c.push({check:"parent-down",el:l})}l.add(o,0)}else{l=
-null;o.insertAfter(a);f.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(o.type==CKEDITOR.NODE_ELEMENT&&!N[f.name][o.name])&&c.push({check:"el-up",el:o})}}a.remove()}}else if(d=="style")a.remove();else{a.parent&&c.push({check:"it",el:a.parent});a.replaceWithChildren()}}function q(a,b,c){var d,f;for(d=0;d<c.length;++d){f=c[d];if((!f.check||a.check(f.check,false))&&(!f.left||f.left(b))){f.right(b,ba);break}}}function x(a,b){var c=b.getDefinition(),d=c.attributes,f=c.styles,e,i,q,o;if(a.name!=c.element)return false;
-for(e in d)if(e=="class"){c=d[e].split(/\s+/);for(q=a.classes.join("|");o=c.pop();)if(q.indexOf(o)==-1)return false}else if(a.attributes[e]!=d[e])return false;for(i in f)if(a.styles[i]!=f[i])return false;return true}function s(a,b){var c,d;if(typeof a=="string")c=a;else if(a instanceof CKEDITOR.style)d=a;else{c=a[0];d=a[1]}return[{element:c,left:d,right:function(a,c){c.transform(a,b)}}]}function M(a){return function(b){return x(b,a)}}function R(a){return function(b,c){c[a](b)}}var N=CKEDITOR.dtd,
-F=1,Q=CKEDITOR.tools.copy,J=CKEDITOR.tools.trim,A="cke-test",E=["","p","br","div"];CKEDITOR.FILTER_SKIP_TREE=2;CKEDITOR.filter=function(a){this.allowedContent=[];this.disallowedContent=[];this.elementCallbacks=null;this.disabled=false;this.editor=null;this.id=CKEDITOR.tools.getNextNumber();this._={allowedRules:{elements:{},generic:[]},disallowedRules:{elements:{},generic:[]},transformations:{},cachedTests:{}};CKEDITOR.filter.instances[this.id]=this;if(a instanceof CKEDITOR.editor){a=this.editor=a;
-this.customConfig=true;var b=a.config.allowedContent;if(b===true)this.disabled=true;else{if(!b)this.customConfig=false;this.allow(b,"config",1);this.allow(a.config.extraAllowedContent,"extra",1);this.allow(E[a.enterMode]+" "+E[a.shiftEnterMode],"default",1);this.disallow(a.config.disallowedContent)}}else{this.customConfig=false;this.allow(a,"default",1)}};CKEDITOR.filter.instances={};CKEDITOR.filter.prototype={allow:function(b,c,f){if(!d(this,b,f))return false;var e,i;if(typeof b=="string")b=p(b);
-else if(b instanceof CKEDITOR.style){if(b.toAllowedContentRules)return this.allow(b.toAllowedContentRules(this.editor),c,f);e=b.getDefinition();b={};f=e.attributes;b[e.element]=e={styles:e.styles,requiredStyles:e.styles&&CKEDITOR.tools.objectKeys(e.styles)};if(f){f=Q(f);e.classes=f["class"]?f["class"].split(/\s+/):null;e.requiredClasses=e.classes;delete f["class"];e.attributes=f;e.requiredAttributes=f&&CKEDITOR.tools.objectKeys(f)}}else if(CKEDITOR.tools.isArray(b)){for(e=0;e<b.length;++e)i=this.allow(b[e],
-c,f);return i}a(this,b,c,this.allowedContent,this._.allowedRules);return true},applyTo:function(a,b,c,d){if(this.disabled)return false;var f=this,e=[],i=this.editor&&this.editor.config.protectedSource,q,k=false,B={doFilter:!c,doTransform:true,doCallbacks:true,toHtml:b};a.forEach(function(a){if(a.type==CKEDITOR.NODE_ELEMENT){if(a.attributes["data-cke-filter"]=="off")return false;if(!b||!(a.name=="span"&&~CKEDITOR.tools.objectKeys(a.attributes).join("|").indexOf("data-cke-"))){q=y(f,a,e,B);if(q&F)k=
-true;else if(q&2)return false}}else if(a.type==CKEDITOR.NODE_COMMENT&&a.value.match(/^\{cke_protected\}(?!\{C\})/)){var c;a:{var d=decodeURIComponent(a.value.replace(/^\{cke_protected\}/,""));c=[];var o,l,n;if(i)for(l=0;l<i.length;++l)if((n=d.match(i[l]))&&n[0].length==d.length){c=true;break a}d=CKEDITOR.htmlParser.fragment.fromHtml(d);d.children.length==1&&(o=d.children[0]).type==CKEDITOR.NODE_ELEMENT&&y(f,o,c,B);c=!c.length}c||e.push(a)}},null,true);e.length&&(k=true);for(var n,a=[],d=E[d||(this.editor?
-this.editor.enterMode:CKEDITOR.ENTER_P)];c=e.pop();)c.type==CKEDITOR.NODE_ELEMENT?l(c,d,a):c.remove();for(;n=a.pop();){c=n.el;if(c.parent)switch(n.check){case "it":N.$removeEmpty[c.name]&&!c.children.length?l(c,d,a):o(c)||l(c,d,a);break;case "el-up":c.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&!N[c.parent.name][c.name]&&l(c,d,a);break;case "parent-down":c.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT&&!N[c.parent.name][c.name]&&l(c.parent,d,a)}}return k},checkFeature:function(a){if(this.disabled||
-!a)return true;a.toFeature&&(a=a.toFeature(this.editor));return!a.requiredContent||this.check(a.requiredContent)},disable:function(){this.disabled=true},disallow:function(b){if(!d(this,b,true))return false;typeof b=="string"&&(b=p(b));a(this,b,null,this.disallowedContent,this._.disallowedRules);return true},addContentForms:function(a){if(!this.disabled&&a){var b,c,d=[],f;for(b=0;b<a.length&&!f;++b){c=a[b];if((typeof c=="string"||c instanceof CKEDITOR.style)&&this.check(c))f=c}if(f){for(b=0;b<a.length;++b)d.push(s(a[b],
-f));this.addTransformations(d)}}},addElementCallback:function(a){if(!this.elementCallbacks)this.elementCallbacks=[];this.elementCallbacks.push(a)},addFeature:function(a){if(this.disabled||!a)return true;a.toFeature&&(a=a.toFeature(this.editor));this.allow(a.allowedContent,a.name);this.addTransformations(a.contentTransformations);this.addContentForms(a.contentForms);return a.requiredContent&&(this.customConfig||this.disallowedContent.length)?this.check(a.requiredContent):true},addTransformations:function(a){var b,
-c;if(!this.disabled&&a){var d=this._.transformations,f;for(f=0;f<a.length;++f){b=a[f];var e=void 0,i=void 0,q=void 0,o=void 0,l=void 0,k=void 0;c=[];for(i=0;i<b.length;++i){q=b[i];if(typeof q=="string"){q=q.split(/\s*:\s*/);o=q[0];l=null;k=q[1]}else{o=q.check;l=q.left;k=q.right}if(!e){e=q;e=e.element?e.element:o?o.match(/^([a-z0-9]+)/i)[0]:e.left.getDefinition().element}l instanceof CKEDITOR.style&&(l=M(l));c.push({check:o==e?null:o,left:l,right:typeof k=="string"?R(k):k})}b=e;d[b]||(d[b]=[]);d[b].push(c)}}},
-check:function(a,b,c){if(this.disabled)return true;if(CKEDITOR.tools.isArray(a)){for(var d=a.length;d--;)if(this.check(a[d],b,c))return true;return false}var f,e;if(typeof a=="string"){e=a+"<"+(b===false?"0":"1")+(c?"1":"0")+">";if(e in this._.cachedChecks)return this._.cachedChecks[e];d=p(a).$1;f=d.styles;var i=d.classes;d.name=d.elements;d.classes=i=i?i.split(/\s*,\s*/):[];d.styles=j(f);d.attributes=j(d.attributes);d.children=[];i.length&&(d.attributes["class"]=i.join(" "));if(f)d.attributes.style=
-CKEDITOR.tools.writeCssText(d.styles);f=d}else{d=a.getDefinition();f=d.styles;i=d.attributes||{};if(f){f=Q(f);i.style=CKEDITOR.tools.writeCssText(f,true)}else f={};f={name:d.element,attributes:i,classes:i["class"]?i["class"].split(/\s+/):[],styles:f,children:[]}}var i=CKEDITOR.tools.clone(f),o=[],l;if(b!==false&&(l=this._.transformations[f.name])){for(d=0;d<l.length;++d)q(this,f,l[d]);w(f)}y(this,i,o,{doFilter:true,doTransform:b!==false,skipRequired:!c,skipFinalValidation:!c});b=o.length>0?false:
-CKEDITOR.tools.objectCompare(f.attributes,i.attributes,true)?true:false;typeof a=="string"&&(this._.cachedChecks[e]=b);return b},getAllowedEnterMode:function(){var a=["p","div","br"],b={p:CKEDITOR.ENTER_P,div:CKEDITOR.ENTER_DIV,br:CKEDITOR.ENTER_BR};return function(c,d){var f=a.slice(),e;if(this.check(E[c]))return c;for(d||(f=f.reverse());e=f.pop();)if(this.check(e))return b[e];return CKEDITOR.ENTER_BR}}(),destroy:function(){delete CKEDITOR.filter.instances[this.id];delete this._;delete this.allowedContent;
-delete this.disallowedContent}};var v={styles:1,attributes:1,classes:1},z={styles:"requiredStyles",attributes:"requiredAttributes",classes:"requiredClasses"},B=/^([a-z0-9*\s]+)((?:\s*\{[!\w\-,\s\*]+\}\s*|\s*\[[!\w\-,\s\*]+\]\s*|\s*\([!\w\-,\s\*]+\)\s*){0,3})(?:;\s*|$)/i,D={styles:/{([^}]+)}/,attrs:/\[([^\]]+)\]/,classes:/\(([^\)]+)\)/},G=/^cke:(object|embed|param)$/,aa=/^(object|embed|param)$/,ba=CKEDITOR.filter.transformationsTools={sizeToStyle:function(a){this.lengthToStyle(a,"width");this.lengthToStyle(a,
-"height")},sizeToAttribute:function(a){this.lengthToAttribute(a,"width");this.lengthToAttribute(a,"height")},lengthToStyle:function(a,b,c){c=c||b;if(!(c in a.styles)){var d=a.attributes[b];if(d){/^\d+$/.test(d)&&(d=d+"px");a.styles[c]=d}}delete a.attributes[b]},lengthToAttribute:function(a,b,c){c=c||b;if(!(c in a.attributes)){var d=a.styles[b],f=d&&d.match(/^(\d+)(?:\.\d*)?px$/);f?a.attributes[c]=f[1]:d==A&&(a.attributes[c]=A)}delete a.styles[b]},alignmentToStyle:function(a){if(!("float"in a.styles)){var b=
-a.attributes.align;if(b=="left"||b=="right")a.styles["float"]=b}delete a.attributes.align},alignmentToAttribute:function(a){if(!("align"in a.attributes)){var b=a.styles["float"];if(b=="left"||b=="right")a.attributes.align=b}delete a.styles["float"]},matchesStyle:x,transform:function(a,b){if(typeof b=="string")a.name=b;else{var c=b.getDefinition(),d=c.styles,f=c.attributes,e,i,q,o;a.name=c.element;for(e in f)if(e=="class"){c=a.classes.join("|");for(q=f[e].split(/\s+/);o=q.pop();)c.indexOf(o)==-1&&
-a.classes.push(o)}else a.attributes[e]=f[e];for(i in d)a.styles[i]=d[i]}}}})();
-(function(){CKEDITOR.focusManager=function(a){if(a.focusManager)return a.focusManager;this.hasFocus=false;this.currentActive=null;this._={editor:a};return this};CKEDITOR.focusManager._={blurDelay:200};CKEDITOR.focusManager.prototype={focus:function(a){this._.timer&&clearTimeout(this._.timer);if(a)this.currentActive=a;if(!this.hasFocus&&!this._.locked){(a=CKEDITOR.currentInstance)&&a.focusManager.blur(1);this.hasFocus=true;(a=this._.editor.container)&&a.addClass("cke_focus");this._.editor.fire("focus")}},
-lock:function(){this._.locked=1},unlock:function(){delete this._.locked},blur:function(a){function e(){if(this.hasFocus){this.hasFocus=false;var a=this._.editor.container;a&&a.removeClass("cke_focus");this._.editor.fire("blur")}}if(!this._.locked){this._.timer&&clearTimeout(this._.timer);var b=CKEDITOR.focusManager._.blurDelay;a||!b?e.call(this):this._.timer=CKEDITOR.tools.setTimeout(function(){delete this._.timer;e.call(this)},b,this)}},add:function(a,e){var b=a.getCustomData("focusmanager");if(!b||
-b!=this){b&&b.remove(a);var b="focus",c="blur";if(e)if(CKEDITOR.env.ie){b="focusin";c="focusout"}else CKEDITOR.event.useCapture=1;var f={blur:function(){a.equals(this.currentActive)&&this.blur()},focus:function(){this.focus(a)}};a.on(b,f.focus,this);a.on(c,f.blur,this);if(e)CKEDITOR.event.useCapture=0;a.setCustomData("focusmanager",this);a.setCustomData("focusmanager_handlers",f)}},remove:function(a){a.removeCustomData("focusmanager");var e=a.removeCustomData("focusmanager_handlers");a.removeListener("blur",
-e.blur);a.removeListener("focus",e.focus)}}})();CKEDITOR.keystrokeHandler=function(a){if(a.keystrokeHandler)return a.keystrokeHandler;this.keystrokes={};this.blockedKeystrokes={};this._={editor:a};return this};
-(function(){var a,e=function(b){var b=b.data,f=b.getKeystroke(),d=this.keystrokes[f],e=this._.editor;a=e.fire("key",{keyCode:f,domEvent:b})===false;if(!a){d&&(a=e.execCommand(d,{from:"keystrokeHandler"})!==false);a||(a=!!this.blockedKeystrokes[f])}a&&b.preventDefault(true);return!a},b=function(b){if(a){a=false;b.data.preventDefault(true)}};CKEDITOR.keystrokeHandler.prototype={attach:function(a){a.on("keydown",e,this);if(CKEDITOR.env.gecko&&CKEDITOR.env.mac)a.on("keypress",b,this)}}})();
-(function(){CKEDITOR.lang={languages:{af:1,ar:1,bg:1,bn:1,bs:1,ca:1,cs:1,cy:1,da:1,de:1,el:1,"en-au":1,"en-ca":1,"en-gb":1,en:1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,"fr-ca":1,fr:1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,is:1,it:1,ja:1,ka:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,ms:1,nb:1,nl:1,no:1,pl:1,"pt-br":1,pt:1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,"sr-latn":1,sr:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,"zh-cn":1,zh:1},rtl:{ar:1,fa:1,he:1,ku:1,ug:1},load:function(a,e,b){if(!a||!CKEDITOR.lang.languages[a])a=this.detect(e,
-a);var c=this,e=function(){c[a].dir=c.rtl[a]?"rtl":"ltr";b(a,c[a])};this[a]?e():CKEDITOR.scriptLoader.load(CKEDITOR.getUrl("lang/"+a+".js"),e,this)},detect:function(a,e){var b=this.languages,e=e||navigator.userLanguage||navigator.language||a,c=e.toLowerCase().match(/([a-z]+)(?:-([a-z]+))?/),f=c[1],c=c[2];b[f+"-"+c]?f=f+"-"+c:b[f]||(f=null);CKEDITOR.lang.detect=f?function(){return f}:function(a){return a};return f||a}}})();
-CKEDITOR.scriptLoader=function(){var a={},e={};return{load:function(b,c,f,d){var g=typeof b=="string";g&&(b=[b]);f||(f=CKEDITOR);var h=b.length,m=[],j=[],p=function(a){c&&(g?c.call(f,a):c.call(f,m,j))};if(h===0)p(true);else{var u=function(a,b){(b?m:j).push(a);if(--h<=0){d&&CKEDITOR.document.getDocumentElement().removeStyle("cursor");p(b)}},t=function(b,c){a[b]=1;var d=e[b];delete e[b];for(var f=0;f<d.length;f++)d[f](b,c)},y=function(b){if(a[b])u(b,true);else{var d=e[b]||(e[b]=[]);d.push(u);if(!(d.length>
-1)){var f=new CKEDITOR.dom.element("script");f.setAttributes({type:"text/javascript",src:b});if(c)if(CKEDITOR.env.ie&&CKEDITOR.env.version<11)f.$.onreadystatechange=function(){if(f.$.readyState=="loaded"||f.$.readyState=="complete"){f.$.onreadystatechange=null;t(b,true)}};else{f.$.onload=function(){setTimeout(function(){t(b,true)},0)};f.$.onerror=function(){t(b,false)}}f.appendTo(CKEDITOR.document.getHead())}}};d&&CKEDITOR.document.getDocumentElement().setStyle("cursor","wait");for(var n=0;n<h;n++)y(b[n])}},
-queue:function(){function a(){var b;(b=c[0])&&this.load(b.scriptUrl,b.callback,CKEDITOR,0)}var c=[];return function(f,d){var e=this;c.push({scriptUrl:f,callback:function(){d&&d.apply(this,arguments);c.shift();a.call(e)}});c.length==1&&a.call(this)}}()}}();CKEDITOR.resourceManager=function(a,e){this.basePath=a;this.fileName=e;this.registered={};this.loaded={};this.externals={};this._={waitingList:{}}};
-CKEDITOR.resourceManager.prototype={add:function(a,e){if(this.registered[a])throw'[CKEDITOR.resourceManager.add] The resource name "'+a+'" is already registered.';var b=this.registered[a]=e||{};b.name=a;b.path=this.getPath(a);CKEDITOR.fire(a+CKEDITOR.tools.capitalize(this.fileName)+"Ready",b);return this.get(a)},get:function(a){return this.registered[a]||null},getPath:function(a){var e=this.externals[a];return CKEDITOR.getUrl(e&&e.dir||this.basePath+a+"/")},getFilePath:function(a){var e=this.externals[a];
-return CKEDITOR.getUrl(this.getPath(a)+(e?e.file:this.fileName+".js"))},addExternal:function(a,e,b){for(var a=a.split(","),c=0;c<a.length;c++){var f=a[c];b||(e=e.replace(/[^\/]+$/,function(a){b=a;return""}));this.externals[f]={dir:e,file:b||this.fileName+".js"}}},load:function(a,e,b){CKEDITOR.tools.isArray(a)||(a=a?[a]:[]);for(var c=this.loaded,f=this.registered,d=[],g={},h={},m=0;m<a.length;m++){var j=a[m];if(j)if(!c[j]&&!f[j]){var p=this.getFilePath(j);d.push(p);p in g||(g[p]=[]);g[p].push(j)}else h[j]=
-this.get(j)}CKEDITOR.scriptLoader.load(d,function(a,d){if(d.length)throw'[CKEDITOR.resourceManager.load] Resource name "'+g[d[0]].join(",")+'" was not found at "'+d[0]+'".';for(var f=0;f<a.length;f++)for(var n=g[a[f]],j=0;j<n.length;j++){var o=n[j];h[o]=this.get(o);c[o]=1}e.call(b,h)},this)}};CKEDITOR.plugins=new CKEDITOR.resourceManager("plugins/","plugin");
-CKEDITOR.plugins.load=CKEDITOR.tools.override(CKEDITOR.plugins.load,function(a){var e={};return function(b,c,f){var d={},g=function(b){a.call(this,b,function(a){CKEDITOR.tools.extend(d,a);var b=[],h;for(h in a){var u=a[h],t=u&&u.requires;if(!e[h]){if(u.icons)for(var y=u.icons.split(","),n=y.length;n--;)CKEDITOR.skin.addIcon(y[n],u.path+"icons/"+(CKEDITOR.env.hidpi&&u.hidpi?"hidpi/":"")+y[n]+".png");e[h]=1}if(t){t.split&&(t=t.split(","));for(u=0;u<t.length;u++)d[t[u]]||b.push(t[u])}}if(b.length)g.call(this,
-b);else{for(h in d){u=d[h];if(u.onLoad&&!u.onLoad._called){u.onLoad()===false&&delete d[h];u.onLoad._called=1}}c&&c.call(f||window,d)}},this)};g.call(this,b)}});CKEDITOR.plugins.setLang=function(a,e,b){var c=this.get(a),a=c.langEntries||(c.langEntries={}),c=c.lang||(c.lang=[]);c.split&&(c=c.split(","));CKEDITOR.tools.indexOf(c,e)==-1&&c.push(e);a[e]=b};CKEDITOR.ui=function(a){if(a.ui)return a.ui;this.items={};this.instances={};this.editor=a;this._={handlers:{}};return this};
-CKEDITOR.ui.prototype={add:function(a,e,b){b.name=a.toLowerCase();var c=this.items[a]={type:e,command:b.command||null,args:Array.prototype.slice.call(arguments,2)};CKEDITOR.tools.extend(c,b)},get:function(a){return this.instances[a]},create:function(a){var e=this.items[a],b=e&&this._.handlers[e.type],c=e&&e.command&&this.editor.getCommand(e.command),b=b&&b.create.apply(this,e.args);this.instances[a]=b;c&&c.uiItems.push(b);if(b&&!b.type)b.type=e.type;return b},addHandler:function(a,e){this._.handlers[a]=
-e},space:function(a){return CKEDITOR.document.getById(this.spaceId(a))},spaceId:function(a){return this.editor.id+"_"+a}};CKEDITOR.event.implementOn(CKEDITOR.ui);
-(function(){function a(a,c,d){CKEDITOR.event.call(this);a=a&&CKEDITOR.tools.clone(a);if(c!==void 0){if(c instanceof CKEDITOR.dom.element){if(!d)throw Error("One of the element modes must be specified.");}else throw Error("Expect element of type CKEDITOR.dom.element.");if(CKEDITOR.env.ie&&CKEDITOR.env.quirks&&d==CKEDITOR.ELEMENT_MODE_INLINE)throw Error("Inline element mode is not supported on IE quirks.");if(!(d==CKEDITOR.ELEMENT_MODE_INLINE?c.is(CKEDITOR.dtd.$editable)||c.is("textarea"):d==CKEDITOR.ELEMENT_MODE_REPLACE?
-!c.is(CKEDITOR.dtd.$nonBodyContent):1))throw Error('The specified element mode is not supported on element: "'+c.getName()+'".');this.element=c;this.elementMode=d;this.name=this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO&&(c.getId()||c.getNameAtt())}else this.elementMode=CKEDITOR.ELEMENT_MODE_NONE;this._={};this.commands={};this.templates={};this.name=this.name||e();this.id=CKEDITOR.tools.getNextId();this.status="unloaded";this.config=CKEDITOR.tools.prototypedCopy(CKEDITOR.config);this.ui=new CKEDITOR.ui(this);
-this.focusManager=new CKEDITOR.focusManager(this);this.keystrokeHandler=new CKEDITOR.keystrokeHandler(this);this.on("readOnly",b);this.on("selectionChange",function(a){f(this,a.data.path)});this.on("activeFilterChange",function(){f(this,this.elementPath(),true)});this.on("mode",b);this.on("instanceReady",function(){this.config.startupFocus&&this.focus()});CKEDITOR.fire("instanceCreated",null,this);CKEDITOR.add(this);CKEDITOR.tools.setTimeout(function(){g(this,a)},0,this)}function e(){do var a="editor"+
-++t;while(CKEDITOR.instances[a]);return a}function b(){var a=this.commands,b;for(b in a)c(this,a[b])}function c(a,b){b[b.startDisabled?"disable":a.readOnly&&!b.readOnly?"disable":b.modes[a.mode]?"enable":"disable"]()}function f(a,b,c){if(b){var d,f,e=a.commands;for(f in e){d=e[f];(c||d.contextSensitive)&&d.refresh(a,b)}}}function d(a){var b=a.config.customConfig;if(!b)return false;var b=CKEDITOR.getUrl(b),c=y[b]||(y[b]={});if(c.fn){c.fn.call(a,a.config);(CKEDITOR.getUrl(a.config.customConfig)==b||
-!d(a))&&a.fireOnce("customConfigLoaded")}else CKEDITOR.scriptLoader.queue(b,function(){c.fn=CKEDITOR.editorConfig?CKEDITOR.editorConfig:function(){};d(a)});return true}function g(a,b){a.on("customConfigLoaded",function(){if(b){if(b.on)for(var c in b.on)a.on(c,b.on[c]);CKEDITOR.tools.extend(a.config,b,true);delete a.config.on}c=a.config;a.readOnly=!(!c.readOnly&&!(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.is("textarea")?a.element.hasAttribute("disabled"):a.element.isReadOnly():a.elementMode==
-CKEDITOR.ELEMENT_MODE_REPLACE&&a.element.hasAttribute("disabled")));a.blockless=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?!(a.element.is("textarea")||CKEDITOR.dtd[a.element.getName()].p):false;a.tabIndex=c.tabIndex||a.element&&a.element.getAttribute("tabindex")||0;a.activeEnterMode=a.enterMode=a.blockless?CKEDITOR.ENTER_BR:c.enterMode;a.activeShiftEnterMode=a.shiftEnterMode=a.blockless?CKEDITOR.ENTER_BR:c.shiftEnterMode;if(c.skin)CKEDITOR.skinName=c.skin;a.fireOnce("configLoaded");a.dataProcessor=
-new CKEDITOR.htmlDataProcessor(a);a.filter=a.activeFilter=new CKEDITOR.filter(a);h(a)});if(b&&b.customConfig!=null)a.config.customConfig=b.customConfig;d(a)||a.fireOnce("customConfigLoaded")}function h(a){CKEDITOR.skin.loadPart("editor",function(){m(a)})}function m(a){CKEDITOR.lang.load(a.config.language,a.config.defaultLanguage,function(b,c){var d=a.config.title;a.langCode=b;a.lang=CKEDITOR.tools.prototypedCopy(c);a.title=typeof d=="string"||d===false?d:[a.lang.editor,a.name].join(", ");if(!a.config.contentsLangDirection)a.config.contentsLangDirection=
-a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.getDirection(1):a.lang.dir;a.fire("langLoaded");j(a)})}function j(a){a.getStylesSet(function(b){a.once("loaded",function(){a.fire("stylesSet",{styles:b})},null,null,1);p(a)})}function p(a){var b=a.config,c=b.plugins,d=b.extraPlugins,f=b.removePlugins;if(d)var e=RegExp("(?:^|,)(?:"+d.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(e,""),c=c+(","+d);if(f)var l=RegExp("(?:^|,)(?:"+f.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(l,"");CKEDITOR.env.air&&
-(c=c+",adobeair");CKEDITOR.plugins.load(c.split(","),function(c){var d=[],f=[],e=[];a.plugins=c;for(var i in c){var o=c[i],k=o.lang,g=null,r=o.requires,A;CKEDITOR.tools.isArray(r)&&(r=r.join(","));if(r&&(A=r.match(l)))for(;r=A.pop();)CKEDITOR.tools.setTimeout(function(a,b){throw Error('Plugin "'+a.replace(",","")+'" cannot be removed from the plugins list, because it\'s required by "'+b+'" plugin.');},0,null,[r,i]);if(k&&!a.lang[i]){k.split&&(k=k.split(","));if(CKEDITOR.tools.indexOf(k,a.langCode)>=
-0)g=a.langCode;else{g=a.langCode.replace(/-.*/,"");g=g!=a.langCode&&CKEDITOR.tools.indexOf(k,g)>=0?g:CKEDITOR.tools.indexOf(k,"en")>=0?"en":k[0]}if(!o.langEntries||!o.langEntries[g])e.push(CKEDITOR.getUrl(o.path+"lang/"+g+".js"));else{a.lang[i]=o.langEntries[g];g=null}}f.push(g);d.push(o)}CKEDITOR.scriptLoader.load(e,function(){for(var c=["beforeInit","init","afterInit"],e=0;e<c.length;e++)for(var i=0;i<d.length;i++){var q=d[i];e===0&&(f[i]&&q.lang&&q.langEntries)&&(a.lang[q.name]=q.langEntries[f[i]]);
-if(q[c[e]])q[c[e]](a)}a.fireOnce("pluginsLoaded");b.keystrokes&&a.setKeystroke(a.config.keystrokes);for(i=0;i<a.config.blockedKeystrokes.length;i++)a.keystrokeHandler.blockedKeystrokes[a.config.blockedKeystrokes[i]]=1;a.status="loaded";a.fireOnce("loaded");CKEDITOR.fire("instanceLoaded",null,a)})})}function u(){var a=this.element;if(a&&this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO){var b=this.getData();this.config.htmlEncodeOutput&&(b=CKEDITOR.tools.htmlEncode(b));a.is("textarea")?a.setValue(b):
-a.setHtml(b);return true}return false}a.prototype=CKEDITOR.editor.prototype;CKEDITOR.editor=a;var t=0,y={};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{addCommand:function(a,b){b.name=a.toLowerCase();var d=new CKEDITOR.command(this,b);this.mode&&c(this,d);return this.commands[a]=d},_attachToForm:function(){function a(d){b.updateElement();b._.required&&(!c.getValue()&&b.fire("required")===false)&&d.data.preventDefault()}var b=this,c=b.element,d=new CKEDITOR.dom.element(c.$.form);if(c.is("textarea")&&
-d){d.on("submit",a);if(d.$.submit&&d.$.submit.call&&d.$.submit.apply)d.$.submit=CKEDITOR.tools.override(d.$.submit,function(b){return function(){a();b.apply?b.apply(this):b()}});b.on("destroy",function(){d.removeListener("submit",a)})}},destroy:function(a){this.fire("beforeDestroy");!a&&u.call(this);this.editable(null);this.filter.destroy();delete this.filter;delete this.activeFilter;this.status="destroyed";this.fire("destroy");this.removeAllListeners();CKEDITOR.remove(this);CKEDITOR.fire("instanceDestroyed",
-null,this)},elementPath:function(a){if(!a){a=this.getSelection();if(!a)return null;a=a.getStartElement()}return a?new CKEDITOR.dom.elementPath(a,this.editable()):null},createRange:function(){var a=this.editable();return a?new CKEDITOR.dom.range(a):null},execCommand:function(a,b){var c=this.getCommand(a),d={name:a,commandData:b,command:c};if(c&&c.state!=CKEDITOR.TRISTATE_DISABLED&&this.fire("beforeCommandExec",d)!==false){d.returnValue=c.exec(d.commandData);if(!c.async&&this.fire("afterCommandExec",
-d)!==false)return d.returnValue}return false},getCommand:function(a){return this.commands[a]},getData:function(a){!a&&this.fire("beforeGetData");var b=this._.data;if(typeof b!="string")b=(b=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?b.is("textarea")?b.getValue():b.getHtml():"";b={dataValue:b};!a&&this.fire("getData",b);return b.dataValue},getSnapshot:function(){var a=this.fire("getSnapshot");if(typeof a!="string"){var b=this.element;b&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&
-(a=b.is("textarea")?b.getValue():b.getHtml())}return a},loadSnapshot:function(a){this.fire("loadSnapshot",a)},setData:function(a,b,c){var d=true,f=b;if(b&&typeof b=="object"){c=b.internal;f=b.callback;d=!b.noSnapshot}!c&&d&&this.fire("saveSnapshot");if(f||!c)this.once("dataReady",function(a){!c&&d&&this.fire("saveSnapshot");f&&f.call(a.editor)});a={dataValue:a};!c&&this.fire("setData",a);this._.data=a.dataValue;!c&&this.fire("afterSetData",a)},setReadOnly:function(a){a=a==null||a;if(this.readOnly!=
-a){this.readOnly=a;this.keystrokeHandler.blockedKeystrokes[8]=+a;this.editable().setReadOnly(a);this.fire("readOnly")}},insertHtml:function(a,b){this.fire("insertHtml",{dataValue:a,mode:b})},insertText:function(a){this.fire("insertText",a)},insertElement:function(a){this.fire("insertElement",a)},focus:function(){this.fire("beforeFocus")},checkDirty:function(){return this.status=="ready"&&this._.previousValue!==this.getSnapshot()},resetDirty:function(){this._.previousValue=this.getSnapshot()},updateElement:function(){return u.call(this)},
-setKeystroke:function(){for(var a=this.keystrokeHandler.keystrokes,b=CKEDITOR.tools.isArray(arguments[0])?arguments[0]:[[].slice.call(arguments,0)],c,d,f=b.length;f--;){c=b[f];d=0;if(CKEDITOR.tools.isArray(c)){d=c[1];c=c[0]}d?a[c]=d:delete a[c]}},addFeature:function(a){return this.filter.addFeature(a)},setActiveFilter:function(a){if(!a)a=this.filter;if(this.activeFilter!==a){this.activeFilter=a;this.fire("activeFilterChange");a===this.filter?this.setActiveEnterMode(null,null):this.setActiveEnterMode(a.getAllowedEnterMode(this.enterMode),
-a.getAllowedEnterMode(this.shiftEnterMode,true))}},setActiveEnterMode:function(a,b){a=a?this.blockless?CKEDITOR.ENTER_BR:a:this.enterMode;b=b?this.blockless?CKEDITOR.ENTER_BR:b:this.shiftEnterMode;if(this.activeEnterMode!=a||this.activeShiftEnterMode!=b){this.activeEnterMode=a;this.activeShiftEnterMode=b;this.fire("activeEnterModeChange")}}})})();CKEDITOR.ELEMENT_MODE_NONE=0;CKEDITOR.ELEMENT_MODE_REPLACE=1;CKEDITOR.ELEMENT_MODE_APPENDTO=2;CKEDITOR.ELEMENT_MODE_INLINE=3;
-CKEDITOR.htmlParser=function(){this._={htmlPartsRegex:RegExp("<(?:(?:\\/([^>]+)>)|(?:!--([\\S|\\s]*?)--\>)|(?:([^\\s>]+)\\s*((?:(?:\"[^\"]*\")|(?:'[^']*')|[^\"'>])*)\\/?>))","g")}};
-(function(){var a=/([\w\-:.]+)(?:(?:\s*=\s*(?:(?:"([^"]*)")|(?:'([^']*)')|([^\s>]+)))|(?=\s|$))/g,e={checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};CKEDITOR.htmlParser.prototype={onTagOpen:function(){},onTagClose:function(){},onText:function(){},onCDATA:function(){},onComment:function(){},parse:function(b){for(var c,f,d=0,g;c=this._.htmlPartsRegex.exec(b);){f=c.index;if(f>d){d=b.substring(d,f);if(g)g.push(d);else this.onText(d)}d=
-this._.htmlPartsRegex.lastIndex;if(f=c[1]){f=f.toLowerCase();if(g&&CKEDITOR.dtd.$cdata[f]){this.onCDATA(g.join(""));g=null}if(!g){this.onTagClose(f);continue}}if(g)g.push(c[0]);else if(f=c[3]){f=f.toLowerCase();if(!/="/.test(f)){var h={},m;c=c[4];var j=!!(c&&c.charAt(c.length-1)=="/");if(c)for(;m=a.exec(c);){var p=m[1].toLowerCase();m=m[2]||m[3]||m[4]||"";h[p]=!m&&e[p]?p:CKEDITOR.tools.htmlDecodeAttr(m)}this.onTagOpen(f,h,j);!g&&CKEDITOR.dtd.$cdata[f]&&(g=[])}}else if(f=c[2])this.onComment(f)}if(b.length>
-d)this.onText(b.substring(d,b.length))}}})();
-CKEDITOR.htmlParser.basicWriter=CKEDITOR.tools.createClass({$:function(){this._={output:[]}},proto:{openTag:function(a){this._.output.push("<",a)},openTagClose:function(a,e){e?this._.output.push(" />"):this._.output.push(">")},attribute:function(a,e){typeof e=="string"&&(e=CKEDITOR.tools.htmlEncodeAttr(e));this._.output.push(" ",a,'="',e,'"')},closeTag:function(a){this._.output.push("</",a,">")},text:function(a){this._.output.push(a)},comment:function(a){this._.output.push("<\!--",a,"--\>")},write:function(a){this._.output.push(a)},
-reset:function(){this._.output=[];this._.indent=false},getHtml:function(a){var e=this._.output.join("");a&&this.reset();return e}}});"use strict";
-(function(){CKEDITOR.htmlParser.node=function(){};CKEDITOR.htmlParser.node.prototype={remove:function(){var a=this.parent.children,e=CKEDITOR.tools.indexOf(a,this),b=this.previous,c=this.next;b&&(b.next=c);c&&(c.previous=b);a.splice(e,1);this.parent=null},replaceWith:function(a){var e=this.parent.children,b=CKEDITOR.tools.indexOf(e,this),c=a.previous=this.previous,f=a.next=this.next;c&&(c.next=a);f&&(f.previous=a);e[b]=a;a.parent=this.parent;this.parent=null},insertAfter:function(a){var e=a.parent.children,
-b=CKEDITOR.tools.indexOf(e,a),c=a.next;e.splice(b+1,0,this);this.next=a.next;this.previous=a;a.next=this;c&&(c.previous=this);this.parent=a.parent},insertBefore:function(a){var e=a.parent.children,b=CKEDITOR.tools.indexOf(e,a);e.splice(b,0,this);this.next=a;(this.previous=a.previous)&&(a.previous.next=this);a.previous=this;this.parent=a.parent},getAscendant:function(a){var e=typeof a=="function"?a:typeof a=="string"?function(b){return b.name==a}:function(b){return b.name in a},b=this.parent;for(;b&&
-b.type==CKEDITOR.NODE_ELEMENT;){if(e(b))return b;b=b.parent}return null},wrapWith:function(a){this.replaceWith(a);a.add(this);return a},getIndex:function(){return CKEDITOR.tools.indexOf(this.parent.children,this)},getFilterContext:function(a){return a||{}}}})();"use strict";CKEDITOR.htmlParser.comment=function(a){this.value=a;this._={isBlockLike:false}};
-CKEDITOR.htmlParser.comment.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_COMMENT,filter:function(a,e){var b=this.value;if(!(b=a.onComment(e,b,this))){this.remove();return false}if(typeof b!="string"){this.replaceWith(b);return false}this.value=b;return true},writeHtml:function(a,e){e&&this.filter(e);a.comment(this.value)}});"use strict";
-(function(){CKEDITOR.htmlParser.text=function(a){this.value=a;this._={isBlockLike:false}};CKEDITOR.htmlParser.text.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(a,e){if(!(this.value=a.onText(e,this.value,this))){this.remove();return false}},writeHtml:function(a,e){e&&this.filter(e);a.text(this.value)}})})();"use strict";
-(function(){CKEDITOR.htmlParser.cdata=function(a){this.value=a};CKEDITOR.htmlParser.cdata.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(){},writeHtml:function(a){a.write(this.value)}})})();"use strict";CKEDITOR.htmlParser.fragment=function(){this.children=[];this.parent=null;this._={isBlockLike:true,hasInlineStarted:false}};
-(function(){function a(a){return a.attributes["data-cke-survive"]?false:a.name=="a"&&a.attributes.href||CKEDITOR.dtd.$removeEmpty[a.name]}var e=CKEDITOR.tools.extend({table:1,ul:1,ol:1,dl:1},CKEDITOR.dtd.table,CKEDITOR.dtd.ul,CKEDITOR.dtd.ol,CKEDITOR.dtd.dl),b={ol:1,ul:1},c=CKEDITOR.tools.extend({},{html:1},CKEDITOR.dtd.html,CKEDITOR.dtd.body,CKEDITOR.dtd.head,{style:1,script:1}),f={ul:"li",ol:"li",dl:"dd",table:"tbody",tbody:"tr",thead:"tr",tfoot:"tr",tr:"td"};CKEDITOR.htmlParser.fragment.fromHtml=
-function(d,g,h){function m(a){var b;if(o.length>0)for(var c=0;c<o.length;c++){var d=o[c],f=d.name,e=CKEDITOR.dtd[f],l=i.name&&CKEDITOR.dtd[i.name];if((!l||l[f])&&(!a||!e||e[a]||!CKEDITOR.dtd[a])){if(!b){j();b=1}d=d.clone();d.parent=i;i=d;o.splice(c,1);c--}else if(f==i.name){u(i,i.parent,1);c--}}}function j(){for(;r.length;)u(r.shift(),i)}function p(a){if(a._.isBlockLike&&a.name!="pre"&&a.name!="textarea"){var b=a.children.length,c=a.children[b-1],d;if(c&&c.type==CKEDITOR.NODE_TEXT)(d=CKEDITOR.tools.rtrim(c.value))?
-c.value=d:a.children.length=b-1}}function u(b,c,d){var c=c||i||w,f=i;if(b.previous===void 0){if(t(c,b)){i=c;n.onTagOpen(h,{});b.returnPoint=c=i}p(b);(!a(b)||b.children.length)&&c.add(b);b.name=="pre"&&(l=false);b.name=="textarea"&&(k=false)}if(b.returnPoint){i=b.returnPoint;delete b.returnPoint}else i=d?c:f}function t(a,b){if((a==w||a.name=="body")&&h&&(!a.name||CKEDITOR.dtd[a.name][h])){var c,d;return(c=b.attributes&&(d=b.attributes["data-cke-real-element-type"])?d:b.name)&&c in CKEDITOR.dtd.$inline&&
-!(c in CKEDITOR.dtd.head)&&!b.isOrphan||b.type==CKEDITOR.NODE_TEXT}}function y(a,b){return a in CKEDITOR.dtd.$listItem||a in CKEDITOR.dtd.$tableContent?a==b||a=="dt"&&b=="dd"||a=="dd"&&b=="dt":false}var n=new CKEDITOR.htmlParser,w=g instanceof CKEDITOR.htmlParser.element?g:typeof g=="string"?new CKEDITOR.htmlParser.element(g):new CKEDITOR.htmlParser.fragment,o=[],r=[],i=w,k=w.name=="textarea",l=w.name=="pre";n.onTagOpen=function(d,f,g,h){f=new CKEDITOR.htmlParser.element(d,f);if(f.isUnknown&&g)f.isEmpty=
-true;f.isOptionalClose=h;if(a(f))o.push(f);else{if(d=="pre")l=true;else{if(d=="br"&&l){i.add(new CKEDITOR.htmlParser.text("\n"));return}d=="textarea"&&(k=true)}if(d=="br")r.push(f);else{for(;;){h=(g=i.name)?CKEDITOR.dtd[g]||(i._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):c;if(!f.isUnknown&&!i.isUnknown&&!h[d])if(i.isOptionalClose)n.onTagClose(g);else if(d in b&&g in b){g=i.children;(g=g[g.length-1])&&g.name=="li"||u(g=new CKEDITOR.htmlParser.element("li"),i);!f.returnPoint&&(f.returnPoint=i);
-i=g}else if(d in CKEDITOR.dtd.$listItem&&!y(d,g))n.onTagOpen(d=="li"?"ul":"dl",{},0,1);else if(g in e&&!y(d,g)){!f.returnPoint&&(f.returnPoint=i);i=i.parent}else{g in CKEDITOR.dtd.$inline&&o.unshift(i);if(i.parent)u(i,i.parent,1);else{f.isOrphan=1;break}}else break}m(d);j();f.parent=i;f.isEmpty?u(f):i=f}}};n.onTagClose=function(a){for(var b=o.length-1;b>=0;b--)if(a==o[b].name){o.splice(b,1);return}for(var c=[],d=[],f=i;f!=w&&f.name!=a;){f._.isBlockLike||d.unshift(f);c.push(f);f=f.returnPoint||f.parent}if(f!=
-w){for(b=0;b<c.length;b++){var e=c[b];u(e,e.parent)}i=f;f._.isBlockLike&&j();u(f,f.parent);if(f==i)i=i.parent;o=o.concat(d)}a=="body"&&(h=false)};n.onText=function(a){if((!i._.hasInlineStarted||r.length)&&!l&&!k){a=CKEDITOR.tools.ltrim(a);if(a.length===0)return}var b=i.name,d=b?CKEDITOR.dtd[b]||(i._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):c;if(!k&&!d["#"]&&b in e){n.onTagOpen(f[b]||"");n.onText(a)}else{j();m();!l&&!k&&(a=a.replace(/[\t\r\n ]{2,}|[\t\r\n]/g," "));a=new CKEDITOR.htmlParser.text(a);
-if(t(i,a))this.onTagOpen(h,{},0,1);i.add(a)}};n.onCDATA=function(a){i.add(new CKEDITOR.htmlParser.cdata(a))};n.onComment=function(a){j();m();i.add(new CKEDITOR.htmlParser.comment(a))};n.parse(d);for(j();i!=w;)u(i,i.parent,1);p(w);return w};CKEDITOR.htmlParser.fragment.prototype={type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,add:function(a,b){isNaN(b)&&(b=this.children.length);var c=b>0?this.children[b-1]:null;if(c){if(a._.isBlockLike&&c.type==CKEDITOR.NODE_TEXT){c.value=CKEDITOR.tools.rtrim(c.value);if(c.value.length===
-0){this.children.pop();this.add(a);return}}c.next=a}a.previous=c;a.parent=this;this.children.splice(b,0,a);if(!this._.hasInlineStarted)this._.hasInlineStarted=a.type==CKEDITOR.NODE_TEXT||a.type==CKEDITOR.NODE_ELEMENT&&!a._.isBlockLike},filter:function(a,b){b=this.getFilterContext(b);a.onRoot(b,this);this.filterChildren(a,false,b)},filterChildren:function(a,b,c){if(this.childrenFilteredBy!=a.id){c=this.getFilterContext(c);if(b&&!this.parent)a.onRoot(c,this);this.childrenFilteredBy=a.id;for(b=0;b<this.children.length;b++)this.children[b].filter(a,
-c)===false&&b--}},writeHtml:function(a,b){b&&this.filter(b);this.writeChildrenHtml(a)},writeChildrenHtml:function(a,b,c){var f=this.getFilterContext();if(c&&!this.parent&&b)b.onRoot(f,this);b&&this.filterChildren(b,false,f);b=0;c=this.children;for(f=c.length;b<f;b++)c[b].writeHtml(a)},forEach:function(a,b,c){if(!c&&(!b||this.type==b))var f=a(this);if(f!==false)for(var c=this.children,e=0;e<c.length;e++){f=c[e];f.type==CKEDITOR.NODE_ELEMENT?f.forEach(a,b):(!b||f.type==b)&&a(f)}},getFilterContext:function(a){return a||
-{}}}})();"use strict";
-(function(){function a(){this.rules=[]}function e(b,c,f,d){var e,h;for(e in c){(h=b[e])||(h=b[e]=new a);h.add(c[e],f,d)}}CKEDITOR.htmlParser.filter=CKEDITOR.tools.createClass({$:function(b){this.id=CKEDITOR.tools.getNextNumber();this.elementNameRules=new a;this.attributeNameRules=new a;this.elementsRules={};this.attributesRules={};this.textRules=new a;this.commentRules=new a;this.rootRules=new a;b&&this.addRules(b,10)},proto:{addRules:function(a,c){var f;if(typeof c=="number")f=c;else if(c&&"priority"in
-c)f=c.priority;typeof f!="number"&&(f=10);typeof c!="object"&&(c={});a.elementNames&&this.elementNameRules.addMany(a.elementNames,f,c);a.attributeNames&&this.attributeNameRules.addMany(a.attributeNames,f,c);a.elements&&e(this.elementsRules,a.elements,f,c);a.attributes&&e(this.attributesRules,a.attributes,f,c);a.text&&this.textRules.add(a.text,f,c);a.comment&&this.commentRules.add(a.comment,f,c);a.root&&this.rootRules.add(a.root,f,c)},applyTo:function(a){a.filter(this)},onElementName:function(a,c){return this.elementNameRules.execOnName(a,
-c)},onAttributeName:function(a,c){return this.attributeNameRules.execOnName(a,c)},onText:function(a,c,f){return this.textRules.exec(a,c,f)},onComment:function(a,c,f){return this.commentRules.exec(a,c,f)},onRoot:function(a,c){return this.rootRules.exec(a,c)},onElement:function(a,c){for(var f=[this.elementsRules["^"],this.elementsRules[c.name],this.elementsRules.$],d,e=0;e<3;e++)if(d=f[e]){d=d.exec(a,c,this);if(d===false)return null;if(d&&d!=c)return this.onNode(a,d);if(c.parent&&!c.name)break}return c},
-onNode:function(a,c){var f=c.type;return f==CKEDITOR.NODE_ELEMENT?this.onElement(a,c):f==CKEDITOR.NODE_TEXT?new CKEDITOR.htmlParser.text(this.onText(a,c.value)):f==CKEDITOR.NODE_COMMENT?new CKEDITOR.htmlParser.comment(this.onComment(a,c.value)):null},onAttribute:function(a,c,f,d){return(f=this.attributesRules[f])?f.exec(a,d,c,this):d}}});CKEDITOR.htmlParser.filterRulesGroup=a;a.prototype={add:function(a,c,f){this.rules.splice(this.findIndex(c),0,{value:a,priority:c,options:f})},addMany:function(a,
-c,f){for(var d=[this.findIndex(c),0],e=0,h=a.length;e<h;e++)d.push({value:a[e],priority:c,options:f});this.rules.splice.apply(this.rules,d)},findIndex:function(a){for(var c=this.rules,f=c.length-1;f>=0&&a<c[f].priority;)f--;return f+1},exec:function(a,c){var f=c instanceof CKEDITOR.htmlParser.node||c instanceof CKEDITOR.htmlParser.fragment,d=Array.prototype.slice.call(arguments,1),e=this.rules,h=e.length,m,j,p,u;for(u=0;u<h;u++){if(f){m=c.type;j=c.name}p=e[u];if(!(a.nonEditable&&!p.options.applyToAll||
-a.nestedEditable&&p.options.excludeNestedEditable)){p=p.value.apply(null,d);if(p===false||f&&p&&(p.name!=j||p.type!=m))return p;p!=null&&(d[0]=c=p)}}return c},execOnName:function(a,c){for(var f=0,d=this.rules,e=d.length,h;c&&f<e;f++){h=d[f];!(a.nonEditable&&!h.options.applyToAll||a.nestedEditable&&h.options.excludeNestedEditable)&&(c=c.replace(h.value[0],h.value[1]))}return c}}})();
-(function(){function a(a,e){function k(a){return a||CKEDITOR.env.needsNbspFiller?new CKEDITOR.htmlParser.text(" "):new CKEDITOR.htmlParser.element("br",{"data-cke-bogus":1})}function q(a,f){return function(e){if(e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var i=[],l=b(e),q,o;if(l)for(A(l,1)&&i.push(l);l;){if(d(l)&&(q=c(l))&&A(q))if((o=c(q))&&!d(o))i.push(q);else{k(r).insertAfter(q);q.remove()}l=l.previous}for(l=0;l<i.length;l++)i[l].remove();if(i=(typeof f=="function"?f(e):f)!==false)if(!r&&!CKEDITOR.env.needsBrFiller&&
-e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)i=false;else if(!r&&!CKEDITOR.env.needsBrFiller&&(document.documentMode>7||e.name in CKEDITOR.dtd.tr||e.name in CKEDITOR.dtd.$listItem))i=false;else{i=b(e);i=!i||e.name=="form"&&i.name=="input"}i&&e.add(k(a))}}}function A(a,b){if((!r||CKEDITOR.env.needsBrFiller)&&a.type==CKEDITOR.NODE_ELEMENT&&a.name=="br"&&!a.attributes["data-cke-eol"])return true;var c;if(a.type==CKEDITOR.NODE_TEXT&&(c=a.value.match(o))){if(c.index){(new CKEDITOR.htmlParser.text(a.value.substring(0,
-c.index))).insertBefore(a);a.value=c[0]}if(!CKEDITOR.env.needsBrFiller&&r&&(!b||a.parent.name in v))return true;if(!r)if((c=a.previous)&&c.name=="br"||!c||d(c))return true}return false}var s={elements:{}},r=e=="html",v=CKEDITOR.tools.extend({},l),z;for(z in v)"#"in i[z]||delete v[z];for(z in v)s.elements[z]=q(r,a.config.fillEmptyBlocks);s.root=q(r,false);s.elements.br=function(a){return function(b){if(b.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var e=b.attributes;if("data-cke-bogus"in e||"data-cke-eol"in
-e)delete e["data-cke-bogus"];else{for(e=b.next;e&&f(e);)e=e.next;var i=c(b);!e&&d(b.parent)?g(b.parent,k(a)):d(e)&&(i&&!d(i))&&k(a).insertBefore(e)}}}}(r);return s}function e(a,b){return a!=CKEDITOR.ENTER_BR&&b!==false?a==CKEDITOR.ENTER_DIV?"div":"p":false}function b(a){for(a=a.children[a.children.length-1];a&&f(a);)a=a.previous;return a}function c(a){for(a=a.previous;a&&f(a);)a=a.previous;return a}function f(a){return a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(a.value)||a.type==CKEDITOR.NODE_ELEMENT&&
-a.attributes["data-cke-bookmark"]}function d(a){return a&&(a.type==CKEDITOR.NODE_ELEMENT&&a.name in l||a.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)}function g(a,b){var c=a.children[a.children.length-1];a.children.push(b);b.parent=a;if(c){c.next=b;b.previous=c}}function h(a){a=a.attributes;a.contenteditable!="false"&&(a["data-cke-editable"]=a.contenteditable?"true":1);a.contenteditable="false"}function m(a){a=a.attributes;switch(a["data-cke-editable"]){case "true":a.contenteditable="true";break;case "1":delete a.contenteditable}}
-function j(a){return a.replace(R,function(a,b,c){return"<"+b+c.replace(N,function(a,b){return F.test(b)&&c.indexOf("data-cke-saved-"+b)==-1?" data-cke-saved-"+a+" data-cke-"+CKEDITOR.rnd+"-"+a:a})+">"})}function p(a,b){return a.replace(b,function(a,b,c){a.indexOf("<textarea")===0&&(a=b+y(c).replace(/</g,"&lt;").replace(/>/g,"&gt;")+"</textarea>");return"<cke:encoded>"+encodeURIComponent(a)+"</cke:encoded>"})}function u(a){return a.replace(A,function(a,b){return decodeURIComponent(b)})}function t(a){return a.replace(/<\!--(?!{cke_protected})[\s\S]+?--\>/g,
-function(a){return"<\!--"+r+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"--\>"})}function y(a){return a.replace(/<\!--\{cke_protected\}\{C\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)})}function n(a,b){var c=b._.dataStore;return a.replace(/<\!--\{cke_protected\}([\s\S]+?)--\>/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function w(a,b){for(var c=[],d=b.config.protectedSource,f=b._.dataStore||(b._.dataStore=
-{id:1}),e=/<\!--\{cke_temp(comment)?\}(\d*?)--\>/g,d=[/<script[\s\S]*?<\/script>/gi,/<noscript[\s\S]*?<\/noscript>/gi,/<meta[\s\S]*?\/?>/gi].concat(d),a=a.replace(/<\!--[\s\S]*?--\>/g,function(a){return"<\!--{cke_tempcomment}"+(c.push(a)-1)+"--\>"}),i=0;i<d.length;i++)a=a.replace(d[i],function(a){a=a.replace(e,function(a,b,d){return c[d]});return/cke_temp(comment)?/.test(a)?a:"<\!--{cke_temp}"+(c.push(a)-1)+"--\>"});a=a.replace(e,function(a,b,d){return"<\!--"+r+(b?"{C}":"")+encodeURIComponent(c[d]).replace(/--/g,
-"%2D%2D")+"--\>"});a=a.replace(/<\w+(?:\s+(?:(?:[^\s=>]+\s*=\s*(?:[^'"\s>]+|'[^']*'|"[^"]*"))|[^\s=>]+))+\s*>/g,function(a){return a.replace(/<\!--\{cke_protected\}([^>]*)--\>/g,function(a,b){f[f.id]=decodeURIComponent(b);return"{cke_protected_"+f.id++ +"}"})});return a=a.replace(/<(title|iframe|textarea)([^>]*)>([\s\S]*?)<\/\1>/g,function(a,c,d,f){return"<"+c+d+">"+n(y(f),b)+"</"+c+">"})}CKEDITOR.htmlDataProcessor=function(b){var c,d,f=this;this.editor=b;this.dataFilter=c=new CKEDITOR.htmlParser.filter;
-this.htmlFilter=d=new CKEDITOR.htmlParser.filter;this.writer=new CKEDITOR.htmlParser.basicWriter;c.addRules(q);c.addRules(x,{applyToAll:true});c.addRules(a(b,"data"),{applyToAll:true});d.addRules(s);d.addRules(M,{applyToAll:true});d.addRules(a(b,"html"),{applyToAll:true});b.on("toHtml",function(a){var a=a.data,c=a.dataValue,c=w(c,b),c=p(c,J),c=j(c),c=p(c,Q),c=c.replace(E,"$1cke:$2"),c=c.replace(z,"<cke:$1$2></cke:$1>"),c=c.replace(/(<pre\b[^>]*>)(\r\n|\n)/g,"$1$2$2"),c=c.replace(/([^a-z0-9<\-])(on\w{3,})(?!>)/gi,
-"$1data-cke-"+CKEDITOR.rnd+"-$2"),d=a.context||b.editable().getName(),f;if(CKEDITOR.env.ie&&CKEDITOR.env.version<9&&d=="pre"){d="div";c="<pre>"+c+"</pre>";f=1}d=b.document.createElement(d);d.setHtml("a"+c);c=d.getHtml().substr(1);c=c.replace(RegExp("data-cke-"+CKEDITOR.rnd+"-","ig"),"");f&&(c=c.replace(/^<pre>|<\/pre>$/gi,""));c=c.replace(v,"$1$2");c=u(c);c=y(c);a.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(c,a.context,a.fixForBody===false?false:e(a.enterMode,b.config.autoParagraph))},null,null,
-5);b.on("toHtml",function(a){a.data.filter.applyTo(a.data.dataValue,true,a.data.dontFilter,a.data.enterMode)&&b.fire("dataFiltered")},null,null,6);b.on("toHtml",function(a){a.data.dataValue.filterChildren(f.dataFilter,true)},null,null,10);b.on("toHtml",function(a){var a=a.data,b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c);b=c.getHtml(true);a.dataValue=t(b)},null,null,15);b.on("toDataFormat",function(a){var c=a.data.dataValue;a.data.enterMode!=CKEDITOR.ENTER_BR&&(c=c.replace(/^<br *\/?>/i,
-""));a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(c,a.data.context,e(a.data.enterMode,b.config.autoParagraph))},null,null,5);b.on("toDataFormat",function(a){a.data.dataValue.filterChildren(f.htmlFilter,true)},null,null,10);b.on("toDataFormat",function(a){a.data.filter.applyTo(a.data.dataValue,false,true)},null,null,11);b.on("toDataFormat",function(a){var c=a.data.dataValue,d=f.writer;d.reset();c.writeChildrenHtml(d);c=d.getHtml(true);c=y(c);c=n(c,b);a.data.dataValue=c},null,null,15)};CKEDITOR.htmlDataProcessor.prototype=
-{toHtml:function(a,b,c,d){var f=this.editor,e,i,l;if(b&&typeof b=="object"){e=b.context;c=b.fixForBody;d=b.dontFilter;i=b.filter;l=b.enterMode}else e=b;!e&&e!==null&&(e=f.editable().getName());return f.fire("toHtml",{dataValue:a,context:e,fixForBody:c,dontFilter:d,filter:i||f.filter,enterMode:l||f.enterMode}).dataValue},toDataFormat:function(a,b){var c,d,f;if(b){c=b.context;d=b.filter;f=b.enterMode}!c&&c!==null&&(c=this.editor.editable().getName());return this.editor.fire("toDataFormat",{dataValue:a,
-filter:d||this.editor.filter,context:c,enterMode:f||this.editor.enterMode}).dataValue}};var o=/(?:&nbsp;|\xa0)$/,r="{cke_protected}",i=CKEDITOR.dtd,k=["caption","colgroup","col","thead","tfoot","tbody"],l=CKEDITOR.tools.extend({},i.$blockLimit,i.$block),q={elements:{input:h,textarea:h}},x={attributeNames:[[/^on/,"data-cke-pa-on"],[/^data-cke-expando$/,""]]},s={elements:{embed:function(a){var b=a.parent;if(b&&b.name=="object"){var c=b.attributes.width,b=b.attributes.height;if(c)a.attributes.width=
-c;if(b)a.attributes.height=b}},a:function(a){if(!a.children.length&&!a.attributes.name&&!a.attributes["data-cke-saved-name"])return false}}},M={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b=a.attributes;if(b){if(b["data-cke-temp"])return false;for(var c=["name","href","src"],d,f=0;f<c.length;f++){d="data-cke-saved-"+c[f];d in b&&delete b[c[f]]}}return a},table:function(a){a.children.slice(0).sort(function(a,
-b){var c,d;if(a.type==CKEDITOR.NODE_ELEMENT&&b.type==a.type){c=CKEDITOR.tools.indexOf(k,a.name);d=CKEDITOR.tools.indexOf(k,b.name)}if(!(c>-1&&d>-1&&c!=d)){c=a.parent?a.getIndex():-1;d=b.parent?b.getIndex():-1}return c>d?1:-1})},param:function(a){a.children=[];a.isEmpty=true;return a},span:function(a){a.attributes["class"]=="Apple-style-span"&&delete a.name},html:function(a){delete a.attributes.contenteditable;delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck;delete a.attributes.contenteditable},
-style:function(a){var b=a.children[0];if(b&&b.value)b.value=CKEDITOR.tools.trim(b.value);if(!a.attributes.type)a.attributes.type="text/css"},title:function(a){var b=a.children[0];!b&&g(a,b=new CKEDITOR.htmlParser.text);b.value=a.attributes["data-cke-title"]||""},input:m,textarea:m},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,""))||false}}};if(CKEDITOR.env.ie)M.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})};
-var R=/<(a|area|img|input|source)\b([^>]*)>/gi,N=/([\w-]+)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,F=/^(href|src|name)$/i,Q=/(?:<style(?=[ >])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,J=/(<textarea(?=[ >])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi,A=/<cke:encoded>([^<]*)<\/cke:encoded>/gi,E=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,v=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,z=/<cke:(param|embed)([^>]*?)\/?>(?!\s*<\/cke:\1)/gi})();"use strict";
-CKEDITOR.htmlParser.element=function(a,e){this.name=a;this.attributes=e||{};this.children=[];var b=a||"",c=b.match(/^cke:(.*)/);c&&(b=c[1]);b=!(!CKEDITOR.dtd.$nonBodyContent[b]&&!CKEDITOR.dtd.$block[b]&&!CKEDITOR.dtd.$listItem[b]&&!CKEDITOR.dtd.$tableContent[b]&&!(CKEDITOR.dtd.$nonEditable[b]||b=="br"));this.isEmpty=!!CKEDITOR.dtd.$empty[a];this.isUnknown=!CKEDITOR.dtd[a];this._={isBlockLike:b,hasInlineStarted:this.isEmpty||!b}};
-CKEDITOR.htmlParser.cssStyle=function(a){var e={};((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/&quot;/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,f){c=="font-family"&&(f=f.replace(/["']/g,""));e[c.toLowerCase()]=f});return{rules:e,populate:function(a){var c=this.toString();if(c)a instanceof CKEDITOR.dom.element?a.setAttribute("style",c):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=c:a.style=c},toString:function(){var a=[],c;
-for(c in e)e[c]&&a.push(c,":",e[c],";");return a.join("")}}};
-(function(){function a(a){return function(b){return b.type==CKEDITOR.NODE_ELEMENT&&(typeof a=="string"?b.name==a:b.name in a)}}var e=function(a,b){a=a[0];b=b[0];return a<b?-1:a>b?1:0},b=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:b.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a,b){var d=this,e,h,b=d.getFilterContext(b);if(b.off)return true;
-if(!d.parent)a.onRoot(b,d);for(;;){e=d.name;if(!(h=a.onElementName(b,e))){this.remove();return false}d.name=h;if(!(d=a.onElement(b,d))){this.remove();return false}if(d!==this){this.replaceWith(d);return false}if(d.name==e)break;if(d.type!=CKEDITOR.NODE_ELEMENT){this.replaceWith(d);return false}if(!d.name){this.replaceWithChildren();return false}}e=d.attributes;var m,j;for(m in e){j=m;for(h=e[m];;)if(j=a.onAttributeName(b,m))if(j!=m){delete e[m];m=j}else break;else{delete e[m];break}j&&((h=a.onAttribute(b,
-d,j,h))===false?delete e[j]:e[j]=h)}d.isEmpty||this.filterChildren(a,false,b);return true},filterChildren:b.filterChildren,writeHtml:function(a,b){b&&this.filter(b);var d=this.name,g=[],h=this.attributes,m,j;a.openTag(d,h);for(m in h)g.push([m,h[m]]);a.sortAttributes&&g.sort(e);m=0;for(j=g.length;m<j;m++){h=g[m];a.attribute(h[0],h[1])}a.openTagClose(d,this.isEmpty);this.writeChildrenHtml(a);this.isEmpty||a.closeTag(d)},writeChildrenHtml:b.writeChildrenHtml,replaceWithChildren:function(){for(var a=
-this.children,b=a.length;b;)a[--b].insertAfter(this);this.remove()},forEach:b.forEach,getFirst:function(b){if(!b)return this.children.length?this.children[0]:null;typeof b!="function"&&(b=a(b));for(var f=0,d=this.children.length;f<d;++f)if(b(this.children[f]))return this.children[f];return null},getHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;this.writeChildrenHtml(a);return a.getHtml()},setHtml:function(a){for(var a=this.children=CKEDITOR.htmlParser.fragment.fromHtml(a).children,b=0,
-d=a.length;b<d;++b)a[b].parent=this},getOuterHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;this.writeHtml(a);return a.getHtml()},split:function(a){for(var b=this.children.splice(a,this.children.length-a),d=this.clone(),e=0;e<b.length;++e)b[e].parent=d;d.children=b;if(b[0])b[0].previous=null;if(a>0)this.children[a-1].next=null;this.parent.add(d,this.getIndex()+1);return d},addClass:function(a){if(!this.hasClass(a)){var b=this.attributes["class"]||"";this.attributes["class"]=b+(b?" ":"")+
-a}},removeClass:function(a){var b=this.attributes["class"];if(b)(b=CKEDITOR.tools.trim(b.replace(RegExp("(?:\\s+|^)"+a+"(?:\\s+|$)")," ")))?this.attributes["class"]=b:delete this.attributes["class"]},hasClass:function(a){var b=this.attributes["class"];return!b?false:RegExp("(?:^|\\s)"+a+"(?=\\s|$)").test(b)},getFilterContext:function(a){var b=[];a||(a={off:false,nonEditable:false,nestedEditable:false});!a.off&&this.attributes["data-cke-processor"]=="off"&&b.push("off",true);!a.nonEditable&&this.attributes.contenteditable==
-"false"?b.push("nonEditable",true):a.nonEditable&&(!a.nestedEditable&&this.attributes.contenteditable=="true")&&b.push("nestedEditable",true);if(b.length)for(var a=CKEDITOR.tools.copy(a),d=0;d<b.length;d=d+2)a[b[d]]=b[d+1];return a}},true)})();
-(function(){var a={},e=/{([^}]+)}/g,b=/([\\'])/g,c=/\n/g,f=/\r/g;CKEDITOR.template=function(d){if(a[d])this.output=a[d];else{var g=d.replace(b,"\\$1").replace(c,"\\n").replace(f,"\\r").replace(e,function(a,b){return"',data['"+b+"']==undefined?'{"+b+"}':data['"+b+"'],'"});this.output=a[d]=Function("data","buffer","return buffer?buffer.push('"+g+"'):['"+g+"'].join('');")}}})();delete CKEDITOR.loadFullCore;CKEDITOR.instances={};CKEDITOR.document=new CKEDITOR.dom.document(document);
-CKEDITOR.add=function(a){CKEDITOR.instances[a.name]=a;a.on("focus",function(){if(CKEDITOR.currentInstance!=a){CKEDITOR.currentInstance=a;CKEDITOR.fire("currentInstance")}});a.on("blur",function(){if(CKEDITOR.currentInstance==a){CKEDITOR.currentInstance=null;CKEDITOR.fire("currentInstance")}});CKEDITOR.fire("instance",null,a)};CKEDITOR.remove=function(a){delete CKEDITOR.instances[a.name]};
-(function(){var a={};CKEDITOR.addTemplate=function(e,b){var c=a[e];if(c)return c;c={name:e,source:b};CKEDITOR.fire("template",c);return a[e]=new CKEDITOR.template(c.source)};CKEDITOR.getTemplate=function(e){return a[e]}})();(function(){var a=[];CKEDITOR.addCss=function(e){a.push(e)};CKEDITOR.getCss=function(){return a.join("\n")}})();CKEDITOR.on("instanceDestroyed",function(){CKEDITOR.tools.isEmpty(this.instances)&&CKEDITOR.fire("reset")});CKEDITOR.TRISTATE_ON=1;CKEDITOR.TRISTATE_OFF=2;
-CKEDITOR.TRISTATE_DISABLED=0;
-(function(){CKEDITOR.inline=function(a,e){if(!CKEDITOR.env.isCompatible)return null;a=CKEDITOR.dom.element.get(a);if(a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var b=new CKEDITOR.editor(e,a,CKEDITOR.ELEMENT_MODE_INLINE),c=a.is("textarea")?a:null;if(c){b.setData(c.getValue(),null,true);a=CKEDITOR.dom.element.createFromHtml('<div contenteditable="'+!!b.readOnly+'" class="cke_textarea_inline">'+c.getValue()+"</div>",CKEDITOR.document);
-a.insertAfter(c);c.hide();c.$.form&&b._attachToForm()}else b.setData(a.getHtml(),null,true);b.on("loaded",function(){b.fire("uiReady");b.editable(a);b.container=a;b.setData(b.getData(1));b.resetDirty();b.fire("contentDom");b.mode="wysiwyg";b.fire("mode");b.status="ready";b.fireOnce("instanceReady");CKEDITOR.fire("instanceReady",null,b)},null,null,1E4);b.on("destroy",function(){if(c){b.container.clearCustomData();b.container.remove();c.show()}b.element.clearCustomData();delete b.element});return b};
-CKEDITOR.inlineAll=function(){var a,e,b;for(b in CKEDITOR.dtd.$editable)for(var c=CKEDITOR.document.getElementsByTag(b),f=0,d=c.count();f<d;f++){a=c.getItem(f);if(a.getAttribute("contenteditable")=="true"){e={element:a,config:{}};CKEDITOR.fire("inline",e)!==false&&CKEDITOR.inline(a,e.config)}}};CKEDITOR.domReady(function(){!CKEDITOR.disableAutoInline&&CKEDITOR.inlineAll()})})();CKEDITOR.replaceClass="ckeditor";
-(function(){function a(a,f,d,g){if(!CKEDITOR.env.isCompatible)return null;a=CKEDITOR.dom.element.get(a);if(a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var h=new CKEDITOR.editor(f,a,g);if(g==CKEDITOR.ELEMENT_MODE_REPLACE){a.setStyle("visibility","hidden");h._.required=a.hasAttribute("required");a.removeAttribute("required")}d&&h.setData(d,null,true);h.on("loaded",function(){b(h);g==CKEDITOR.ELEMENT_MODE_REPLACE&&(h.config.autoUpdateElement&&
-a.$.form)&&h._attachToForm();h.setMode(h.config.startupMode,function(){h.resetDirty();h.status="ready";h.fireOnce("instanceReady");CKEDITOR.fire("instanceReady",null,h)})});h.on("destroy",e);return h}function e(){var a=this.container,b=this.element;if(a){a.clearCustomData();a.remove()}if(b){b.clearCustomData();if(this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE){b.show();this._.required&&b.setAttribute("required","required")}delete this.element}}function b(a){var b=a.name,d=a.element,e=a.elementMode,
-h=a.fire("uiSpace",{space:"top",html:""}).html,m=a.fire("uiSpace",{space:"bottom",html:""}).html,j=new CKEDITOR.template('<{outerEl} id="cke_{name}" class="{id} cke cke_reset cke_chrome cke_editor_{name} cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" lang="{langCode}" role="application"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':"")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':"")+'<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation"></{outerEl}>{bottomHtml}</{outerEl}></{outerEl}>'),
-b=CKEDITOR.dom.element.createFromHtml(j.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.title,topHtml:h?'<span id="'+a.ui.spaceId("top")+'" class="cke_top cke_reset_all" role="presentation" style="height:auto">'+h+"</span>":"",contentId:a.ui.spaceId("contents"),bottomHtml:m?'<span id="'+a.ui.spaceId("bottom")+'" class="cke_bottom cke_reset_all" role="presentation">'+m+"</span>":"",outerEl:CKEDITOR.env.ie?"span":"div"}));if(e==CKEDITOR.ELEMENT_MODE_REPLACE){d.hide();b.insertAfter(d)}else d.append(b);
-a.container=b;h&&a.ui.space("top").unselectable();m&&a.ui.space("bottom").unselectable();d=a.config.width;e=a.config.height;d&&b.setStyle("width",CKEDITOR.tools.cssLength(d));e&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(e));b.disableContextMenu();CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()});a.fireOnce("uiReady")}CKEDITOR.replace=function(b,f){return a(b,f,null,CKEDITOR.ELEMENT_MODE_REPLACE)};CKEDITOR.appendTo=function(b,f,d){return a(b,f,d,CKEDITOR.ELEMENT_MODE_APPENDTO)};
-CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b<a.length;b++){var d=null,e=a[b];if(e.name||e.id){if(typeof arguments[0]=="string"){if(!RegExp("(?:^|\\s)"+arguments[0]+"(?:$|\\s)").test(e.className))continue}else if(typeof arguments[0]=="function"){d={};if(arguments[0](e,d)===false)continue}this.replace(e,d)}}};CKEDITOR.editor.prototype.addMode=function(a,b){(this._.modes||(this._.modes={}))[a]=b};CKEDITOR.editor.prototype.setMode=function(a,b){var d=this,e=
-this._.modes;if(!(a==d.mode||!e||!e[a])){d.fire("beforeSetMode",a);if(d.mode){var h=d.checkDirty(),e=d._.previousModeData,m,j=0;d.fire("beforeModeUnload");d.editable(0);d._.previousMode=d.mode;d._.previousModeData=m=d.getData(1);if(d.mode=="source"&&e==m){d.fire("lockSnapshot",{forceUpdate:true});j=1}d.ui.space("contents").setHtml("");d.mode=""}else d._.previousModeData=d.getData(1);this._.modes[a](function(){d.mode=a;h!==void 0&&!h&&d.resetDirty();j?d.fire("unlockSnapshot"):a=="wysiwyg"&&d.fire("saveSnapshot");
-setTimeout(function(){d.fire("mode");b&&b.call(d)},0)})}};CKEDITOR.editor.prototype.resize=function(a,b,d,e){var h=this.container,m=this.ui.space("contents"),j=CKEDITOR.env.webkit&&this.document&&this.document.getWindow().$.frameElement,e=e?this.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}):h;e.setSize("width",a,true);j&&(j.style.width="1%");m.setStyle("height",Math.max(b-(d?0:(e.$.offsetHeight||0)-(m.$.clientHeight||0)),0)+"px");j&&(j.style.width=
-"100%");this.fire("resize")};CKEDITOR.editor.prototype.getResizable=function(a){return a?this.ui.space("contents"):this.container};CKEDITOR.domReady(function(){CKEDITOR.replaceClass&&CKEDITOR.replaceAll(CKEDITOR.replaceClass)})})();CKEDITOR.config.startupMode="wysiwyg";
-(function(){function a(a){var b=a.editor,d=a.data.path,f=d.blockLimit,l=a.data.selection,q=l.getRanges()[0],x;if(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)if(l=e(l,d)){l.appendBogus();x=CKEDITOR.env.ie}if(g(b,d.block,f)&&q.collapsed&&!q.getCommonAncestor().isReadOnly()){d=q.clone();d.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS);f=new CKEDITOR.dom.walker(d);f.guard=function(a){return!c(a)||a.type==CKEDITOR.NODE_COMMENT||a.isReadOnly()};if(!f.checkForward()||d.checkStartOfBlock()&&
-d.checkEndOfBlock()){b=q.fixBlock(true,b.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p");if(!CKEDITOR.env.needsBrFiller)(b=b.getFirst(c))&&(b.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(b.getText()).match(/^(?:&nbsp;|\xa0)$/))&&b.remove();x=1;a.cancel()}}x&&q.select()}function e(a,b){if(a.isFake)return 0;var d=b.block||b.blockLimit,e=d&&d.getLast(c);if(d&&d.isBlockBoundary()&&(!e||!(e.type==CKEDITOR.NODE_ELEMENT&&e.isBlockBoundary()))&&!d.is("pre")&&!d.getBogus())return d}function b(a){var b=a.data.getTarget();
-if(b.is("input")){b=b.getAttribute("type");(b=="submit"||b=="reset")&&a.data.preventDefault()}}function c(a){return t(a)&&y(a)}function f(a,b){return function(c){var d=CKEDITOR.dom.element.get(c.data.$.toElement||c.data.$.fromElement||c.data.$.relatedTarget);(!d||!b.equals(d)&&!b.contains(d))&&a.call(this,c)}}function d(a){function b(a){return function(b,e){e&&(b.type==CKEDITOR.NODE_ELEMENT&&b.is(f))&&(d=b);if(!e&&c(b)&&(!a||!p(b)))return false}}var d,e=a.getRanges()[0],a=a.root,f={table:1,ul:1,ol:1,
-dl:1};if(e.startPath().contains(f)){var q=e.clone();q.collapse(1);q.setStartAt(a,CKEDITOR.POSITION_AFTER_START);a=new CKEDITOR.dom.walker(q);a.guard=b();a.checkBackward();if(d){q=e.clone();q.collapse();q.setEndAt(d,CKEDITOR.POSITION_AFTER_END);a=new CKEDITOR.dom.walker(q);a.guard=b(true);d=false;a.checkForward();return d}}return null}function g(a,b,c){return a.config.autoParagraph!==false&&a.activeEnterMode!=CKEDITOR.ENTER_BR&&a.editable().equals(c)&&!b||b&&b.getAttribute("contenteditable")=="true"}
-function h(a){a.editor.focus();a.editor.fire("saveSnapshot")}function m(a){var b=a.editor;b.getSelection().scrollIntoView();setTimeout(function(){b.fire("saveSnapshot")},0)}function j(a,b,c){for(var d=a.getCommonAncestor(b),b=a=c?b:a;(a=a.getParent())&&!d.equals(a)&&a.getChildCount()==1;)b=a;b.remove()}CKEDITOR.editable=CKEDITOR.tools.createClass({base:CKEDITOR.dom.element,$:function(a,b){this.base(b.$||b);this.editor=a;this.status="unloaded";this.hasFocus=false;this.setup()},proto:{focus:function(){var a;
-if(CKEDITOR.env.webkit&&!this.hasFocus){a=this.editor._.previousActive||this.getDocument().getActive();if(this.contains(a)){a.focus();return}}try{this.$[CKEDITOR.env.ie&&this.getDocument().equals(CKEDITOR.document)?"setActive":"focus"]()}catch(b){if(!CKEDITOR.env.ie)throw b;}if(CKEDITOR.env.safari&&!this.isInline()){a=CKEDITOR.document.getActive();a.equals(this.getWindow().getFrame())||this.getWindow().focus()}},on:function(a,b){var c=Array.prototype.slice.call(arguments,0);if(CKEDITOR.env.ie&&/^focus|blur$/.exec(a)){a=
-a=="focus"?"focusin":"focusout";b=f(b,this);c[0]=a;c[1]=b}return CKEDITOR.dom.element.prototype.on.apply(this,c)},attachListener:function(a){!this._.listeners&&(this._.listeners=[]);var b=Array.prototype.slice.call(arguments,1),b=a.on.apply(a,b);this._.listeners.push(b);return b},clearListeners:function(){var a=this._.listeners;try{for(;a.length;)a.pop().removeListener()}catch(b){}},restoreAttrs:function(){var a=this._.attrChanges,b,c;for(c in a)if(a.hasOwnProperty(c)){b=a[c];b!==null?this.setAttribute(c,
-b):this.removeAttribute(c)}},attachClass:function(a){var b=this.getCustomData("classes");if(!this.hasClass(a)){!b&&(b=[]);b.push(a);this.setCustomData("classes",b);this.addClass(a)}},changeAttr:function(a,b){var c=this.getAttribute(a);if(b!==c){!this._.attrChanges&&(this._.attrChanges={});a in this._.attrChanges||(this._.attrChanges[a]=c);this.setAttribute(a,b)}},insertHtml:function(a,b){h(this);n(this,b||"html",a)},insertText:function(a){h(this);var b=this.editor,c=b.getSelection().getStartElement().hasAscendant("pre",
-true)?CKEDITOR.ENTER_BR:b.activeEnterMode,b=c==CKEDITOR.ENTER_BR,d=CKEDITOR.tools,a=d.htmlEncode(a.replace(/\r\n/g,"\n")),a=a.replace(/\t/g,"&nbsp;&nbsp; &nbsp;"),c=c==CKEDITOR.ENTER_P?"p":"div";if(!b){var e=/\n{2}/g;if(e.test(a))var f="<"+c+">",g="</"+c+">",a=f+a.replace(e,function(){return g+f})+g}a=a.replace(/\n/g,"<br>");b||(a=a.replace(RegExp("<br>(?=</"+c+">)"),function(a){return d.repeat(a,2)}));a=a.replace(/^ | $/g,"&nbsp;");a=a.replace(/(>|\s) /g,function(a,b){return b+"&nbsp;"}).replace(/ (?=<)/g,
-"&nbsp;");n(this,"text",a)},insertElement:function(a,b){b?this.insertElementIntoRange(a,b):this.insertElementIntoSelection(a)},insertElementIntoRange:function(a,b){var c=this.editor,d=c.config.enterMode,e=a.getName(),f=CKEDITOR.dtd.$block[e];if(b.checkReadOnly())return false;b.deleteContents(1);b.startContainer.type==CKEDITOR.NODE_ELEMENT&&b.startContainer.is({tr:1,table:1,tbody:1,thead:1,tfoot:1})&&w(b);var g,s;if(f)for(;(g=b.getCommonAncestor(0,1))&&(s=CKEDITOR.dtd[g.getName()])&&(!s||!s[e]);)if(g.getName()in
-CKEDITOR.dtd.span)b.splitElement(g);else if(b.checkStartOfBlock()&&b.checkEndOfBlock()){b.setStartBefore(g);b.collapse(true);g.remove()}else b.splitBlock(d==CKEDITOR.ENTER_DIV?"div":"p",c.editable());b.insertNode(a);return true},insertElementIntoSelection:function(a){h(this);var b=this.editor,d=b.activeEnterMode,b=b.getSelection(),e=b.getRanges()[0],f=a.getName(),f=CKEDITOR.dtd.$block[f];if(this.insertElementIntoRange(a,e)){e.moveToPosition(a,CKEDITOR.POSITION_AFTER_END);if(f)if((f=a.getNext(function(a){return c(a)&&
-!p(a)}))&&f.type==CKEDITOR.NODE_ELEMENT&&f.is(CKEDITOR.dtd.$block))f.getDtd()["#"]?e.moveToElementEditStart(f):e.moveToElementEditEnd(a);else if(!f&&d!=CKEDITOR.ENTER_BR){f=e.fixBlock(true,d==CKEDITOR.ENTER_DIV?"div":"p");e.moveToElementEditStart(f)}}b.selectRanges([e]);m(this)},setData:function(a,b){b||(a=this.editor.dataProcessor.toHtml(a));this.setHtml(a);if(this.status=="unloaded")this.status="ready";this.editor.fire("dataReady")},getData:function(a){var b=this.getHtml();a||(b=this.editor.dataProcessor.toDataFormat(b));
-return b},setReadOnly:function(a){this.setAttribute("contenteditable",!a)},detach:function(){this.removeClass("cke_editable");this.status="detached";var a=this.editor;this._.detach();delete a.document;delete a.window},isInline:function(){return this.getDocument().equals(CKEDITOR.document)},setup:function(){var a=this.editor;this.attachListener(a,"beforeGetData",function(){var b=this.getData();this.is("textarea")||a.config.ignoreEmptyParagraph!==false&&(b=b.replace(u,function(a,b){return b}));a.setData(b,
-null,1)},this);this.attachListener(a,"getSnapshot",function(a){a.data=this.getData(1)},this);this.attachListener(a,"afterSetData",function(){this.setData(a.getData(1))},this);this.attachListener(a,"loadSnapshot",function(a){this.setData(a.data,1)},this);this.attachListener(a,"beforeFocus",function(){var b=a.getSelection();(b=b&&b.getNative())&&b.type=="Control"||this.focus()},this);this.attachListener(a,"insertHtml",function(a){this.insertHtml(a.data.dataValue,a.data.mode)},this);this.attachListener(a,
-"insertElement",function(a){this.insertElement(a.data)},this);this.attachListener(a,"insertText",function(a){this.insertText(a.data)},this);this.setReadOnly(a.readOnly);this.attachClass("cke_editable");this.attachClass(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"cke_editable_inline":a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE||a.elementMode==CKEDITOR.ELEMENT_MODE_APPENDTO?"cke_editable_themed":"");this.attachClass("cke_contents_"+a.config.contentsLangDirection);a.keystrokeHandler.blockedKeystrokes[8]=
-+a.readOnly;a.keystrokeHandler.attach(this);this.on("blur",function(){this.hasFocus=false},null,null,-1);this.on("focus",function(){this.hasFocus=true},null,null,-1);a.focusManager.add(this);if(this.equals(CKEDITOR.document.getActive())){this.hasFocus=true;a.once("contentDom",function(){a.focusManager.focus()})}this.isInline()&&this.changeAttr("tabindex",a.tabIndex);if(!this.is("textarea")){a.document=this.getDocument();a.window=this.getWindow();var e=a.document;this.changeAttr("spellcheck",!a.config.disableNativeSpellChecker);
-var f=a.config.contentsLangDirection;this.getDirection(1)!=f&&this.changeAttr("dir",f);var k=CKEDITOR.getCss();if(k){f=e.getHead();if(!f.getCustomData("stylesheet")){k=e.appendStyleText(k);k=new CKEDITOR.dom.element(k.ownerNode||k.owningElement);f.setCustomData("stylesheet",k);k.data("cke-temp",1)}}f=e.getCustomData("stylesheet_ref")||0;e.setCustomData("stylesheet_ref",f+1);this.setCustomData("cke_includeReadonly",!a.config.disableReadonlyStyling);this.attachListener(this,"click",function(a){var a=
-a.data,b=(new CKEDITOR.dom.elementPath(a.getTarget(),this)).contains("a");b&&(a.$.button!=2&&b.isReadOnly())&&a.preventDefault()});var l={8:1,46:1};this.attachListener(a,"key",function(b){if(a.readOnly)return true;var c=b.data.domEvent.getKey(),e;if(c in l){var b=a.getSelection(),f,i=b.getRanges()[0],k=i.startPath(),g,h,j,c=c==8;if(CKEDITOR.env.ie&&CKEDITOR.env.version<11&&(f=b.getSelectedElement())||(f=d(b))){a.fire("saveSnapshot");i.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START);f.remove();i.select();
-a.fire("saveSnapshot");e=1}else if(i.collapsed)if((g=k.block)&&(j=g[c?"getPrevious":"getNext"](t))&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("table")&&i[c?"checkStartOfBlock":"checkEndOfBlock"]()){a.fire("saveSnapshot");i[c?"checkEndOfBlock":"checkStartOfBlock"]()&&g.remove();i["moveToElementEdit"+(c?"End":"Start")](j);i.select();a.fire("saveSnapshot");e=1}else if(k.blockLimit&&k.blockLimit.is("td")&&(h=k.blockLimit.getAscendant("table"))&&i.checkBoundaryOfElement(h,c?CKEDITOR.START:CKEDITOR.END)&&(j=
-h[c?"getPrevious":"getNext"](t))){a.fire("saveSnapshot");i["moveToElementEdit"+(c?"End":"Start")](j);i.checkStartOfBlock()&&i.checkEndOfBlock()?j.remove():i.select();a.fire("saveSnapshot");e=1}else if((h=k.contains(["td","th","caption"]))&&i.checkBoundaryOfElement(h,c?CKEDITOR.START:CKEDITOR.END))e=1}return!e});a.blockless&&(CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)&&this.attachListener(this,"keyup",function(b){if(b.data.getKeystroke()in l&&!this.getFirst(c)){this.appendBogus();b=a.createRange();
-b.moveToPosition(this,CKEDITOR.POSITION_AFTER_START);b.select()}});this.attachListener(this,"dblclick",function(b){if(a.readOnly)return false;b={element:b.data.getTarget()};a.fire("doubleclick",b)});CKEDITOR.env.ie&&this.attachListener(this,"click",b);CKEDITOR.env.ie||this.attachListener(this,"mousedown",function(b){var c=b.data.getTarget();if(c.is("img","hr","input","textarea","select")&&!c.isReadOnly()){a.getSelection().selectElement(c);c.is("input","textarea","select")&&b.data.preventDefault()}});
-CKEDITOR.env.gecko&&this.attachListener(this,"mouseup",function(b){if(b.data.$.button==2){b=b.data.getTarget();if(!b.getOuterHtml().replace(u,"")){var c=a.createRange();c.moveToElementEditStart(b);c.select(true)}}});if(CKEDITOR.env.webkit){this.attachListener(this,"click",function(a){a.data.getTarget().is("input","select")&&a.data.preventDefault()});this.attachListener(this,"mouseup",function(a){a.data.getTarget().is("input","textarea")&&a.data.preventDefault()})}CKEDITOR.env.webkit&&this.attachListener(a,
-"key",function(b){b=b.data.domEvent.getKey();if(b in l){var c=b==8,d=a.getSelection().getRanges()[0],b=d.startPath();if(d.collapsed){var e;a:{var f=b.block;if(f)if(d[c?"checkStartOfBlock":"checkEndOfBlock"]())if(!d.moveToClosestEditablePosition(f,!c)||!d.collapsed)e=false;else{if(d.startContainer.type==CKEDITOR.NODE_ELEMENT){var i=d.startContainer.getChild(d.startOffset-(c?1:0));if(i&&i.type==CKEDITOR.NODE_ELEMENT&&i.is("hr")){a.fire("saveSnapshot");i.remove();e=true;break a}}if((d=d.startPath().block)&&
-(!d||!d.contains(f))){a.fire("saveSnapshot");var k;(k=(c?d:f).getBogus())&&k.remove();e=a.getSelection();k=e.createBookmarks();(c?f:d).moveChildren(c?d:f,false);b.lastElement.mergeSiblings();j(f,d,!c);e.selectBookmarks(k);e=true}}else e=false;else e=false}if(!e)return}else{c=d;e=b.block;k=c.endPath().block;if(!e||!k||e.equals(k))b=false;else{a.fire("saveSnapshot");(f=e.getBogus())&&f.remove();c.deleteContents();if(k.getParent()){k.moveChildren(e,false);b.lastElement.mergeSiblings();j(e,k,true)}c=
-a.getSelection().getRanges()[0];c.collapse(1);c.select();b=true}if(!b)return}a.getSelection().scrollIntoView();a.fire("saveSnapshot");return false}},this,null,100)}}},_:{detach:function(){this.editor.setData(this.editor.getData(),0,1);this.clearListeners();this.restoreAttrs();var a;if(a=this.removeCustomData("classes"))for(;a.length;)this.removeClass(a.pop());if(!this.is("textarea")){a=this.getDocument();var b=a.getHead();if(b.getCustomData("stylesheet")){var c=a.getCustomData("stylesheet_ref");if(--c)a.setCustomData("stylesheet_ref",
-c);else{a.removeCustomData("stylesheet_ref");b.removeCustomData("stylesheet").remove()}}}this.editor.fire("contentDomUnload");delete this.editor}}});CKEDITOR.editor.prototype.editable=function(a){var b=this._.editable;if(b&&a)return 0;if(arguments.length)b=this._.editable=a?a instanceof CKEDITOR.editable?a:new CKEDITOR.editable(this,a):(b&&b.detach(),null);return b};var p=CKEDITOR.dom.walker.bogus(),u=/(^|<body\b[^>]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:<br[^>]*>|&nbsp;|\u00A0|&#160;)?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,
-t=CKEDITOR.dom.walker.whitespaces(true),y=CKEDITOR.dom.walker.bookmark(false,true);CKEDITOR.on("instanceLoaded",function(b){var c=b.editor;c.on("insertElement",function(a){a=a.data;if(a.type==CKEDITOR.NODE_ELEMENT&&(a.is("input")||a.is("textarea"))){a.getAttribute("contentEditable")!="false"&&a.data("cke-editable",a.hasAttribute("contenteditable")?"true":"1");a.setAttribute("contentEditable",false)}});c.on("selectionChange",function(b){if(!c.readOnly){var d=c.getSelection();if(d&&!d.isLocked){d=c.checkDirty();
-c.fire("lockSnapshot");a(b);c.fire("unlockSnapshot");!d&&c.resetDirty()}}})});CKEDITOR.on("instanceCreated",function(a){var b=a.editor;b.on("mode",function(){var a=b.editable();if(a&&a.isInline()){var c=b.title;a.changeAttr("role","textbox");a.changeAttr("aria-label",c);c&&a.changeAttr("title",c);var d=b.fire("ariaEditorHelpLabel",{}).label;if(d)if(c=this.ui.space(this.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"top":"contents")){var e=CKEDITOR.tools.getNextId(),d=CKEDITOR.dom.element.createFromHtml('<span id="'+
-e+'" class="cke_voice_label">'+d+"</span>");c.append(d);a.changeAttr("aria-describedby",e)}}})});CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}");var n=function(){function a(b){return b.type==CKEDITOR.NODE_ELEMENT}function b(c,d){var e,f,i,l,k=[],q=d.range.startContainer;e=d.range.startPath();for(var q=h[q.getName()],g=0,s=c.getChildren(),j=s.count(),m=-1,p=-1,n=0,M=e.contains(h.$list);g<j;++g){e=s.getItem(g);if(a(e)){i=e.getName();
-if(M&&i in CKEDITOR.dtd.$list)k=k.concat(b(e,d));else{l=!!q[i];if(i=="br"&&e.data("cke-eol")&&(!g||g==j-1)){n=(f=g?k[g-1].node:s.getItem(g+1))&&(!a(f)||!f.is("br"));f=f&&a(f)&&h.$block[f.getName()]}m==-1&&!l&&(m=g);l||(p=g);k.push({isElement:1,isLineBreak:n,isBlock:e.isBlockBoundary(),hasBlockSibling:f,node:e,name:i,allowed:l});f=n=0}}else k.push({isElement:0,node:e,allowed:1})}if(m>-1)k[m].firstNotAllowed=1;if(p>-1)k[p].lastNotAllowed=1;return k}function d(b,c){var e=[],f=b.getChildren(),l=f.count(),
-k,q=0,g=h[c],s=!b.is(h.$inline)||b.is("br");for(s&&e.push(" ");q<l;q++){k=f.getItem(q);a(k)&&!k.is(g)?e=e.concat(d(k,c)):e.push(k)}s&&e.push(" ");return e}function e(b){return b&&a(b)&&(b.is(h.$removeEmpty)||b.is("a")&&!b.isBlockBoundary())}function f(b,c,d,e){var i=b.clone(),k,q;i.setEndAt(c,CKEDITOR.POSITION_BEFORE_END);if((k=(new CKEDITOR.dom.walker(i)).next())&&a(k)&&s[k.getName()]&&(q=k.getPrevious())&&a(q)&&!q.getParent().equals(b.startContainer)&&d.contains(q)&&e.contains(k)&&k.isIdentical(q)){k.moveChildren(q);
-k.remove();f(b,c,d,e)}}function q(b,c){function d(b,c){if(c.isBlock&&c.isElement&&!c.node.is("br")&&a(b)&&b.is("br")){b.remove();return 1}}var e=c.endContainer.getChild(c.endOffset),f=c.endContainer.getChild(c.endOffset-1);e&&d(e,b[b.length-1]);if(f&&d(f,b[0])){c.setEnd(c.endContainer,c.endOffset-1);c.collapse()}}var h=CKEDITOR.dtd,s={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},j={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},p=CKEDITOR.tools.extend({},h.$inline);delete p.br;
-return function(s,n,u){var t=s.editor,A=t.getSelection().getRanges()[0],E=false;if(n=="unfiltered_html"){n="html";E=true}if(!A.checkReadOnly()){var v=(new CKEDITOR.dom.elementPath(A.startContainer,A.root)).blockLimit||A.root,n={type:n,dontFilter:E,editable:s,editor:t,range:A,blockLimit:v,mergeCandidates:[],zombies:[]},t=n.range,E=n.mergeCandidates,z,B,D,G;if(n.type=="text"&&t.shrink(CKEDITOR.SHRINK_ELEMENT,true,false)){z=CKEDITOR.dom.element.createFromHtml("<span>&nbsp;</span>",t.document);t.insertNode(z);
-t.setStartAfter(z)}B=new CKEDITOR.dom.elementPath(t.startContainer);n.endPath=D=new CKEDITOR.dom.elementPath(t.endContainer);if(!t.collapsed){var v=D.block||D.blockLimit,y=t.getCommonAncestor();v&&(!v.equals(y)&&!v.contains(y)&&t.checkEndOfBlock())&&n.zombies.push(v);t.deleteContents()}for(;(G=a(t.startContainer)&&t.startContainer.getChild(t.startOffset-1))&&a(G)&&G.isBlockBoundary()&&B.contains(G);)t.moveToPosition(G,CKEDITOR.POSITION_BEFORE_END);f(t,n.blockLimit,B,D);if(z){t.setEndBefore(z);t.collapse();
-z.remove()}z=t.startPath();if(v=z.contains(e,false,1)){t.splitElement(v);n.inlineStylesRoot=v;n.inlineStylesPeak=z.lastElement}z=t.createBookmark();(v=z.startNode.getPrevious(c))&&a(v)&&e(v)&&E.push(v);(v=z.startNode.getNext(c))&&a(v)&&e(v)&&E.push(v);for(v=z.startNode;(v=v.getParent())&&e(v);)E.push(v);t.moveToBookmark(z);if(z=u){z=n.range;if(n.type=="text"&&n.inlineStylesRoot){G=n.inlineStylesPeak;t=G.getDocument().createText("{cke-peak}");for(E=n.inlineStylesRoot.getParent();!G.equals(E);){t=t.appendTo(G.clone());
-G=G.getParent()}u=t.getOuterHtml().split("{cke-peak}").join(u)}G=n.blockLimit.getName();if(/^\s+|\s+$/.test(u)&&"span"in CKEDITOR.dtd[G])var w='<span data-cke-marker="1">&nbsp;</span>',u=w+u+w;u=n.editor.dataProcessor.toHtml(u,{context:null,fixForBody:false,dontFilter:n.dontFilter,filter:n.editor.activeFilter,enterMode:n.editor.activeEnterMode});G=z.document.createElement("body");G.setHtml(u);if(w){G.getFirst().remove();G.getLast().remove()}if((w=z.startPath().block)&&!(w.getChildCount()==1&&w.getBogus()))a:{var H;
-if(G.getChildCount()==1&&a(H=G.getFirst())&&H.is(j)){w=H.getElementsByTag("*");z=0;for(E=w.count();z<E;z++){t=w.getItem(z);if(!t.is(p))break a}H.moveChildren(H.getParent(1));H.remove()}}n.dataWrapper=G;z=u}if(z){H=n.range;var w=H.document,C,u=n.blockLimit;z=0;var K;G=[];var I,S,E=t=0,L,U;B=H.startContainer;var v=n.endPath.elements[0],V;D=v.getPosition(B);y=!!v.getCommonAncestor(B)&&D!=CKEDITOR.POSITION_IDENTICAL&&!(D&CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED);B=b(n.dataWrapper,n);
-for(q(B,H);z<B.length;z++){D=B[z];if(C=D.isLineBreak){C=H;L=u;var P=void 0,Y=void 0;if(D.hasBlockSibling)C=1;else{P=C.startContainer.getAscendant(h.$block,1);if(!P||!P.is({div:1,p:1}))C=0;else{Y=P.getPosition(L);if(Y==CKEDITOR.POSITION_IDENTICAL||Y==CKEDITOR.POSITION_CONTAINS)C=0;else{L=C.splitElement(P);C.moveToPosition(L,CKEDITOR.POSITION_AFTER_START);C=1}}}}if(C)E=z>0;else{C=H.startPath();if(!D.isBlock&&g(n.editor,C.block,C.blockLimit)&&(S=n.editor.activeEnterMode!=CKEDITOR.ENTER_BR&&n.editor.config.autoParagraph!==
-false?n.editor.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p":false)){S=w.createElement(S);S.appendBogus();H.insertNode(S);CKEDITOR.env.needsBrFiller&&(K=S.getBogus())&&K.remove();H.moveToPosition(S,CKEDITOR.POSITION_BEFORE_END)}if((C=H.startPath().block)&&!C.equals(I)){if(K=C.getBogus()){K.remove();G.push(C)}I=C}D.firstNotAllowed&&(t=1);if(t&&D.isElement){C=H.startContainer;for(L=null;C&&!h[C.getName()][D.name];){if(C.equals(u)){C=null;break}L=C;C=C.getParent()}if(C){if(L){U=H.splitElement(L);n.zombies.push(U);
-n.zombies.push(L)}}else{L=u.getName();V=!z;C=z==B.length-1;L=d(D.node,L);for(var P=[],Y=L.length,Z=0,$=void 0,X=0,W=-1;Z<Y;Z++){$=L[Z];if($==" "){if(!X&&(!V||Z)){P.push(new CKEDITOR.dom.text(" "));W=P.length}X=1}else{P.push($);X=0}}C&&W==P.length&&P.pop();V=P}}if(V){for(;C=V.pop();)H.insertNode(C);V=0}else H.insertNode(D.node);if(D.lastNotAllowed&&z<B.length-1){(U=y?v:U)&&H.setEndAt(U,CKEDITOR.POSITION_AFTER_START);t=0}H.collapse()}}n.dontMoveCaret=E;n.bogusNeededBlocks=G}K=n.range;var O;U=n.bogusNeededBlocks;
-for(V=K.createBookmark();I=n.zombies.pop();)if(I.getParent()){S=K.clone();S.moveToElementEditStart(I);S.removeEmptyBlocksAtEnd()}if(U)for(;I=U.pop();)CKEDITOR.env.needsBrFiller?I.appendBogus():I.append(K.document.createText(" "));for(;I=n.mergeCandidates.pop();)I.mergeSiblings();K.moveToBookmark(V);if(!n.dontMoveCaret){for(I=a(K.startContainer)&&K.startContainer.getChild(K.startOffset-1);I&&a(I)&&!I.is(h.$empty);){if(I.isBlockBoundary())K.moveToPosition(I,CKEDITOR.POSITION_BEFORE_END);else{if(e(I)&&
-I.getHtml().match(/(\s|&nbsp;)$/g)){O=null;break}O=K.clone();O.moveToPosition(I,CKEDITOR.POSITION_BEFORE_END)}I=I.getLast(c)}O&&K.moveToRange(O)}A.select();m(s)}}}(),w=function(){function a(b){b=new CKEDITOR.dom.walker(b);b.guard=function(a,b){if(b)return false;if(a.type==CKEDITOR.NODE_ELEMENT)return a.is(CKEDITOR.dtd.$tableContent)};b.evaluator=function(a){return a.type==CKEDITOR.NODE_ELEMENT};return b}function b(a,c,d){c=a.getDocument().createElement(c);a.append(c,d);return c}function c(a){var b=
-a.count(),d;for(b;b-- >0;){d=a.getItem(b);if(!CKEDITOR.tools.trim(d.getHtml())){d.appendBogus();CKEDITOR.env.ie&&(CKEDITOR.env.version<9&&d.getChildCount())&&d.getFirst().remove()}}}return function(d){var e=d.startContainer,f=e.getAscendant("table",1),g=false;c(f.getElementsByTag("td"));c(f.getElementsByTag("th"));f=d.clone();f.setStart(e,0);f=a(f).lastBackward();if(!f){f=d.clone();f.setEndAt(e,CKEDITOR.POSITION_BEFORE_END);f=a(f).lastForward();g=true}f||(f=e);if(f.is("table")){d.setStartAt(f,CKEDITOR.POSITION_BEFORE_START);
-d.collapse(true);f.remove()}else{f.is({tbody:1,thead:1,tfoot:1})&&(f=b(f,"tr",g));f.is("tr")&&(f=b(f,f.getParent().is("thead")?"th":"td",g));(e=f.getBogus())&&e.remove();d.moveToPosition(f,g?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END)}}}()})();
-(function(){function a(){var a=this._.fakeSelection,b;if(a){b=this.getSelection(1);if(!b||!b.isHidden()){a.reset();a=0}}if(!a){a=b||this.getSelection(1);if(!a||a.getType()==CKEDITOR.SELECTION_NONE)return}this.fire("selectionCheck",a);b=this.elementPath();if(!b.compare(this._.selectionPreviousPath)){if(CKEDITOR.env.webkit)this._.previousActive=this.document.getActive();this._.selectionPreviousPath=b;this.fire("selectionChange",{selection:a,path:b})}}function e(){t=true;if(!u){b.call(this);u=CKEDITOR.tools.setTimeout(b,
-200,this)}}function b(){u=null;if(t){CKEDITOR.tools.setTimeout(a,0,this);t=false}}function c(a){function b(c,d){return!c||c.type==CKEDITOR.NODE_TEXT?false:a.clone()["moveToElementEdit"+(d?"End":"Start")](c)}if(!(a.root instanceof CKEDITOR.editable))return false;var c=a.startContainer,d=a.getPreviousNode(y,null,c),e=a.getNextNode(y,null,c);return b(d)||b(e,1)||!d&&!e&&!(c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary()&&c.getBogus())?true:false}function f(a){return a.getCustomData("cke-fillingChar")}
-function d(a,b){var c=a&&a.removeCustomData("cke-fillingChar");if(c){if(b!==false){var d,e=a.getDocument().getSelection().getNative(),f=e&&e.type!="None"&&e.getRangeAt(0);if(c.getLength()>1&&f&&f.intersectsNode(c.$)){d=[e.anchorOffset,e.focusOffset];f=e.focusNode==c.$&&e.focusOffset>0;e.anchorNode==c.$&&e.anchorOffset>0&&d[0]--;f&&d[1]--;var h;f=e;if(!f.isCollapsed){h=f.getRangeAt(0);h.setStart(f.anchorNode,f.anchorOffset);h.setEnd(f.focusNode,f.focusOffset);h=h.collapsed}h&&d.unshift(d.pop())}}c.setText(g(c.getText()));
-if(d){c=e.getRangeAt(0);c.setStart(c.startContainer,d[0]);c.setEnd(c.startContainer,d[1]);e.removeAllRanges();e.addRange(c)}}}function g(a){return a.replace(/\u200B( )?/g,function(a){return a[1]?" ":""})}function h(a,b,c){var d=a.on("focus",function(a){a.cancel()},null,null,-100);if(CKEDITOR.env.ie)var e=a.getDocument().on("selectionchange",function(a){a.cancel()},null,null,-100);else{var f=new CKEDITOR.dom.range(a);f.moveToElementEditStart(a);var g=a.getDocument().$.createRange();g.setStart(f.startContainer.$,
-f.startOffset);g.collapse(1);b.removeAllRanges();b.addRange(g)}c&&a.focus();d.removeListener();e&&e.removeListener()}function m(a){var b=CKEDITOR.dom.element.createFromHtml('<div data-cke-hidden-sel="1" data-cke-temp="1" style="'+(CKEDITOR.env.ie?"display:none":"position:fixed;top:0;left:-1000px")+'">&nbsp;</div>',a.document);a.fire("lockSnapshot");a.editable().append(b);var c=a.getSelection(1),d=a.createRange(),e=c.root.on("selectionchange",function(a){a.cancel()},null,null,0);d.setStartAt(b,CKEDITOR.POSITION_AFTER_START);
-d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);c.selectRanges([d]);e.removeListener();a.fire("unlockSnapshot");a._.hiddenSelectionContainer=b}function j(a){var b={37:1,39:1,8:1,46:1};return function(c){var d=c.data.getKeystroke();if(b[d]){var e=a.getSelection().getRanges(),f=e[0];if(e.length==1&&f.collapsed)if((d=f[d<38?"getPreviousEditableNode":"getNextEditableNode"]())&&d.type==CKEDITOR.NODE_ELEMENT&&d.getAttribute("contenteditable")=="false"){a.getSelection().fake(d);c.data.preventDefault();c.cancel()}}}}
-function p(a){for(var b=0;b<a.length;b++){var c=a[b];c.getCommonAncestor().isReadOnly()&&a.splice(b,1);if(!c.collapsed){if(c.startContainer.isReadOnly())for(var d=c.startContainer,e;d;){if((e=d.type==CKEDITOR.NODE_ELEMENT)&&d.is("body")||!d.isReadOnly())break;e&&d.getAttribute("contentEditable")=="false"&&c.setStartAfter(d);d=d.getParent()}d=c.startContainer;e=c.endContainer;var f=c.startOffset,g=c.endOffset,h=c.clone();d&&d.type==CKEDITOR.NODE_TEXT&&(f>=d.getLength()?h.setStartAfter(d):h.setStartBefore(d));
-e&&e.type==CKEDITOR.NODE_TEXT&&(g?h.setEndAfter(e):h.setEndBefore(e));d=new CKEDITOR.dom.walker(h);d.evaluator=function(d){if(d.type==CKEDITOR.NODE_ELEMENT&&d.isReadOnly()){var e=c.clone();c.setEndBefore(d);c.collapsed&&a.splice(b--,1);if(!(d.getPosition(h.endContainer)&CKEDITOR.POSITION_CONTAINS)){e.setStartAfter(d);e.collapsed||a.splice(b+1,0,e)}return true}return false};d.next()}}return a}var u,t,y=CKEDITOR.dom.walker.invisible(1),n=function(){function a(b){return function(a){var c=a.editor.createRange();
-c.moveToClosestEditablePosition(a.selected,b)&&a.editor.getSelection().selectRanges([c]);return false}}function b(a){return function(b){var c=b.editor,d=c.createRange(),e;if(!(e=d.moveToClosestEditablePosition(b.selected,a)))e=d.moveToClosestEditablePosition(b.selected,!a);e&&c.getSelection().selectRanges([d]);c.fire("saveSnapshot");b.selected.remove();if(!e){d.moveToElementEditablePosition(c.editable());c.getSelection().selectRanges([d])}c.fire("saveSnapshot");return false}}var c=a(),d=a(1);return{37:c,
-38:c,39:d,40:d,8:b(),46:b(1)}}();CKEDITOR.on("instanceCreated",function(b){function c(){var a=f.getSelection();a&&a.removeAllRanges()}var f=b.editor;f.on("contentDom",function(){function b(){A=new CKEDITOR.dom.selection(f.getSelection());A.lock()}function c(){k.removeListener("mouseup",c);n.removeListener("mouseup",c);var a=CKEDITOR.document.$.selection,b=a.createRange();a.type!="None"&&b.parentElement().ownerDocument==i.$&&b.select()}var i=f.document,k=CKEDITOR.document,g=f.editable(),h=i.getBody(),
-n=i.getDocumentElement(),m=g.isInline(),p,A;CKEDITOR.env.gecko&&g.attachListener(g,"focus",function(a){a.removeListener();if(p!==0)if((a=f.getSelection().getNative())&&a.isCollapsed&&a.anchorNode==g.$){a=f.createRange();a.moveToElementEditStart(g);a.select()}},null,null,-2);g.attachListener(g,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){p&&CKEDITOR.env.webkit&&(p=f._.previousActive&&f._.previousActive.equals(i.getActive()));f.unlockSelection(p);p=0},null,null,-1);g.attachListener(g,"mousedown",
-function(){p=0});if(CKEDITOR.env.ie||m){w?g.attachListener(g,"beforedeactivate",b,null,null,-1):g.attachListener(f,"selectionCheck",b,null,null,-1);g.attachListener(g,CKEDITOR.env.webkit?"DOMFocusOut":"blur",function(){f.lockSelection(A);p=1},null,null,-1);g.attachListener(g,"mousedown",function(){p=0})}if(CKEDITOR.env.ie&&!m){var E;g.attachListener(g,"mousedown",function(a){if(a.data.$.button==2){a=f.document.getSelection();if(!a||a.getType()==CKEDITOR.SELECTION_NONE)E=f.window.getScrollPosition()}});
-g.attachListener(g,"mouseup",function(a){if(a.data.$.button==2&&E){f.document.$.documentElement.scrollLeft=E.x;f.document.$.documentElement.scrollTop=E.y}E=null});if(i.$.compatMode!="BackCompat"){if(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)n.on("mousedown",function(a){function b(a){a=a.data.$;if(d){var c=h.$.createTextRange();try{c.moveToPoint(a.clientX,a.clientY)}catch(f){}d.setEndPoint(e.compareEndPoints("StartToStart",c)<0?"EndToEnd":"StartToStart",c);d.select()}}function c(){n.removeListener("mousemove",
-b);k.removeListener("mouseup",c);n.removeListener("mouseup",c);d.select()}a=a.data;if(a.getTarget().is("html")&&a.$.y<n.$.clientHeight&&a.$.x<n.$.clientWidth){var d=h.$.createTextRange();try{d.moveToPoint(a.$.clientX,a.$.clientY)}catch(f){}var e=d.duplicate();n.on("mousemove",b);k.on("mouseup",c);n.on("mouseup",c)}});if(CKEDITOR.env.version>7&&CKEDITOR.env.version<11)n.on("mousedown",function(a){if(a.data.getTarget().is("html")){k.on("mouseup",c);n.on("mouseup",c)}})}}g.attachListener(g,"selectionchange",
-a,f);g.attachListener(g,"keyup",e,f);g.attachListener(g,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){f.forceNextSelectionCheck();f.selectionChange(1)});if(m&&(CKEDITOR.env.webkit||CKEDITOR.env.gecko)){var v;g.attachListener(g,"mousedown",function(){v=1});g.attachListener(i.getDocumentElement(),"mouseup",function(){v&&e.call(f);v=0})}else g.attachListener(CKEDITOR.env.ie?g:i.getDocumentElement(),"mouseup",e,f);CKEDITOR.env.webkit&&g.attachListener(i,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:d(g)}},
-null,null,-1);g.attachListener(g,"keydown",j(f),null,null,-1)});f.on("setData",function(){f.unlockSelection();CKEDITOR.env.webkit&&c()});f.on("contentDomUnload",function(){f.unlockSelection()});if(CKEDITOR.env.ie9Compat)f.on("beforeDestroy",c,null,null,9);f.on("dataReady",function(){delete f._.fakeSelection;delete f._.hiddenSelectionContainer;f.selectionChange(1)});f.on("loadSnapshot",function(){var a=f.editable().getLast(function(a){return a.type==CKEDITOR.NODE_ELEMENT});a&&a.hasAttribute("data-cke-hidden-sel")&&
-a.remove()},null,null,100);f.on("key",function(a){if(f.mode=="wysiwyg"){var b=f.getSelection();if(b.isFake){var c=n[a.data.keyCode];if(c)return c({editor:f,selected:b.getSelectedElement(),selection:b,keyEvent:a})}}})});CKEDITOR.on("instanceReady",function(a){function b(){var a=e.editable();if(a)if(a=f(a)){var c=e.document.$.defaultView.getSelection();c.type=="Caret"&&c.anchorNode==a.$&&(j=1);h=a.getText();a.setText(g(h))}}function c(){var a=e.editable();if(a)if(a=f(a)){a.setText(h);if(j){e.document.$.defaultView.getSelection().setPosition(a.$,
-a.getLength());j=0}}}var e=a.editor;if(CKEDITOR.env.webkit){e.on("selectionChange",function(){var a=e.editable(),b=f(a);b&&(b.getCustomData("ready")?d(a):b.setCustomData("ready",1))},null,null,-1);e.on("beforeSetMode",function(){d(e.editable())},null,null,-1);var h,j;e.on("beforeUndoImage",b);e.on("afterUndoImage",c);e.on("beforeGetData",b,null,null,0);e.on("getData",c)}});CKEDITOR.editor.prototype.selectionChange=function(b){(b?a:e).call(this)};CKEDITOR.editor.prototype.getSelection=function(a){if((this._.savedSelection||
-this._.fakeSelection)&&!a)return this._.savedSelection||this._.fakeSelection;return(a=this.editable())&&this.mode=="wysiwyg"?new CKEDITOR.dom.selection(a):null};CKEDITOR.editor.prototype.lockSelection=function(a){a=a||this.getSelection(1);if(a.getType()!=CKEDITOR.SELECTION_NONE){!a.isLocked&&a.lock();this._.savedSelection=a;return true}return false};CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;if(b){b.unlock(a);delete this._.savedSelection;return true}return false};
-CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath};CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)};CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);a.selectRanges([this]);return a};CKEDITOR.SELECTION_NONE=1;CKEDITOR.SELECTION_TEXT=2;CKEDITOR.SELECTION_ELEMENT=3;var w=typeof window.getSelection!=
-"function",o=1;CKEDITOR.dom.selection=function(a){if(a instanceof CKEDITOR.dom.selection)var b=a,a=a.root;var c=a instanceof CKEDITOR.dom.element;this.rev=b?b.rev:o++;this.document=a instanceof CKEDITOR.dom.document?a:a.getDocument();this.root=a=c?a:this.document.getBody();this.isLocked=0;this._={cache:{}};if(b){CKEDITOR.tools.extend(this._.cache,b._.cache);this.isFake=b.isFake;this.isLocked=b.isLocked;return this}c=w?this.document.$.selection:this.document.getWindow().$.getSelection();if(CKEDITOR.env.webkit)(c.type==
-"None"&&this.document.getActive().equals(a)||c.type=="Caret"&&c.anchorNode.nodeType==CKEDITOR.NODE_DOCUMENT)&&h(a,c);else if(CKEDITOR.env.gecko)c&&(this.document.getActive().equals(a)&&c.anchorNode&&c.anchorNode.nodeType==CKEDITOR.NODE_DOCUMENT)&&h(a,c,true);else if(CKEDITOR.env.ie){b=this.document.getActive();if(w)c.type=="None"&&(b&&b.equals(this.document.getDocumentElement()))&&h(a,null,true);else{(c=c&&c.anchorNode)&&(c=new CKEDITOR.dom.node(c));b&&(b.equals(this.document.getDocumentElement())&&
-c&&(a.equals(c)||a.contains(c)))&&h(a,null,true)}}var a=this.getNative(),d,e;if(a)if(a.getRangeAt)d=(e=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(e.commonAncestorContainer);else{try{e=a.createRange()}catch(f){}d=e&&CKEDITOR.dom.element.get(e.item&&e.item(0)||e.parentElement())}if(!d||!(d.type==CKEDITOR.NODE_ELEMENT||d.type==CKEDITOR.NODE_TEXT)||!this.root.equals(d)&&!this.root.contains(d)){this._.cache.type=CKEDITOR.SELECTION_NONE;this._.cache.startElement=null;this._.cache.selectedElement=
-null;this._.cache.selectedText="";this._.cache.ranges=new CKEDITOR.dom.rangeList}return this};var r={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1};CKEDITOR.dom.selection.prototype={getNative:function(){return this._.cache.nativeSel!==void 0?this._.cache.nativeSel:this._.cache.nativeSel=w?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:w?function(){var a=this._.cache;if(a.type)return a.type;
-var b=CKEDITOR.SELECTION_NONE;try{var c=this.getNative(),d=c.type;if(d=="Text")b=CKEDITOR.SELECTION_TEXT;if(d=="Control")b=CKEDITOR.SELECTION_ELEMENT;if(c.createRange().parentElement())b=CKEDITOR.SELECTION_TEXT}catch(e){}return a.type=b}:function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(!c||!c.rangeCount)b=CKEDITOR.SELECTION_NONE;else if(c.rangeCount==1){var c=c.getRangeAt(0),d=c.startContainer;if(d==c.endContainer&&d.nodeType==1&&c.endOffset-
-c.startOffset==1&&r[d.childNodes[c.startOffset].nodeName.toLowerCase()])b=CKEDITOR.SELECTION_ELEMENT}return a.type=b},getRanges:function(){var a=w?function(){function a(b){return(new CKEDITOR.dom.node(b)).getIndex()}var b=function(b,c){b=b.duplicate();b.collapse(c);var d=b.parentElement();if(!d.hasChildNodes())return{container:d,offset:0};for(var e=d.children,f,i,g=b.duplicate(),l=0,h=e.length-1,A=-1,j,v;l<=h;){A=Math.floor((l+h)/2);f=e[A];g.moveToElementText(f);j=g.compareEndPoints("StartToStart",
-b);if(j>0)h=A-1;else if(j<0)l=A+1;else return{container:d,offset:a(f)}}if(A==-1||A==e.length-1&&j<0){g.moveToElementText(d);g.setEndPoint("StartToStart",b);g=g.text.replace(/(\r\n|\r)/g,"\n").length;e=d.childNodes;if(!g){f=e[e.length-1];return f.nodeType!=CKEDITOR.NODE_TEXT?{container:d,offset:e.length}:{container:f,offset:f.nodeValue.length}}for(d=e.length;g>0&&d>0;){i=e[--d];if(i.nodeType==CKEDITOR.NODE_TEXT){v=i;g=g-i.nodeValue.length}}return{container:v,offset:-g}}g.collapse(j>0?true:false);g.setEndPoint(j>
-0?"StartToStart":"EndToStart",b);g=g.text.replace(/(\r\n|\r)/g,"\n").length;if(!g)return{container:d,offset:a(f)+(j>0?0:1)};for(;g>0;)try{i=f[j>0?"previousSibling":"nextSibling"];if(i.nodeType==CKEDITOR.NODE_TEXT){g=g-i.nodeValue.length;v=i}f=i}catch(z){return{container:d,offset:a(f)}}return{container:v,offset:j>0?-g:v.nodeValue.length+g}};return function(){var a=this.getNative(),c=a&&a.createRange(),d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT){a=new CKEDITOR.dom.range(this.root);
-d=b(c,true);a.setStart(new CKEDITOR.dom.node(d.container),d.offset);d=b(c);a.setEnd(new CKEDITOR.dom.node(d.container),d.offset);a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse();return[a]}if(d==CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e<c.length;e++){for(var f=c.item(e),g=f.parentNode,i=0,a=new CKEDITOR.dom.range(this.root);i<g.childNodes.length&&g.childNodes[i]!=f;i++);a.setStart(new CKEDITOR.dom.node(g),i);a.setEnd(new CKEDITOR.dom.node(g),
-i+1);d.push(a)}return d}return[]}}():function(){var a=[],b,c=this.getNative();if(!c)return a;for(var d=0;d<c.rangeCount;d++){var e=c.getRangeAt(d);b=new CKEDITOR.dom.range(this.root);b.setStart(new CKEDITOR.dom.node(e.startContainer),e.startOffset);b.setEnd(new CKEDITOR.dom.node(e.endContainer),e.endOffset);a.push(b)}return a};return function(b){var c=this._.cache,d=c.ranges;if(!d)c.ranges=d=new CKEDITOR.dom.rangeList(a.call(this));return!b?d:p(new CKEDITOR.dom.rangeList(d.slice()))}}(),getStartElement:function(){var a=
-this._.cache;if(a.startElement!==void 0)return a.startElement;var b;switch(this.getType()){case CKEDITOR.SELECTION_ELEMENT:return this.getSelectedElement();case CKEDITOR.SELECTION_TEXT:var c=this.getRanges()[0];if(c){if(c.collapsed){b=c.startContainer;b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent())}else{for(c.optimize();;){b=c.startContainer;if(c.startOffset==(b.getChildCount?b.getChildCount():b.getLength())&&!b.isBlockBoundary())c.setStartAfter(b);else break}b=c.startContainer;if(b.type!=CKEDITOR.NODE_ELEMENT)return b.getParent();
-b=b.getChild(c.startOffset);if(!b||b.type!=CKEDITOR.NODE_ELEMENT)b=c.startContainer;else for(c=b.getFirst();c&&c.type==CKEDITOR.NODE_ELEMENT;){b=c;c=c.getFirst()}}b=b.$}}return a.startElement=b?new CKEDITOR.dom.element(b):null},getSelectedElement:function(){var a=this._.cache;if(a.selectedElement!==void 0)return a.selectedElement;var b=this,c=CKEDITOR.tools.tryThese(function(){return b.getNative().createRange().item(0)},function(){for(var a=b.getRanges()[0].clone(),c,d,e=2;e&&(!(c=a.getEnclosedNode())||
-!(c.type==CKEDITOR.NODE_ELEMENT&&r[c.getName()]&&(d=c)));e--)a.shrink(CKEDITOR.SHRINK_ELEMENT);return d&&d.$});return a.selectedElement=c?new CKEDITOR.dom.element(c):null},getSelectedText:function(){var a=this._.cache;if(a.selectedText!==void 0)return a.selectedText;var b=this.getNative(),b=w?b.type=="Control"?"":b.createRange().text:b.toString();return a.selectedText=b},lock:function(){this.getRanges();this.getStartElement();this.getSelectedElement();this.getSelectedText();this._.cache.nativeSel=
-null;this.isLocked=1},unlock:function(a){if(this.isLocked){if(a)var b=this.getSelectedElement(),c=!b&&this.getRanges(),d=this.isFake;this.isLocked=0;this.reset();if(a)(a=b||c[0]&&c[0].getCommonAncestor())&&a.getAscendant("body",1)&&(d?this.fake(b):b?this.selectElement(b):this.selectRanges(c))}},reset:function(){this._.cache={};this.isFake=0;var a=this.root.editor;if(a&&a._.fakeSelection&&this.rev==a._.fakeSelection.rev){delete a._.fakeSelection;var b=a._.hiddenSelectionContainer;if(b){var c=a.checkDirty();
-a.fire("lockSnapshot");b.remove();a.fire("unlockSnapshot");!c&&a.resetDirty()}delete a._.hiddenSelectionContainer}this.rev=o++},selectElement:function(a){var b=new CKEDITOR.dom.range(this.root);b.setStartBefore(a);b.setEndAfter(a);this.selectRanges([b])},selectRanges:function(a){var b=this.root.editor,b=b&&b._.hiddenSelectionContainer;this.reset();if(b)for(var b=this.root,e,f=0;f<a.length;++f){e=a[f];if(e.endContainer.equals(b))e.endOffset=Math.min(e.endOffset,b.getChildCount())}if(a.length)if(this.isLocked){var g=
-CKEDITOR.document.getActive();this.unlock();this.selectRanges(a);this.lock();g&&!g.equals(this.root)&&g.focus()}else{var h;a:{var j,n;if(a.length==1&&!(n=a[0]).collapsed&&(h=n.getEnclosedNode())&&h.type==CKEDITOR.NODE_ELEMENT){n=n.clone();n.shrink(CKEDITOR.SHRINK_ELEMENT,true);if((j=n.getEnclosedNode())&&j.type==CKEDITOR.NODE_ELEMENT)h=j;if(h.getAttribute("contenteditable")=="false")break a}h=void 0}if(h)this.fake(h);else{if(w){n=CKEDITOR.dom.walker.whitespaces(true);j=/\ufeff|\u00a0/;b={table:1,
-tbody:1,tr:1};if(a.length>1){h=a[a.length-1];a[0].setEnd(h.endContainer,h.endOffset)}h=a[0];var a=h.collapsed,m,p,o;if((e=h.getEnclosedNode())&&e.type==CKEDITOR.NODE_ELEMENT&&e.getName()in r&&(!e.is("a")||!e.getText()))try{o=e.$.createControlRange();o.addElement(e.$);o.select();return}catch(t){}if(h.startContainer.type==CKEDITOR.NODE_ELEMENT&&h.startContainer.getName()in b||h.endContainer.type==CKEDITOR.NODE_ELEMENT&&h.endContainer.getName()in b){h.shrink(CKEDITOR.NODE_ELEMENT,true);a=h.collapsed}o=
-h.createBookmark();b=o.startNode;if(!a)g=o.endNode;o=h.document.$.body.createTextRange();o.moveToElementText(b.$);o.moveStart("character",1);if(g){j=h.document.$.body.createTextRange();j.moveToElementText(g.$);o.setEndPoint("EndToEnd",j);o.moveEnd("character",-1)}else{m=b.getNext(n);p=b.hasAscendant("pre");m=!(m&&m.getText&&m.getText().match(j))&&(p||!b.hasPrevious()||b.getPrevious().is&&b.getPrevious().is("br"));p=h.document.createElement("span");p.setHtml("&#65279;");p.insertBefore(b);m&&h.document.createText("").insertBefore(b)}h.setStartBefore(b);
-b.remove();if(a){if(m){o.moveStart("character",-1);o.select();h.document.$.selection.clear()}else o.select();h.moveToPosition(p,CKEDITOR.POSITION_BEFORE_START);p.remove()}else{h.setEndBefore(g);g.remove();o.select()}}else{g=this.getNative();if(!g)return;this.removeAllRanges();for(o=0;o<a.length;o++){if(o<a.length-1){m=a[o];p=a[o+1];j=m.clone();j.setStart(m.endContainer,m.endOffset);j.setEnd(p.startContainer,p.startOffset);if(!j.collapsed){j.shrink(CKEDITOR.NODE_ELEMENT,true);h=j.getCommonAncestor();
-j=j.getEnclosedNode();if(h.isReadOnly()||j&&j.isReadOnly()){p.setStart(m.startContainer,m.startOffset);a.splice(o--,1);continue}}}h=a[o];p=this.document.$.createRange();if(h.collapsed&&CKEDITOR.env.webkit&&c(h)){m=this.root;d(m,false);j=m.getDocument().createText("​");m.setCustomData("cke-fillingChar",j);h.insertNode(j);if((m=j.getNext())&&!j.getPrevious()&&m.type==CKEDITOR.NODE_ELEMENT&&m.getName()=="br"){d(this.root);h.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START)}else h.moveToPosition(j,CKEDITOR.POSITION_AFTER_END)}p.setStart(h.startContainer.$,
-h.startOffset);try{p.setEnd(h.endContainer.$,h.endOffset)}catch(A){if(A.toString().indexOf("NS_ERROR_ILLEGAL_VALUE")>=0){h.collapse(1);p.setEnd(h.endContainer.$,h.endOffset)}else throw A;}g.addRange(p)}}this.reset();this.root.fire("selectionchange")}}},fake:function(a){var b=this.root.editor;this.reset();m(b);var c=this._.cache,d=new CKEDITOR.dom.range(this.root);d.setStartBefore(a);d.setEndAfter(a);c.ranges=new CKEDITOR.dom.rangeList(d);c.selectedElement=c.startElement=a;c.type=CKEDITOR.SELECTION_ELEMENT;
-c.selectedText=c.nativeSel=null;this.isFake=1;this.rev=o++;b._.fakeSelection=this;this.root.fire("selectionchange")},isHidden:function(){var a=this.getCommonAncestor();a&&a.type==CKEDITOR.NODE_TEXT&&(a=a.getParent());return!(!a||!a.data("cke-hidden-sel"))},createBookmarks:function(a){a=this.getRanges().createBookmarks(a);this.isFake&&(a.isFake=1);return a},createBookmarks2:function(a){a=this.getRanges().createBookmarks2(a);this.isFake&&(a.isFake=1);return a},selectBookmarks:function(a){for(var b=
-[],c=0;c<a.length;c++){var d=new CKEDITOR.dom.range(this.root);d.moveToBookmark(a[c]);b.push(d)}a.isFake?this.fake(b[0].getEnclosedNode()):this.selectRanges(b);return this},getCommonAncestor:function(){var a=this.getRanges();return!a.length?null:a[0].startContainer.getCommonAncestor(a[a.length-1].endContainer)},scrollIntoView:function(){this.type!=CKEDITOR.SELECTION_NONE&&this.getRanges()[0].scrollIntoView()},removeAllRanges:function(){if(this.getType()!=CKEDITOR.SELECTION_NONE){var a=this.getNative();
-try{a&&a[w?"empty":"removeAllRanges"]()}catch(b){}this.reset()}}}})();"use strict";CKEDITOR.STYLE_BLOCK=1;CKEDITOR.STYLE_INLINE=2;CKEDITOR.STYLE_OBJECT=3;
-(function(){function a(a,b){for(var c,d;a=a.getParent();){if(a.equals(b))break;if(a.getAttribute("data-nostyle"))c=a;else if(!d){var e=a.getAttribute("contentEditable");e=="false"?c=a:e=="true"&&(d=1)}}return c}function e(b){var d=b.document;if(b.collapsed){d=o(this,d);b.insertNode(d);b.moveToPosition(d,CKEDITOR.POSITION_BEFORE_END)}else{var f=this.element,g=this._.definition,h,j=g.ignoreReadonly,i=j||g.includeReadonly;i==null&&(i=b.root.getCustomData("cke_includeReadonly"));var k=CKEDITOR.dtd[f];
-if(!k){h=true;k=CKEDITOR.dtd.span}b.enlarge(CKEDITOR.ENLARGE_INLINE,1);b.trim();var n=b.createBookmark(),l=n.startNode,m=n.endNode,p=l,q;if(!j){var t=b.getCommonAncestor(),j=a(l,t),t=a(m,t);j&&(p=j.getNextSourceNode(true));t&&(m=t)}for(p.getPosition(m)==CKEDITOR.POSITION_FOLLOWING&&(p=0);p;){j=false;if(p.equals(m)){p=null;j=true}else{var r=p.type==CKEDITOR.NODE_ELEMENT?p.getName():null,t=r&&p.getAttribute("contentEditable")=="false",u=r&&p.getAttribute("data-nostyle");if(r&&p.data("cke-bookmark")){p=
-p.getNextSourceNode(true);continue}if(t&&i&&CKEDITOR.dtd.$block[r])for(var s=p,w=c(s),x=void 0,F=w.length,M=0,s=F&&new CKEDITOR.dom.range(s.getDocument());M<F;++M){var x=w[M],X=CKEDITOR.filter.instances[x.data("cke-filter")];if(X?X.check(this):1){s.selectNodeContents(x);e.call(this,s)}}w=r?!k[r]||u?0:t&&!i?0:(p.getPosition(m)|Q)==Q&&(!g.childRule||g.childRule(p)):1;if(w)if((w=p.getParent())&&((w.getDtd()||CKEDITOR.dtd.span)[f]||h)&&(!g.parentRule||g.parentRule(w))){if(!q&&(!r||!CKEDITOR.dtd.$removeEmpty[r]||
-(p.getPosition(m)|Q)==Q)){q=b.clone();q.setStartBefore(p)}r=p.type;if(r==CKEDITOR.NODE_TEXT||t||r==CKEDITOR.NODE_ELEMENT&&!p.getChildCount()){for(var r=p,W;(j=!r.getNext(N))&&(W=r.getParent(),k[W.getName()])&&(W.getPosition(l)|J)==J&&(!g.childRule||g.childRule(W));)r=W;q.setEndAfter(r)}}else j=true;else j=true;p=p.getNextSourceNode(u||t)}if(j&&q&&!q.collapsed){for(var j=o(this,d),t=j.hasAttributes(),u=q.getCommonAncestor(),r={},w={},x={},F={},O,T,R;j&&u;){if(u.getName()==f){for(O in g.attributes)if(!F[O]&&
-(R=u.getAttribute(T)))j.getAttribute(O)==R?w[O]=1:F[O]=1;for(T in g.styles)if(!x[T]&&(R=u.getStyle(T)))j.getStyle(T)==R?r[T]=1:x[T]=1}u=u.getParent()}for(O in w)j.removeAttribute(O);for(T in r)j.removeStyle(T);t&&!j.hasAttributes()&&(j=null);if(j){q.extractContents().appendTo(j);q.insertNode(j);y.call(this,j);j.mergeSiblings();CKEDITOR.env.ie||j.$.normalize()}else{j=new CKEDITOR.dom.element("span");q.extractContents().appendTo(j);q.insertNode(j);y.call(this,j);j.remove(true)}q=null}}b.moveToBookmark(n);
-b.shrink(CKEDITOR.SHRINK_TEXT);b.shrink(CKEDITOR.NODE_ELEMENT,true)}}function b(a){function b(){for(var a=new CKEDITOR.dom.elementPath(d.getParent()),c=new CKEDITOR.dom.elementPath(i.getParent()),e=null,f=null,g=0;g<a.elements.length;g++){var h=a.elements[g];if(h==a.block||h==a.blockLimit)break;p.checkElementRemovable(h)&&(e=h)}for(g=0;g<c.elements.length;g++){h=c.elements[g];if(h==c.block||h==c.blockLimit)break;p.checkElementRemovable(h)&&(f=h)}f&&i.breakParent(f);e&&d.breakParent(e)}a.enlarge(CKEDITOR.ENLARGE_INLINE,
-1);var c=a.createBookmark(),d=c.startNode;if(a.collapsed){for(var e=new CKEDITOR.dom.elementPath(d.getParent(),a.root),f,g=0,h;g<e.elements.length&&(h=e.elements[g]);g++){if(h==e.block||h==e.blockLimit)break;if(this.checkElementRemovable(h)){var j;if(a.collapsed&&(a.checkBoundaryOfElement(h,CKEDITOR.END)||(j=a.checkBoundaryOfElement(h,CKEDITOR.START)))){f=h;f.match=j?"start":"end"}else{h.mergeSiblings();h.is(this.element)?t.call(this,h):n(h,k(this)[h.getName()])}}}if(f){h=d;for(g=0;;g++){j=e.elements[g];
-if(j.equals(f))break;else if(j.match)continue;else j=j.clone();j.append(h);h=j}h[f.match=="start"?"insertBefore":"insertAfter"](f)}}else{var i=c.endNode,p=this;b();for(e=d;!e.equals(i);){f=e.getNextSourceNode();if(e.type==CKEDITOR.NODE_ELEMENT&&this.checkElementRemovable(e)){e.getName()==this.element?t.call(this,e):n(e,k(this)[e.getName()]);if(f.type==CKEDITOR.NODE_ELEMENT&&f.contains(d)){b();f=d.getNext()}}e=f}}a.moveToBookmark(c);a.shrink(CKEDITOR.NODE_ELEMENT,true)}function c(a){var b=[];a.forEach(function(a){if(a.getAttribute("contenteditable")==
-"true"){b.push(a);return false}},CKEDITOR.NODE_ELEMENT,true);return b}function f(a){var b=a.getEnclosedNode()||a.getCommonAncestor(false,true);(a=(new CKEDITOR.dom.elementPath(b,a.root)).contains(this.element,1))&&!a.isReadOnly()&&r(a,this)}function d(a){var b=a.getCommonAncestor(true,true);if(a=(new CKEDITOR.dom.elementPath(b,a.root)).contains(this.element,1)){var b=this._.definition,c=b.attributes;if(c)for(var d in c)a.removeAttribute(d,c[d]);if(b.styles)for(var e in b.styles)b.styles.hasOwnProperty(e)&&
-a.removeStyle(e)}}function g(a){var b=a.createBookmark(true),c=a.createIterator();c.enforceRealBlocks=true;if(this._.enterMode)c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e=a.document,f;d=c.getNextParagraph();)if(!d.isReadOnly()&&(c.activeFilter?c.activeFilter.check(this):1)){f=o(this,e,d);m(d,f)}a.moveToBookmark(b)}function h(a){var b=a.createBookmark(1),c=a.createIterator();c.enforceRealBlocks=true;c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e;d=c.getNextParagraph();)if(this.checkElementRemovable(d))if(d.is("pre")){(e=
-this._.enterMode==CKEDITOR.ENTER_BR?null:a.document.createElement(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))&&d.copyAttributes(e);m(d,e)}else t.call(this,d);a.moveToBookmark(b)}function m(a,b){var c=!b;if(c){b=a.getDocument().createElement("div");a.copyAttributes(b)}var d=b&&b.is("pre"),e=a.is("pre"),f=!d&&e;if(d&&!e){e=b;(f=a.getBogus())&&f.remove();f=a.getHtml();f=p(f,/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g,"");f=f.replace(/[ \t\r\n]*(<br[^>]*>)[ \t\r\n]*/gi,"$1");f=f.replace(/([ \t\n\r]+|&nbsp;)/g,
-" ");f=f.replace(/<br\b[^>]*>/gi,"\n");if(CKEDITOR.env.ie){var g=a.getDocument().createElement("div");g.append(e);e.$.outerHTML="<pre>"+f+"</pre>";e.copyAttributes(g.getFirst());e=g.getFirst().remove()}else e.setHtml(f);b=e}else f?b=u(c?[a.getHtml()]:j(a),b):a.moveChildren(b);b.replace(a);if(d){var c=b,h;if((h=c.getPrevious(F))&&h.type==CKEDITOR.NODE_ELEMENT&&h.is("pre")){d=p(h.getHtml(),/\n$/,"")+"\n\n"+p(c.getHtml(),/^\n/,"");CKEDITOR.env.ie?c.$.outerHTML="<pre>"+d+"</pre>":c.setHtml(d);h.remove()}}else c&&
-w(b)}function j(a){var b=[];p(a.getOuterHtml(),/(\S\s*)\n(?:\s|(<span[^>]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"</pre>"+c+"<pre>"}).replace(/<pre\b.*?>([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)});return b}function p(a,b,c){var d="",e="",a=a.replace(/(^<span[^>]+data-cke-bookmark.*?\/span>)|(<span[^>]+data-cke-bookmark.*?\/span>$)/gi,function(a,b,c){b&&(d=b);c&&(e=c);return""});return d+a.replace(b,c)+e}function u(a,b){var c;a.length>1&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));
-for(var d=0;d<a.length;d++){var e=a[d],e=e.replace(/(\r\n|\r)/g,"\n"),e=p(e,/^[ \t]*\n/,""),e=p(e,/\n$/,""),e=p(e,/^[ \t]+|[ \t]+$/g,function(a,b){return a.length==1?"&nbsp;":b?" "+CKEDITOR.tools.repeat("&nbsp;",a.length-1):CKEDITOR.tools.repeat("&nbsp;",a.length-1)+" "}),e=e.replace(/\n/g,"<br>"),e=e.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat("&nbsp;",a.length-1)+" "});if(c){var f=b.clone();f.setHtml(e);c.append(f)}else b.setHtml(e)}return c||b}function t(a,b){var c=this._.definition,
-d=c.attributes,c=c.styles,e=k(this)[a.getName()],f=CKEDITOR.tools.isEmpty(d)&&CKEDITOR.tools.isEmpty(c),g;for(g in d)if(!((g=="class"||this._.definition.fullMatch)&&a.getAttribute(g)!=l(g,d[g]))&&!(b&&g.slice(0,5)=="data-")){f=a.hasAttribute(g);a.removeAttribute(g)}for(var h in c)if(!(this._.definition.fullMatch&&a.getStyle(h)!=l(h,c[h],true))){f=f||!!a.getStyle(h);a.removeStyle(h)}n(a,e,x[a.getName()]);f&&(this._.definition.alwaysRemoveElement?w(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==
-CKEDITOR.ENTER_BR&&!a.hasAttributes()?w(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function y(a){for(var b=k(this),c=a.getElementsByTag(this.element),d,e=c.count();--e>=0;){d=c.getItem(e);d.isReadOnly()||t.call(this,d,true)}for(var f in b)if(f!=this.element){c=a.getElementsByTag(f);for(e=c.count()-1;e>=0;e--){d=c.getItem(e);d.isReadOnly()||n(d,b[f])}}}function n(a,b,c){if(b=b&&b.attributes)for(var d=0;d<b.length;d++){var e=b[d][0],f;if(f=a.getAttribute(e)){var g=b[d][1];(g===null||
-g.test&&g.test(f)||typeof g=="string"&&f==g)&&a.removeAttribute(e)}}c||w(a)}function w(a,b){if(!a.hasAttributes()||b)if(CKEDITOR.dtd.$block[a.getName()]){var c=a.getPrevious(F),d=a.getNext(F);c&&(c.type==CKEDITOR.NODE_TEXT||!c.isBlockBoundary({br:1}))&&a.append("br",1);d&&(d.type==CKEDITOR.NODE_TEXT||!d.isBlockBoundary({br:1}))&&a.append("br");a.remove(true)}else{c=a.getFirst();d=a.getLast();a.remove(true);if(c){c.type==CKEDITOR.NODE_ELEMENT&&c.mergeSiblings();d&&(!c.equals(d)&&d.type==CKEDITOR.NODE_ELEMENT)&&
-d.mergeSiblings()}}}function o(a,b,c){var d;d=a.element;d=="*"&&(d="span");d=new CKEDITOR.dom.element(d,b);c&&c.copyAttributes(d);d=r(d,a);b.getCustomData("doc_processing_style")&&d.hasAttribute("id")?d.removeAttribute("id"):b.setCustomData("doc_processing_style",1);return d}function r(a,b){var c=b._.definition,d=c.attributes,c=CKEDITOR.style.getStyleText(c);if(d)for(var e in d)a.setAttribute(e,d[e]);c&&a.setAttribute("style",c);return a}function i(a,b){for(var c in a)a[c]=a[c].replace(R,function(a,
-c){return b[c]})}function k(a){if(a._.overrides)return a._.overrides;var b=a._.overrides={},c=a._.definition.overrides;if(c){CKEDITOR.tools.isArray(c)||(c=[c]);for(var d=0;d<c.length;d++){var e=c[d],f,g;if(typeof e=="string")f=e.toLowerCase();else{f=e.element?e.element.toLowerCase():a.element;g=e.attributes}e=b[f]||(b[f]={});if(g){var e=e.attributes=e.attributes||[],h;for(h in g)e.push([h.toLowerCase(),g[h]])}}}return b}function l(a,b,c){var d=new CKEDITOR.dom.element("span");d[c?"setStyle":"setAttribute"](a,
-b);return d[c?"getStyle":"getAttribute"](a)}function q(a,b,c){for(var d=a.document,e=a.getRanges(),b=b?this.removeFromRange:this.applyToRange,f,g=e.createIterator();f=g.getNextRange();)b.call(this,f,c);a.selectRanges(e);d.removeCustomData("doc_processing_style")}var x={address:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,p:1,pre:1,section:1,header:1,footer:1,nav:1,article:1,aside:1,figure:1,dialog:1,hgroup:1,time:1,meter:1,menu:1,command:1,keygen:1,output:1,progress:1,details:1,datagrid:1,datalist:1},s=
-{a:1,blockquote:1,embed:1,hr:1,img:1,li:1,object:1,ol:1,table:1,td:1,tr:1,th:1,ul:1,dl:1,dt:1,dd:1,form:1,audio:1,video:1},M=/\s*(?:;\s*|$)/,R=/#\((.+?)\)/g,N=CKEDITOR.dom.walker.bookmark(0,1),F=CKEDITOR.dom.walker.whitespaces(1);CKEDITOR.style=function(a,b){if(typeof a.type=="string")return new CKEDITOR.style.customHandlers[a.type](a);var c=a.attributes;if(c&&c.style){a.styles=CKEDITOR.tools.extend({},a.styles,CKEDITOR.tools.parseCssText(c.style));delete c.style}if(b){a=CKEDITOR.tools.clone(a);i(a.attributes,
-b);i(a.styles,b)}c=this.element=a.element?typeof a.element=="string"?a.element.toLowerCase():a.element:"*";this.type=a.type||(x[c]?CKEDITOR.STYLE_BLOCK:s[c]?CKEDITOR.STYLE_OBJECT:CKEDITOR.STYLE_INLINE);if(typeof this.element=="object")this.type=CKEDITOR.STYLE_OBJECT;this._={definition:a}};CKEDITOR.style.prototype={apply:function(a){if(a instanceof CKEDITOR.dom.document)return q.call(this,a.getSelection());if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;if(!b)this._.enterMode=a.activeEnterMode;
-q.call(this,a.getSelection(),0,a);this._.enterMode=b}},remove:function(a){if(a instanceof CKEDITOR.dom.document)return q.call(this,a.getSelection(),1);if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;if(!b)this._.enterMode=a.activeEnterMode;q.call(this,a.getSelection(),1,a);this._.enterMode=b}},applyToRange:function(a){this.applyToRange=this.type==CKEDITOR.STYLE_INLINE?e:this.type==CKEDITOR.STYLE_BLOCK?g:this.type==CKEDITOR.STYLE_OBJECT?f:null;return this.applyToRange(a)},removeFromRange:function(a){this.removeFromRange=
-this.type==CKEDITOR.STYLE_INLINE?b:this.type==CKEDITOR.STYLE_BLOCK?h:this.type==CKEDITOR.STYLE_OBJECT?d:null;return this.removeFromRange(a)},applyToObject:function(a){r(a,this)},checkActive:function(a,b){switch(this.type){case CKEDITOR.STYLE_BLOCK:return this.checkElementRemovable(a.block||a.blockLimit,true,b);case CKEDITOR.STYLE_OBJECT:case CKEDITOR.STYLE_INLINE:for(var c=a.elements,d=0,e;d<c.length;d++){e=c[d];if(!(this.type==CKEDITOR.STYLE_INLINE&&(e==a.block||e==a.blockLimit))){if(this.type==
-CKEDITOR.STYLE_OBJECT){var f=e.getName();if(!(typeof this.element=="string"?f==this.element:f in this.element))continue}if(this.checkElementRemovable(e,true,b))return true}}}return false},checkApplicable:function(a,b,c){b&&b instanceof CKEDITOR.filter&&(c=b);if(c&&!c.check(this))return false;switch(this.type){case CKEDITOR.STYLE_OBJECT:return!!a.contains(this.element);case CKEDITOR.STYLE_BLOCK:return!!a.blockLimit.getDtd()[this.element]}return true},checkElementMatch:function(a,b){var c=this._.definition;
-if(!a||!c.ignoreReadonly&&a.isReadOnly())return false;var d=a.getName();if(typeof this.element=="string"?d==this.element:d in this.element){if(!b&&!a.hasAttributes())return true;if(d=c._AC)c=d;else{var d={},e=0,f=c.attributes;if(f)for(var g in f){e++;d[g]=f[g]}if(g=CKEDITOR.style.getStyleText(c)){d.style||e++;d.style=g}d._length=e;c=c._AC=d}if(c._length){for(var h in c)if(h!="_length"){e=a.getAttribute(h)||"";if(h=="style")a:{d=c[h];typeof d=="string"&&(d=CKEDITOR.tools.parseCssText(d));typeof e==
-"string"&&(e=CKEDITOR.tools.parseCssText(e,true));g=void 0;for(g in d)if(!(g in e&&(e[g]==d[g]||d[g]=="inherit"||e[g]=="inherit"))){d=false;break a}d=true}else d=c[h]==e;if(d){if(!b)return true}else if(b)return false}if(b)return true}else return true}return false},checkElementRemovable:function(a,b,c){if(this.checkElementMatch(a,b,c))return true;if(b=k(this)[a.getName()]){var d;if(!(b=b.attributes))return true;for(c=0;c<b.length;c++){d=b[c][0];if(d=a.getAttribute(d)){var e=b[c][1];if(e===null||typeof e==
-"string"&&d==e||e.test(d))return true}}}return false},buildPreview:function(a){var b=this._.definition,c=[],d=b.element;d=="bdo"&&(d="span");var c=["<",d],e=b.attributes;if(e)for(var f in e)c.push(" ",f,'="',e[f],'"');(e=CKEDITOR.style.getStyleText(b))&&c.push(' style="',e,'"');c.push(">",a||b.name,"</",d,">");return c.join("")},getDefinition:function(){return this._.definition}};CKEDITOR.style.getStyleText=function(a){var b=a._ST;if(b)return b;var b=a.styles,c=a.attributes&&a.attributes.style||"",
-d="";c.length&&(c=c.replace(M,";"));for(var e in b){var f=b[e],g=(e+":"+f).replace(M,";");f=="inherit"?d=d+g:c=c+g}c.length&&(c=CKEDITOR.tools.normalizeCssText(c,true));return a._ST=c+d};CKEDITOR.style.customHandlers={};CKEDITOR.style.addCustomHandler=function(a){var b=function(a){this._={definition:a};this.setup&&this.setup(a)};b.prototype=CKEDITOR.tools.extend(CKEDITOR.tools.prototypedCopy(CKEDITOR.style.prototype),{assignedTo:CKEDITOR.STYLE_OBJECT},a,true);return this.customHandlers[a.type]=b};
-var Q=CKEDITOR.POSITION_PRECEDING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED,J=CKEDITOR.POSITION_FOLLOWING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED})();CKEDITOR.styleCommand=function(a,e){this.requiredContent=this.allowedContent=this.style=a;CKEDITOR.tools.extend(this,e,true)};CKEDITOR.styleCommand.prototype.exec=function(a){a.focus();this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)};
-CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet");CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet);CKEDITOR.loadStylesSet=function(a,e,b){CKEDITOR.stylesSet.addExternal(a,e,"");CKEDITOR.stylesSet.load(a,b)};
-CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{attachStyleStateChange:function(a,e){var b=this._.styleStateChangeCallbacks;if(!b){b=this._.styleStateChangeCallbacks=[];this.on("selectionChange",function(a){for(var e=0;e<b.length;e++){var d=b[e],g=d.style.checkActive(a.data.path,this)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF;d.fn.call(this,g)}})}b.push({style:a,fn:e})},applyStyle:function(a){a.apply(this)},removeStyle:function(a){a.remove(this)},getStylesSet:function(a){if(this._.stylesDefinitions)a(this._.stylesDefinitions);
-else{var e=this,b=e.config.stylesCombo_stylesSet||e.config.stylesSet;if(b===false)a(null);else if(b instanceof Array){e._.stylesDefinitions=b;a(b)}else{b||(b="default");var b=b.split(":"),c=b[0];CKEDITOR.stylesSet.addExternal(c,b[1]?b.slice(1).join(":"):CKEDITOR.getUrl("styles.js"),"");CKEDITOR.stylesSet.load(c,function(b){e._.stylesDefinitions=b[c];a(e._.stylesDefinitions)})}}}});
-CKEDITOR.dom.comment=function(a,e){typeof a=="string"&&(a=(e?e.$:document).createComment(a));CKEDITOR.dom.domObject.call(this,a)};CKEDITOR.dom.comment.prototype=new CKEDITOR.dom.node;CKEDITOR.tools.extend(CKEDITOR.dom.comment.prototype,{type:CKEDITOR.NODE_COMMENT,getOuterHtml:function(){return"<\!--"+this.$.nodeValue+"--\>"}});"use strict";
-(function(){var a={},e={},b;for(b in CKEDITOR.dtd.$blockLimit)b in CKEDITOR.dtd.$list||(a[b]=1);for(b in CKEDITOR.dtd.$block)b in CKEDITOR.dtd.$blockLimit||b in CKEDITOR.dtd.$empty||(e[b]=1);CKEDITOR.dom.elementPath=function(b,f){var d=null,g=null,h=[],m=b,j,f=f||b.getDocument().getBody();do if(m.type==CKEDITOR.NODE_ELEMENT){h.push(m);if(!this.lastElement){this.lastElement=m;if(m.is(CKEDITOR.dtd.$object)||m.getAttribute("contenteditable")=="false")continue}if(m.equals(f))break;if(!g){j=m.getName();
-m.getAttribute("contenteditable")=="true"?g=m:!d&&e[j]&&(d=m);if(a[j]){var p;if(p=!d){if(j=j=="div"){a:{j=m.getChildren();p=0;for(var u=j.count();p<u;p++){var t=j.getItem(p);if(t.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$block[t.getName()]){j=true;break a}}j=false}j=!j}p=j}p?d=m:g=m}}}while(m=m.getParent());g||(g=f);this.block=d;this.blockLimit=g;this.root=f;this.elements=h}})();
-CKEDITOR.dom.elementPath.prototype={compare:function(a){var e=this.elements,a=a&&a.elements;if(!a||e.length!=a.length)return false;for(var b=0;b<e.length;b++)if(!e[b].equals(a[b]))return false;return true},contains:function(a,e,b){var c;typeof a=="string"&&(c=function(b){return b.getName()==a});a instanceof CKEDITOR.dom.element?c=function(b){return b.equals(a)}:CKEDITOR.tools.isArray(a)?c=function(b){return CKEDITOR.tools.indexOf(a,b.getName())>-1}:typeof a=="function"?c=a:typeof a=="object"&&(c=
-function(b){return b.getName()in a});var f=this.elements,d=f.length;e&&d--;if(b){f=Array.prototype.slice.call(f,0);f.reverse()}for(e=0;e<d;e++)if(c(f[e]))return f[e];return null},isContextFor:function(a){var e;if(a in CKEDITOR.dtd.$block){e=this.contains(CKEDITOR.dtd.$intermediate)||this.root.equals(this.block)&&this.block||this.blockLimit;return!!e.getDtd()[a]}return true},direction:function(){return(this.block||this.blockLimit||this.root).getDirection(1)}};
-CKEDITOR.dom.text=function(a,e){typeof a=="string"&&(a=(e?e.$:document).createTextNode(a));this.$=a};CKEDITOR.dom.text.prototype=new CKEDITOR.dom.node;
-CKEDITOR.tools.extend(CKEDITOR.dom.text.prototype,{type:CKEDITOR.NODE_TEXT,getLength:function(){return this.$.nodeValue.length},getText:function(){return this.$.nodeValue},setText:function(a){this.$.nodeValue=a},split:function(a){var e=this.$.parentNode,b=e.childNodes.length,c=this.getLength(),f=this.getDocument(),d=new CKEDITOR.dom.text(this.$.splitText(a),f);if(e.childNodes.length==b)if(a>=c){d=f.createText("");d.insertAfter(this)}else{a=f.createText("");a.insertAfter(d);a.remove()}return d},substring:function(a,
-e){return typeof e!="number"?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,e)}});
-(function(){function a(a,c,e){var d=a.serializable,g=c[e?"endContainer":"startContainer"],h=e?"endOffset":"startOffset",m=d?c.document.getById(a.startNode):a.startNode,a=d?c.document.getById(a.endNode):a.endNode;if(g.equals(m.getPrevious())){c.startOffset=c.startOffset-g.getLength()-a.getPrevious().getLength();g=a.getNext()}else if(g.equals(a.getPrevious())){c.startOffset=c.startOffset-g.getLength();g=a.getNext()}g.equals(m.getParent())&&c[h]++;g.equals(a.getParent())&&c[h]++;c[e?"endContainer":"startContainer"]=
-g;return c}CKEDITOR.dom.rangeList=function(a){if(a instanceof CKEDITOR.dom.rangeList)return a;a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[];return CKEDITOR.tools.extend(a,e)};var e={createIterator:function(){var a=this,c=CKEDITOR.dom.walker.bookmark(),e=[],d;return{getNextRange:function(g){d=d===void 0?0:d+1;var h=a[d];if(h&&a.length>1){if(!d)for(var m=a.length-1;m>=0;m--)e.unshift(a[m].createBookmark(true));if(g)for(var j=0;a[d+j+1];){for(var p=h.document,g=0,m=p.getById(e[j].endNode),p=p.getById(e[j+
-1].startNode);;){m=m.getNextSourceNode(false);if(p.equals(m))g=1;else if(c(m)||m.type==CKEDITOR.NODE_ELEMENT&&m.isBlockBoundary())continue;break}if(!g)break;j++}for(h.moveToBookmark(e.shift());j--;){m=a[++d];m.moveToBookmark(e.shift());h.setEnd(m.endContainer,m.endOffset)}}return h}}},createBookmarks:function(b){for(var c=[],e,d=0;d<this.length;d++){c.push(e=this[d].createBookmark(b,true));for(var g=d+1;g<this.length;g++){this[g]=a(e,this[g]);this[g]=a(e,this[g],true)}}return c},createBookmarks2:function(a){for(var c=
-[],e=0;e<this.length;e++)c.push(this[e].createBookmark2(a));return c},moveToBookmarks:function(a){for(var c=0;c<this.length;c++)this[c].moveToBookmark(a[c])}}})();
-(function(){function a(){return CKEDITOR.getUrl(CKEDITOR.skinName.split(",")[1]||"skins/"+CKEDITOR.skinName.split(",")[0]+"/")}function e(b){var c=CKEDITOR.skin["ua_"+b],d=CKEDITOR.env;if(c)for(var c=c.split(",").sort(function(a,b){return a>b?-1:1}),e=0,f;e<c.length;e++){f=c[e];if(d.ie&&(f.replace(/^ie/,"")==d.version||d.quirks&&f=="iequirks"))f="ie";if(d[f]){b=b+("_"+c[e]);break}}return CKEDITOR.getUrl(a()+b+".css")}function b(a,b){if(!d[a]){CKEDITOR.document.appendStyleSheet(e(a));d[a]=1}b&&b()}
-function c(a){var b=a.getById(g);if(!b){b=a.getHead().append("style");b.setAttribute("id",g);b.setAttribute("type","text/css")}return b}function f(a,b,c){var d,e,f;if(CKEDITOR.env.webkit){b=b.split("}").slice(0,-1);for(e=0;e<b.length;e++)b[e]=b[e].split("{")}for(var g=0;g<a.length;g++)if(CKEDITOR.env.webkit)for(e=0;e<b.length;e++){f=b[e][1];for(d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);a[g].$.sheet.addRule(b[e][0],f)}else{f=b;for(d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);CKEDITOR.env.ie&&
-CKEDITOR.env.version<11?a[g].$.styleSheet.cssText=a[g].$.styleSheet.cssText+f:a[g].$.innerHTML=a[g].$.innerHTML+f}}var d={};CKEDITOR.skin={path:a,loadPart:function(c,d){CKEDITOR.skin.name!=CKEDITOR.skinName.split(",")[0]?CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(a()+"skin.js"),function(){b(c,d)}):b(c,d)},getPath:function(a){return CKEDITOR.getUrl(e(a))},icons:{},addIcon:function(a,b,c,d){a=a.toLowerCase();this.icons[a]||(this.icons[a]={path:b,offset:c||0,bgsize:d||"16px"})},getIconStyle:function(a,
-b,c,d,e){var f;if(a){a=a.toLowerCase();b&&(f=this.icons[a+"-rtl"]);f||(f=this.icons[a])}a=c||f&&f.path||"";d=d||f&&f.offset;e=e||f&&f.bgsize||"16px";return a&&"background-image:url("+CKEDITOR.getUrl(a)+");background-position:0 "+d+"px;background-size:"+e+";"}};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{getUiColor:function(){return this.uiColor},setUiColor:function(a){var b=c(CKEDITOR.document);return(this.setUiColor=function(a){var c=CKEDITOR.skin.chameleon,d=[[m,a]];this.uiColor=a;f([b],c(this,
-"editor"),d);f(h,c(this,"panel"),d)}).call(this,a)}});var g="cke_ui_color",h=[],m=/\$color/g;CKEDITOR.on("instanceLoaded",function(a){if(!CKEDITOR.env.ie||!CKEDITOR.env.quirks){var b=a.editor,a=function(a){a=(a.data[0]||a.data).element.getElementsByTag("iframe").getItem(0).getFrameDocument();if(!a.getById("cke_ui_color")){a=c(a);h.push(a);var d=b.getUiColor();d&&f([a],CKEDITOR.skin.chameleon(b,"panel"),[[m,d]])}};b.on("panelShow",a);b.on("menuShow",a);b.config.uiColor&&b.setUiColor(b.config.uiColor)}})})();
-(function(){if(CKEDITOR.env.webkit)CKEDITOR.env.hc=false;else{var a=CKEDITOR.dom.element.createFromHtml('<div style="width:0;height:0;position:absolute;left:-10000px;border:1px solid;border-color:red blue"></div>',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{var e=a.getComputedStyle("border-top-color"),b=a.getComputedStyle("border-right-color");CKEDITOR.env.hc=!!(e&&e==b)}catch(c){CKEDITOR.env.hc=false}a.remove()}if(CKEDITOR.env.hc)CKEDITOR.env.cssClass=CKEDITOR.env.cssClass+" cke_hc";
-CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}");CKEDITOR.status="loaded";CKEDITOR.fireOnce("loaded");if(a=CKEDITOR._.pending){delete CKEDITOR._.pending;for(e=0;e<a.length;e++){CKEDITOR.editor.prototype.constructor.apply(a[e][0],a[e][1]);CKEDITOR.add(a[e][0])}}})();/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.skin.name="moono";CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko";CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8";
-CKEDITOR.skin.chameleon=function(){var b=function(){return function(b,e){for(var a=b.match(/[^#]./g),c=0;3>c;c++){var f=a,h=c,d;d=parseInt(a[c],16);d=("0"+(0>e?0|d*(1+e):0|d+(255-d)*e).toString(16)).slice(-2);f[h]=d}return"#"+a.join("")}}(),c=function(){var b=new CKEDITOR.template("background:#{to};background-image:-webkit-gradient(linear,lefttop,leftbottom,from({from}),to({to}));background-image:-moz-linear-gradient(top,{from},{to});background-image:-webkit-linear-gradient(top,{from},{to});background-image:-o-linear-gradient(top,{from},{to});background-image:-ms-linear-gradient(top,{from},{to});background-image:linear-gradient(top,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(c,
-a){return b.output({from:c,to:a})}}(),f={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),
-panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};
-return function(g,e){var a=g.uiColor,a={id:"."+g.id,defaultBorder:b(a,-0.1),defaultGradient:c(b(a,0.9),a),lightGradient:c(b(a,1),b(a,0.7)),mediumGradient:c(b(a,0.8),b(a,0.5)),ckeButtonOn:c(b(a,0.6),b(a,0.7)),ckeResizer:b(a,-0.4),ckeToolbarSeparator:b(a,0.5),ckeColorauto:b(a,0.8),dialogBody:b(a,0.7),dialogTabSelected:c("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:b(a,-0.6),elementsPathBg:a,menubuttonIcon:b(a,0.5),menubuttonIconHover:b(a,0.3)};return f[e].output(a).replace(/\[/g,
-"{").replace(/\]/g,"}")}}();CKEDITOR.plugins.add("dialogui",{onLoad:function(){var h=function(b){this._||(this._={});this._["default"]=this._.initValue=b["default"]||"";this._.required=b.required||!1;for(var a=[this._],d=1;d<arguments.length;d++)a.push(arguments[d]);a.push(!0);CKEDITOR.tools.extend.apply(CKEDITOR.tools,a);return this._},r={build:function(b,a,d){return new CKEDITOR.ui.dialog.textInput(b,a,d)}},l={build:function(b,a,d){return new CKEDITOR.ui.dialog[a.type](b,a,d)}},n={isChanged:function(){return this.getValue()!=
-this.getInitValue()},reset:function(b){this.setValue(this.getInitValue(),b)},setInitValue:function(){this._.initValue=this.getValue()},resetInitValue:function(){this._.initValue=this._["default"]},getInitValue:function(){return this._.initValue}},o=CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onChange:function(b,a){this._.domOnChangeRegistered||(b.on("load",function(){this.getInputElement().on("change",function(){b.parts.dialog.isVisible()&&this.fire("change",{value:this.getValue()})},
-this)},this),this._.domOnChangeRegistered=!0);this.on("change",a)}},!0),s=/^on([A-Z]\w+)/,p=function(b){for(var a in b)(s.test(a)||"title"==a||"type"==a)&&delete b[a];return b};CKEDITOR.tools.extend(CKEDITOR.ui.dialog,{labeledElement:function(b,a,d,f){if(!(4>arguments.length)){var c=h.call(this,a);c.labelId=CKEDITOR.tools.getNextId()+"_label";this._.children=[];var e={role:a.role||"presentation"};a.includeLabel&&(e["aria-labelledby"]=c.labelId);CKEDITOR.ui.dialog.uiElement.call(this,b,a,d,"div",null,
-e,function(){var e=[],g=a.required?" cke_required":"";if(a.labelLayout!="horizontal")e.push('<label class="cke_dialog_ui_labeled_label'+g+'" ',' id="'+c.labelId+'"',c.inputId?' for="'+c.inputId+'"':"",(a.labelStyle?' style="'+a.labelStyle+'"':"")+">",a.label,"</label>",'<div class="cke_dialog_ui_labeled_content"',a.controlStyle?' style="'+a.controlStyle+'"':"",' role="presentation">',f.call(this,b,a),"</div>");else{g={type:"hbox",widths:a.widths,padding:0,children:[{type:"html",html:'<label class="cke_dialog_ui_labeled_label'+
-g+'" id="'+c.labelId+'" for="'+c.inputId+'"'+(a.labelStyle?' style="'+a.labelStyle+'"':"")+">"+CKEDITOR.tools.htmlEncode(a.label)+"</span>"},{type:"html",html:'<span class="cke_dialog_ui_labeled_content"'+(a.controlStyle?' style="'+a.controlStyle+'"':"")+">"+f.call(this,b,a)+"</span>"}]};CKEDITOR.dialog._.uiElementBuilders.hbox.build(b,g,e)}return e.join("")})}},textInput:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);var f=this._.inputId=CKEDITOR.tools.getNextId()+"_textInput",c={"class":"cke_dialog_ui_input_"+
-a.type,id:f,type:a.type};a.validate&&(this.validate=a.validate);a.maxLength&&(c.maxlength=a.maxLength);a.size&&(c.size=a.size);a.inputStyle&&(c.style=a.inputStyle);var e=this,k=!1;b.on("load",function(){e.getInputElement().on("keydown",function(a){a.data.getKeystroke()==13&&(k=true)});e.getInputElement().on("keyup",function(a){if(a.data.getKeystroke()==13&&k){b.getButton("ok")&&setTimeout(function(){b.getButton("ok").click()},0);k=false}},null,null,1E3)});CKEDITOR.ui.dialog.labeledElement.call(this,
-b,a,d,function(){var b=['<div class="cke_dialog_ui_input_',a.type,'" role="presentation"'];a.width&&b.push('style="width:'+a.width+'" ');b.push("><input ");c["aria-labelledby"]=this._.labelId;this._.required&&(c["aria-required"]=this._.required);for(var e in c)b.push(e+'="'+c[e]+'" ');b.push(" /></div>");return b.join("")})}},textarea:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);var f=this,c=this._.inputId=CKEDITOR.tools.getNextId()+"_textarea",e={};a.validate&&(this.validate=a.validate);
-e.rows=a.rows||5;e.cols=a.cols||20;e["class"]="cke_dialog_ui_input_textarea "+(a["class"]||"");"undefined"!=typeof a.inputStyle&&(e.style=a.inputStyle);a.dir&&(e.dir=a.dir);CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){e["aria-labelledby"]=this._.labelId;this._.required&&(e["aria-required"]=this._.required);var a=['<div class="cke_dialog_ui_input_textarea" role="presentation"><textarea id="',c,'" '],b;for(b in e)a.push(b+'="'+CKEDITOR.tools.htmlEncode(e[b])+'" ');a.push(">",CKEDITOR.tools.htmlEncode(f._["default"]),
-"</textarea></div>");return a.join("")})}},checkbox:function(b,a,d){if(!(3>arguments.length)){var f=h.call(this,a,{"default":!!a["default"]});a.validate&&(this.validate=a.validate);CKEDITOR.ui.dialog.uiElement.call(this,b,a,d,"span",null,null,function(){var c=CKEDITOR.tools.extend({},a,{id:a.id?a.id+"_checkbox":CKEDITOR.tools.getNextId()+"_checkbox"},true),e=[],d=CKEDITOR.tools.getNextId()+"_label",g={"class":"cke_dialog_ui_checkbox_input",type:"checkbox","aria-labelledby":d};p(c);if(a["default"])g.checked=
-"checked";if(typeof c.inputStyle!="undefined")c.style=c.inputStyle;f.checkbox=new CKEDITOR.ui.dialog.uiElement(b,c,e,"input",null,g);e.push(' <label id="',d,'" for="',g.id,'"'+(a.labelStyle?' style="'+a.labelStyle+'"':"")+">",CKEDITOR.tools.htmlEncode(a.label),"</label>");return e.join("")})}},radio:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);this._["default"]||(this._["default"]=this._.initValue=a.items[0][1]);a.validate&&(this.validate=a.valdiate);var f=[],c=this;a.role="radiogroup";
-a.includeLabel=!0;CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){for(var e=[],d=[],g=(a.id?a.id:CKEDITOR.tools.getNextId())+"_radio",i=0;i<a.items.length;i++){var j=a.items[i],h=j[2]!==void 0?j[2]:j[0],l=j[1]!==void 0?j[1]:j[0],m=CKEDITOR.tools.getNextId()+"_radio_input",n=m+"_label",m=CKEDITOR.tools.extend({},a,{id:m,title:null,type:null},true),h=CKEDITOR.tools.extend({},m,{title:h},true),o={type:"radio","class":"cke_dialog_ui_radio_input",name:g,value:l,"aria-labelledby":n},q=[];if(c._["default"]==
-l)o.checked="checked";p(m);p(h);if(typeof m.inputStyle!="undefined")m.style=m.inputStyle;m.keyboardFocusable=true;f.push(new CKEDITOR.ui.dialog.uiElement(b,m,q,"input",null,o));q.push(" ");new CKEDITOR.ui.dialog.uiElement(b,h,q,"label",null,{id:n,"for":o.id},j[0]);e.push(q.join(""))}new CKEDITOR.ui.dialog.hbox(b,f,e,d);return d.join("")});this._.children=f}},button:function(b,a,d){if(arguments.length){"function"==typeof a&&(a=a(b.getParentEditor()));h.call(this,a,{disabled:a.disabled||!1});CKEDITOR.event.implementOn(this);
-var f=this;b.on("load",function(){var a=this.getElement();(function(){a.on("click",function(a){f.click();a.data.preventDefault()});a.on("keydown",function(a){a.data.getKeystroke()in{32:1}&&(f.click(),a.data.preventDefault())})})();a.unselectable()},this);var c=CKEDITOR.tools.extend({},a);delete c.style;var e=CKEDITOR.tools.getNextId()+"_label";CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"a",null,{style:a.style,href:"javascript:void(0)",title:a.label,hidefocus:"true","class":a["class"],role:"button",
-"aria-labelledby":e},'<span id="'+e+'" class="cke_dialog_ui_button">'+CKEDITOR.tools.htmlEncode(a.label)+"</span>")}},select:function(b,a,d){if(!(3>arguments.length)){var f=h.call(this,a);a.validate&&(this.validate=a.validate);f.inputId=CKEDITOR.tools.getNextId()+"_select";CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){var c=CKEDITOR.tools.extend({},a,{id:a.id?a.id+"_select":CKEDITOR.tools.getNextId()+"_select"},true),e=[],d=[],g={id:f.inputId,"class":"cke_dialog_ui_input_select","aria-labelledby":this._.labelId};
-e.push('<div class="cke_dialog_ui_input_',a.type,'" role="presentation"');a.width&&e.push('style="width:'+a.width+'" ');e.push(">");if(a.size!=void 0)g.size=a.size;if(a.multiple!=void 0)g.multiple=a.multiple;p(c);for(var i=0,j;i<a.items.length&&(j=a.items[i]);i++)d.push('<option value="',CKEDITOR.tools.htmlEncode(j[1]!==void 0?j[1]:j[0]).replace(/"/g,"&quot;"),'" /> ',CKEDITOR.tools.htmlEncode(j[0]));if(typeof c.inputStyle!="undefined")c.style=c.inputStyle;f.select=new CKEDITOR.ui.dialog.uiElement(b,
-c,e,"select",null,g,d.join(""));e.push("</div>");return e.join("")})}},file:function(b,a,d){if(!(3>arguments.length)){void 0===a["default"]&&(a["default"]="");var f=CKEDITOR.tools.extend(h.call(this,a),{definition:a,buttons:[]});a.validate&&(this.validate=a.validate);b.on("load",function(){CKEDITOR.document.getById(f.frameId).getParent().addClass("cke_dialog_ui_input_file")});CKEDITOR.ui.dialog.labeledElement.call(this,b,a,d,function(){f.frameId=CKEDITOR.tools.getNextId()+"_fileInput";var b=['<iframe frameborder="0" allowtransparency="0" class="cke_dialog_ui_input_file" role="presentation" id="',
-f.frameId,'" title="',a.label,'" src="javascript:void('];b.push(CKEDITOR.env.ie?"(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"})()":"0");b.push(')"></iframe>');return b.join("")})}},fileButton:function(b,a,d){if(!(3>arguments.length)){h.call(this,a);var f=this;a.validate&&(this.validate=a.validate);var c=CKEDITOR.tools.extend({},a),e=c.onClick;c.className=(c.className?c.className+" ":"")+"cke_dialog_ui_button";c.onClick=function(c){var d=
-a["for"];if(!e||e.call(this,c)!==false){b.getContentElement(d[0],d[1]).submit();this.disable()}};b.on("load",function(){b.getContentElement(a["for"][0],a["for"][1])._.buttons.push(f)});CKEDITOR.ui.dialog.button.call(this,b,c,d)}},html:function(){var b=/^\s*<[\w:]+\s+([^>]*)?>/,a=/^(\s*<[\w:]+(?:\s+[^>]*)?)((?:.|\r|\n)+)$/,d=/\/$/;return function(f,c,e){if(!(3>arguments.length)){var k=[],g=c.html;"<"!=g.charAt(0)&&(g="<span>"+g+"</span>");var i=c.focus;if(i){var j=this.focus;this.focus=function(){("function"==
-typeof i?i:j).call(this);this.fire("focus")};c.isFocusable&&(this.isFocusable=this.isFocusable);this.keyboardFocusable=!0}CKEDITOR.ui.dialog.uiElement.call(this,f,c,k,"span",null,null,"");k=k.join("").match(b);g=g.match(a)||["","",""];d.test(g[1])&&(g[1]=g[1].slice(0,-1),g[2]="/"+g[2]);e.push([g[1]," ",k[1]||"",g[2]].join(""))}}}(),fieldset:function(b,a,d,f,c){var e=c.label;this._={children:a};CKEDITOR.ui.dialog.uiElement.call(this,b,c,f,"fieldset",null,null,function(){var a=[];e&&a.push("<legend"+
-(c.labelStyle?' style="'+c.labelStyle+'"':"")+">"+e+"</legend>");for(var b=0;b<d.length;b++)a.push(d[b]);return a.join("")})}},!0);CKEDITOR.ui.dialog.html.prototype=new CKEDITOR.ui.dialog.uiElement;CKEDITOR.ui.dialog.labeledElement.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setLabel:function(b){var a=CKEDITOR.document.getById(this._.labelId);1>a.getChildCount()?(new CKEDITOR.dom.text(b,CKEDITOR.document)).appendTo(a):a.getChild(0).$.nodeValue=b;return this},getLabel:function(){var b=
-CKEDITOR.document.getById(this._.labelId);return!b||1>b.getChildCount()?"":b.getChild(0).getText()},eventProcessors:o},!0);CKEDITOR.ui.dialog.button.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{click:function(){return!this._.disabled?this.fire("click",{dialog:this._.dialog}):!1},enable:function(){this._.disabled=!1;var b=this.getElement();b&&b.removeClass("cke_disabled")},disable:function(){this._.disabled=!0;this.getElement().addClass("cke_disabled")},isVisible:function(){return this.getElement().getFirst().isVisible()},
-isEnabled:function(){return!this._.disabled},eventProcessors:CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onClick:function(b,a){this.on("click",function(){a.apply(this,arguments)})}},!0),accessKeyUp:function(){this.click()},accessKeyDown:function(){this.focus()},keyboardFocusable:!0},!0);CKEDITOR.ui.dialog.textInput.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return CKEDITOR.document.getById(this._.inputId)},
-focus:function(){var b=this.selectParentTab();setTimeout(function(){var a=b.getInputElement();a&&a.$.focus()},0)},select:function(){var b=this.selectParentTab();setTimeout(function(){var a=b.getInputElement();a&&(a.$.focus(),a.$.select())},0)},accessKeyUp:function(){this.select()},setValue:function(b){!b&&(b="");return CKEDITOR.ui.dialog.uiElement.prototype.setValue.apply(this,arguments)},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.textarea.prototype=new CKEDITOR.ui.dialog.textInput;CKEDITOR.ui.dialog.select.prototype=
-CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return this._.select.getElement()},add:function(b,a,d){var f=new CKEDITOR.dom.element("option",this.getDialog().getParentEditor().document),c=this.getInputElement().$;f.$.text=b;f.$.value=void 0===a||null===a?b:a;void 0===d||null===d?CKEDITOR.env.ie?c.add(f.$):c.add(f.$,null):c.add(f.$,d);return this},remove:function(b){this.getInputElement().$.remove(b);return this},clear:function(){for(var b=this.getInputElement().$;0<
-b.length;)b.remove(0);return this},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.checkbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getInputElement:function(){return this._.checkbox.getElement()},setValue:function(b,a){this.getInputElement().$.checked=b;!a&&this.fire("change",{value:b})},getValue:function(){return this.getInputElement().$.checked},accessKeyUp:function(){this.setValue(!this.getValue())},eventProcessors:{onChange:function(b,a){if(!CKEDITOR.env.ie||8<CKEDITOR.env.version)return o.onChange.apply(this,
-arguments);b.on("load",function(){var a=this._.checkbox.getElement();a.on("propertychange",function(b){b=b.data.$;"checked"==b.propertyName&&this.fire("change",{value:a.$.checked})},this)},this);this.on("change",a);return null}},keyboardFocusable:!0},n,!0);CKEDITOR.ui.dialog.radio.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setValue:function(b,a){for(var d=this._.children,f,c=0;c<d.length&&(f=d[c]);c++)f.getElement().$.checked=f.getValue()==b;!a&&this.fire("change",{value:b})},
-getValue:function(){for(var b=this._.children,a=0;a<b.length;a++)if(b[a].getElement().$.checked)return b[a].getValue();return null},accessKeyUp:function(){var b=this._.children,a;for(a=0;a<b.length;a++)if(b[a].getElement().$.checked){b[a].getElement().focus();return}b[0].getElement().focus()},eventProcessors:{onChange:function(b,a){if(CKEDITOR.env.ie)b.on("load",function(){for(var a=this._.children,b=this,c=0;c<a.length;c++)a[c].getElement().on("propertychange",function(a){a=a.data.$;"checked"==a.propertyName&&
-this.$.checked&&b.fire("change",{value:this.getAttribute("value")})})},this),this.on("change",a);else return o.onChange.apply(this,arguments);return null}}},n,!0);CKEDITOR.ui.dialog.file.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,n,{getInputElement:function(){var b=CKEDITOR.document.getById(this._.frameId).getFrameDocument();return 0<b.$.forms.length?new CKEDITOR.dom.element(b.$.forms[0].elements[0]):this.getElement()},submit:function(){this.getInputElement().getParent().$.submit();
-return this},getAction:function(){return this.getInputElement().getParent().$.action},registerEvents:function(b){var a=/^on([A-Z]\w+)/,d,f=function(a,b,c,d){a.on("formLoaded",function(){a.getInputElement().on(c,d,a)})},c;for(c in b)if(d=c.match(a))this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,b[c]):f(this,this._.dialog,d[1].toLowerCase(),b[c]);return this},reset:function(){function b(){d.$.open();var b="";f.size&&(b=f.size-(CKEDITOR.env.ie?7:0));var h=a.frameId+"_input";
-d.$.write(['<html dir="'+g+'" lang="'+i+'"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">','<form enctype="multipart/form-data" method="POST" dir="'+g+'" lang="'+i+'" action="',CKEDITOR.tools.htmlEncode(f.action),'"><label id="',a.labelId,'" for="',h,'" style="display:none">',CKEDITOR.tools.htmlEncode(f.label),'</label><input style="width:100%" id="',h,'" aria-labelledby="',a.labelId,'" type="file" name="',CKEDITOR.tools.htmlEncode(f.id||"cke_upload"),
-'" size="',CKEDITOR.tools.htmlEncode(0<b?b:""),'" /></form></body></html><script>',CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"","window.parent.CKEDITOR.tools.callFunction("+e+");","window.onbeforeunload = function() {window.parent.CKEDITOR.tools.callFunction("+k+")}","<\/script>"].join(""));d.$.close();for(b=0;b<c.length;b++)c[b].enable()}var a=this._,d=CKEDITOR.document.getById(a.frameId).getFrameDocument(),f=a.definition,c=a.buttons,e=this.formLoadedNumber,k=this.formUnloadNumber,g=a.dialog._.editor.lang.dir,
-i=a.dialog._.editor.langCode;e||(e=this.formLoadedNumber=CKEDITOR.tools.addFunction(function(){this.fire("formLoaded")},this),k=this.formUnloadNumber=CKEDITOR.tools.addFunction(function(){this.getInputElement().clearCustomData()},this),this.getDialog()._.editor.on("destroy",function(){CKEDITOR.tools.removeFunction(e);CKEDITOR.tools.removeFunction(k)}));CKEDITOR.env.gecko?setTimeout(b,500):b()},getValue:function(){return this.getInputElement().$.value||""},setInitValue:function(){this._.initValue=
-""},eventProcessors:{onChange:function(b,a){this._.domOnChangeRegistered||(this.on("formLoaded",function(){this.getInputElement().on("change",function(){this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0);this.on("change",a)}},keyboardFocusable:!0},!0);CKEDITOR.ui.dialog.fileButton.prototype=new CKEDITOR.ui.dialog.button;CKEDITOR.ui.dialog.fieldset.prototype=CKEDITOR.tools.clone(CKEDITOR.ui.dialog.hbox.prototype);CKEDITOR.dialog.addUIElement("text",r);CKEDITOR.dialog.addUIElement("password",
-r);CKEDITOR.dialog.addUIElement("textarea",l);CKEDITOR.dialog.addUIElement("checkbox",l);CKEDITOR.dialog.addUIElement("radio",l);CKEDITOR.dialog.addUIElement("button",l);CKEDITOR.dialog.addUIElement("select",l);CKEDITOR.dialog.addUIElement("file",l);CKEDITOR.dialog.addUIElement("fileButton",l);CKEDITOR.dialog.addUIElement("html",l);CKEDITOR.dialog.addUIElement("fieldset",{build:function(b,a,d){for(var f=a.children,c,e=[],h=[],g=0;g<f.length&&(c=f[g]);g++){var i=[];e.push(i);h.push(CKEDITOR.dialog._.uiElementBuilders[c.type].build(b,
-c,i))}return new CKEDITOR.ui.dialog[a.type](b,h,e,d,a)}})}});CKEDITOR.DIALOG_RESIZE_NONE=0;CKEDITOR.DIALOG_RESIZE_WIDTH=1;CKEDITOR.DIALOG_RESIZE_HEIGHT=2;CKEDITOR.DIALOG_RESIZE_BOTH=3;
-(function(){function t(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId)+a,c=b-1;c>b-a;c--)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function u(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId),c=b+1;c<b+a;c++)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function G(a,b){for(var c=a.$.getElementsByTagName("input"),
-e=0,d=c.length;e<d;e++){var g=new CKEDITOR.dom.element(c[e]);"text"==g.getAttribute("type").toLowerCase()&&(b?(g.setAttribute("value",g.getCustomData("fake_value")||""),g.removeCustomData("fake_value")):(g.setCustomData("fake_value",g.getAttribute("value")),g.setAttribute("value","")))}}function P(a,b){var c=this.getInputElement();c&&(a?c.removeAttribute("aria-invalid"):c.setAttribute("aria-invalid",!0));a||(this.select?this.select():this.focus());b&&alert(b);this.fire("validated",{valid:a,msg:b})}
-function Q(){var a=this.getInputElement();a&&a.removeAttribute("aria-invalid")}function R(a){var a=CKEDITOR.dom.element.createFromHtml(CKEDITOR.addTemplate("dialog",S).output({id:CKEDITOR.tools.getNextNumber(),editorId:a.id,langDir:a.lang.dir,langCode:a.langCode,editorDialogClass:"cke_editor_"+a.name.replace(/\./g,"\\.")+"_dialog",closeTitle:a.lang.common.close,hidpi:CKEDITOR.env.hidpi?"cke_hidpi":""})),b=a.getChild([0,0,0,0,0]),c=b.getChild(0),e=b.getChild(1);if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var d=
-"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())";CKEDITOR.dom.element.createFromHtml('<iframe frameBorder="0" class="cke_iframe_shim" src="'+d+'" tabIndex="-1"></iframe>').appendTo(b.getParent())}c.unselectable();e.unselectable();return{element:a,parts:{dialog:a.getChild(0),title:c,close:e,tabs:b.getChild(2),contents:b.getChild([3,0,0,0]),footer:b.getChild([3,0,1,0])}}}function H(a,b,c){this.element=b;this.focusIndex=c;this.tabIndex=
-0;this.isFocusable=function(){return!b.getAttribute("disabled")&&b.isVisible()};this.focus=function(){a._.currentFocusIndex=this.focusIndex;this.element.focus()};b.on("keydown",function(a){a.data.getKeystroke()in{32:1,13:1}&&this.fire("click")});b.on("focus",function(){this.fire("mouseover")});b.on("blur",function(){this.fire("mouseout")})}function T(a){function b(){a.layout()}var c=CKEDITOR.document.getWindow();c.on("resize",b);a.on("hide",function(){c.removeListener("resize",b)})}function I(a,b){this._=
-{dialog:a};CKEDITOR.tools.extend(this,b)}function U(a){function b(b){var c=a.getSize(),i=CKEDITOR.document.getWindow().getViewPaneSize(),o=b.data.$.screenX,j=b.data.$.screenY,n=o-e.x,l=j-e.y;e={x:o,y:j};d.x+=n;d.y+=l;a.move(d.x+h[3]<f?-h[3]:d.x-h[1]>i.width-c.width-f?i.width-c.width+("rtl"==g.lang.dir?0:h[1]):d.x,d.y+h[0]<f?-h[0]:d.y-h[2]>i.height-c.height-f?i.height-c.height+h[2]:d.y,1);b.data.preventDefault()}function c(){CKEDITOR.document.removeListener("mousemove",b);CKEDITOR.document.removeListener("mouseup",
-c);if(CKEDITOR.env.ie6Compat){var a=q.getChild(0).getFrameDocument();a.removeListener("mousemove",b);a.removeListener("mouseup",c)}}var e=null,d=null;a.getElement().getFirst();var g=a.getParentEditor(),f=g.config.dialog_magnetDistance,h=CKEDITOR.skin.margins||[0,0,0,0];"undefined"==typeof f&&(f=20);a.parts.title.on("mousedown",function(f){e={x:f.data.$.screenX,y:f.data.$.screenY};CKEDITOR.document.on("mousemove",b);CKEDITOR.document.on("mouseup",c);d=a.getPosition();if(CKEDITOR.env.ie6Compat){var h=
-q.getChild(0).getFrameDocument();h.on("mousemove",b);h.on("mouseup",c)}f.data.preventDefault()},a)}function V(a){var b,c;function e(d){var e="rtl"==h.lang.dir,j=o.width,C=o.height,D=j+(d.data.$.screenX-b)*(e?-1:1)*(a._.moved?1:2),n=C+(d.data.$.screenY-c)*(a._.moved?1:2),x=a._.element.getFirst(),x=e&&x.getComputedStyle("right"),y=a.getPosition();y.y+n>i.height&&(n=i.height-y.y);if((e?x:y.x)+D>i.width)D=i.width-(e?x:y.x);if(f==CKEDITOR.DIALOG_RESIZE_WIDTH||f==CKEDITOR.DIALOG_RESIZE_BOTH)j=Math.max(g.minWidth||
-0,D-m);if(f==CKEDITOR.DIALOG_RESIZE_HEIGHT||f==CKEDITOR.DIALOG_RESIZE_BOTH)C=Math.max(g.minHeight||0,n-k);a.resize(j,C);a._.moved||a.layout();d.data.preventDefault()}function d(){CKEDITOR.document.removeListener("mouseup",d);CKEDITOR.document.removeListener("mousemove",e);j&&(j.remove(),j=null);if(CKEDITOR.env.ie6Compat){var a=q.getChild(0).getFrameDocument();a.removeListener("mouseup",d);a.removeListener("mousemove",e)}}var g=a.definition,f=g.resizable;if(f!=CKEDITOR.DIALOG_RESIZE_NONE){var h=a.getParentEditor(),
-m,k,i,o,j,n=CKEDITOR.tools.addFunction(function(f){o=a.getSize();var h=a.parts.contents;h.$.getElementsByTagName("iframe").length&&(j=CKEDITOR.dom.element.createFromHtml('<div class="cke_dialog_resize_cover" style="height: 100%; position: absolute; width: 100%;"></div>'),h.append(j));k=o.height-a.parts.contents.getSize("height",!(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.quirks));m=o.width-a.parts.contents.getSize("width",1);b=f.screenX;c=f.screenY;i=CKEDITOR.document.getWindow().getViewPaneSize();
-CKEDITOR.document.on("mousemove",e);CKEDITOR.document.on("mouseup",d);CKEDITOR.env.ie6Compat&&(h=q.getChild(0).getFrameDocument(),h.on("mousemove",e),h.on("mouseup",d));f.preventDefault&&f.preventDefault()});a.on("load",function(){var b="";f==CKEDITOR.DIALOG_RESIZE_WIDTH?b=" cke_resizer_horizontal":f==CKEDITOR.DIALOG_RESIZE_HEIGHT&&(b=" cke_resizer_vertical");b=CKEDITOR.dom.element.createFromHtml('<div class="cke_resizer'+b+" cke_resizer_"+h.lang.dir+'" title="'+CKEDITOR.tools.htmlEncode(h.lang.common.resize)+
-'" onmousedown="CKEDITOR.tools.callFunction('+n+', event )">'+("ltr"==h.lang.dir?"◢":"◣")+"</div>");a.parts.footer.append(b,1)});h.on("destroy",function(){CKEDITOR.tools.removeFunction(n)})}}function E(a){a.data.preventDefault(1)}function J(a){var b=CKEDITOR.document.getWindow(),c=a.config,e=c.dialog_backgroundCoverColor||"white",d=c.dialog_backgroundCoverOpacity,g=c.baseFloatZIndex,c=CKEDITOR.tools.genKey(e,d,g),f=w[c];f?f.show():(g=['<div tabIndex="-1" style="position: ',CKEDITOR.env.ie6Compat?
-"absolute":"fixed","; z-index: ",g,"; top: 0px; left: 0px; ",!CKEDITOR.env.ie6Compat?"background-color: "+e:"",'" class="cke_dialog_background_cover">'],CKEDITOR.env.ie6Compat&&(e="<html><body style=\\'background-color:"+e+";\\'></body></html>",g.push('<iframe hidefocus="true" frameborder="0" id="cke_dialog_background_iframe" src="javascript:'),g.push("void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.write( '"+e+"' );document.close();")+"})())"),g.push('" style="position:absolute;left:0;top:0;width:100%;height: 100%;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0)"></iframe>')),
-g.push("</div>"),f=CKEDITOR.dom.element.createFromHtml(g.join("")),f.setOpacity(void 0!=d?d:0.5),f.on("keydown",E),f.on("keypress",E),f.on("keyup",E),f.appendTo(CKEDITOR.document.getBody()),w[c]=f);a.focusManager.add(f);q=f;var a=function(){var a=b.getViewPaneSize();f.setStyles({width:a.width+"px",height:a.height+"px"})},h=function(){var a=b.getScrollPosition(),c=CKEDITOR.dialog._.currentTop;f.setStyles({left:a.x+"px",top:a.y+"px"});if(c){do{a=c.getPosition();c.move(a.x,a.y)}while(c=c._.parentDialog)
-}};F=a;b.on("resize",a);a();(!CKEDITOR.env.mac||!CKEDITOR.env.webkit)&&f.focus();if(CKEDITOR.env.ie6Compat){var m=function(){h();arguments.callee.prevScrollHandler.apply(this,arguments)};b.$.setTimeout(function(){m.prevScrollHandler=window.onscroll||function(){};window.onscroll=m},0);h()}}function K(a){q&&(a.focusManager.remove(q),a=CKEDITOR.document.getWindow(),q.hide(),a.removeListener("resize",F),CKEDITOR.env.ie6Compat&&a.$.setTimeout(function(){window.onscroll=window.onscroll&&window.onscroll.prevScrollHandler||
-null},0),F=null)}var r=CKEDITOR.tools.cssLength,S='<div class="cke_reset_all {editorId} {editorDialogClass} {hidpi}" dir="{langDir}" lang="{langCode}" role="dialog" aria-labelledby="cke_dialog_title_{id}"><table class="cke_dialog '+CKEDITOR.env.cssClass+' cke_{langDir}" style="position:absolute" role="presentation"><tr><td role="presentation"><div class="cke_dialog_body" role="presentation"><div id="cke_dialog_title_{id}" class="cke_dialog_title" role="presentation"></div><a id="cke_dialog_close_button_{id}" class="cke_dialog_close_button" href="javascript:void(0)" title="{closeTitle}" role="button"><span class="cke_label">X</span></a><div id="cke_dialog_tabs_{id}" class="cke_dialog_tabs" role="tablist"></div><table class="cke_dialog_contents" role="presentation"><tr><td id="cke_dialog_contents_{id}" class="cke_dialog_contents_body" role="presentation"></td></tr><tr><td id="cke_dialog_footer_{id}" class="cke_dialog_footer" role="presentation"></td></tr></table></div></td></tr></table></div>';
-CKEDITOR.dialog=function(a,b){function c(){var a=l._.focusList;a.sort(function(a,b){return a.tabIndex!=b.tabIndex?b.tabIndex-a.tabIndex:a.focusIndex-b.focusIndex});for(var b=a.length,c=0;c<b;c++)a[c].focusIndex=c}function e(a){var b=l._.focusList,a=a||0;if(!(1>b.length)){var c=l._.currentFocusIndex;try{b[c].getInputElement().$.blur()}catch(f){}for(var d=c=(c+a+b.length)%b.length;a&&!b[d].isFocusable()&&!(d=(d+a+b.length)%b.length,d==c););b[d].focus();"text"==b[d].type&&b[d].select()}}function d(b){if(l==
-CKEDITOR.dialog._.currentTop){var c=b.data.getKeystroke(),d="rtl"==a.lang.dir;o=j=0;if(9==c||c==CKEDITOR.SHIFT+9)c=c==CKEDITOR.SHIFT+9,l._.tabBarMode?(c=c?t.call(l):u.call(l),l.selectPage(c),l._.tabs[c][0].focus()):e(c?-1:1),o=1;else if(c==CKEDITOR.ALT+121&&!l._.tabBarMode&&1<l.getPageCount())l._.tabBarMode=!0,l._.tabs[l._.currentTabId][0].focus(),o=1;else if((37==c||39==c)&&l._.tabBarMode)c=c==(d?39:37)?t.call(l):u.call(l),l.selectPage(c),l._.tabs[c][0].focus(),o=1;else if((13==c||32==c)&&l._.tabBarMode)this.selectPage(this._.currentTabId),
-this._.tabBarMode=!1,this._.currentFocusIndex=-1,e(1),o=1;else if(13==c){c=b.data.getTarget();if(!c.is("a","button","select","textarea")&&(!c.is("input")||"button"!=c.$.type))(c=this.getButton("ok"))&&CKEDITOR.tools.setTimeout(c.click,0,c),o=1;j=1}else if(27==c)(c=this.getButton("cancel"))?CKEDITOR.tools.setTimeout(c.click,0,c):!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),j=1;else return;g(b)}}function g(a){o?a.data.preventDefault(1):j&&a.data.stopPropagation()}var f=CKEDITOR.dialog._.dialogDefinitions[b],
-h=CKEDITOR.tools.clone(W),m=a.config.dialog_buttonsOrder||"OS",k=a.lang.dir,i={},o,j;("OS"==m&&CKEDITOR.env.mac||"rtl"==m&&"ltr"==k||"ltr"==m&&"rtl"==k)&&h.buttons.reverse();f=CKEDITOR.tools.extend(f(a),h);f=CKEDITOR.tools.clone(f);f=new L(this,f);h=R(a);this._={editor:a,element:h.element,name:b,contentSize:{width:0,height:0},size:{width:0,height:0},contents:{},buttons:{},accessKeyMap:{},tabs:{},tabIdList:[],currentTabId:null,currentTabIndex:null,pageCount:0,lastTab:null,tabBarMode:!1,focusList:[],
-currentFocusIndex:0,hasFocus:!1};this.parts=h.parts;CKEDITOR.tools.setTimeout(function(){a.fire("ariaWidget",this.parts.contents)},0,this);h={position:CKEDITOR.env.ie6Compat?"absolute":"fixed",top:0,visibility:"hidden"};h["rtl"==k?"right":"left"]=0;this.parts.dialog.setStyles(h);CKEDITOR.event.call(this);this.definition=f=CKEDITOR.fire("dialogDefinition",{name:b,definition:f},a).definition;if(!("removeDialogTabs"in a._)&&a.config.removeDialogTabs){h=a.config.removeDialogTabs.split(";");for(k=0;k<
-h.length;k++)if(m=h[k].split(":"),2==m.length){var n=m[0];i[n]||(i[n]=[]);i[n].push(m[1])}a._.removeDialogTabs=i}if(a._.removeDialogTabs&&(i=a._.removeDialogTabs[b]))for(k=0;k<i.length;k++)f.removeContents(i[k]);if(f.onLoad)this.on("load",f.onLoad);if(f.onShow)this.on("show",f.onShow);if(f.onHide)this.on("hide",f.onHide);if(f.onOk)this.on("ok",function(b){a.fire("saveSnapshot");setTimeout(function(){a.fire("saveSnapshot")},0);!1===f.onOk.call(this,b)&&(b.data.hide=!1)});if(f.onCancel)this.on("cancel",
-function(a){!1===f.onCancel.call(this,a)&&(a.data.hide=!1)});var l=this,p=function(a){var b=l._.contents,c=!1,d;for(d in b)for(var f in b[d])if(c=a.call(this,b[d][f]))return};this.on("ok",function(a){p(function(b){if(b.validate){var c=b.validate(this),d="string"==typeof c||!1===c;d&&(a.data.hide=!1,a.stop());P.call(b,!d,"string"==typeof c?c:void 0);return d}})},this,null,0);this.on("cancel",function(b){p(function(c){if(c.isChanged())return!a.config.dialog_noConfirmCancel&&!confirm(a.lang.common.confirmCancel)&&
-(b.data.hide=!1),!0})},this,null,0);this.parts.close.on("click",function(a){!1!==this.fire("cancel",{hide:!0}).hide&&this.hide();a.data.preventDefault()},this);this.changeFocus=e;var v=this._.element;a.focusManager.add(v,1);this.on("show",function(){v.on("keydown",d,this);if(CKEDITOR.env.gecko)v.on("keypress",g,this)});this.on("hide",function(){v.removeListener("keydown",d);CKEDITOR.env.gecko&&v.removeListener("keypress",g);p(function(a){Q.apply(a)})});this.on("iframeAdded",function(a){(new CKEDITOR.dom.document(a.data.iframe.$.contentWindow.document)).on("keydown",
-d,this,null,0)});this.on("show",function(){c();if(a.config.dialog_startupFocusTab&&1<l._.pageCount)l._.tabBarMode=!0,l._.tabs[l._.currentTabId][0].focus();else if(!this._.hasFocus)if(this._.currentFocusIndex=-1,f.onFocus){var b=f.onFocus.call(this);b&&b.focus()}else e(1)},this,null,4294967295);if(CKEDITOR.env.ie6Compat)this.on("load",function(){var a=this.getElement(),b=a.getFirst();b.remove();b.appendTo(a)},this);U(this);V(this);(new CKEDITOR.dom.text(f.title,CKEDITOR.document)).appendTo(this.parts.title);
-for(k=0;k<f.contents.length;k++)(i=f.contents[k])&&this.addPage(i);this.parts.tabs.on("click",function(a){var b=a.data.getTarget();b.hasClass("cke_dialog_tab")&&(b=b.$.id,this.selectPage(b.substring(4,b.lastIndexOf("_"))),this._.tabBarMode&&(this._.tabBarMode=!1,this._.currentFocusIndex=-1,e(1)),a.data.preventDefault())},this);k=[];i=CKEDITOR.dialog._.uiElementBuilders.hbox.build(this,{type:"hbox",className:"cke_dialog_footer_buttons",widths:[],children:f.buttons},k).getChild();this.parts.footer.setHtml(k.join(""));
-for(k=0;k<i.length;k++)this._.buttons[i[k].id]=i[k]};CKEDITOR.dialog.prototype={destroy:function(){this.hide();this._.element.remove()},resize:function(){return function(a,b){if(!this._.contentSize||!(this._.contentSize.width==a&&this._.contentSize.height==b))CKEDITOR.dialog.fire("resize",{dialog:this,width:a,height:b},this._.editor),this.fire("resize",{width:a,height:b},this._.editor),this.parts.contents.setStyles({width:a+"px",height:b+"px"}),"rtl"==this._.editor.lang.dir&&this._.position&&(this._.position.x=
-CKEDITOR.document.getWindow().getViewPaneSize().width-this._.contentSize.width-parseInt(this._.element.getFirst().getStyle("right"),10)),this._.contentSize={width:a,height:b}}}(),getSize:function(){var a=this._.element.getFirst();return{width:a.$.offsetWidth||0,height:a.$.offsetHeight||0}},move:function(a,b,c){var e=this._.element.getFirst(),d="rtl"==this._.editor.lang.dir,g="fixed"==e.getComputedStyle("position");CKEDITOR.env.ie&&e.setStyle("zoom","100%");if(!g||!this._.position||!(this._.position.x==
-a&&this._.position.y==b))this._.position={x:a,y:b},g||(g=CKEDITOR.document.getWindow().getScrollPosition(),a+=g.x,b+=g.y),d&&(g=this.getSize(),a=CKEDITOR.document.getWindow().getViewPaneSize().width-g.width-a),b={top:(0<b?b:0)+"px"},b[d?"right":"left"]=(0<a?a:0)+"px",e.setStyles(b),c&&(this._.moved=1)},getPosition:function(){return CKEDITOR.tools.extend({},this._.position)},show:function(){var a=this._.element,b=this.definition;!a.getParent()||!a.getParent().equals(CKEDITOR.document.getBody())?a.appendTo(CKEDITOR.document.getBody()):
-a.setStyle("display","block");this.resize(this._.contentSize&&this._.contentSize.width||b.width||b.minWidth,this._.contentSize&&this._.contentSize.height||b.height||b.minHeight);this.reset();this.selectPage(this.definition.contents[0].id);null===CKEDITOR.dialog._.currentZIndex&&(CKEDITOR.dialog._.currentZIndex=this._.editor.config.baseFloatZIndex);this._.element.getFirst().setStyle("z-index",CKEDITOR.dialog._.currentZIndex+=10);null===CKEDITOR.dialog._.currentTop?(CKEDITOR.dialog._.currentTop=this,
-this._.parentDialog=null,J(this._.editor)):(this._.parentDialog=CKEDITOR.dialog._.currentTop,this._.parentDialog.getElement().getFirst().$.style.zIndex-=Math.floor(this._.editor.config.baseFloatZIndex/2),CKEDITOR.dialog._.currentTop=this);a.on("keydown",M);a.on("keyup",N);this._.hasFocus=!1;for(var c in b.contents)if(b.contents[c]){var a=b.contents[c],e=this._.tabs[a.id],d=a.requiredContent,g=0;if(e){for(var f in this._.contents[a.id]){var h=this._.contents[a.id][f];"hbox"==h.type||("vbox"==h.type||
-!h.getInputElement())||(h.requiredContent&&!this._.editor.activeFilter.check(h.requiredContent)?h.disable():(h.enable(),g++))}!g||d&&!this._.editor.activeFilter.check(d)?e[0].addClass("cke_dialog_tab_disabled"):e[0].removeClass("cke_dialog_tab_disabled")}}CKEDITOR.tools.setTimeout(function(){this.layout();T(this);this.parts.dialog.setStyle("visibility","");this.fireOnce("load",{});CKEDITOR.ui.fire("ready",this);this.fire("show",{});this._.editor.fire("dialogShow",this);this._.parentDialog||this._.editor.focusManager.lock();
-this.foreach(function(a){a.setInitValue&&a.setInitValue()})},100,this)},layout:function(){var a=this.parts.dialog,b=this.getSize(),c=CKEDITOR.document.getWindow().getViewPaneSize(),e=(c.width-b.width)/2,d=(c.height-b.height)/2;CKEDITOR.env.ie6Compat||(b.height+(0<d?d:0)>c.height||b.width+(0<e?e:0)>c.width?a.setStyle("position","absolute"):a.setStyle("position","fixed"));this.move(this._.moved?this._.position.x:e,this._.moved?this._.position.y:d)},foreach:function(a){for(var b in this._.contents)for(var c in this._.contents[b])a.call(this,
-this._.contents[b][c]);return this},reset:function(){var a=function(a){a.reset&&a.reset(1)};return function(){this.foreach(a);return this}}(),setupContent:function(){var a=arguments;this.foreach(function(b){b.setup&&b.setup.apply(b,a)})},commitContent:function(){var a=arguments;this.foreach(function(b){CKEDITOR.env.ie&&this._.currentFocusIndex==b.focusIndex&&b.getInputElement().$.blur();b.commit&&b.commit.apply(b,a)})},hide:function(){if(this.parts.dialog.isVisible()){this.fire("hide",{});this._.editor.fire("dialogHide",
-this);this.selectPage(this._.tabIdList[0]);var a=this._.element;a.setStyle("display","none");this.parts.dialog.setStyle("visibility","hidden");for(X(this);CKEDITOR.dialog._.currentTop!=this;)CKEDITOR.dialog._.currentTop.hide();if(this._.parentDialog){var b=this._.parentDialog.getElement().getFirst();b.setStyle("z-index",parseInt(b.$.style.zIndex,10)+Math.floor(this._.editor.config.baseFloatZIndex/2))}else K(this._.editor);if(CKEDITOR.dialog._.currentTop=this._.parentDialog)CKEDITOR.dialog._.currentZIndex-=
-10;else{CKEDITOR.dialog._.currentZIndex=null;a.removeListener("keydown",M);a.removeListener("keyup",N);var c=this._.editor;c.focus();setTimeout(function(){c.focusManager.unlock();CKEDITOR.env.iOS&&c.window.focus()},0)}delete this._.parentDialog;this.foreach(function(a){a.resetInitValue&&a.resetInitValue()})}},addPage:function(a){if(!a.requiredContent||this._.editor.filter.check(a.requiredContent)){for(var b=[],c=a.label?' title="'+CKEDITOR.tools.htmlEncode(a.label)+'"':"",e=CKEDITOR.dialog._.uiElementBuilders.vbox.build(this,
-{type:"vbox",className:"cke_dialog_page_contents",children:a.elements,expand:!!a.expand,padding:a.padding,style:a.style||"width: 100%;"},b),d=this._.contents[a.id]={},g=e.getChild(),f=0;e=g.shift();)!e.notAllowed&&("hbox"!=e.type&&"vbox"!=e.type)&&f++,d[e.id]=e,"function"==typeof e.getChild&&g.push.apply(g,e.getChild());f||(a.hidden=!0);b=CKEDITOR.dom.element.createFromHtml(b.join(""));b.setAttribute("role","tabpanel");e=CKEDITOR.env;d="cke_"+a.id+"_"+CKEDITOR.tools.getNextNumber();c=CKEDITOR.dom.element.createFromHtml(['<a class="cke_dialog_tab"',
-0<this._.pageCount?" cke_last":"cke_first",c,a.hidden?' style="display:none"':"",' id="',d,'"',e.gecko&&!e.hc?"":' href="javascript:void(0)"',' tabIndex="-1" hidefocus="true" role="tab">',a.label,"</a>"].join(""));b.setAttribute("aria-labelledby",d);this._.tabs[a.id]=[c,b];this._.tabIdList.push(a.id);!a.hidden&&this._.pageCount++;this._.lastTab=c;this.updateStyle();b.setAttribute("name",a.id);b.appendTo(this.parts.contents);c.unselectable();this.parts.tabs.append(c);a.accessKey&&(O(this,this,"CTRL+"+
-a.accessKey,Y,Z),this._.accessKeyMap["CTRL+"+a.accessKey]=a.id)}},selectPage:function(a){if(this._.currentTabId!=a&&!this._.tabs[a][0].hasClass("cke_dialog_tab_disabled")&&!1!==this.fire("selectPage",{page:a,currentPage:this._.currentTabId})){for(var b in this._.tabs){var c=this._.tabs[b][0],e=this._.tabs[b][1];b!=a&&(c.removeClass("cke_dialog_tab_selected"),e.hide());e.setAttribute("aria-hidden",b!=a)}var d=this._.tabs[a];d[0].addClass("cke_dialog_tab_selected");CKEDITOR.env.ie6Compat||CKEDITOR.env.ie7Compat?
-(G(d[1]),d[1].show(),setTimeout(function(){G(d[1],1)},0)):d[1].show();this._.currentTabId=a;this._.currentTabIndex=CKEDITOR.tools.indexOf(this._.tabIdList,a)}},updateStyle:function(){this.parts.dialog[(1===this._.pageCount?"add":"remove")+"Class"]("cke_single_page")},hidePage:function(a){var b=this._.tabs[a]&&this._.tabs[a][0];b&&(1!=this._.pageCount&&b.isVisible())&&(a==this._.currentTabId&&this.selectPage(t.call(this)),b.hide(),this._.pageCount--,this.updateStyle())},showPage:function(a){if(a=this._.tabs[a]&&
-this._.tabs[a][0])a.show(),this._.pageCount++,this.updateStyle()},getElement:function(){return this._.element},getName:function(){return this._.name},getContentElement:function(a,b){var c=this._.contents[a];return c&&c[b]},getValueOf:function(a,b){return this.getContentElement(a,b).getValue()},setValueOf:function(a,b,c){return this.getContentElement(a,b).setValue(c)},getButton:function(a){return this._.buttons[a]},click:function(a){return this._.buttons[a].click()},disableButton:function(a){return this._.buttons[a].disable()},
-enableButton:function(a){return this._.buttons[a].enable()},getPageCount:function(){return this._.pageCount},getParentEditor:function(){return this._.editor},getSelectedElement:function(){return this.getParentEditor().getSelection().getSelectedElement()},addFocusable:function(a,b){if("undefined"==typeof b)b=this._.focusList.length,this._.focusList.push(new H(this,a,b));else{this._.focusList.splice(b,0,new H(this,a,b));for(var c=b+1;c<this._.focusList.length;c++)this._.focusList[c].focusIndex++}}};
-CKEDITOR.tools.extend(CKEDITOR.dialog,{add:function(a,b){if(!this._.dialogDefinitions[a]||"function"==typeof b)this._.dialogDefinitions[a]=b},exists:function(a){return!!this._.dialogDefinitions[a]},getCurrent:function(){return CKEDITOR.dialog._.currentTop},isTabEnabled:function(a,b,c){a=a.config.removeDialogTabs;return!(a&&a.match(RegExp("(?:^|;)"+b+":"+c+"(?:$|;)","i")))},okButton:function(){var a=function(a,c){c=c||{};return CKEDITOR.tools.extend({id:"ok",type:"button",label:a.lang.common.ok,"class":"cke_dialog_ui_button_ok",
-onClick:function(a){a=a.data.dialog;!1!==a.fire("ok",{hide:!0}).hide&&a.hide()}},c,!0)};a.type="button";a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)};return a}(),cancelButton:function(){var a=function(a,c){c=c||{};return CKEDITOR.tools.extend({id:"cancel",type:"button",label:a.lang.common.cancel,"class":"cke_dialog_ui_button_cancel",onClick:function(a){a=a.data.dialog;!1!==a.fire("cancel",{hide:!0}).hide&&a.hide()}},c,!0)};a.type="button";a.override=
-function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)};return a}(),addUIElement:function(a,b){this._.uiElementBuilders[a]=b}});CKEDITOR.dialog._={uiElementBuilders:{},dialogDefinitions:{},currentTop:null,currentZIndex:null};CKEDITOR.event.implementOn(CKEDITOR.dialog);CKEDITOR.event.implementOn(CKEDITOR.dialog.prototype);var W={resizable:CKEDITOR.DIALOG_RESIZE_BOTH,minWidth:600,minHeight:400,buttons:[CKEDITOR.dialog.okButton,CKEDITOR.dialog.cancelButton]},z=function(a,
-b,c){for(var e=0,d;d=a[e];e++)if(d.id==b||c&&d[c]&&(d=z(d[c],b,c)))return d;return null},A=function(a,b,c,e,d){if(c){for(var g=0,f;f=a[g];g++){if(f.id==c)return a.splice(g,0,b),b;if(e&&f[e]&&(f=A(f[e],b,c,e,!0)))return f}if(d)return null}a.push(b);return b},B=function(a,b,c){for(var e=0,d;d=a[e];e++){if(d.id==b)return a.splice(e,1);if(c&&d[c]&&(d=B(d[c],b,c)))return d}return null},L=function(a,b){this.dialog=a;for(var c=b.contents,e=0,d;d=c[e];e++)c[e]=d&&new I(a,d);CKEDITOR.tools.extend(this,b)};
-L.prototype={getContents:function(a){return z(this.contents,a)},getButton:function(a){return z(this.buttons,a)},addContents:function(a,b){return A(this.contents,a,b)},addButton:function(a,b){return A(this.buttons,a,b)},removeContents:function(a){B(this.contents,a)},removeButton:function(a){B(this.buttons,a)}};I.prototype={get:function(a){return z(this.elements,a,"children")},add:function(a,b){return A(this.elements,a,b,"children")},remove:function(a){B(this.elements,a,"children")}};var F,w={},q,s=
-{},M=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,e=a.data.$.shiftKey,d=String.fromCharCode(a.data.$.keyCode);if((b=s[(b?"CTRL+":"")+(c?"ALT+":"")+(e?"SHIFT+":"")+d])&&b.length)b=b[b.length-1],b.keydown&&b.keydown.call(b.uiElement,b.dialog,b.key),a.data.preventDefault()},N=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,e=a.data.$.shiftKey,d=String.fromCharCode(a.data.$.keyCode);if((b=s[(b?"CTRL+":"")+(c?"ALT+":"")+(e?"SHIFT+":"")+d])&&b.length)b=b[b.length-
-1],b.keyup&&(b.keyup.call(b.uiElement,b.dialog,b.key),a.data.preventDefault())},O=function(a,b,c,e,d){(s[c]||(s[c]=[])).push({uiElement:a,dialog:b,key:c,keyup:d||a.accessKeyUp,keydown:e||a.accessKeyDown})},X=function(a){for(var b in s){for(var c=s[b],e=c.length-1;0<=e;e--)(c[e].dialog==a||c[e].uiElement==a)&&c.splice(e,1);0===c.length&&delete s[b]}},Z=function(a,b){a._.accessKeyMap[b]&&a.selectPage(a._.accessKeyMap[b])},Y=function(){};(function(){CKEDITOR.ui.dialog={uiElement:function(a,b,c,e,d,g,
-f){if(!(4>arguments.length)){var h=(e.call?e(b):e)||"div",m=["<",h," "],k=(d&&d.call?d(b):d)||{},i=(g&&g.call?g(b):g)||{},o=(f&&f.call?f.call(this,a,b):f)||"",j=this.domId=i.id||CKEDITOR.tools.getNextId()+"_uiElement";this.id=b.id;b.requiredContent&&!a.getParentEditor().filter.check(b.requiredContent)&&(k.display="none",this.notAllowed=!0);i.id=j;var n={};b.type&&(n["cke_dialog_ui_"+b.type]=1);b.className&&(n[b.className]=1);b.disabled&&(n.cke_disabled=1);for(var l=i["class"]&&i["class"].split?i["class"].split(" "):
-[],j=0;j<l.length;j++)l[j]&&(n[l[j]]=1);l=[];for(j in n)l.push(j);i["class"]=l.join(" ");b.title&&(i.title=b.title);n=(b.style||"").split(";");b.align&&(l=b.align,k["margin-left"]="left"==l?0:"auto",k["margin-right"]="right"==l?0:"auto");for(j in k)n.push(j+":"+k[j]);b.hidden&&n.push("display:none");for(j=n.length-1;0<=j;j--)""===n[j]&&n.splice(j,1);0<n.length&&(i.style=(i.style?i.style+"; ":"")+n.join("; "));for(j in i)m.push(j+'="'+CKEDITOR.tools.htmlEncode(i[j])+'" ');m.push(">",o,"</",h,">");
-c.push(m.join(""));(this._||(this._={})).dialog=a;"boolean"==typeof b.isChanged&&(this.isChanged=function(){return b.isChanged});"function"==typeof b.isChanged&&(this.isChanged=b.isChanged);"function"==typeof b.setValue&&(this.setValue=CKEDITOR.tools.override(this.setValue,function(a){return function(c){a.call(this,b.setValue.call(this,c))}}));"function"==typeof b.getValue&&(this.getValue=CKEDITOR.tools.override(this.getValue,function(a){return function(){return b.getValue.call(this,a.call(this))}}));
-CKEDITOR.event.implementOn(this);this.registerEvents(b);this.accessKeyUp&&(this.accessKeyDown&&b.accessKey)&&O(this,a,"CTRL+"+b.accessKey);var p=this;a.on("load",function(){var b=p.getInputElement();if(b){var c=p.type in{checkbox:1,ratio:1}&&CKEDITOR.env.ie&&CKEDITOR.env.version<8?"cke_dialog_ui_focused":"";b.on("focus",function(){a._.tabBarMode=false;a._.hasFocus=true;p.fire("focus");c&&this.addClass(c)});b.on("blur",function(){p.fire("blur");c&&this.removeClass(c)})}});CKEDITOR.tools.extend(this,
-b);this.keyboardFocusable&&(this.tabIndex=b.tabIndex||0,this.focusIndex=a._.focusList.push(this)-1,this.on("focus",function(){a._.currentFocusIndex=p.focusIndex}))}},hbox:function(a,b,c,e,d){if(!(4>arguments.length)){this._||(this._={});var g=this._.children=b,f=d&&d.widths||null,h=d&&d.height||null,m,k={role:"presentation"};d&&d.align&&(k.align=d.align);CKEDITOR.ui.dialog.uiElement.call(this,a,d||{type:"hbox"},e,"table",{},k,function(){var a=['<tbody><tr class="cke_dialog_ui_hbox">'];for(m=0;m<c.length;m++){var b=
-"cke_dialog_ui_hbox_child",e=[];0===m&&(b="cke_dialog_ui_hbox_first");m==c.length-1&&(b="cke_dialog_ui_hbox_last");a.push('<td class="',b,'" role="presentation" ');f?f[m]&&e.push("width:"+r(f[m])):e.push("width:"+Math.floor(100/c.length)+"%");h&&e.push("height:"+r(h));d&&void 0!=d.padding&&e.push("padding:"+r(d.padding));CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&g[m].align)&&e.push("text-align:"+g[m].align);0<e.length&&a.push('style="'+e.join("; ")+'" ');a.push(">",c[m],"</td>")}a.push("</tr></tbody>");
-return a.join("")})}},vbox:function(a,b,c,e,d){if(!(3>arguments.length)){this._||(this._={});var g=this._.children=b,f=d&&d.width||null,h=d&&d.heights||null;CKEDITOR.ui.dialog.uiElement.call(this,a,d||{type:"vbox"},e,"div",null,{role:"presentation"},function(){var b=['<table role="presentation" cellspacing="0" border="0" '];b.push('style="');d&&d.expand&&b.push("height:100%;");b.push("width:"+r(f||"100%"),";");CKEDITOR.env.webkit&&b.push("float:none;");b.push('"');b.push('align="',CKEDITOR.tools.htmlEncode(d&&
-d.align||("ltr"==a.getParentEditor().lang.dir?"left":"right")),'" ');b.push("><tbody>");for(var e=0;e<c.length;e++){var i=[];b.push('<tr><td role="presentation" ');f&&i.push("width:"+r(f||"100%"));h?i.push("height:"+r(h[e])):d&&d.expand&&i.push("height:"+Math.floor(100/c.length)+"%");d&&void 0!=d.padding&&i.push("padding:"+r(d.padding));CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&g[e].align)&&i.push("text-align:"+g[e].align);0<i.length&&b.push('style="',i.join("; "),'" ');b.push(' class="cke_dialog_ui_vbox_child">',
-c[e],"</td></tr>")}b.push("</tbody></table>");return b.join("")})}}}})();CKEDITOR.ui.dialog.uiElement.prototype={getElement:function(){return CKEDITOR.document.getById(this.domId)},getInputElement:function(){return this.getElement()},getDialog:function(){return this._.dialog},setValue:function(a,b){this.getInputElement().setValue(a);!b&&this.fire("change",{value:a});return this},getValue:function(){return this.getInputElement().getValue()},isChanged:function(){return!1},selectParentTab:function(){for(var a=
-this.getInputElement();(a=a.getParent())&&-1==a.$.className.search("cke_dialog_page_contents"););if(!a)return this;a=a.getAttribute("name");this._.dialog._.currentTabId!=a&&this._.dialog.selectPage(a);return this},focus:function(){this.selectParentTab().getInputElement().focus();return this},registerEvents:function(a){var b=/^on([A-Z]\w+)/,c,e=function(a,b,c,d){b.on("load",function(){a.getInputElement().on(c,d,a)})},d;for(d in a)if(c=d.match(b))this.eventProcessors[d]?this.eventProcessors[d].call(this,
-this._.dialog,a[d]):e(this,this._.dialog,c[1].toLowerCase(),a[d]);return this},eventProcessors:{onLoad:function(a,b){a.on("load",b,this)},onShow:function(a,b){a.on("show",b,this)},onHide:function(a,b){a.on("hide",b,this)}},accessKeyDown:function(){this.focus()},accessKeyUp:function(){},disable:function(){var a=this.getElement();this.getInputElement().setAttribute("disabled","true");a.addClass("cke_disabled")},enable:function(){var a=this.getElement();this.getInputElement().removeAttribute("disabled");
-a.removeClass("cke_disabled")},isEnabled:function(){return!this.getElement().hasClass("cke_disabled")},isVisible:function(){return this.getInputElement().isVisible()},isFocusable:function(){return!this.isEnabled()||!this.isVisible()?!1:!0}};CKEDITOR.ui.dialog.hbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getChild:function(a){if(1>arguments.length)return this._.children.concat();a.splice||(a=[a]);return 2>a.length?this._.children[a[0]]:this._.children[a[0]]&&this._.children[a[0]].getChild?
-this._.children[a[0]].getChild(a.slice(1,a.length)):null}},!0);CKEDITOR.ui.dialog.vbox.prototype=new CKEDITOR.ui.dialog.hbox;(function(){var a={build:function(a,c,e){for(var d=c.children,g,f=[],h=[],m=0;m<d.length&&(g=d[m]);m++){var k=[];f.push(k);h.push(CKEDITOR.dialog._.uiElementBuilders[g.type].build(a,g,k))}return new CKEDITOR.ui.dialog[c.type](a,h,f,e,c)}};CKEDITOR.dialog.addUIElement("hbox",a);CKEDITOR.dialog.addUIElement("vbox",a)})();CKEDITOR.dialogCommand=function(a,b){this.dialogName=a;
-CKEDITOR.tools.extend(this,b,!0)};CKEDITOR.dialogCommand.prototype={exec:function(a){a.openDialog(this.dialogName)},canUndo:!1,editorFocus:1};(function(){var a=/^([a]|[^a])+$/,b=/^\d*$/,c=/^\d*(?:\.\d+)?$/,e=/^(((\d*(\.\d+))|(\d*))(px|\%)?)?$/,d=/^(((\d*(\.\d+))|(\d*))(px|em|ex|in|cm|mm|pt|pc|\%)?)?$/i,g=/^(\s*[\w-]+\s*:\s*[^:;]+(?:;|$))*$/;CKEDITOR.VALIDATE_OR=1;CKEDITOR.VALIDATE_AND=2;CKEDITOR.dialog.validate={functions:function(){var a=arguments;return function(){var b=this&&this.getValue?this.getValue():
-a[0],c=void 0,d=CKEDITOR.VALIDATE_AND,e=[],g;for(g=0;g<a.length;g++)if("function"==typeof a[g])e.push(a[g]);else break;g<a.length&&"string"==typeof a[g]&&(c=a[g],g++);g<a.length&&"number"==typeof a[g]&&(d=a[g]);var j=d==CKEDITOR.VALIDATE_AND?!0:!1;for(g=0;g<e.length;g++)j=d==CKEDITOR.VALIDATE_AND?j&&e[g](b):j||e[g](b);return!j?c:!0}},regex:function(a,b){return function(c){c=this&&this.getValue?this.getValue():c;return!a.test(c)?b:!0}},notEmpty:function(b){return this.regex(a,b)},integer:function(a){return this.regex(b,
-a)},number:function(a){return this.regex(c,a)},cssLength:function(a){return this.functions(function(a){return d.test(CKEDITOR.tools.trim(a))},a)},htmlLength:function(a){return this.functions(function(a){return e.test(CKEDITOR.tools.trim(a))},a)},inlineStyle:function(a){return this.functions(function(a){return g.test(CKEDITOR.tools.trim(a))},a)},equals:function(a,b){return this.functions(function(b){return b==a},b)},notEqual:function(a,b){return this.functions(function(b){return b!=a},b)}};CKEDITOR.on("instanceDestroyed",
-function(a){if(CKEDITOR.tools.isEmpty(CKEDITOR.instances)){for(var b;b=CKEDITOR.dialog._.currentTop;)b.hide();for(var c in w)w[c].remove();w={}}var a=a.editor._.storedDialogs,d;for(d in a)a[d].destroy()})})();CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{openDialog:function(a,b){var c=null,e=CKEDITOR.dialog._.dialogDefinitions[a];null===CKEDITOR.dialog._.currentTop&&J(this);if("function"==typeof e)c=this._.storedDialogs||(this._.storedDialogs={}),c=c[a]||(c[a]=new CKEDITOR.dialog(this,a)),b&&b.call(c,
-c),c.show();else{if("failed"==e)throw K(this),Error('[CKEDITOR.dialog.openDialog] Dialog "'+a+'" failed when loading definition.');"string"==typeof e&&CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(e),function(){"function"!=typeof CKEDITOR.dialog._.dialogDefinitions[a]&&(CKEDITOR.dialog._.dialogDefinitions[a]="failed");this.openDialog(a,b)},this,0,1)}CKEDITOR.skin.loadPart("dialog");return c}})})();
-CKEDITOR.plugins.add("dialog",{requires:"dialogui",init:function(t){t.on("doubleclick",function(u){u.data.dialog&&t.openDialog(u.data.dialog)},null,null,999)}});CKEDITOR.plugins.add("about",{requires:"dialog",init:function(a){var b=a.addCommand("about",new CKEDITOR.dialogCommand("about"));b.modes={wysiwyg:1,source:1};b.canUndo=!1;b.readOnly=1;a.ui.addButton&&a.ui.addButton("About",{label:a.lang.about.title,command:"about",toolbar:"about"});CKEDITOR.dialog.add("about",this.path+"dialogs/about.js")}});(function(){CKEDITOR.plugins.add("a11yhelp",{requires:"dialog",availableLangs:{ar:1,bg:1,ca:1,cs:1,cy:1,da:1,de:1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,fa:1,fi:1,fr:1,"fr-ca":1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,sr:1,"sr-latn":1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},init:function(b){var c=this;b.addCommand("a11yHelp",{exec:function(){var a=b.langCode,a=c.availableLangs[a]?a:c.availableLangs[a.replace(/-.*/,
-"")]?a.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(c.path+"dialogs/lang/"+a+".js"),function(){b.lang.a11yhelp=c.langEntries[a];b.openDialog("a11yHelp")})},modes:{wysiwyg:1,source:1},readOnly:1,canUndo:!1});b.setKeystroke(CKEDITOR.ALT+48,"a11yHelp");CKEDITOR.dialog.add("a11yHelp",this.path+"dialogs/a11yhelp.js");b.on("ariaEditorHelpLabel",function(a){a.data.label=b.lang.common.editorHelp})}})})();(function(){function f(c){var a=this.att,c=c&&c.hasAttribute(a)&&c.getAttribute(a)||"";void 0!==c&&this.setValue(c)}function g(){for(var c,a=0;a<arguments.length;a++)if(arguments[a]instanceof CKEDITOR.dom.element){c=arguments[a];break}if(c){var a=this.att,b=this.getValue();b?c.setAttribute(a,b):c.removeAttribute(a,b)}}var i={id:1,dir:1,classes:1,styles:1};CKEDITOR.plugins.add("dialogadvtab",{requires:"dialog",allowedContent:function(c){c||(c=i);var a=[];c.id&&a.push("id");c.dir&&a.push("dir");var b=
-"";a.length&&(b+="["+a.join(",")+"]");c.classes&&(b+="(*)");c.styles&&(b+="{*}");return b},createAdvancedTab:function(c,a,b){a||(a=i);var d=c.lang.common,h={id:"advanced",label:d.advancedTab,title:d.advancedTab,elements:[{type:"vbox",padding:1,children:[]}]},e=[];if(a.id||a.dir)a.id&&e.push({id:"advId",att:"id",type:"text",requiredContent:b?b+"[id]":null,label:d.id,setup:f,commit:g}),a.dir&&e.push({id:"advLangDir",att:"dir",type:"select",requiredContent:b?b+"[dir]":null,label:d.langDir,"default":"",
-style:"width:100%",items:[[d.notSet,""],[d.langDirLTR,"ltr"],[d.langDirRTL,"rtl"]],setup:f,commit:g}),h.elements[0].children.push({type:"hbox",widths:["50%","50%"],children:[].concat(e)});if(a.styles||a.classes)e=[],a.styles&&e.push({id:"advStyles",att:"style",type:"text",requiredContent:b?b+"{cke-xyz}":null,label:d.styles,"default":"",validate:CKEDITOR.dialog.validate.inlineStyle(d.invalidInlineStyle),onChange:function(){},getStyle:function(a,c){var b=this.getValue().match(RegExp("(?:^|;)\\s*"+a+
-"\\s*:\\s*([^;]*)","i"));return b?b[1]:c},updateStyle:function(a,b){var d=this.getValue(),e=c.document.createElement("span");e.setAttribute("style",d);e.setStyle(a,b);d=CKEDITOR.tools.normalizeCssText(e.getAttribute("style"));this.setValue(d,1)},setup:f,commit:g}),a.classes&&e.push({type:"hbox",widths:["45%","55%"],children:[{id:"advCSSClasses",att:"class",type:"text",requiredContent:b?b+"(cke-xyz)":null,label:d.cssClasses,"default":"",setup:f,commit:g}]}),h.elements[0].children.push({type:"hbox",
-widths:["50%","50%"],children:[].concat(e)});return h}})})();CKEDITOR.plugins.add("basicstyles",{init:function(c){var e=0,d=function(g,d,b,a){if(a){var a=new CKEDITOR.style(a),f=h[b];f.unshift(a);c.attachStyleStateChange(a,function(a){!c.readOnly&&c.getCommand(b).setState(a)});c.addCommand(b,new CKEDITOR.styleCommand(a,{contentForms:f}));c.ui.addButton&&c.ui.addButton(g,{label:d,command:b,toolbar:"basicstyles,"+(e+=10)})}},h={bold:["strong","b",["span",function(a){a=a.styles["font-weight"];return"bold"==a||700<=+a}]],italic:["em","i",["span",function(a){return"italic"==
-a.styles["font-style"]}]],underline:["u",["span",function(a){return"underline"==a.styles["text-decoration"]}]],strike:["s","strike",["span",function(a){return"line-through"==a.styles["text-decoration"]}]],subscript:["sub"],superscript:["sup"]},b=c.config,a=c.lang.basicstyles;d("Bold",a.bold,"bold",b.coreStyles_bold);d("Italic",a.italic,"italic",b.coreStyles_italic);d("Underline",a.underline,"underline",b.coreStyles_underline);d("Strike",a.strike,"strike",b.coreStyles_strike);d("Subscript",a.subscript,
-"subscript",b.coreStyles_subscript);d("Superscript",a.superscript,"superscript",b.coreStyles_superscript);c.setKeystroke([[CKEDITOR.CTRL+66,"bold"],[CKEDITOR.CTRL+73,"italic"],[CKEDITOR.CTRL+85,"underline"]])}});CKEDITOR.config.coreStyles_bold={element:"strong",overrides:"b"};CKEDITOR.config.coreStyles_italic={element:"em",overrides:"i"};CKEDITOR.config.coreStyles_underline={element:"u"};CKEDITOR.config.coreStyles_strike={element:"s",overrides:"strike"};CKEDITOR.config.coreStyles_subscript={element:"sub"};
-CKEDITOR.config.coreStyles_superscript={element:"sup"};(function(){function n(a,f,d,b){if(!a.isReadOnly()&&!a.equals(d.editable())){CKEDITOR.dom.element.setMarker(b,a,"bidi_processed",1);for(var b=a,c=d.editable();(b=b.getParent())&&!b.equals(c);)if(b.getCustomData("bidi_processed")){a.removeStyle("direction");a.removeAttribute("dir");return}b="useComputedState"in d.config?d.config.useComputedState:1;if((b?a.getComputedStyle("direction"):a.getStyle("direction")||a.hasAttribute("dir"))!=f)a.removeStyle("direction"),b?(a.removeAttribute("dir"),f!=a.getComputedStyle("direction")&&
-a.setAttribute("dir",f)):a.setAttribute("dir",f),d.forceNextSelectionCheck()}}function r(a,f,d){var b=a.getCommonAncestor(!1,!0),a=a.clone();a.enlarge(d==CKEDITOR.ENTER_BR?CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:CKEDITOR.ENLARGE_BLOCK_CONTENTS);if(a.checkBoundaryOfElement(b,CKEDITOR.START)&&a.checkBoundaryOfElement(b,CKEDITOR.END)){for(var c;b&&b.type==CKEDITOR.NODE_ELEMENT&&(c=b.getParent())&&1==c.getChildCount()&&!(b.getName()in f);)b=c;return b.type==CKEDITOR.NODE_ELEMENT&&b.getName()in f&&b}}function m(a){return{context:"p",
-allowedContent:{"h1 h2 h3 h4 h5 h6 table ul ol blockquote div tr p div li td":{propertiesOnly:!0,attributes:"dir"}},requiredContent:"p[dir]",refresh:function(a,d){var b=a.config.useComputedState,c,b=void 0===b||b;if(!b){c=d.lastElement;for(var h=a.editable();c&&!(c.getName()in q||c.equals(h));){var e=c.getParent();if(!e)break;c=e}}c=c||d.block||d.blockLimit;c.equals(a.editable())&&(h=a.getSelection().getRanges()[0].getEnclosedNode())&&h.type==CKEDITOR.NODE_ELEMENT&&(c=h);c&&(b=b?c.getComputedStyle("direction"):
-c.getStyle("direction")||c.getAttribute("dir"),a.getCommand("bidirtl").setState("rtl"==b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF),a.getCommand("bidiltr").setState("ltr"==b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF));b=(d.block||d.blockLimit||a.editable()).getDirection(1);if(b!=(a._.selDir||a.lang.dir))a._.selDir=b,a.fire("contentDirChanged",b)},exec:function(f){var d=f.getSelection(),b=f.config.enterMode,c=d.getRanges();if(c&&c.length){for(var h={},e=d.createBookmarks(),c=c.createIterator(),g,
-j=0;g=c.getNextRange(1);){var i=g.getEnclosedNode();if(!i||i&&!(i.type==CKEDITOR.NODE_ELEMENT&&i.getName()in o))i=r(g,p,b);i&&n(i,a,f,h);var k=new CKEDITOR.dom.walker(g),l=e[j].startNode,m=e[j++].endNode;k.evaluator=function(a){return!!(a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in p&&!(a.getName()==(b==CKEDITOR.ENTER_P?"p":"div")&&a.getParent().type==CKEDITOR.NODE_ELEMENT&&"blockquote"==a.getParent().getName())&&a.getPosition(l)&CKEDITOR.POSITION_FOLLOWING&&(a.getPosition(m)&CKEDITOR.POSITION_PRECEDING+
-CKEDITOR.POSITION_CONTAINS)==CKEDITOR.POSITION_PRECEDING)};for(;i=k.next();)n(i,a,f,h);g=g.createIterator();for(g.enlargeBr=b!=CKEDITOR.ENTER_BR;i=g.getNextParagraph(b==CKEDITOR.ENTER_P?"p":"div");)n(i,a,f,h)}CKEDITOR.dom.element.clearAllMarkers(h);f.forceNextSelectionCheck();d.selectBookmarks(e);f.focus()}}}}function s(a){var f=a==j.setAttribute,d=a==j.removeAttribute,b=/\bdirection\s*:\s*(.*?)\s*(:?$|;)/;return function(c,h){if(!this.isReadOnly()){var e;if(e=c==(f||d?"dir":"direction")||"style"==
-c&&(d||b.test(h))){a:{e=this;for(var g=e.getDocument().getBody().getParent();e;){if(e.equals(g)){e=!1;break a}e=e.getParent()}e=!0}e=!e}if(e&&(e=this.getDirection(1),g=a.apply(this,arguments),e!=this.getDirection(1)))return this.getDocument().fire("dirChanged",this),g}return a.apply(this,arguments)}}var p={table:1,ul:1,ol:1,blockquote:1,div:1},o={},q={};CKEDITOR.tools.extend(o,p,{tr:1,p:1,div:1,li:1});CKEDITOR.tools.extend(q,o,{td:1});CKEDITOR.plugins.add("bidi",{init:function(a){function f(b,c,d,
-e,f){a.addCommand(d,new CKEDITOR.command(a,e));a.ui.addButton&&a.ui.addButton(b,{label:c,command:d,toolbar:"bidi,"+f})}if(!a.blockless){var d=a.lang.bidi;f("BidiLtr",d.ltr,"bidiltr",m("ltr"),10);f("BidiRtl",d.rtl,"bidirtl",m("rtl"),20);a.on("contentDom",function(){a.document.on("dirChanged",function(b){a.fire("dirChanged",{node:b.data,dir:b.data.getDirection(1)})})});a.on("contentDirChanged",function(b){var b=(a.lang.dir!=b.data?"add":"remove")+"Class",c=a.ui.space(a.config.toolbarLocation);if(c)c[b]("cke_mixed_dir_content")})}}});
-for(var j=CKEDITOR.dom.element.prototype,l=["setStyle","removeStyle","setAttribute","removeAttribute"],k=0;k<l.length;k++)j[l[k]]=CKEDITOR.tools.override(j[l[k]],s)})();(function(){var k={exec:function(g){var a=g.getCommand("blockquote").state,i=g.getSelection(),c=i&&i.getRanges()[0];if(c){var h=i.createBookmarks();if(CKEDITOR.env.ie){var e=h[0].startNode,b=h[0].endNode,d;if(e&&"blockquote"==e.getParent().getName())for(d=e;d=d.getNext();)if(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()){e.move(d,!0);break}if(b&&"blockquote"==b.getParent().getName())for(d=b;d=d.getPrevious();)if(d.type==CKEDITOR.NODE_ELEMENT&&d.isBlockBoundary()){b.move(d);break}}var f=c.createIterator();
-f.enlargeBr=g.config.enterMode!=CKEDITOR.ENTER_BR;if(a==CKEDITOR.TRISTATE_OFF){for(e=[];a=f.getNextParagraph();)e.push(a);1>e.length&&(a=g.document.createElement(g.config.enterMode==CKEDITOR.ENTER_P?"p":"div"),b=h.shift(),c.insertNode(a),a.append(new CKEDITOR.dom.text("",g.document)),c.moveToBookmark(b),c.selectNodeContents(a),c.collapse(!0),b=c.createBookmark(),e.push(a),h.unshift(b));d=e[0].getParent();c=[];for(b=0;b<e.length;b++)a=e[b],d=d.getCommonAncestor(a.getParent());for(a={table:1,tbody:1,
-tr:1,ol:1,ul:1};a[d.getName()];)d=d.getParent();for(b=null;0<e.length;){for(a=e.shift();!a.getParent().equals(d);)a=a.getParent();a.equals(b)||c.push(a);b=a}for(;0<c.length;)if(a=c.shift(),"blockquote"==a.getName()){for(b=new CKEDITOR.dom.documentFragment(g.document);a.getFirst();)b.append(a.getFirst().remove()),e.push(b.getLast());b.replace(a)}else e.push(a);c=g.document.createElement("blockquote");for(c.insertBefore(e[0]);0<e.length;)a=e.shift(),c.append(a)}else if(a==CKEDITOR.TRISTATE_ON){b=[];
-for(d={};a=f.getNextParagraph();){for(e=c=null;a.getParent();){if("blockquote"==a.getParent().getName()){c=a.getParent();e=a;break}a=a.getParent()}c&&(e&&!e.getCustomData("blockquote_moveout"))&&(b.push(e),CKEDITOR.dom.element.setMarker(d,e,"blockquote_moveout",!0))}CKEDITOR.dom.element.clearAllMarkers(d);a=[];e=[];for(d={};0<b.length;)f=b.shift(),c=f.getParent(),f.getPrevious()?f.getNext()?(f.breakParent(f.getParent()),e.push(f.getNext())):f.remove().insertAfter(c):f.remove().insertBefore(c),c.getCustomData("blockquote_processed")||
-(e.push(c),CKEDITOR.dom.element.setMarker(d,c,"blockquote_processed",!0)),a.push(f);CKEDITOR.dom.element.clearAllMarkers(d);for(b=e.length-1;0<=b;b--){c=e[b];a:{d=c;for(var f=0,k=d.getChildCount(),j=void 0;f<k&&(j=d.getChild(f));f++)if(j.type==CKEDITOR.NODE_ELEMENT&&j.isBlockBoundary()){d=!1;break a}d=!0}d&&c.remove()}if(g.config.enterMode==CKEDITOR.ENTER_BR)for(c=!0;a.length;)if(f=a.shift(),"div"==f.getName()){b=new CKEDITOR.dom.documentFragment(g.document);c&&(f.getPrevious()&&!(f.getPrevious().type==
-CKEDITOR.NODE_ELEMENT&&f.getPrevious().isBlockBoundary()))&&b.append(g.document.createElement("br"));for(c=f.getNext()&&!(f.getNext().type==CKEDITOR.NODE_ELEMENT&&f.getNext().isBlockBoundary());f.getFirst();)f.getFirst().remove().appendTo(b);c&&b.append(g.document.createElement("br"));b.replace(f);c=!1}}i.selectBookmarks(h);g.focus()}},refresh:function(g,a){this.setState(g.elementPath(a.block||a.blockLimit).contains("blockquote",1)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)},context:"blockquote",
-allowedContent:"blockquote",requiredContent:"blockquote"};CKEDITOR.plugins.add("blockquote",{init:function(g){g.blockless||(g.addCommand("blockquote",k),g.ui.addButton&&g.ui.addButton("Blockquote",{label:g.lang.blockquote.toolbar,command:"blockquote",toolbar:"blocks,10"}))}})})();(function(){function v(b){function a(){var e=b.editable();e.on(p,function(b){(!CKEDITOR.env.ie||!n)&&u(b)});CKEDITOR.env.ie&&e.on("paste",function(e){q||(g(),e.data.preventDefault(),u(e),h("paste")||b.openDialog("paste"))});CKEDITOR.env.ie&&(e.on("contextmenu",i,null,null,0),e.on("beforepaste",function(b){b.data&&(!b.data.$.ctrlKey&&!b.data.$.shiftKey)&&i()},null,null,0));e.on("beforecut",function(){!n&&j(b)});var a;e.attachListener(CKEDITOR.env.ie?e:b.document.getDocumentElement(),"mouseup",function(){a=
-setTimeout(function(){r()},0)});b.on("destroy",function(){clearTimeout(a)});e.on("keyup",r)}function c(e){return{type:e,canUndo:"cut"==e,startDisabled:!0,exec:function(){"cut"==this.type&&j();var e;var a=this.type;if(CKEDITOR.env.ie)e=h(a);else try{e=b.document.$.execCommand(a,!1,null)}catch(d){e=!1}e||alert(b.lang.clipboard[this.type+"Error"]);return e}}}function d(){return{canUndo:!1,async:!0,exec:function(b,a){var d=function(a,d){a&&f(a.type,a.dataValue,!!d);b.fire("afterCommandExec",{name:"paste",
-command:c,returnValue:!!a})},c=this;"string"==typeof a?d({type:"auto",dataValue:a},1):b.getClipboardData(d)}}}function g(){q=1;setTimeout(function(){q=0},100)}function i(){n=1;setTimeout(function(){n=0},10)}function h(e){var a=b.document,d=a.getBody(),c=!1,j=function(){c=!0};d.on(e,j);(7<CKEDITOR.env.version?a.$:a.$.selection.createRange()).execCommand(e);d.removeListener(e,j);return c}function f(e,a,d){e={type:e};if(d&&!1===b.fire("beforePaste",e)||!a)return!1;e.dataValue=a;return b.fire("paste",
-e)}function j(){if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var e=b.getSelection(),a,d,c;if(e.getType()==CKEDITOR.SELECTION_ELEMENT&&(a=e.getSelectedElement()))d=e.getRanges()[0],c=b.document.createText(""),c.insertBefore(a),d.setStartBefore(c),d.setEndAfter(a),e.selectRanges([d]),setTimeout(function(){a.getParent()&&(c.remove(),e.selectElement(a))},0)}}function l(a,d){var c=b.document,j=b.editable(),l=function(b){b.cancel()},g;if(!c.getById("cke_pastebin")){var i=b.getSelection(),s=i.createBookmarks();
-CKEDITOR.env.ie&&i.root.fire("selectionchange");var k=new CKEDITOR.dom.element((CKEDITOR.env.webkit||j.is("body"))&&!CKEDITOR.env.ie?"body":"div",c);k.setAttributes({id:"cke_pastebin","data-cke-temp":"1"});var f=0,c=c.getWindow();CKEDITOR.env.webkit?(j.append(k),k.addClass("cke_editable"),j.is("body")||(f="static"!=j.getComputedStyle("position")?j:CKEDITOR.dom.element.get(j.$.offsetParent),f=f.getDocumentPosition().y)):j.getAscendant(CKEDITOR.env.ie?"body":"html",1).append(k);k.setStyles({position:"absolute",
-top:c.getScrollPosition().y-f+10+"px",width:"1px",height:Math.max(1,c.getViewPaneSize().height-20)+"px",overflow:"hidden",margin:0,padding:0});(f=k.getParent().isReadOnly())?(k.setOpacity(0),k.setAttribute("contenteditable",!0)):k.setStyle("ltr"==b.config.contentsLangDirection?"left":"right","-1000px");b.on("selectionChange",l,null,null,0);if(CKEDITOR.env.webkit||CKEDITOR.env.gecko)g=j.once("blur",l,null,null,-100);f&&k.focus();f=new CKEDITOR.dom.range(k);f.selectNodeContents(k);var h=f.select();
-CKEDITOR.env.ie&&(g=j.once("blur",function(){b.lockSelection(h)}));var m=CKEDITOR.document.getWindow().getScrollPosition().y;setTimeout(function(){if(CKEDITOR.env.webkit)CKEDITOR.document.getBody().$.scrollTop=m;g&&g.removeListener();CKEDITOR.env.ie&&j.focus();i.selectBookmarks(s);k.remove();var a;if(CKEDITOR.env.webkit&&(a=k.getFirst())&&a.is&&a.hasClass("Apple-style-span"))k=a;b.removeListener("selectionChange",l);d(k.getHtml())},0)}}function s(){if(CKEDITOR.env.ie){b.focus();g();var a=b.focusManager;
-a.lock();if(b.editable().fire(p)&&!h("paste"))return a.unlock(),!1;a.unlock()}else try{if(b.editable().fire(p)&&!b.document.$.execCommand("Paste",!1,null))throw 0;}catch(d){return!1}return!0}function o(a){if("wysiwyg"==b.mode)switch(a.data.keyCode){case CKEDITOR.CTRL+86:case CKEDITOR.SHIFT+45:a=b.editable();g();!CKEDITOR.env.ie&&a.fire("beforepaste");break;case CKEDITOR.CTRL+88:case CKEDITOR.SHIFT+46:b.fire("saveSnapshot"),setTimeout(function(){b.fire("saveSnapshot")},50)}}function u(a){var d={type:"auto"},
-c=b.fire("beforePaste",d);l(a,function(b){b=b.replace(/<span[^>]+data-cke-bookmark[^<]*?<\/span>/ig,"");c&&f(d.type,b,0,1)})}function r(){if("wysiwyg"==b.mode){var a=m("paste");b.getCommand("cut").setState(m("cut"));b.getCommand("copy").setState(m("copy"));b.getCommand("paste").setState(a);b.fire("pasteState",a)}}function m(a){if(t&&a in{paste:1,cut:1})return CKEDITOR.TRISTATE_DISABLED;if("paste"==a)return CKEDITOR.TRISTATE_OFF;var a=b.getSelection(),d=a.getRanges();return a.getType()==CKEDITOR.SELECTION_NONE||
-1==d.length&&d[0].collapsed?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_OFF}var n=0,q=0,t=0,p=CKEDITOR.env.ie?"beforepaste":"paste";(function(){b.on("key",o);b.on("contentDom",a);b.on("selectionChange",function(b){t=b.data.selection.getRanges()[0].checkReadOnly();r()});b.contextMenu&&b.contextMenu.addListener(function(b,a){t=a.getRanges()[0].checkReadOnly();return{cut:m("cut"),copy:m("copy"),paste:m("paste")}})})();(function(){function a(d,c,j,e,l){var g=b.lang.clipboard[c];b.addCommand(c,j);b.ui.addButton&&
-b.ui.addButton(d,{label:g,command:c,toolbar:"clipboard,"+e});b.addMenuItems&&b.addMenuItem(c,{label:g,command:c,group:"clipboard",order:l})}a("Cut","cut",c("cut"),10,1);a("Copy","copy",c("copy"),20,4);a("Paste","paste",d(),30,8)})();b.getClipboardData=function(a,d){function c(a){a.removeListener();a.cancel();d(a.data)}function j(a){a.removeListener();a.cancel();i=!0;d({type:f,dataValue:a.data})}function l(){this.customTitle=a&&a.title}var g=!1,f="auto",i=!1;d||(d=a,a=null);b.on("paste",c,null,null,
-0);b.on("beforePaste",function(a){a.removeListener();g=true;f=a.data.type},null,null,1E3);!1===s()&&(b.removeListener("paste",c),g&&b.fire("pasteDialog",l)?(b.on("pasteDialogCommit",j),b.on("dialogHide",function(a){a.removeListener();a.data.removeListener("pasteDialogCommit",j);setTimeout(function(){i||d(null)},10)})):d(null))}}function w(b){if(CKEDITOR.env.webkit){if(!b.match(/^[^<]*$/g)&&!b.match(/^(<div><br( ?\/)?><\/div>|<div>[^<]*<\/div>)*$/gi))return"html"}else if(CKEDITOR.env.ie){if(!b.match(/^([^<]|<br( ?\/)?>)*$/gi)&&
-!b.match(/^(<p>([^<]|<br( ?\/)?>)*<\/p>|(\r\n))*$/gi))return"html"}else if(CKEDITOR.env.gecko){if(!b.match(/^([^<]|<br( ?\/)?>)*$/gi))return"html"}else return"html";return"htmlifiedtext"}function x(b,a){function c(a){return CKEDITOR.tools.repeat("</p><p>",~~(a/2))+(1==a%2?"<br>":"")}a=a.replace(/\s+/g," ").replace(/> +</g,"><").replace(/<br ?\/>/gi,"<br>");a=a.replace(/<\/?[A-Z]+>/g,function(a){return a.toLowerCase()});if(a.match(/^[^<]$/))return a;CKEDITOR.env.webkit&&-1<a.indexOf("<div>")&&(a=a.replace(/^(<div>(<br>|)<\/div>)(?!$|(<div>(<br>|)<\/div>))/g,
-"<br>").replace(/^(<div>(<br>|)<\/div>){2}(?!$)/g,"<div></div>"),a.match(/<div>(<br>|)<\/div>/)&&(a="<p>"+a.replace(/(<div>(<br>|)<\/div>)+/g,function(a){return c(a.split("</div><div>").length+1)})+"</p>"),a=a.replace(/<\/div><div>/g,"<br>"),a=a.replace(/<\/?div>/g,""));CKEDITOR.env.gecko&&b.enterMode!=CKEDITOR.ENTER_BR&&(CKEDITOR.env.gecko&&(a=a.replace(/^<br><br>$/,"<br>")),-1<a.indexOf("<br><br>")&&(a="<p>"+a.replace(/(<br>){2,}/g,function(a){return c(a.length/4)})+"</p>"));return o(b,a)}function y(){var b=
-new CKEDITOR.htmlParser.filter,a={blockquote:1,dl:1,fieldset:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ol:1,p:1,table:1,ul:1},c=CKEDITOR.tools.extend({br:0},CKEDITOR.dtd.$inline),d={p:1,br:1,"cke:br":1},g=CKEDITOR.dtd,i=CKEDITOR.tools.extend({area:1,basefont:1,embed:1,iframe:1,map:1,object:1,param:1},CKEDITOR.dtd.$nonBodyContent,CKEDITOR.dtd.$cdata),h=function(a){delete a.name;a.add(new CKEDITOR.htmlParser.text(" "))},f=function(a){for(var b=a,c;(b=b.next)&&b.name&&b.name.match(/^h\d$/);){c=new CKEDITOR.htmlParser.element("cke:br");
-c.isEmpty=!0;for(a.add(c);c=b.children.shift();)a.add(c)}};b.addRules({elements:{h1:f,h2:f,h3:f,h4:f,h5:f,h6:f,img:function(a){var a=CKEDITOR.tools.trim(a.attributes.alt||""),b=" ";a&&!a.match(/(^http|\.(jpe?g|gif|png))/i)&&(b=" ["+a+"] ");return new CKEDITOR.htmlParser.text(b)},td:h,th:h,$:function(b){var f=b.name,h;if(i[f])return!1;b.attributes={};if("br"==f)return b;if(a[f])b.name="p";else if(c[f])delete b.name;else if(g[f]){h=new CKEDITOR.htmlParser.element("cke:br");h.isEmpty=!0;if(CKEDITOR.dtd.$empty[f])return h;
-b.add(h,0);h=h.clone();h.isEmpty=!0;b.add(h);delete b.name}d[b.name]||delete b.name;return b}}},{applyToAll:!0});return b}function z(b,a,c){var a=new CKEDITOR.htmlParser.fragment.fromHtml(a),d=new CKEDITOR.htmlParser.basicWriter;a.writeHtml(d,c);var a=d.getHtml(),a=a.replace(/\s*(<\/?[a-z:]+ ?\/?>)\s*/g,"$1").replace(/(<cke:br \/>){2,}/g,"<cke:br />").replace(/(<cke:br \/>)(<\/?p>|<br \/>)/g,"$2").replace(/(<\/?p>|<br \/>)(<cke:br \/>)/g,"$1").replace(/<(cke:)?br( \/)?>/g,"<br>").replace(/<p><\/p>/g,
-""),g=0,a=a.replace(/<\/?p>/g,function(a){if("<p>"==a){if(1<++g)return"</p><p>"}else if(0<--g)return"</p><p>";return a}).replace(/<p><\/p>/g,"");return o(b,a)}function o(b,a){b.enterMode==CKEDITOR.ENTER_BR?a=a.replace(/(<\/p><p>)+/g,function(a){return CKEDITOR.tools.repeat("<br>",2*(a.length/7))}).replace(/<\/?p>/g,""):b.enterMode==CKEDITOR.ENTER_DIV&&(a=a.replace(/<(\/)?p>/g,"<$1div>"));return a}CKEDITOR.plugins.add("clipboard",{requires:"dialog",init:function(b){var a;v(b);CKEDITOR.dialog.add("paste",
-CKEDITOR.getUrl(this.path+"dialogs/paste.js"));b.on("paste",function(a){var b=a.data.dataValue,g=CKEDITOR.dtd.$block;-1<b.indexOf("Apple-")&&(b=b.replace(/<span class="Apple-converted-space">&nbsp;<\/span>/gi," "),"html"!=a.data.type&&(b=b.replace(/<span class="Apple-tab-span"[^>]*>([^<]*)<\/span>/gi,function(a,b){return b.replace(/\t/g,"&nbsp;&nbsp; &nbsp;")})),-1<b.indexOf('<br class="Apple-interchange-newline">')&&(a.data.startsWithEOL=1,a.data.preSniffing="html",b=b.replace(/<br class="Apple-interchange-newline">/,
-"")),b=b.replace(/(<[^>]+) class="Apple-[^"]*"/gi,"$1"));if(b.match(/^<[^<]+cke_(editable|contents)/i)){var i,h,f=new CKEDITOR.dom.element("div");for(f.setHtml(b);1==f.getChildCount()&&(i=f.getFirst())&&i.type==CKEDITOR.NODE_ELEMENT&&(i.hasClass("cke_editable")||i.hasClass("cke_contents"));)f=h=i;h&&(b=h.getHtml().replace(/<br>$/i,""))}CKEDITOR.env.ie?b=b.replace(/^&nbsp;(?: |\r\n)?<(\w+)/g,function(b,d){if(d.toLowerCase()in g){a.data.preSniffing="html";return"<"+d}return b}):CKEDITOR.env.webkit?
-b=b.replace(/<\/(\w+)><div><br><\/div>$/,function(b,d){if(d in g){a.data.endsWithEOL=1;return"</"+d+">"}return b}):CKEDITOR.env.gecko&&(b=b.replace(/(\s)<br>$/,"$1"));a.data.dataValue=b},null,null,3);b.on("paste",function(c){var c=c.data,d=c.type,g=c.dataValue,i,h=b.config.clipboard_defaultContentType||"html";i="html"==d||"html"==c.preSniffing?"html":w(g);"htmlifiedtext"==i?g=x(b.config,g):"text"==d&&"html"==i&&(g=z(b.config,g,a||(a=y(b))));c.startsWithEOL&&(g='<br data-cke-eol="1">'+g);c.endsWithEOL&&
-(g+='<br data-cke-eol="1">');"auto"==d&&(d="html"==i||"html"==h?"html":"text");c.type=d;c.dataValue=g;delete c.preSniffing;delete c.startsWithEOL;delete c.endsWithEOL},null,null,6);b.on("paste",function(a){a=a.data;b.insertHtml(a.dataValue,a.type);setTimeout(function(){b.fire("afterPaste")},0)},null,null,1E3);b.on("pasteDialog",function(a){setTimeout(function(){b.openDialog("paste",a.data)},0)})}})})();(function(){var c='<a id="{id}" class="cke_button cke_button__{name} cke_button_{state} {cls}"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' title="{title}" tabindex="-1" hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="{hasArrow}" aria-disabled="{ariaDisabled}"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var c=c+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+
-(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"'),c=c+'>&nbsp;</span><span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>{arrowHtml}</a>',m=CKEDITOR.addTemplate("buttonArrow",'<span class="cke_button_arrow">'+(CKEDITOR.env.hc?"&#9660;":"")+"</span>"),n=CKEDITOR.addTemplate("button",c);CKEDITOR.plugins.add("button",
-{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_BUTTON,CKEDITOR.ui.button.handler)}});CKEDITOR.UI_BUTTON="button";CKEDITOR.ui.button=function(a){CKEDITOR.tools.extend(this,a,{title:a.label,click:a.click||function(b){b.execCommand(a.command)}});this._={}};CKEDITOR.ui.button.handler={create:function(a){return new CKEDITOR.ui.button(a)}};CKEDITOR.ui.button.prototype={render:function(a,b){var c=CKEDITOR.env,i=this._.id=CKEDITOR.tools.getNextId(),e="",f=this.command,k;this._.editor=a;var d={id:i,button:this,
-editor:a,focus:function(){CKEDITOR.document.getById(i).focus()},execute:function(){this.button.click(a)},attach:function(a){this.button.attach(a)}},o=CKEDITOR.tools.addFunction(function(a){if(d.onkey)return a=new CKEDITOR.dom.event(a),!1!==d.onkey(d,a.getKeystroke())}),p=CKEDITOR.tools.addFunction(function(a){var b;d.onfocus&&(b=!1!==d.onfocus(d,new CKEDITOR.dom.event(a)));return b}),l=0;d.clickFn=k=CKEDITOR.tools.addFunction(function(){l&&(a.unlockSelection(1),l=0);d.execute();c.iOS&&a.focus()});
-if(this.modes){var j={},g=function(){var b=a.mode;b&&(b=this.modes[b]?void 0!=j[b]?j[b]:CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,b=a.readOnly&&!this.readOnly?CKEDITOR.TRISTATE_DISABLED:b,this.setState(b),this.refresh&&this.refresh())};a.on("beforeModeUnload",function(){a.mode&&this._.state!=CKEDITOR.TRISTATE_DISABLED&&(j[a.mode]=this._.state)},this);a.on("activeFilterChange",g,this);a.on("mode",g,this);!this.readOnly&&a.on("readOnly",g,this)}else if(f&&(f=a.getCommand(f)))f.on("state",function(){this.setState(f.state)},
-this),e+=f.state==CKEDITOR.TRISTATE_ON?"on":f.state==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";if(this.directional)a.on("contentDirChanged",function(b){var c=CKEDITOR.document.getById(this._.id),d=c.getFirst(),b=b.data;b!=a.lang.dir?c.addClass("cke_"+b):c.removeClass("cke_ltr").removeClass("cke_rtl");d.setAttribute("style",CKEDITOR.skin.getIconStyle(h,"rtl"==b,this.icon,this.iconOffset))},this);f||(e+="off");var h=g=this.name||this.command;this.icon&&!/\./.test(this.icon)&&(h=this.icon,this.icon=
-null);e={id:i,name:g,iconName:h,label:this.label,cls:this.className||"",state:e,ariaDisabled:"disabled"==e?"true":"false",title:this.title,titleJs:c.gecko&&!c.hc?"":(this.title||"").replace("'",""),hasArrow:this.hasArrow?"true":"false",keydownFn:o,focusFn:p,clickFn:k,style:CKEDITOR.skin.getIconStyle(h,"rtl"==a.lang.dir,this.icon,this.iconOffset),arrowHtml:this.hasArrow?m.output():""};n.output(e,b);if(this.onRender)this.onRender();return d},setState:function(a){if(this._.state==a)return!1;this._.state=
-a;var b=CKEDITOR.document.getById(this._.id);return b?(b.setState(a,"cke_button"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this.hasArrow?(a=a==CKEDITOR.TRISTATE_ON?this._.editor.lang.button.selectedLabel.replace(/%1/g,this.label):this.label,CKEDITOR.document.getById(this._.id+"_label").setText(a)):a==CKEDITOR.TRISTATE_ON?b.setAttribute("aria-pressed",!0):b.removeAttribute("aria-pressed"),!0):!1},getState:function(){return this._.state},toFeature:function(a){if(this._.feature)return this._.feature;
-var b=this;!this.allowedContent&&(!this.requiredContent&&this.command)&&(b=a.getCommand(this.command)||b);return this._.feature=b}};CKEDITOR.ui.prototype.addButton=function(a,b){this.add(a,CKEDITOR.UI_BUTTON,b)}})();CKEDITOR.plugins.add("panelbutton",{requires:"button",onLoad:function(){function e(c){var a=this._;a.state!=CKEDITOR.TRISTATE_DISABLED&&(this.createPanel(c),a.on?a.panel.hide():a.panel.showBlock(this._.id,this.document.getById(this._.id),4))}CKEDITOR.ui.panelButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(c){var a=c.panel||{};delete c.panel;this.base(c);this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document;a.block={attributes:a.attributes};this.hasArrow=a.toolbarRelated=
-!0;this.click=e;this._={panelDefinition:a}},statics:{handler:{create:function(c){return new CKEDITOR.ui.panelButton(c)}}},proto:{createPanel:function(c){var a=this._;if(!a.panel){var f=this._.panelDefinition,e=this._.panelDefinition.block,g=f.parent||CKEDITOR.document.getBody(),d=this._.panel=new CKEDITOR.ui.floatPanel(c,g,f),f=d.addBlock(a.id,e),b=this;d.onShow=function(){b.className&&this.element.addClass(b.className+"_panel");b.setState(CKEDITOR.TRISTATE_ON);a.on=1;b.editorFocus&&c.focus();if(b.onOpen)b.onOpen()};
-d.onHide=function(d){b.className&&this.element.getFirst().removeClass(b.className+"_panel");b.setState(b.modes&&b.modes[c.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);a.on=0;if(!d&&b.onClose)b.onClose()};d.onEscape=function(){d.hide(1);b.document.getById(a.id).focus()};if(this.onBlock)this.onBlock(d,f);f.onHide=function(){a.on=0;b.setState(CKEDITOR.TRISTATE_OFF)}}}}})},beforeInit:function(e){e.ui.addHandler(CKEDITOR.UI_PANELBUTTON,CKEDITOR.ui.panelButton.handler)}});
-CKEDITOR.UI_PANELBUTTON="panelbutton";(function(){CKEDITOR.plugins.add("panel",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_PANEL,CKEDITOR.ui.panel.handler)}});CKEDITOR.UI_PANEL="panel";CKEDITOR.ui.panel=function(a,b){b&&CKEDITOR.tools.extend(this,b);CKEDITOR.tools.extend(this,{className:"",css:[]});this.id=CKEDITOR.tools.getNextId();this.document=a;this.isFramed=this.forceIFrame||this.css.length;this._={blocks:{}}};CKEDITOR.ui.panel.handler={create:function(a){return new CKEDITOR.ui.panel(a)}};var f=CKEDITOR.addTemplate("panel",
-'<div lang="{langCode}" id="{id}" dir={dir} class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}" style="z-index:{z-index}" role="presentation">{frame}</div>'),g=CKEDITOR.addTemplate("panel-frame",'<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>'),h=CKEDITOR.addTemplate("panel-frame-inner",'<!DOCTYPE html><html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}"><head>{css}</head><body class="cke_{dir}" style="margin:0;padding:0" onload="{onload}"></body></html>');
-CKEDITOR.ui.panel.prototype={render:function(a,b){this.getHolderElement=function(){var a=this._.holder;if(!a){if(this.isFramed){var a=this.document.getById(this.id+"_frame"),b=a.getParent(),a=a.getFrameDocument();CKEDITOR.env.iOS&&b.setStyles({overflow:"scroll","-webkit-overflow-scrolling":"touch"});b=CKEDITOR.tools.addFunction(CKEDITOR.tools.bind(function(){this.isLoaded=!0;if(this.onLoad)this.onLoad()},this));a.write(h.output(CKEDITOR.tools.extend({css:CKEDITOR.tools.buildStyleHtml(this.css),onload:"window.parent.CKEDITOR.tools.callFunction("+
-b+");"},d)));a.getWindow().$.CKEDITOR=CKEDITOR;a.on("keydown",function(a){var b=a.data.getKeystroke(),c=this.document.getById(this.id).getAttribute("dir");this._.onKeyDown&&!1===this._.onKeyDown(b)?a.data.preventDefault():(27==b||b==("rtl"==c?39:37))&&this.onEscape&&!1===this.onEscape(b)&&a.data.preventDefault()},this);a=a.getBody();a.unselectable();CKEDITOR.env.air&&CKEDITOR.tools.callFunction(b)}else a=this.document.getById(this.id);this._.holder=a}return a};var d={editorId:a.id,id:this.id,langCode:a.langCode,
-dir:a.lang.dir,cls:this.className,frame:"",env:CKEDITOR.env.cssClass,"z-index":a.config.baseFloatZIndex+1};if(this.isFramed){var e=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())":"";d.frame=g.output({id:this.id+"_frame",src:e})}e=f.output(d);b&&b.push(e);return e},addBlock:function(a,b){b=this._.blocks[a]=b instanceof CKEDITOR.ui.panel.block?b:new CKEDITOR.ui.panel.block(this.getHolderElement(),
-b);this._.currentBlock||this.showBlock(a);return b},getBlock:function(a){return this._.blocks[a]},showBlock:function(a){var a=this._.blocks[a],b=this._.currentBlock,d=!this.forceIFrame||CKEDITOR.env.ie?this._.holder:this.document.getById(this.id+"_frame");b&&b.hide();this._.currentBlock=a;CKEDITOR.fire("ariaWidget",d);a._.focusIndex=-1;this._.onKeyDown=a.onKeyDown&&CKEDITOR.tools.bind(a.onKeyDown,a);a.show();return a},destroy:function(){this.element&&this.element.remove()}};CKEDITOR.ui.panel.block=
-CKEDITOR.tools.createClass({$:function(a,b){this.element=a.append(a.getDocument().createElement("div",{attributes:{tabindex:-1,"class":"cke_panel_block"},styles:{display:"none"}}));b&&CKEDITOR.tools.extend(this,b);this.element.setAttributes({role:this.attributes.role||"presentation","aria-label":this.attributes["aria-label"],title:this.attributes.title||this.attributes["aria-label"]});this.keys={};this._.focusIndex=-1;this.element.disableContextMenu()},_:{markItem:function(a){-1!=a&&(a=this.element.getElementsByTag("a").getItem(this._.focusIndex=
-a),CKEDITOR.env.webkit&&a.getDocument().getWindow().focus(),a.focus(),this.onMark&&this.onMark(a))}},proto:{show:function(){this.element.setStyle("display","")},hide:function(){(!this.onHide||!0!==this.onHide.call(this))&&this.element.setStyle("display","none")},onKeyDown:function(a,b){var d=this.keys[a];switch(d){case "next":for(var e=this._.focusIndex,d=this.element.getElementsByTag("a"),c;c=d.getItem(++e);)if(c.getAttribute("_cke_focus")&&c.$.offsetWidth){this._.focusIndex=e;c.focus();break}return!c&&
-!b?(this._.focusIndex=-1,this.onKeyDown(a,1)):!1;case "prev":e=this._.focusIndex;for(d=this.element.getElementsByTag("a");0<e&&(c=d.getItem(--e));){if(c.getAttribute("_cke_focus")&&c.$.offsetWidth){this._.focusIndex=e;c.focus();break}c=null}return!c&&!b?(this._.focusIndex=d.count(),this.onKeyDown(a,1)):!1;case "click":case "mouseup":return e=this._.focusIndex,(c=0<=e&&this.element.getElementsByTag("a").getItem(e))&&(c.$[d]?c.$[d]():c.$["on"+d]()),!1}return!0}}})})();CKEDITOR.plugins.add("floatpanel",{requires:"panel"});
-(function(){function r(a,b,c,i,f){var f=CKEDITOR.tools.genKey(b.getUniqueId(),c.getUniqueId(),a.lang.dir,a.uiColor||"",i.css||"",f||""),h=g[f];h||(h=g[f]=new CKEDITOR.ui.panel(b,i),h.element=c.append(CKEDITOR.dom.element.createFromHtml(h.render(a),b)),h.element.setStyles({display:"none",position:"absolute"}));return h}var g={};CKEDITOR.ui.floatPanel=CKEDITOR.tools.createClass({$:function(a,b,c,i){function f(){d.hide()}c.forceIFrame=1;c.toolbarRelated&&a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&
-(b=CKEDITOR.document.getById("cke_"+a.name));var h=b.getDocument(),i=r(a,h,b,c,i||0),j=i.element,l=j.getFirst(),d=this;j.disableContextMenu();this.element=j;this._={editor:a,panel:i,parentElement:b,definition:c,document:h,iframe:l,children:[],dir:a.lang.dir};a.on("mode",f);a.on("resize",f);if(!CKEDITOR.env.iOS)h.getWindow().on("resize",f)},proto:{addBlock:function(a,b){return this._.panel.addBlock(a,b)},addListBlock:function(a,b){return this._.panel.addListBlock(a,b)},getBlock:function(a){return this._.panel.getBlock(a)},
-showBlock:function(a,b,c,i,f,h){var j=this._.panel,l=j.showBlock(a);this.allowBlur(!1);a=this._.editor.editable();this._.returnFocus=a.hasFocus?a:new CKEDITOR.dom.element(CKEDITOR.document.$.activeElement);this._.hideTimeout=0;var d=this.element,a=this._.iframe,a=CKEDITOR.env.ie?a:new CKEDITOR.dom.window(a.$.contentWindow),g=d.getDocument(),o=this._.parentElement.getPositionedAncestor(),p=b.getDocumentPosition(g),g=o?o.getDocumentPosition(g):{x:0,y:0},m="rtl"==this._.dir,e=p.x+(i||0)-g.x,k=p.y+(f||
-0)-g.y;if(m&&(1==c||4==c))e+=b.$.offsetWidth;else if(!m&&(2==c||3==c))e+=b.$.offsetWidth-1;if(3==c||4==c)k+=b.$.offsetHeight-1;this._.panel._.offsetParentId=b.getId();d.setStyles({top:k+"px",left:0,display:""});d.setOpacity(0);d.getFirst().removeStyle("width");this._.editor.focusManager.add(a);this._.blurSet||(CKEDITOR.event.useCapture=!0,a.on("blur",function(a){function q(){delete this._.returnFocus;this.hide()}this.allowBlur()&&a.data.getPhase()==CKEDITOR.EVENT_PHASE_AT_TARGET&&(this.visible&&!this._.activeChild)&&
-(CKEDITOR.env.iOS?this._.hideTimeout||(this._.hideTimeout=CKEDITOR.tools.setTimeout(q,0,this)):q.call(this))},this),a.on("focus",function(){this._.focused=!0;this.hideChild();this.allowBlur(!0)},this),CKEDITOR.env.iOS&&(a.on("touchstart",function(){clearTimeout(this._.hideTimeout)},this),a.on("touchend",function(){this._.hideTimeout=0;this.focus()},this)),CKEDITOR.event.useCapture=!1,this._.blurSet=1);j.onEscape=CKEDITOR.tools.bind(function(a){if(this.onEscape&&this.onEscape(a)===false)return false},
-this);CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.tools.bind(function(){d.removeStyle("width");if(l.autoSize){var a=l.element.getDocument(),a=(CKEDITOR.env.webkit?l.element:a.getBody()).$.scrollWidth;CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&a>0)&&(a=a+((d.$.offsetWidth||0)-(d.$.clientWidth||0)+3));d.setStyle("width",a+10+"px");a=l.element.$.scrollHeight;CKEDITOR.env.ie&&(CKEDITOR.env.quirks&&a>0)&&(a=a+((d.$.offsetHeight||0)-(d.$.clientHeight||0)+3));d.setStyle("height",a+"px");j._.currentBlock.element.setStyle("display",
-"none").removeStyle("display")}else d.removeStyle("height");m&&(e=e-d.$.offsetWidth);d.setStyle("left",e+"px");var b=j.element.getWindow(),a=d.$.getBoundingClientRect(),b=b.getViewPaneSize(),c=a.width||a.right-a.left,f=a.height||a.bottom-a.top,i=m?a.right:b.width-a.left,g=m?b.width-a.right:a.left;m?i<c&&(e=g>c?e+c:b.width>c?e-a.left:e-a.right+b.width):i<c&&(e=g>c?e-c:b.width>c?e-a.right+b.width:e-a.left);c=a.top;b.height-a.top<f&&(k=c>f?k-f:b.height>f?k-a.bottom+b.height:k-a.top);if(CKEDITOR.env.ie){b=
-a=new CKEDITOR.dom.element(d.$.offsetParent);b.getName()=="html"&&(b=b.getDocument().getBody());b.getComputedStyle("direction")=="rtl"&&(e=CKEDITOR.env.ie8Compat?e-d.getDocument().getDocumentElement().$.scrollLeft*2:e-(a.$.scrollWidth-a.$.clientWidth))}var a=d.getFirst(),n;(n=a.getCustomData("activePanel"))&&n.onHide&&n.onHide.call(this,1);a.setCustomData("activePanel",this);d.setStyles({top:k+"px",left:e+"px"});d.setOpacity(1);h&&h()},this);j.isLoaded?a():j.onLoad=a;CKEDITOR.tools.setTimeout(function(){var a=
-CKEDITOR.env.webkit&&CKEDITOR.document.getWindow().getScrollPosition().y;this.focus();l.element.focus();if(CKEDITOR.env.webkit)CKEDITOR.document.getBody().$.scrollTop=a;this.allowBlur(true);this._.editor.fire("panelShow",this)},0,this)},CKEDITOR.env.air?200:0,this);this.visible=1;this.onShow&&this.onShow.call(this)},focus:function(){if(CKEDITOR.env.webkit){var a=CKEDITOR.document.getActive();a&&!a.equals(this._.iframe)&&a.$.blur()}(this._.lastFocused||this._.iframe.getFrameDocument().getWindow()).focus()},
-blur:function(){var a=this._.iframe.getFrameDocument().getActive();a&&a.is("a")&&(this._.lastFocused=a)},hide:function(a){if(this.visible&&(!this.onHide||!0!==this.onHide.call(this))){this.hideChild();CKEDITOR.env.gecko&&this._.iframe.getFrameDocument().$.activeElement.blur();this.element.setStyle("display","none");this.visible=0;this.element.getFirst().removeCustomData("activePanel");if(a=a&&this._.returnFocus)CKEDITOR.env.webkit&&a.type&&a.getWindow().$.focus(),a.focus();delete this._.lastFocused;
-this._.editor.fire("panelHide",this)}},allowBlur:function(a){var b=this._.panel;void 0!=a&&(b.allowBlur=a);return b.allowBlur},showAsChild:function(a,b,c,g,f,h){this._.activeChild==a&&a._.panel._.offsetParentId==c.getId()||(this.hideChild(),a.onHide=CKEDITOR.tools.bind(function(){CKEDITOR.tools.setTimeout(function(){this._.focused||this.hide()},0,this)},this),this._.activeChild=a,this._.focused=!1,a.showBlock(b,c,g,f,h),this.blur(),(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&setTimeout(function(){a.element.getChild(0).$.style.cssText+=
-""},100))},hideChild:function(a){var b=this._.activeChild;b&&(delete b.onHide,delete this._.activeChild,b.hide(),a&&this.focus())}}});CKEDITOR.on("instanceDestroyed",function(){var a=CKEDITOR.tools.isEmpty(CKEDITOR.instances),b;for(b in g){var c=g[b];a?c.destroy():c.element.hide()}a&&(g={})})})();CKEDITOR.plugins.add("colorbutton",{requires:"panelbutton,floatpanel",init:function(c){function o(m,g,d,h){var i=new CKEDITOR.style(j["colorButton_"+g+"Style"]),k=CKEDITOR.tools.getNextId()+"_colorBox";c.ui.add(m,CKEDITOR.UI_PANELBUTTON,{label:d,title:d,modes:{wysiwyg:1},editorFocus:0,toolbar:"colors,"+h,allowedContent:i,requiredContent:i,panel:{css:CKEDITOR.skin.getPath("editor"),attributes:{role:"listbox","aria-label":f.panelTitle}},onBlock:function(a,b){b.autoSize=!0;b.element.addClass("cke_colorblock");
-b.element.setHtml(q(a,g,k));b.element.getDocument().getBody().setStyle("overflow","hidden");CKEDITOR.ui.fire("ready",this);var e=b.keys,d="rtl"==c.lang.dir;e[d?37:39]="next";e[40]="next";e[9]="next";e[d?39:37]="prev";e[38]="prev";e[CKEDITOR.SHIFT+9]="prev";e[32]="click"},refresh:function(){c.activeFilter.check(i)||this.setState(CKEDITOR.TRISTATE_DISABLED)},onOpen:function(){var a=c.getSelection(),a=a&&a.getStartElement(),a=c.elementPath(a),b;if(a){a=a.block||a.blockLimit||c.document.getBody();do b=
-a&&a.getComputedStyle("back"==g?"background-color":"color")||"transparent";while("back"==g&&"transparent"==b&&a&&(a=a.getParent()));if(!b||"transparent"==b)b="#ffffff";this._.panel._.iframe.getFrameDocument().getById(k).setStyle("background-color",b);return b}}})}function q(m,g,d){var h=[],i=j.colorButton_colors.split(","),k=c.plugins.colordialog&&!1!==j.colorButton_enableMore,a=i.length+(k?2:1),b=CKEDITOR.tools.addFunction(function(a,b){if("?"==a){var e=arguments.callee,d=function(a){this.removeListener("ok",
-d);this.removeListener("cancel",d);"ok"==a.name&&e(this.getContentElement("picker","selectedColor").getValue(),b)};c.openDialog("colordialog",function(){this.on("ok",d);this.on("cancel",d)})}else{c.focus();m.hide();c.fire("saveSnapshot");c.removeStyle(new CKEDITOR.style(j["colorButton_"+b+"Style"],{color:"inherit"}));if(a){var f=j["colorButton_"+b+"Style"];f.childRule="back"==b?function(a){return p(a)}:function(a){return!(a.is("a")||a.getElementsByTag("a").count())||p(a)};c.applyStyle(new CKEDITOR.style(f,
-{color:a}))}c.fire("saveSnapshot")}});h.push('<a class="cke_colorauto" _cke_focus=1 hidefocus=true title="',f.auto,'" onclick="CKEDITOR.tools.callFunction(',b,",null,'",g,"');return false;\" href=\"javascript:void('",f.auto,'\')" role="option" aria-posinset="1" aria-setsize="',a,'"><table role="presentation" cellspacing=0 cellpadding=0 width="100%"><tr><td><span class="cke_colorbox" id="',d,'"></span></td><td colspan=7 align=center>',f.auto,'</td></tr></table></a><table role="presentation" cellspacing=0 cellpadding=0 width="100%">');
-for(d=0;d<i.length;d++){0===d%8&&h.push("</tr><tr>");var e=i[d].split("/"),l=e[0],n=e[1]||l;e[1]||(l="#"+l.replace(/^(.)(.)(.)$/,"$1$1$2$2$3$3"));e=c.lang.colorbutton.colors[n]||n;h.push('<td><a class="cke_colorbox" _cke_focus=1 hidefocus=true title="',e,'" onclick="CKEDITOR.tools.callFunction(',b,",'",l,"','",g,"'); return false;\" href=\"javascript:void('",e,'\')" role="option" aria-posinset="',d+2,'" aria-setsize="',a,'"><span class="cke_colorbox" style="background-color:#',n,'"></span></a></td>')}k&&
-h.push('</tr><tr><td colspan=8 align=center><a class="cke_colormore" _cke_focus=1 hidefocus=true title="',f.more,'" onclick="CKEDITOR.tools.callFunction(',b,",'?','",g,"');return false;\" href=\"javascript:void('",f.more,"')\"",' role="option" aria-posinset="',a,'" aria-setsize="',a,'">',f.more,"</a></td>");h.push("</tr></table>");return h.join("")}function p(c){return"false"==c.getAttribute("contentEditable")||c.getAttribute("data-nostyle")}var j=c.config,f=c.lang.colorbutton;CKEDITOR.env.hc||(o("TextColor",
-"fore",f.textColorTitle,10),o("BGColor","back",f.bgColorTitle,20))}});CKEDITOR.config.colorButton_colors="000,800000,8B4513,2F4F4F,008080,000080,4B0082,696969,B22222,A52A2A,DAA520,006400,40E0D0,0000CD,800080,808080,F00,FF8C00,FFD700,008000,0FF,00F,EE82EE,A9A9A9,FFA07A,FFA500,FFFF00,00FF00,AFEEEE,ADD8E6,DDA0DD,D3D3D3,FFF0F5,FAEBD7,FFFFE0,F0FFF0,F0FFFF,F0F8FF,E6E6FA,FFF";CKEDITOR.config.colorButton_foreStyle={element:"span",styles:{color:"#(color)"},overrides:[{element:"font",attributes:{color:null}}]};
-CKEDITOR.config.colorButton_backStyle={element:"span",styles:{"background-color":"#(color)"}};CKEDITOR.plugins.colordialog={requires:"dialog",init:function(b){var c=new CKEDITOR.dialogCommand("colordialog");c.editorFocus=!1;b.addCommand("colordialog",c);CKEDITOR.dialog.add("colordialog",this.path+"dialogs/colordialog.js");b.getColorFromDialog=function(c,f){var d=function(a){this.removeListener("ok",d);this.removeListener("cancel",d);a="ok"==a.name?this.getValueOf("picker","selectedColor"):null;c.call(f,a)},e=function(a){a.on("ok",d);a.on("cancel",d)};b.execCommand("colordialog");if(b._.storedDialogs&&
-b._.storedDialogs.colordialog)e(b._.storedDialogs.colordialog);else CKEDITOR.on("dialogDefinition",function(a){if("colordialog"==a.data.name){var b=a.data.definition;a.removeListener();b.onLoad=CKEDITOR.tools.override(b.onLoad,function(a){return function(){e(this);b.onLoad=a;"function"==typeof a&&a.call(this)}})}})}}};CKEDITOR.plugins.add("colordialog",CKEDITOR.plugins.colordialog);(function(){CKEDITOR.plugins.add("templates",{requires:"dialog",init:function(a){CKEDITOR.dialog.add("templates",CKEDITOR.getUrl(this.path+"dialogs/templates.js"));a.addCommand("templates",new CKEDITOR.dialogCommand("templates"));a.ui.addButton&&a.ui.addButton("Templates",{label:a.lang.templates.button,command:"templates",toolbar:"doctools,10"})}});var c={},f={};CKEDITOR.addTemplates=function(a,d){c[a]=d};CKEDITOR.getTemplates=function(a){return c[a]};CKEDITOR.loadTemplates=function(a,d){for(var e=
-[],b=0,c=a.length;b<c;b++)f[a[b]]||(e.push(a[b]),f[a[b]]=1);e.length?CKEDITOR.scriptLoader.load(e,d):setTimeout(d,0)}})();CKEDITOR.config.templates_files=[CKEDITOR.getUrl("plugins/templates/templates/default.js")];CKEDITOR.config.templates_replaceContent=!0;CKEDITOR.plugins.add("menu",{requires:"floatpanel",beforeInit:function(g){for(var h=g.config.menu_groups.split(","),m=g._.menuGroups={},l=g._.menuItems={},a=0;a<h.length;a++)m[h[a]]=a+1;g.addMenuGroup=function(b,a){m[b]=a||100};g.addMenuItem=function(a,c){m[c.group]&&(l[a]=new CKEDITOR.menuItem(this,a,c))};g.addMenuItems=function(a){for(var c in a)this.addMenuItem(c,a[c])};g.getMenuItem=function(a){return l[a]};g.removeMenuItem=function(a){delete l[a]}}});
-(function(){function g(a){a.sort(function(a,c){return a.group<c.group?-1:a.group>c.group?1:a.order<c.order?-1:a.order>c.order?1:0})}var h='<span class="cke_menuitem"><a id="{id}" class="cke_menubutton cke_menubutton__{name} cke_menubutton_{state} {cls}" href="{href}" title="{title}" tabindex="-1"_cke_focus=1 hidefocus="true" role="{role}" aria-haspopup="{hasPopup}" aria-disabled="{disabled}" {ariaChecked}';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(h+=' onkeypress="return false;"');CKEDITOR.env.gecko&&
-(h+=' onblur="this.style.cssText = this.style.cssText;"');var h=h+(' onmouseover="CKEDITOR.tools.callFunction({hoverFn},{index});" onmouseout="CKEDITOR.tools.callFunction({moveOutFn},{index});" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},{index}); return false;">'),m=CKEDITOR.addTemplate("menuItem",h+'<span class="cke_menubutton_inner"><span class="cke_menubutton_icon"><span class="cke_button_icon cke_button__{iconName}_icon" style="{iconStyle}"></span></span><span class="cke_menubutton_label">{label}</span>{arrowHtml}</span></a></span>'),
-l=CKEDITOR.addTemplate("menuArrow",'<span class="cke_menuarrow"><span>{label}</span></span>');CKEDITOR.menu=CKEDITOR.tools.createClass({$:function(a,b){b=this._.definition=b||{};this.id=CKEDITOR.tools.getNextId();this.editor=a;this.items=[];this._.listeners=[];this._.level=b.level||1;var c=CKEDITOR.tools.extend({},b.panel,{css:[CKEDITOR.skin.getPath("editor")],level:this._.level-1,block:{}}),k=c.block.attributes=c.attributes||{};!k.role&&(k.role="menu");this._.panelDefinition=c},_:{onShow:function(){var a=
-this.editor.getSelection(),b=a&&a.getStartElement(),c=this.editor.elementPath(),k=this._.listeners;this.removeAll();for(var e=0;e<k.length;e++){var j=k[e](b,a,c);if(j)for(var i in j){var f=this.editor.getMenuItem(i);if(f&&(!f.command||this.editor.getCommand(f.command).state))f.state=j[i],this.add(f)}}},onClick:function(a){this.hide();if(a.onClick)a.onClick();else a.command&&this.editor.execCommand(a.command)},onEscape:function(a){var b=this.parent;b?b._.panel.hideChild(1):27==a&&this.hide(1);return!1},
-onHide:function(){this.onHide&&this.onHide()},showSubMenu:function(a){var b=this._.subMenu,c=this.items[a];if(c=c.getItems&&c.getItems()){b?b.removeAll():(b=this._.subMenu=new CKEDITOR.menu(this.editor,CKEDITOR.tools.extend({},this._.definition,{level:this._.level+1},!0)),b.parent=this,b._.onClick=CKEDITOR.tools.bind(this._.onClick,this));for(var k in c){var e=this.editor.getMenuItem(k);e&&(e.state=c[k],b.add(e))}var j=this._.panel.getBlock(this.id).element.getDocument().getById(this.id+(""+a));setTimeout(function(){b.show(j,
-2)},0)}else this._.panel.hideChild(1)}},proto:{add:function(a){a.order||(a.order=this.items.length);this.items.push(a)},removeAll:function(){this.items=[]},show:function(a,b,c,k){if(!this.parent&&(this._.onShow(),!this.items.length))return;var b=b||("rtl"==this.editor.lang.dir?2:1),e=this.items,j=this.editor,i=this._.panel,f=this._.element;if(!i){i=this._.panel=new CKEDITOR.ui.floatPanel(this.editor,CKEDITOR.document.getBody(),this._.panelDefinition,this._.level);i.onEscape=CKEDITOR.tools.bind(function(a){if(!1===
-this._.onEscape(a))return!1},this);i.onShow=function(){i._.panel.getHolderElement().getParent().addClass("cke cke_reset_all")};i.onHide=CKEDITOR.tools.bind(function(){this._.onHide&&this._.onHide()},this);f=i.addBlock(this.id,this._.panelDefinition.block);f.autoSize=!0;var d=f.keys;d[40]="next";d[9]="next";d[38]="prev";d[CKEDITOR.SHIFT+9]="prev";d["rtl"==j.lang.dir?37:39]=CKEDITOR.env.ie?"mouseup":"click";d[32]=CKEDITOR.env.ie?"mouseup":"click";CKEDITOR.env.ie&&(d[13]="mouseup");f=this._.element=
-f.element;d=f.getDocument();d.getBody().setStyle("overflow","hidden");d.getElementsByTag("html").getItem(0).setStyle("overflow","hidden");this._.itemOverFn=CKEDITOR.tools.addFunction(function(a){clearTimeout(this._.showSubTimeout);this._.showSubTimeout=CKEDITOR.tools.setTimeout(this._.showSubMenu,j.config.menu_subMenuDelay||400,this,[a])},this);this._.itemOutFn=CKEDITOR.tools.addFunction(function(){clearTimeout(this._.showSubTimeout)},this);this._.itemClickFn=CKEDITOR.tools.addFunction(function(a){var b=
-this.items[a];if(b.state==CKEDITOR.TRISTATE_DISABLED)this.hide(1);else if(b.getItems)this._.showSubMenu(a);else this._.onClick(b)},this)}g(e);for(var d=j.elementPath(),d=['<div class="cke_menu'+(d&&d.direction()!=j.lang.dir?" cke_mixed_dir_content":"")+'" role="presentation">'],h=e.length,m=h&&e[0].group,l=0;l<h;l++){var n=e[l];m!=n.group&&(d.push('<div class="cke_menuseparator" role="separator"></div>'),m=n.group);n.render(this,l,d)}d.push("</div>");f.setHtml(d.join(""));CKEDITOR.ui.fire("ready",
-this);this.parent?this.parent._.panel.showAsChild(i,this.id,a,b,c,k):i.showBlock(this.id,a,b,c,k);j.fire("menuShow",[i])},addListener:function(a){this._.listeners.push(a)},hide:function(a){this._.onHide&&this._.onHide();this._.panel&&this._.panel.hide(a)}}});CKEDITOR.menuItem=CKEDITOR.tools.createClass({$:function(a,b,c){CKEDITOR.tools.extend(this,c,{order:0,className:"cke_menubutton__"+b});this.group=a._.menuGroups[this.group];this.editor=a;this.name=b},proto:{render:function(a,b,c){var h=a.id+(""+
-b),e="undefined"==typeof this.state?CKEDITOR.TRISTATE_OFF:this.state,j="",i=e==CKEDITOR.TRISTATE_ON?"on":e==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";this.role in{menuitemcheckbox:1,menuitemradio:1}&&(j=' aria-checked="'+(e==CKEDITOR.TRISTATE_ON?"true":"false")+'"');var f=this.getItems,d="&#"+("rtl"==this.editor.lang.dir?"9668":"9658")+";",g=this.name;this.icon&&!/\./.test(this.icon)&&(g=this.icon);a={id:h,name:this.name,iconName:g,label:this.label,cls:this.className||"",state:i,hasPopup:f?"true":
-"false",disabled:e==CKEDITOR.TRISTATE_DISABLED,title:this.label,href:"javascript:void('"+(this.label||"").replace("'")+"')",hoverFn:a._.itemOverFn,moveOutFn:a._.itemOutFn,clickFn:a._.itemClickFn,index:b,iconStyle:CKEDITOR.skin.getIconStyle(g,"rtl"==this.editor.lang.dir,g==this.icon?null:this.icon,this.iconOffset),arrowHtml:f?l.output({label:d}):"",role:this.role?this.role:"menuitem",ariaChecked:j};m.output(a,c)}}})})();CKEDITOR.config.menu_groups="clipboard,form,tablecell,tablecellproperties,tablerow,tablecolumn,table,anchor,link,image,flash,checkbox,radio,textfield,hiddenfield,imagebutton,button,select,textarea,div";CKEDITOR.plugins.add("contextmenu",{requires:"menu",onLoad:function(){CKEDITOR.plugins.contextMenu=CKEDITOR.tools.createClass({base:CKEDITOR.menu,$:function(a){this.base.call(this,a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.contextmenu.options}}})},proto:{addTarget:function(a,e){a.on("contextmenu",function(a){var a=a.data,c=CKEDITOR.env.webkit?f:CKEDITOR.env.mac?a.$.metaKey:a.$.ctrlKey;if(!e||!c){a.preventDefault();if(CKEDITOR.env.mac&&CKEDITOR.env.webkit){var c=this.editor,
-b=(new CKEDITOR.dom.elementPath(a.getTarget(),c.editable())).contains(function(a){return a.hasAttribute("contenteditable")},!0);b&&"false"==b.getAttribute("contenteditable")&&c.getSelection().fake(b)}var b=a.getTarget().getDocument(),d=a.getTarget().getDocument().getDocumentElement(),c=!b.equals(CKEDITOR.document),b=b.getWindow().getScrollPosition(),g=c?a.$.clientX:a.$.pageX||b.x+a.$.clientX,h=c?a.$.clientY:a.$.pageY||b.y+a.$.clientY;CKEDITOR.tools.setTimeout(function(){this.open(d,null,g,h)},CKEDITOR.env.ie?
-200:0,this)}},this);if(CKEDITOR.env.webkit){var f,d=function(){f=0};a.on("keydown",function(a){f=CKEDITOR.env.mac?a.data.$.metaKey:a.data.$.ctrlKey});a.on("keyup",d);a.on("contextmenu",d)}},open:function(a,e,f,d){this.editor.focus();a=a||CKEDITOR.document.getDocumentElement();this.editor.selectionChange(1);this.show(a,e,f,d)}}})},beforeInit:function(a){var e=a.contextMenu=new CKEDITOR.plugins.contextMenu(a);a.on("contentDom",function(){e.addTarget(a.editable(),!1!==a.config.browserContextMenuOnCtrl)});
-a.addCommand("contextMenu",{exec:function(){a.contextMenu.open(a.document.getBody())}});a.setKeystroke(CKEDITOR.SHIFT+121,"contextMenu");a.setKeystroke(CKEDITOR.CTRL+CKEDITOR.SHIFT+121,"contextMenu")}});(function(){CKEDITOR.plugins.add("div",{requires:"dialog",init:function(a){if(!a.blockless){var c=a.lang.div,b="div(*)";CKEDITOR.dialog.isTabEnabled(a,"editdiv","advanced")&&(b+=";div[dir,id,lang,title]{*}");a.addCommand("creatediv",new CKEDITOR.dialogCommand("creatediv",{allowedContent:b,requiredContent:"div",contextSensitive:!0,refresh:function(a,c){this.setState("div"in(a.config.div_wrapTable?c.root:c.blockLimit).getDtd()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}}));a.addCommand("editdiv",
-new CKEDITOR.dialogCommand("editdiv",{requiredContent:"div"}));a.addCommand("removediv",{requiredContent:"div",exec:function(a){function c(b){if((b=CKEDITOR.plugins.div.getSurroundDiv(a,b))&&!b.data("cke-div-added"))f.push(b),b.data("cke-div-added")}for(var b=a.getSelection(),g=b&&b.getRanges(),e,h=b.createBookmarks(),f=[],d=0;d<g.length;d++)e=g[d],e.collapsed?c(b.getStartElement()):(e=new CKEDITOR.dom.walker(e),e.evaluator=c,e.lastForward());for(d=0;d<f.length;d++)f[d].remove(!0);b.selectBookmarks(h)}});
-a.ui.addButton&&a.ui.addButton("CreateDiv",{label:c.toolbar,command:"creatediv",toolbar:"blocks,50"});a.addMenuItems&&(a.addMenuItems({editdiv:{label:c.edit,command:"editdiv",group:"div",order:1},removediv:{label:c.remove,command:"removediv",group:"div",order:5}}),a.contextMenu&&a.contextMenu.addListener(function(b){return!b||b.isReadOnly()?null:CKEDITOR.plugins.div.getSurroundDiv(a)?{editdiv:CKEDITOR.TRISTATE_OFF,removediv:CKEDITOR.TRISTATE_OFF}:null}));CKEDITOR.dialog.add("creatediv",this.path+
-"dialogs/div.js");CKEDITOR.dialog.add("editdiv",this.path+"dialogs/div.js")}}});CKEDITOR.plugins.div={getSurroundDiv:function(a,c){var b=a.elementPath(c);return a.elementPath(b.blockLimit).contains(function(a){return a.is("div")&&!a.isReadOnly()},1)}}})();CKEDITOR.plugins.add("resize",{init:function(b){var f,g,n,o,a=b.config,q=b.ui.spaceId("resizer"),h=b.element?b.element.getDirection(1):"ltr";!a.resize_dir&&(a.resize_dir="vertical");void 0==a.resize_maxWidth&&(a.resize_maxWidth=3E3);void 0==a.resize_maxHeight&&(a.resize_maxHeight=3E3);void 0==a.resize_minWidth&&(a.resize_minWidth=750);void 0==a.resize_minHeight&&(a.resize_minHeight=250);if(!1!==a.resize_enabled){var c=null,i=("both"==a.resize_dir||"horizontal"==a.resize_dir)&&a.resize_minWidth!=a.resize_maxWidth,
-l=("both"==a.resize_dir||"vertical"==a.resize_dir)&&a.resize_minHeight!=a.resize_maxHeight,j=function(d){var e=f,m=g,c=e+(d.data.$.screenX-n)*("rtl"==h?-1:1),d=m+(d.data.$.screenY-o);i&&(e=Math.max(a.resize_minWidth,Math.min(c,a.resize_maxWidth)));l&&(m=Math.max(a.resize_minHeight,Math.min(d,a.resize_maxHeight)));b.resize(i?e:null,m)},k=function(){CKEDITOR.document.removeListener("mousemove",j);CKEDITOR.document.removeListener("mouseup",k);b.document&&(b.document.removeListener("mousemove",j),b.document.removeListener("mouseup",
-k))},p=CKEDITOR.tools.addFunction(function(d){c||(c=b.getResizable());f=c.$.offsetWidth||0;g=c.$.offsetHeight||0;n=d.screenX;o=d.screenY;a.resize_minWidth>f&&(a.resize_minWidth=f);a.resize_minHeight>g&&(a.resize_minHeight=g);CKEDITOR.document.on("mousemove",j);CKEDITOR.document.on("mouseup",k);b.document&&(b.document.on("mousemove",j),b.document.on("mouseup",k));d.preventDefault&&d.preventDefault()});b.on("destroy",function(){CKEDITOR.tools.removeFunction(p)});b.on("uiSpace",function(a){if("bottom"==
-a.data.space){var e="";i&&!l&&(e=" cke_resizer_horizontal");!i&&l&&(e=" cke_resizer_vertical");var c='<span id="'+q+'" class="cke_resizer'+e+" cke_resizer_"+h+'" title="'+CKEDITOR.tools.htmlEncode(b.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+p+', event)">'+("ltr"==h?"◢":"◣")+"</span>";"ltr"==h&&"ltr"==e?a.data.html+=c:a.data.html=c+a.data.html}},b,null,100);b.on("maximize",function(a){b.ui.space("resizer")[a.data==CKEDITOR.TRISTATE_ON?"hide":"show"]()})}}});(function(){function w(a){function d(){for(var b=g(),e=CKEDITOR.tools.clone(a.config.toolbarGroups)||n(a),f=0;f<e.length;f++){var k=e[f];if("/"!=k){"string"==typeof k&&(k=e[f]={name:k});var i,d=k.groups;if(d)for(var h=0;h<d.length;h++)i=d[h],(i=b[i])&&c(k,i);(i=b[k.name])&&c(k,i)}}return e}function g(){var b={},c,f,e;for(c in a.ui.items)f=a.ui.items[c],e=f.toolbar||"others",e=e.split(","),f=e[0],e=parseInt(e[1]||-1,10),b[f]||(b[f]=[]),b[f].push({name:c,order:e});for(f in b)b[f]=b[f].sort(function(b,
-a){return b.order==a.order?0:0>a.order?-1:0>b.order?1:b.order<a.order?-1:1});return b}function c(c,e){if(e.length){c.items?c.items.push(a.ui.create("-")):c.items=[];for(var f;f=e.shift();)if(f="string"==typeof f?f:f.name,!b||-1==CKEDITOR.tools.indexOf(b,f))(f=a.ui.create(f))&&a.addFeature(f)&&c.items.push(f)}}function h(b){var a=[],e,d,h;for(e=0;e<b.length;++e)d=b[e],h={},"/"==d?a.push(d):CKEDITOR.tools.isArray(d)?(c(h,CKEDITOR.tools.clone(d)),a.push(h)):d.items&&(c(h,CKEDITOR.tools.clone(d.items)),
-h.name=d.name,a.push(h));return a}var b=a.config.removeButtons,b=b&&b.split(","),e=a.config.toolbar;"string"==typeof e&&(e=a.config["toolbar_"+e]);return a.toolbar=e?h(e):d()}function n(a){return a._.toolbarGroups||(a._.toolbarGroups=[{name:"document",groups:["mode","document","doctools"]},{name:"clipboard",groups:["clipboard","undo"]},{name:"editing",groups:["find","selection","spellchecker"]},{name:"forms"},"/",{name:"basicstyles",groups:["basicstyles","cleanup"]},{name:"paragraph",groups:["list",
-"indent","blocks","align","bidi"]},{name:"links"},{name:"insert"},"/",{name:"styles"},{name:"colors"},{name:"tools"},{name:"others"},{name:"about"}])}var u=function(){this.toolbars=[];this.focusCommandExecuted=!1};u.prototype.focus=function(){for(var a=0,d;d=this.toolbars[a++];)for(var g=0,c;c=d.items[g++];)if(c.focus){c.focus();return}};var x={modes:{wysiwyg:1,source:1},readOnly:1,exec:function(a){a.toolbox&&(a.toolbox.focusCommandExecuted=!0,CKEDITOR.env.ie||CKEDITOR.env.air?setTimeout(function(){a.toolbox.focus()},
-100):a.toolbox.focus())}};CKEDITOR.plugins.add("toolbar",{requires:"button",init:function(a){var d,g=function(c,h){var b,e="rtl"==a.lang.dir,j=a.config.toolbarGroupCycling,o=e?37:39,e=e?39:37,j=void 0===j||j;switch(h){case 9:case CKEDITOR.SHIFT+9:for(;!b||!b.items.length;)if(b=9==h?(b?b.next:c.toolbar.next)||a.toolbox.toolbars[0]:(b?b.previous:c.toolbar.previous)||a.toolbox.toolbars[a.toolbox.toolbars.length-1],b.items.length)for(c=b.items[d?b.items.length-1:0];c&&!c.focus;)(c=d?c.previous:c.next)||
-(b=0);c&&c.focus();return!1;case o:b=c;do b=b.next,!b&&j&&(b=c.toolbar.items[0]);while(b&&!b.focus);b?b.focus():g(c,9);return!1;case 40:return c.button&&c.button.hasArrow?(a.once("panelShow",function(b){b.data._.panel._.currentBlock.onKeyDown(40)}),c.execute()):g(c,40==h?o:e),!1;case e:case 38:b=c;do b=b.previous,!b&&j&&(b=c.toolbar.items[c.toolbar.items.length-1]);while(b&&!b.focus);b?b.focus():(d=1,g(c,CKEDITOR.SHIFT+9),d=0);return!1;case 27:return a.focus(),!1;case 13:case 32:return c.execute(),
-!1}return!0};a.on("uiSpace",function(c){if(c.data.space==a.config.toolbarLocation){c.removeListener();a.toolbox=new u;var d=CKEDITOR.tools.getNextId(),b=['<span id="',d,'" class="cke_voice_label">',a.lang.toolbar.toolbars,"</span>",'<span id="'+a.ui.spaceId("toolbox")+'" class="cke_toolbox" role="group" aria-labelledby="',d,'" onmousedown="return false;">'],d=!1!==a.config.toolbarStartupExpanded,e,j;a.config.toolbarCanCollapse&&a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&b.push('<span class="cke_toolbox_main"'+
-(d?">":' style="display:none">'));for(var o=a.toolbox.toolbars,f=w(a),k=0;k<f.length;k++){var i,l=0,r,m=f[k],s;if(m)if(e&&(b.push("</span>"),j=e=0),"/"===m)b.push('<span class="cke_toolbar_break"></span>');else{s=m.items||m;for(var t=0;t<s.length;t++){var p=s[t],n;if(p)if(p.type==CKEDITOR.UI_SEPARATOR)j=e&&p;else{n=!1!==p.canGroup;if(!l){i=CKEDITOR.tools.getNextId();l={id:i,items:[]};r=m.name&&(a.lang.toolbar.toolbarGroups[m.name]||m.name);b.push('<span id="',i,'" class="cke_toolbar"',r?' aria-labelledby="'+
-i+'_label"':"",' role="toolbar">');r&&b.push('<span id="',i,'_label" class="cke_voice_label">',r,"</span>");b.push('<span class="cke_toolbar_start"></span>');var q=o.push(l)-1;0<q&&(l.previous=o[q-1],l.previous.next=l)}n?e||(b.push('<span class="cke_toolgroup" role="presentation">'),e=1):e&&(b.push("</span>"),e=0);i=function(c){c=c.render(a,b);q=l.items.push(c)-1;if(q>0){c.previous=l.items[q-1];c.previous.next=c}c.toolbar=l;c.onkey=g;c.onfocus=function(){a.toolbox.focusCommandExecuted||a.focus()}};
-j&&(i(j),j=0);i(p)}}e&&(b.push("</span>"),j=e=0);l&&b.push('<span class="cke_toolbar_end"></span></span>')}}a.config.toolbarCanCollapse&&b.push("</span>");if(a.config.toolbarCanCollapse&&a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var v=CKEDITOR.tools.addFunction(function(){a.execCommand("toolbarCollapse")});a.on("destroy",function(){CKEDITOR.tools.removeFunction(v)});a.addCommand("toolbarCollapse",{readOnly:1,exec:function(b){var a=b.ui.space("toolbar_collapser"),c=a.getPrevious(),e=b.ui.space("contents"),
-d=c.getParent(),f=parseInt(e.$.style.height,10),h=d.$.offsetHeight,g=a.hasClass("cke_toolbox_collapser_min");g?(c.show(),a.removeClass("cke_toolbox_collapser_min"),a.setAttribute("title",b.lang.toolbar.toolbarCollapse)):(c.hide(),a.addClass("cke_toolbox_collapser_min"),a.setAttribute("title",b.lang.toolbar.toolbarExpand));a.getFirst().setText(g?"▲":"◀");e.setStyle("height",f-(d.$.offsetHeight-h)+"px");b.fire("resize")},modes:{wysiwyg:1,source:1}});a.setKeystroke(CKEDITOR.ALT+(CKEDITOR.env.ie||CKEDITOR.env.webkit?
-189:109),"toolbarCollapse");b.push('<a title="'+(d?a.lang.toolbar.toolbarCollapse:a.lang.toolbar.toolbarExpand)+'" id="'+a.ui.spaceId("toolbar_collapser")+'" tabIndex="-1" class="cke_toolbox_collapser');d||b.push(" cke_toolbox_collapser_min");b.push('" onclick="CKEDITOR.tools.callFunction('+v+')">','<span class="cke_arrow">&#9650;</span>',"</a>")}b.push("</span>");c.data.html+=b.join("")}});a.on("destroy",function(){if(this.toolbox){var a,d=0,b,e,g;for(a=this.toolbox.toolbars;d<a.length;d++){e=a[d].items;
-for(b=0;b<e.length;b++)g=e[b],g.clickFn&&CKEDITOR.tools.removeFunction(g.clickFn),g.keyDownFn&&CKEDITOR.tools.removeFunction(g.keyDownFn)}}});a.on("uiReady",function(){var c=a.ui.space("toolbox");c&&a.focusManager.add(c,1)});a.addCommand("toolbarFocus",x);a.setKeystroke(CKEDITOR.ALT+121,"toolbarFocus");a.ui.add("-",CKEDITOR.UI_SEPARATOR,{});a.ui.addHandler(CKEDITOR.UI_SEPARATOR,{create:function(){return{render:function(a,d){d.push('<span class="cke_toolbar_separator" role="separator"></span>');return{}}}}})}});
-CKEDITOR.ui.prototype.addToolbarGroup=function(a,d,g){var c=n(this.editor),h=0===d,b={name:a};if(g){if(g=CKEDITOR.tools.search(c,function(a){return a.name==g})){!g.groups&&(g.groups=[]);if(d&&(d=CKEDITOR.tools.indexOf(g.groups,d),0<=d)){g.groups.splice(d+1,0,a);return}h?g.groups.splice(0,0,a):g.groups.push(a);return}d=null}d&&(d=CKEDITOR.tools.indexOf(c,function(a){return a.name==d}));h?c.splice(0,0,a):"number"==typeof d?c.splice(d+1,0,b):c.push(a)}})();CKEDITOR.UI_SEPARATOR="separator";
-CKEDITOR.config.toolbarLocation="top";(function(){var k;function n(a,c){function j(d){d=i.list[d];if(d.equals(a.editable())||"true"==d.getAttribute("contenteditable")){var e=a.createRange();e.selectNodeContents(d);e.select()}else a.getSelection().selectElement(d);a.focus()}function s(){l&&l.setHtml(o);delete i.list}var m=a.ui.spaceId("path"),l,i=a._.elementsPath,n=i.idBase;c.html+='<span id="'+m+'_label" class="cke_voice_label">'+a.lang.elementspath.eleLabel+'</span><span id="'+m+'" class="cke_path" role="group" aria-labelledby="'+m+
-'_label">'+o+"</span>";a.on("uiReady",function(){var d=a.ui.space("path");d&&a.focusManager.add(d,1)});i.onClick=j;var t=CKEDITOR.tools.addFunction(j),u=CKEDITOR.tools.addFunction(function(d,e){var g=i.idBase,b,e=new CKEDITOR.dom.event(e);b="rtl"==a.lang.dir;switch(e.getKeystroke()){case b?39:37:case 9:return(b=CKEDITOR.document.getById(g+(d+1)))||(b=CKEDITOR.document.getById(g+"0")),b.focus(),!1;case b?37:39:case CKEDITOR.SHIFT+9:return(b=CKEDITOR.document.getById(g+(d-1)))||(b=CKEDITOR.document.getById(g+
-(i.list.length-1))),b.focus(),!1;case 27:return a.focus(),!1;case 13:case 32:return j(d),!1}return!0});a.on("selectionChange",function(){a.editable();for(var d=[],e=i.list=[],g=[],b=i.filters,c=!0,j=a.elementPath().elements,f,k=j.length;k--;){var h=j[k],p=0;f=h.data("cke-display-name")?h.data("cke-display-name"):h.data("cke-real-element-type")?h.data("cke-real-element-type"):h.getName();c=h.hasAttribute("contenteditable")?"true"==h.getAttribute("contenteditable"):c;!c&&!h.hasAttribute("contenteditable")&&
-(p=1);for(var q=0;q<b.length;q++){var r=b[q](h,f);if(!1===r){p=1;break}f=r||f}p||(e.unshift(h),g.unshift(f))}e=e.length;for(b=0;b<e;b++)f=g[b],c=a.lang.elementspath.eleTitle.replace(/%1/,f),f=v.output({id:n+b,label:c,text:f,jsTitle:"javascript:void('"+f+"')",index:b,keyDownFn:u,clickFn:t}),d.unshift(f);l||(l=CKEDITOR.document.getById(m));g=l;g.setHtml(d.join("")+o);a.fire("elementsPathUpdate",{space:g})});a.on("readOnly",s);a.on("contentDomUnload",s);a.addCommand("elementsPathFocus",k);a.setKeystroke(CKEDITOR.ALT+
-122,"elementsPathFocus")}k={editorFocus:!1,readOnly:1,exec:function(a){(a=CKEDITOR.document.getById(a._.elementsPath.idBase+"0"))&&a.focus(CKEDITOR.env.ie||CKEDITOR.env.air)}};var o='<span class="cke_path_empty">&nbsp;</span>',c="";CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var v=CKEDITOR.addTemplate("pathItem",'<a id="{id}" href="{jsTitle}" tabindex="-1" class="cke_path_item" title="{label}"'+
-c+' hidefocus="true" onkeydown="return CKEDITOR.tools.callFunction({keyDownFn},{index}, event );" onclick="CKEDITOR.tools.callFunction({clickFn},{index}); return false;" role="button" aria-label="{label}">{text}</a>');CKEDITOR.plugins.add("elementspath",{init:function(a){a._.elementsPath={idBase:"cke_elementspath_"+CKEDITOR.tools.getNextNumber()+"_",filters:[]};a.on("uiSpace",function(c){"bottom"==c.data.space&&n(a,c.data)})}})})();(function(){function u(b){var d=b.startContainer.getAscendant(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&"true"==a.getAttribute("contenteditable")},!0);if(b.root.equals(d))return b;d=new CKEDITOR.dom.range(d);d.moveToRange(b);return d}function m(b,d,a){a=b.config.forceEnterMode||a;"wysiwyg"==b.mode&&(d||(d=b.activeEnterMode),b.elementPath().isContextFor("p")||(d=CKEDITOR.ENTER_BR,a=1),b.fire("saveSnapshot"),d==CKEDITOR.ENTER_BR?p(b,d,null,a):q(b,d,null,a),b.fire("saveSnapshot"))}function r(b){for(var b=
-b.getSelection().getRanges(!0),d=b.length-1;0<d;d--)b[d].deleteContents();return b[0]}CKEDITOR.plugins.add("enterkey",{init:function(b){b.addCommand("enter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){m(b)}});b.addCommand("shiftEnter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){m(b,b.activeShiftEnterMode,1)}});b.setKeystroke([[13,"enter"],[CKEDITOR.SHIFT+13,"shiftEnter"]])}});var v=CKEDITOR.dom.walker.whitespaces(),w=CKEDITOR.dom.walker.bookmark();CKEDITOR.plugins.enterkey={enterBlock:function(b,
-d,a,h){if(a=a||r(b)){var a=u(a),f=a.document,i=a.checkStartOfBlock(),k=a.checkEndOfBlock(),j=b.elementPath(a.startContainer),c=j.block,l=d==CKEDITOR.ENTER_DIV?"div":"p",e;if(i&&k){if(c&&(c.is("li")||c.getParent().is("li"))){c.is("li")||(c=c.getParent());a=c.getParent();e=a.getParent();var h=!c.hasPrevious(),n=!c.hasNext(),l=b.getSelection(),g=l.createBookmarks(),i=c.getDirection(1),k=c.getAttribute("class"),o=c.getAttribute("style"),m=e.getDirection(1)!=i,b=b.enterMode!=CKEDITOR.ENTER_BR||m||o||k;
-if(e.is("li"))if(h||n)c[h?"insertBefore":"insertAfter"](e);else c.breakParent(e);else{if(b)if(j.block.is("li")?(e=f.createElement(d==CKEDITOR.ENTER_P?"p":"div"),m&&e.setAttribute("dir",i),o&&e.setAttribute("style",o),k&&e.setAttribute("class",k),c.moveChildren(e)):e=j.block,h||n)e[h?"insertBefore":"insertAfter"](a);else c.breakParent(a),e.insertAfter(a);else if(c.appendBogus(!0),h||n)for(;f=c[h?"getFirst":"getLast"]();)f[h?"insertBefore":"insertAfter"](a);else for(c.breakParent(a);f=c.getLast();)f.insertAfter(a);
-c.remove()}l.selectBookmarks(g);return}if(c&&c.getParent().is("blockquote")){c.breakParent(c.getParent());c.getPrevious().getFirst(CKEDITOR.dom.walker.invisible(1))||c.getPrevious().remove();c.getNext().getFirst(CKEDITOR.dom.walker.invisible(1))||c.getNext().remove();a.moveToElementEditStart(c);a.select();return}}else if(c&&c.is("pre")&&!k){p(b,d,a,h);return}if(i=a.splitBlock(l)){d=i.previousBlock;c=i.nextBlock;j=i.wasStartOfBlock;b=i.wasEndOfBlock;if(c)g=c.getParent(),g.is("li")&&(c.breakParent(g),
-c.move(c.getNext(),1));else if(d&&(g=d.getParent())&&g.is("li"))d.breakParent(g),g=d.getNext(),a.moveToElementEditStart(g),d.move(d.getPrevious());if(!j&&!b)c.is("li")&&(e=a.clone(),e.selectNodeContents(c),e=new CKEDITOR.dom.walker(e),e.evaluator=function(a){return!(w(a)||v(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in CKEDITOR.dtd.$inline&&!(a.getName()in CKEDITOR.dtd.$empty))},(g=e.next())&&(g.type==CKEDITOR.NODE_ELEMENT&&g.is("ul","ol"))&&(CKEDITOR.env.needsBrFiller?f.createElement("br"):f.createText(" ")).insertBefore(g)),
-c&&a.moveToElementEditStart(c);else{if(d){if(d.is("li")||!s.test(d.getName())&&!d.is("pre"))e=d.clone()}else c&&(e=c.clone());e?h&&!e.is("li")&&e.renameNode(l):g&&g.is("li")?e=g:(e=f.createElement(l),d&&(n=d.getDirection())&&e.setAttribute("dir",n));if(f=i.elementPath){h=0;for(l=f.elements.length;h<l;h++){g=f.elements[h];if(g.equals(f.block)||g.equals(f.blockLimit))break;CKEDITOR.dtd.$removeEmpty[g.getName()]&&(g=g.clone(),e.moveChildren(g),e.append(g))}}e.appendBogus();e.getParent()||a.insertNode(e);
-e.is("li")&&e.removeAttribute("value");if(CKEDITOR.env.ie&&j&&(!b||!d.getChildCount()))a.moveToElementEditStart(b?d:e),a.select();a.moveToElementEditStart(j&&!b?c:e)}a.select();a.scrollIntoView()}}},enterBr:function(b,d,a,h){if(a=a||r(b)){var f=a.document,i=a.checkEndOfBlock(),k=new CKEDITOR.dom.elementPath(b.getSelection().getStartElement()),j=k.block,c=j&&k.block.getName();!h&&"li"==c?q(b,d,a,h):(!h&&i&&s.test(c)?(i=j.getDirection())?(f=f.createElement("div"),f.setAttribute("dir",i),f.insertAfter(j),
-a.setStart(f,0)):(f.createElement("br").insertAfter(j),CKEDITOR.env.gecko&&f.createText("").insertAfter(j),a.setStartAt(j.getNext(),CKEDITOR.env.ie?CKEDITOR.POSITION_BEFORE_START:CKEDITOR.POSITION_AFTER_START)):(b="pre"==c&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?f.createText("\r"):f.createElement("br"),a.deleteContents(),a.insertNode(b),CKEDITOR.env.needsBrFiller?(f.createText("").insertAfter(b),i&&(j||k.blockLimit).appendBogus(),b.getNext().$.nodeValue="",a.setStartAt(b.getNext(),CKEDITOR.POSITION_AFTER_START)):
-a.setStartAt(b,CKEDITOR.POSITION_AFTER_END)),a.collapse(!0),a.select(),a.scrollIntoView())}}};var t=CKEDITOR.plugins.enterkey,p=t.enterBr,q=t.enterBlock,s=/^h[1-6]$/})();(function(){function j(a,b){var d={},e=[],f={nbsp:" ",shy:"­",gt:">",lt:"<",amp:"&",apos:"'",quot:'"'},a=a.replace(/\b(nbsp|shy|gt|lt|amp|apos|quot)(?:,|$)/g,function(a,h){var c=b?"&"+h+";":f[h];d[c]=b?f[h]:"&"+h+";";e.push(c);return""});if(!b&&a){var a=a.split(","),c=document.createElement("div"),g;c.innerHTML="&"+a.join(";&")+";";g=c.innerHTML;c=null;for(c=0;c<g.length;c++){var i=g.charAt(c);d[i]="&"+a[c]+";";e.push(i)}}d.regex=e.join(b?"|":"");return d}CKEDITOR.plugins.add("entities",{afterInit:function(a){var b=
-a.config;if(a=(a=a.dataProcessor)&&a.htmlFilter){var d=[];!1!==b.basicEntities&&d.push("nbsp,gt,lt,amp");b.entities&&(d.length&&d.push("quot,iexcl,cent,pound,curren,yen,brvbar,sect,uml,copy,ordf,laquo,not,shy,reg,macr,deg,plusmn,sup2,sup3,acute,micro,para,middot,cedil,sup1,ordm,raquo,frac14,frac12,frac34,iquest,times,divide,fnof,bull,hellip,prime,Prime,oline,frasl,weierp,image,real,trade,alefsym,larr,uarr,rarr,darr,harr,crarr,lArr,uArr,rArr,dArr,hArr,forall,part,exist,empty,nabla,isin,notin,ni,prod,sum,minus,lowast,radic,prop,infin,ang,and,or,cap,cup,int,there4,sim,cong,asymp,ne,equiv,le,ge,sub,sup,nsub,sube,supe,oplus,otimes,perp,sdot,lceil,rceil,lfloor,rfloor,lang,rang,loz,spades,clubs,hearts,diams,circ,tilde,ensp,emsp,thinsp,zwnj,zwj,lrm,rlm,ndash,mdash,lsquo,rsquo,sbquo,ldquo,rdquo,bdquo,dagger,Dagger,permil,lsaquo,rsaquo,euro"),
-b.entities_latin&&d.push("Agrave,Aacute,Acirc,Atilde,Auml,Aring,AElig,Ccedil,Egrave,Eacute,Ecirc,Euml,Igrave,Iacute,Icirc,Iuml,ETH,Ntilde,Ograve,Oacute,Ocirc,Otilde,Ouml,Oslash,Ugrave,Uacute,Ucirc,Uuml,Yacute,THORN,szlig,agrave,aacute,acirc,atilde,auml,aring,aelig,ccedil,egrave,eacute,ecirc,euml,igrave,iacute,icirc,iuml,eth,ntilde,ograve,oacute,ocirc,otilde,ouml,oslash,ugrave,uacute,ucirc,uuml,yacute,thorn,yuml,OElig,oelig,Scaron,scaron,Yuml"),b.entities_greek&&d.push("Alpha,Beta,Gamma,Delta,Epsilon,Zeta,Eta,Theta,Iota,Kappa,Lambda,Mu,Nu,Xi,Omicron,Pi,Rho,Sigma,Tau,Upsilon,Phi,Chi,Psi,Omega,alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota,kappa,lambda,mu,nu,xi,omicron,pi,rho,sigmaf,sigma,tau,upsilon,phi,chi,psi,omega,thetasym,upsih,piv"),
-b.entities_additional&&d.push(b.entities_additional));var e=j(d.join(",")),f=e.regex?"["+e.regex+"]":"a^";delete e.regex;b.entities&&b.entities_processNumerical&&(f="[^ -~]|"+f);var f=RegExp(f,"g"),c=function(a){return b.entities_processNumerical=="force"||!e[a]?"&#"+a.charCodeAt(0)+";":e[a]},g=j("nbsp,gt,lt,amp,shy",!0),i=RegExp(g.regex,"g"),k=function(a){return g[a]};a.addRules({text:function(a){return a.replace(i,k).replace(f,c)}},{applyToAll:!0,excludeNestedEditable:!0})}}})})();
-CKEDITOR.config.basicEntities=!0;CKEDITOR.config.entities=!0;CKEDITOR.config.entities_latin=!0;CKEDITOR.config.entities_greek=!0;CKEDITOR.config.entities_additional="#39";CKEDITOR.plugins.add("popup");
-CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{popup:function(e,a,b,d){a=a||"80%";b=b||"70%";"string"==typeof a&&(1<a.length&&"%"==a.substr(a.length-1,1))&&(a=parseInt(window.screen.width*parseInt(a,10)/100,10));"string"==typeof b&&(1<b.length&&"%"==b.substr(b.length-1,1))&&(b=parseInt(window.screen.height*parseInt(b,10)/100,10));640>a&&(a=640);420>b&&(b=420);var f=parseInt((window.screen.height-b)/2,10),g=parseInt((window.screen.width-a)/2,10),d=(d||"location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes")+",width="+
-a+",height="+b+",top="+f+",left="+g,c=window.open("",null,d,!0);if(!c)return!1;try{-1==navigator.userAgent.toLowerCase().indexOf(" chrome/")&&(c.moveTo(g,f),c.resizeTo(a,b)),c.focus(),c.location.href=e}catch(h){window.open(e,null,d,!0)}return!0}});(function(){function g(a,c){var d=[];if(c)for(var b in c)d.push(b+"="+encodeURIComponent(c[b]));else return a;return a+(-1!=a.indexOf("?")?"&":"?")+d.join("&")}function i(a){a+="";return a.charAt(0).toUpperCase()+a.substr(1)}function k(){var a=this.getDialog(),c=a.getParentEditor();c._.filebrowserSe=this;var d=c.config["filebrowser"+i(a.getName())+"WindowWidth"]||c.config.filebrowserWindowWidth||"80%",a=c.config["filebrowser"+i(a.getName())+"WindowHeight"]||c.config.filebrowserWindowHeight||"70%",
-b=this.filebrowser.params||{};b.CKEditor=c.name;b.CKEditorFuncNum=c._.filebrowserFn;b.langCode||(b.langCode=c.langCode);b=g(this.filebrowser.url,b);c.popup(b,d,a,c.config.filebrowserWindowFeatures||c.config.fileBrowserWindowFeatures)}function l(){var a=this.getDialog();a.getParentEditor()._.filebrowserSe=this;return!a.getContentElement(this["for"][0],this["for"][1]).getInputElement().$.value||!a.getContentElement(this["for"][0],this["for"][1]).getAction()?!1:!0}function m(a,c,d){var b=d.params||{};
-b.CKEditor=a.name;b.CKEditorFuncNum=a._.filebrowserFn;b.langCode||(b.langCode=a.langCode);c.action=g(d.url,b);c.filebrowser=d}function j(a,c,d,b){if(b&&b.length)for(var e,g=b.length;g--;)if(e=b[g],("hbox"==e.type||"vbox"==e.type||"fieldset"==e.type)&&j(a,c,d,e.children),e.filebrowser)if("string"==typeof e.filebrowser&&(e.filebrowser={action:"fileButton"==e.type?"QuickUpload":"Browse",target:e.filebrowser}),"Browse"==e.filebrowser.action){var f=e.filebrowser.url;void 0===f&&(f=a.config["filebrowser"+
-i(c)+"BrowseUrl"],void 0===f&&(f=a.config.filebrowserBrowseUrl));f&&(e.onClick=k,e.filebrowser.url=f,e.hidden=!1)}else if("QuickUpload"==e.filebrowser.action&&e["for"]&&(f=e.filebrowser.url,void 0===f&&(f=a.config["filebrowser"+i(c)+"UploadUrl"],void 0===f&&(f=a.config.filebrowserUploadUrl)),f)){var h=e.onClick;e.onClick=function(a){var b=a.sender;return h&&h.call(b,a)===false?false:l.call(b,a)};e.filebrowser.url=f;e.hidden=!1;m(a,d.getContents(e["for"][0]).get(e["for"][1]),e.filebrowser)}}function h(a,
-c,d){if(-1!==d.indexOf(";")){for(var d=d.split(";"),b=0;b<d.length;b++)if(h(a,c,d[b]))return!0;return!1}return(a=a.getContents(c).get(d).filebrowser)&&a.url}function n(a,c){var d=this._.filebrowserSe.getDialog(),b=this._.filebrowserSe["for"],e=this._.filebrowserSe.filebrowser.onSelect;b&&d.getContentElement(b[0],b[1]).reset();if(!("function"==typeof c&&!1===c.call(this._.filebrowserSe))&&!(e&&!1===e.call(this._.filebrowserSe,a,c))&&("string"==typeof c&&c&&alert(c),a&&(b=this._.filebrowserSe,d=b.getDialog(),
-b=b.filebrowser.target||null)))if(b=b.split(":"),e=d.getContentElement(b[0],b[1]))e.setValue(a),d.selectPage(b[0])}CKEDITOR.plugins.add("filebrowser",{requires:"popup",init:function(a){a._.filebrowserFn=CKEDITOR.tools.addFunction(n,a);a.on("destroy",function(){CKEDITOR.tools.removeFunction(this._.filebrowserFn)})}});CKEDITOR.on("dialogDefinition",function(a){if(a.editor.plugins.filebrowser)for(var c=a.data.definition,d,b=0;b<c.contents.length;++b)if(d=c.contents[b])j(a.editor,a.data.name,c,d.elements),
-d.hidden&&d.filebrowser&&(d.hidden=!h(c,d.id,d.filebrowser))})})();CKEDITOR.plugins.add("find",{requires:"dialog",init:function(a){var b=a.addCommand("find",new CKEDITOR.dialogCommand("find"));b.canUndo=!1;b.readOnly=1;a.addCommand("replace",new CKEDITOR.dialogCommand("replace")).canUndo=!1;a.ui.addButton&&(a.ui.addButton("Find",{label:a.lang.find.find,command:"find",toolbar:"find,10"}),a.ui.addButton("Replace",{label:a.lang.find.replace,command:"replace",toolbar:"find,20"}));CKEDITOR.dialog.add("find",this.path+"dialogs/find.js");CKEDITOR.dialog.add("replace",this.path+
-"dialogs/find.js")}});CKEDITOR.config.find_highlight={element:"span",styles:{"background-color":"#004",color:"#fff"}};(function(){function g(a,b){var c=j.exec(a),d=j.exec(b);if(c){if(!c[2]&&"px"==d[2])return d[1];if("px"==c[2]&&!d[2])return d[1]+"px"}return b}var i=CKEDITOR.htmlParser.cssStyle,h=CKEDITOR.tools.cssLength,j=/^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i,k={elements:{$:function(a){var b=a.attributes;if((b=(b=(b=b&&b["data-cke-realelement"])&&new CKEDITOR.htmlParser.fragment.fromHtml(decodeURIComponent(b)))&&b.children[0])&&a.attributes["data-cke-resizable"]){var c=(new i(a)).rules,a=b.attributes,d=c.width,c=
-c.height;d&&(a.width=g(a.width,d));c&&(a.height=g(a.height,c))}return b}}};CKEDITOR.plugins.add("fakeobjects",{init:function(a){a.filter.allow("img[!data-cke-realelement,src,alt,title](*){*}","fakeobjects")},afterInit:function(a){(a=(a=a.dataProcessor)&&a.htmlFilter)&&a.addRules(k,{applyToAll:!0})}});CKEDITOR.editor.prototype.createFakeElement=function(a,b,c,d){var e=this.lang.fakeobjects,e=e[c]||e.unknown,b={"class":b,"data-cke-realelement":encodeURIComponent(a.getOuterHtml()),"data-cke-real-node-type":a.type,
-alt:e,title:e,align:a.getAttribute("align")||""};CKEDITOR.env.hc||(b.src=CKEDITOR.tools.transparentImageData);c&&(b["data-cke-real-element-type"]=c);d&&(b["data-cke-resizable"]=d,c=new i,d=a.getAttribute("width"),a=a.getAttribute("height"),d&&(c.rules.width=h(d)),a&&(c.rules.height=h(a)),c.populate(b));return this.document.createElement("img",{attributes:b})};CKEDITOR.editor.prototype.createFakeParserElement=function(a,b,c,d){var e=this.lang.fakeobjects,e=e[c]||e.unknown,f;f=new CKEDITOR.htmlParser.basicWriter;
-a.writeHtml(f);f=f.getHtml();b={"class":b,"data-cke-realelement":encodeURIComponent(f),"data-cke-real-node-type":a.type,alt:e,title:e,align:a.attributes.align||""};CKEDITOR.env.hc||(b.src=CKEDITOR.tools.transparentImageData);c&&(b["data-cke-real-element-type"]=c);d&&(b["data-cke-resizable"]=d,d=a.attributes,a=new i,c=d.width,d=d.height,void 0!=c&&(a.rules.width=h(c)),void 0!=d&&(a.rules.height=h(d)),a.populate(b));return new CKEDITOR.htmlParser.element("img",b)};CKEDITOR.editor.prototype.restoreRealElement=
-function(a){if(a.data("cke-real-node-type")!=CKEDITOR.NODE_ELEMENT)return null;var b=CKEDITOR.dom.element.createFromHtml(decodeURIComponent(a.data("cke-realelement")),this.document);if(a.data("cke-resizable")){var c=a.getStyle("width"),a=a.getStyle("height");c&&b.setAttribute("width",g(b.getAttribute("width"),c));a&&b.setAttribute("height",g(b.getAttribute("height"),a))}return b}})();(function(){function d(a){a=a.attributes;return"application/x-shockwave-flash"==a.type||f.test(a.src||"")}function e(a,b){return a.createFakeParserElement(b,"cke_flash","flash",!0)}var f=/\.swf(?:$|\?)/i;CKEDITOR.plugins.add("flash",{requires:"dialog,fakeobjects",onLoad:function(){CKEDITOR.addCss("img.cke_flash{background-image: url("+CKEDITOR.getUrl(this.path+"images/placeholder.png")+");background-position: center center;background-repeat: no-repeat;border: 1px solid #a9a9a9;width: 80px;height: 80px;}")},
-init:function(a){var b="object[classid,codebase,height,hspace,vspace,width];param[name,value];embed[height,hspace,pluginspage,src,type,vspace,width]";CKEDITOR.dialog.isTabEnabled(a,"flash","properties")&&(b+=";object[align]; embed[allowscriptaccess,quality,scale,wmode]");CKEDITOR.dialog.isTabEnabled(a,"flash","advanced")&&(b+=";object[id]{*}; embed[bgcolor]{*}(*)");a.addCommand("flash",new CKEDITOR.dialogCommand("flash",{allowedContent:b,requiredContent:"embed"}));a.ui.addButton&&a.ui.addButton("Flash",
-{label:a.lang.common.flash,command:"flash",toolbar:"insert,20"});CKEDITOR.dialog.add("flash",this.path+"dialogs/flash.js");a.addMenuItems&&a.addMenuItems({flash:{label:a.lang.flash.properties,command:"flash",group:"flash"}});a.on("doubleclick",function(a){var b=a.data.element;b.is("img")&&"flash"==b.data("cke-real-element-type")&&(a.data.dialog="flash")});a.contextMenu&&a.contextMenu.addListener(function(a){if(a&&a.is("img")&&!a.isReadOnly()&&"flash"==a.data("cke-real-element-type"))return{flash:CKEDITOR.TRISTATE_OFF}})},
-afterInit:function(a){var b=a.dataProcessor;(b=b&&b.dataFilter)&&b.addRules({elements:{"cke:object":function(b){var c=b.attributes;if((!c.classid||!(""+c.classid).toLowerCase())&&!d(b)){for(c=0;c<b.children.length;c++)if("cke:embed"==b.children[c].name){if(!d(b.children[c]))break;return e(a,b)}return null}return e(a,b)},"cke:embed":function(b){return!d(b)?null:e(a,b)}}},5)}})})();CKEDITOR.tools.extend(CKEDITOR.config,{flashEmbedTagOnly:!1,flashAddEmbedTag:!0,flashConvertOnEdit:!1});(function(){function i(a){var j=a.config,m=a.fire("uiSpace",{space:"top",html:""}).html,p=function(){function f(a,c,e){b.setStyle(c,s(e));b.setStyle("position",a)}function e(a){var b=i.getDocumentPosition();switch(a){case "top":f("absolute","top",b.y-n-o);break;case "pin":f("fixed","top",t);break;case "bottom":f("absolute","top",b.y+(c.height||c.bottom-c.top)+o)}k=a}var k,i,l,c,h,n,r,m=j.floatSpaceDockedOffsetX||0,o=j.floatSpaceDockedOffsetY||0,q=j.floatSpacePinnedOffsetX||0,t=j.floatSpacePinnedOffsetY||
-0;return function(d){if(i=a.editable())if(d&&"focus"==d.name&&b.show(),b.removeStyle("left"),b.removeStyle("right"),l=b.getClientRect(),c=i.getClientRect(),h=g.getViewPaneSize(),n=l.height,r="pageXOffset"in g.$?g.$.pageXOffset:CKEDITOR.document.$.documentElement.scrollLeft,k){n+o<=c.top?e("top"):n+o>h.height-c.bottom?e("pin"):e("bottom");var d=h.width/2,d=0<c.left&&c.right<h.width&&c.width>l.width?"rtl"==a.config.contentsLangDirection?"right":"left":d-c.left>c.right-d?"left":"right",f;l.width>h.width?
-(d="left",f=0):(f="left"==d?0<c.left?c.left:0:c.right<h.width?h.width-c.right:0,f+l.width>h.width&&(d="left"==d?"right":"left",f=0));b.setStyle(d,s(("pin"==k?q:m)+f+("pin"==k?0:"left"==d?r:-r)))}else k="pin",e("pin"),p(d)}}();if(m){var i=new CKEDITOR.template('<div id="cke_{name}" class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_float cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" title="'+(CKEDITOR.env.gecko?" ":"")+'" lang="{langCode}" role="application" style="{style}"'+
-(a.title?' aria-labelledby="cke_{name}_arialbl"':" ")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':" ")+'<div class="cke_inner"><div id="{topId}" class="cke_top" role="presentation">{content}</div></div></div>'),b=CKEDITOR.document.getBody().append(CKEDITOR.dom.element.createFromHtml(i.output({content:m,id:a.id,langDir:a.lang.dir,langCode:a.langCode,name:a.name,style:"display:none;z-index:"+(j.baseFloatZIndex-1),topId:a.ui.spaceId("top"),voiceLabel:a.title}))),
-q=CKEDITOR.tools.eventsBuffer(500,p),e=CKEDITOR.tools.eventsBuffer(100,p);b.unselectable();b.on("mousedown",function(a){a=a.data;a.getTarget().hasAscendant("a",1)||a.preventDefault()});a.on("focus",function(b){p(b);a.on("change",q.input);g.on("scroll",e.input);g.on("resize",e.input)});a.on("blur",function(){b.hide();a.removeListener("change",q.input);g.removeListener("scroll",e.input);g.removeListener("resize",e.input)});a.on("destroy",function(){g.removeListener("scroll",e.input);g.removeListener("resize",
-e.input);b.clearCustomData();b.remove()});a.focusManager.hasFocus&&b.show();a.focusManager.add(b,1)}}var g=CKEDITOR.document.getWindow(),s=CKEDITOR.tools.cssLength;CKEDITOR.plugins.add("floatingspace",{init:function(a){a.on("loaded",function(){i(this)},null,null,20)}})})();CKEDITOR.plugins.add("listblock",{requires:"panel",onLoad:function(){var f=CKEDITOR.addTemplate("panel-list",'<ul role="presentation" class="cke_panel_list">{items}</ul>'),g=CKEDITOR.addTemplate("panel-list-item",'<li id="{id}" class="cke_panel_listItem" role=presentation><a id="{id}_option" _cke_focus=1 hidefocus=true title="{title}" href="javascript:void(\'{val}\')" {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;" role="option">{text}</a></li>'),h=CKEDITOR.addTemplate("panel-list-group",
-'<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>'),i=/\'/g;CKEDITOR.ui.panel.prototype.addListBlock=function(a,b){return this.addBlock(a,new CKEDITOR.ui.listBlock(this.getHolderElement(),b))};CKEDITOR.ui.listBlock=CKEDITOR.tools.createClass({base:CKEDITOR.ui.panel.block,$:function(a,b){var b=b||{},c=b.attributes||(b.attributes={});(this.multiSelect=!!b.multiSelect)&&(c["aria-multiselectable"]=!0);!c.role&&(c.role="listbox");this.base.apply(this,arguments);this.element.setAttribute("role",
-c.role);c=this.keys;c[40]="next";c[9]="next";c[38]="prev";c[CKEDITOR.SHIFT+9]="prev";c[32]=CKEDITOR.env.ie?"mouseup":"click";CKEDITOR.env.ie&&(c[13]="mouseup");this._.pendingHtml=[];this._.pendingList=[];this._.items={};this._.groups={}},_:{close:function(){if(this._.started){var a=f.output({items:this._.pendingList.join("")});this._.pendingList=[];this._.pendingHtml.push(a);delete this._.started}},getClick:function(){this._.click||(this._.click=CKEDITOR.tools.addFunction(function(a){var b=this.toggle(a);
-if(this.onClick)this.onClick(a,b)},this));return this._.click}},proto:{add:function(a,b,c){var d=CKEDITOR.tools.getNextId();this._.started||(this._.started=1,this._.size=this._.size||0);this._.items[a]=d;var e;e=CKEDITOR.tools.htmlEncodeAttr(a).replace(i,"\\'");a={id:d,val:e,onclick:CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick",clickFn:this._.getClick(),title:CKEDITOR.tools.htmlEncodeAttr(c||a),text:b||a};this._.pendingList.push(g.output(a))},startGroup:function(a){this._.close();
-var b=CKEDITOR.tools.getNextId();this._.groups[a]=b;this._.pendingHtml.push(h.output({id:b,label:a}))},commit:function(){this._.close();this.element.appendHtml(this._.pendingHtml.join(""));delete this._.size;this._.pendingHtml=[]},toggle:function(a){var b=this.isMarked(a);b?this.unmark(a):this.mark(a);return!b},hideGroup:function(a){var b=(a=this.element.getDocument().getById(this._.groups[a]))&&a.getNext();a&&(a.setStyle("display","none"),b&&"ul"==b.getName()&&b.setStyle("display","none"))},hideItem:function(a){this.element.getDocument().getById(this._.items[a]).setStyle("display",
-"none")},showAll:function(){var a=this._.items,b=this._.groups,c=this.element.getDocument(),d;for(d in a)c.getById(a[d]).setStyle("display","");for(var e in b)a=c.getById(b[e]),d=a.getNext(),a.setStyle("display",""),d&&"ul"==d.getName()&&d.setStyle("display","")},mark:function(a){this.multiSelect||this.unmarkAll();var a=this._.items[a],b=this.element.getDocument().getById(a);b.addClass("cke_selected");this.element.getDocument().getById(a+"_option").setAttribute("aria-selected",!0);this.onMark&&this.onMark(b)},
-unmark:function(a){var b=this.element.getDocument(),a=this._.items[a],c=b.getById(a);c.removeClass("cke_selected");b.getById(a+"_option").removeAttribute("aria-selected");this.onUnmark&&this.onUnmark(c)},unmarkAll:function(){var a=this._.items,b=this.element.getDocument(),c;for(c in a){var d=a[c];b.getById(d).removeClass("cke_selected");b.getById(d+"_option").removeAttribute("aria-selected")}this.onUnmark&&this.onUnmark()},isMarked:function(a){return this.element.getDocument().getById(this._.items[a]).hasClass("cke_selected")},
-focus:function(a){this._.focusIndex=-1;var b=this.element.getElementsByTag("a"),c,d=-1;if(a)for(c=this.element.getDocument().getById(this._.items[a]).getFirst();a=b.getItem(++d);){if(a.equals(c)){this._.focusIndex=d;break}}else this.element.focus();c&&setTimeout(function(){c.focus()},0)}}})}});CKEDITOR.plugins.add("richcombo",{requires:"floatpanel,listblock,button",beforeInit:function(d){d.ui.addHandler(CKEDITOR.UI_RICHCOMBO,CKEDITOR.ui.richCombo.handler)}});
-(function(){var d='<span id="{id}" class="cke_combo cke_combo__{name} {cls}" role="presentation"><span id="{id}_label" class="cke_combo_label">{label}</span><a class="cke_combo_button" title="{title}" tabindex="-1"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="true"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(d+=' onkeypress="return false;"');CKEDITOR.env.gecko&&(d+=' onblur="this.style.cssText = this.style.cssText;"');
-var d=d+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span><span class="cke_combo_open"><span class="cke_combo_arrow">'+(CKEDITOR.env.hc?"&#9660;":CKEDITOR.env.air?"&nbsp;":"")+"</span></span></a></span>"),
-i=CKEDITOR.addTemplate("combo",d);CKEDITOR.UI_RICHCOMBO="richcombo";CKEDITOR.ui.richCombo=CKEDITOR.tools.createClass({$:function(a){CKEDITOR.tools.extend(this,a,{canGroup:!1,title:a.label,modes:{wysiwyg:1},editorFocus:1});a=this.panel||{};delete this.panel;this.id=CKEDITOR.tools.getNextNumber();this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document;a.className="cke_combopanel";a.block={multiSelect:a.multiSelect,attributes:a.attributes};a.toolbarRelated=!0;this._={panelDefinition:a,items:{}}},
-proto:{renderHtml:function(a){var b=[];this.render(a,b);return b.join("")},render:function(a,b){function g(){if(this.getState()!=CKEDITOR.TRISTATE_ON){var c=this.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;a.readOnly&&!this.readOnly&&(c=CKEDITOR.TRISTATE_DISABLED);this.setState(c);this.setValue("");c!=CKEDITOR.TRISTATE_DISABLED&&this.refresh&&this.refresh()}}var d=CKEDITOR.env,h="cke_"+this.id,e=CKEDITOR.tools.addFunction(function(b){j&&(a.unlockSelection(1),j=0);c.execute(b)},
-this),f=this,c={id:h,combo:this,focus:function(){CKEDITOR.document.getById(h).getChild(1).focus()},execute:function(c){var b=f._;if(b.state!=CKEDITOR.TRISTATE_DISABLED)if(f.createPanel(a),b.on)b.panel.hide();else{f.commit();var d=f.getValue();d?b.list.mark(d):b.list.unmarkAll();b.panel.showBlock(f.id,new CKEDITOR.dom.element(c),4)}},clickFn:e};a.on("activeFilterChange",g,this);a.on("mode",g,this);a.on("selectionChange",g,this);!this.readOnly&&a.on("readOnly",g,this);var k=CKEDITOR.tools.addFunction(function(b,
-d){var b=new CKEDITOR.dom.event(b),g=b.getKeystroke();if(40==g)a.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)});switch(g){case 13:case 32:case 40:CKEDITOR.tools.callFunction(e,d);break;default:c.onkey(c,g)}b.preventDefault()}),l=CKEDITOR.tools.addFunction(function(){c.onfocus&&c.onfocus()}),j=0;c.keyDownFn=k;d={id:h,name:this.name||this.command,label:this.label,title:this.title,cls:this.className||"",titleJs:d.gecko&&!d.hc?"":(this.title||"").replace("'",""),keydownFn:k,
-focusFn:l,clickFn:e};i.output(d,b);if(this.onRender)this.onRender();return c},createPanel:function(a){if(!this._.panel){var b=this._.panelDefinition,d=this._.panelDefinition.block,i=b.parent||CKEDITOR.document.getBody(),h="cke_combopanel__"+this.name,e=new CKEDITOR.ui.floatPanel(a,i,b),f=e.addListBlock(this.id,d),c=this;e.onShow=function(){this.element.addClass(h);c.setState(CKEDITOR.TRISTATE_ON);c._.on=1;c.editorFocus&&!a.focusManager.hasFocus&&a.focus();if(c.onOpen)c.onOpen();a.once("panelShow",
-function(){f.focus(!f.multiSelect&&c.getValue())})};e.onHide=function(b){this.element.removeClass(h);c.setState(c.modes&&c.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);c._.on=0;if(!b&&c.onClose)c.onClose()};e.onEscape=function(){e.hide(1)};f.onClick=function(a,b){c.onClick&&c.onClick.call(c,a,b);e.hide()};this._.panel=e;this._.list=f;e.getBlock(this.id).onHide=function(){c._.on=0;c.setState(CKEDITOR.TRISTATE_OFF)};this.init&&this.init()}},setValue:function(a,b){this._.value=a;var d=
-this.document.getById("cke_"+this.id+"_text");d&&(!a&&!b?(b=this.label,d.addClass("cke_combo_inlinelabel")):d.removeClass("cke_combo_inlinelabel"),d.setText("undefined"!=typeof b?b:a))},getValue:function(){return this._.value||""},unmarkAll:function(){this._.list.unmarkAll()},mark:function(a){this._.list.mark(a)},hideItem:function(a){this._.list.hideItem(a)},hideGroup:function(a){this._.list.hideGroup(a)},showAll:function(){this._.list.showAll()},add:function(a,b,d){this._.items[a]=d||a;this._.list.add(a,
-b,d)},startGroup:function(a){this._.list.startGroup(a)},commit:function(){this._.committed||(this._.list.commit(),this._.committed=1,CKEDITOR.ui.fire("ready",this));this._.committed=1},setState:function(a){if(this._.state!=a){var b=this.document.getById("cke_"+this.id);b.setState(a,"cke_combo");a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled");this._.state=a}},getState:function(){return this._.state},enable:function(){this._.state==CKEDITOR.TRISTATE_DISABLED&&
-this.setState(this._.lastState)},disable:function(){this._.state!=CKEDITOR.TRISTATE_DISABLED&&(this._.lastState=this._.state,this.setState(CKEDITOR.TRISTATE_DISABLED))}},statics:{handler:{create:function(a){return new CKEDITOR.ui.richCombo(a)}}}});CKEDITOR.ui.prototype.addRichCombo=function(a,b){this.add(a,CKEDITOR.UI_RICHCOMBO,b)}})();(function(){function e(b,a,e,h,j,n,l,o){for(var p=b.config,k=new CKEDITOR.style(l),c=j.split(";"),j=[],g={},d=0;d<c.length;d++){var f=c[d];if(f){var f=f.split("/"),m={},i=c[d]=f[0];m[e]=j[d]=f[1]||i;g[i]=new CKEDITOR.style(l,m);g[i]._.definition.name=i}else c.splice(d--,1)}b.ui.addRichCombo(a,{label:h.label,title:h.panelTitle,toolbar:"styles,"+o,allowedContent:k,requiredContent:k,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(p.contentsCss),multiSelect:!1,attributes:{"aria-label":h.panelTitle}},
-init:function(){this.startGroup(h.panelTitle);for(var b=0;b<c.length;b++){var a=c[b];this.add(a,g[a].buildPreview(),a)}},onClick:function(a){b.focus();b.fire("saveSnapshot");var c=g[a];b[this.getValue()==a?"removeStyle":"applyStyle"](c);b.fire("saveSnapshot")},onRender:function(){b.on("selectionChange",function(a){for(var c=this.getValue(),a=a.data.path.elements,d=0,f;d<a.length;d++){f=a[d];for(var e in g)if(g[e].checkElementMatch(f,!0,b)){e!=c&&this.setValue(e);return}}this.setValue("",n)},this)},
-refresh:function(){b.activeFilter.check(k)||this.setState(CKEDITOR.TRISTATE_DISABLED)}})}CKEDITOR.plugins.add("font",{requires:"richcombo",init:function(b){var a=b.config;e(b,"Font","family",b.lang.font,a.font_names,a.font_defaultLabel,a.font_style,30);e(b,"FontSize","size",b.lang.font.fontSize,a.fontSize_sizes,a.fontSize_defaultLabel,a.fontSize_style,40)}})})();CKEDITOR.config.font_names="Arial/Arial, Helvetica, sans-serif;Comic Sans MS/Comic Sans MS, cursive;Courier New/Courier New, Courier, monospace;Georgia/Georgia, serif;Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;Tahoma/Tahoma, Geneva, sans-serif;Times New Roman/Times New Roman, Times, serif;Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;Verdana/Verdana, Geneva, sans-serif";
-CKEDITOR.config.font_defaultLabel="";CKEDITOR.config.font_style={element:"span",styles:{"font-family":"#(family)"},overrides:[{element:"font",attributes:{face:null}}]};CKEDITOR.config.fontSize_sizes="8/8px;9/9px;10/10px;11/11px;12/12px;14/14px;16/16px;18/18px;20/20px;22/22px;24/24px;26/26px;28/28px;36/36px;48/48px;72/72px";CKEDITOR.config.fontSize_defaultLabel="";CKEDITOR.config.fontSize_style={element:"span",styles:{"font-size":"#(size)"},overrides:[{element:"font",attributes:{size:null}}]};CKEDITOR.plugins.add("forms",{requires:"dialog,fakeobjects",onLoad:function(){CKEDITOR.addCss(".cke_editable form{border: 1px dotted #FF0000;padding: 2px;}\n");CKEDITOR.addCss("img.cke_hidden{background-image: url("+CKEDITOR.getUrl(this.path+"images/hiddenfield.gif")+");background-position: center center;background-repeat: no-repeat;border: 1px solid #a9a9a9;width: 16px !important;height: 16px !important;}")},init:function(a){var b=a.lang,g=0,h={email:1,password:1,search:1,tel:1,text:1,url:1},j={checkbox:"input[type,name,checked]",
-radio:"input[type,name,checked]",textfield:"input[type,name,value,size,maxlength]",textarea:"textarea[cols,rows,name]",select:"select[name,size,multiple]; option[value,selected]",button:"input[type,name,value]",form:"form[action,name,id,enctype,target,method]",hiddenfield:"input[type,name,value]",imagebutton:"input[type,alt,src]{width,height,border,border-width,border-style,margin,float}"},k={checkbox:"input",radio:"input",textfield:"input",textarea:"textarea",select:"select",button:"input",form:"form",
-hiddenfield:"input",imagebutton:"input"},e=function(d,c,e){var h={allowedContent:j[c],requiredContent:k[c]};"form"==c&&(h.context="form");a.addCommand(c,new CKEDITOR.dialogCommand(c,h));a.ui.addButton&&a.ui.addButton(d,{label:b.common[d.charAt(0).toLowerCase()+d.slice(1)],command:c,toolbar:"forms,"+(g+=10)});CKEDITOR.dialog.add(c,e)},f=this.path+"dialogs/";!a.blockless&&e("Form","form",f+"form.js");e("Checkbox","checkbox",f+"checkbox.js");e("Radio","radio",f+"radio.js");e("TextField","textfield",
-f+"textfield.js");e("Textarea","textarea",f+"textarea.js");e("Select","select",f+"select.js");e("Button","button",f+"button.js");var i=a.plugins.image;i&&!a.plugins.image2&&e("ImageButton","imagebutton",CKEDITOR.plugins.getPath("image")+"dialogs/image.js");e("HiddenField","hiddenfield",f+"hiddenfield.js");a.addMenuItems&&(e={checkbox:{label:b.forms.checkboxAndRadio.checkboxTitle,command:"checkbox",group:"checkbox"},radio:{label:b.forms.checkboxAndRadio.radioTitle,command:"radio",group:"radio"},textfield:{label:b.forms.textfield.title,
-command:"textfield",group:"textfield"},hiddenfield:{label:b.forms.hidden.title,command:"hiddenfield",group:"hiddenfield"},button:{label:b.forms.button.title,command:"button",group:"button"},select:{label:b.forms.select.title,command:"select",group:"select"},textarea:{label:b.forms.textarea.title,command:"textarea",group:"textarea"}},i&&(e.imagebutton={label:b.image.titleButton,command:"imagebutton",group:"imagebutton"}),!a.blockless&&(e.form={label:b.forms.form.menu,command:"form",group:"form"}),
-a.addMenuItems(e));a.contextMenu&&(!a.blockless&&a.contextMenu.addListener(function(d,c,a){if((d=a.contains("form",1))&&!d.isReadOnly())return{form:CKEDITOR.TRISTATE_OFF}}),a.contextMenu.addListener(function(d){if(d&&!d.isReadOnly()){var c=d.getName();if(c=="select")return{select:CKEDITOR.TRISTATE_OFF};if(c=="textarea")return{textarea:CKEDITOR.TRISTATE_OFF};if(c=="input"){var a=d.getAttribute("type")||"text";switch(a){case "button":case "submit":case "reset":return{button:CKEDITOR.TRISTATE_OFF};case "checkbox":return{checkbox:CKEDITOR.TRISTATE_OFF};
-case "radio":return{radio:CKEDITOR.TRISTATE_OFF};case "image":return i?{imagebutton:CKEDITOR.TRISTATE_OFF}:null}if(h[a])return{textfield:CKEDITOR.TRISTATE_OFF}}if(c=="img"&&d.data("cke-real-element-type")=="hiddenfield")return{hiddenfield:CKEDITOR.TRISTATE_OFF}}}));a.on("doubleclick",function(d){var c=d.data.element;if(!a.blockless&&c.is("form"))d.data.dialog="form";else if(c.is("select"))d.data.dialog="select";else if(c.is("textarea"))d.data.dialog="textarea";else if(c.is("img")&&c.data("cke-real-element-type")==
-"hiddenfield")d.data.dialog="hiddenfield";else if(c.is("input")){c=c.getAttribute("type")||"text";switch(c){case "button":case "submit":case "reset":d.data.dialog="button";break;case "checkbox":d.data.dialog="checkbox";break;case "radio":d.data.dialog="radio";break;case "image":d.data.dialog="imagebutton"}if(h[c])d.data.dialog="textfield"}})},afterInit:function(a){var b=a.dataProcessor,g=b&&b.htmlFilter,b=b&&b.dataFilter;CKEDITOR.env.ie&&g&&g.addRules({elements:{input:function(a){var a=a.attributes,
-b=a.type;b||(a.type="text");("checkbox"==b||"radio"==b)&&"on"==a.value&&delete a.value}}},{applyToAll:!0});b&&b.addRules({elements:{input:function(b){if("hidden"==b.attributes.type)return a.createFakeParserElement(b,"cke_hidden","hiddenfield")}}},{applyToAll:!0})}});CKEDITOR.plugins.add("format",{requires:"richcombo",init:function(a){if(!a.blockless){for(var f=a.config,c=a.lang.format,j=f.format_tags.split(";"),d={},k=0,l=[],g=0;g<j.length;g++){var h=j[g],i=new CKEDITOR.style(f["format_"+h]);if(!a.filter.customConfig||a.filter.check(i))k++,d[h]=i,d[h]._.enterMode=a.config.enterMode,l.push(i)}0!==k&&a.ui.addRichCombo("Format",{label:c.label,title:c.panelTitle,toolbar:"styles,20",allowedContent:l,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(f.contentsCss),
-multiSelect:!1,attributes:{"aria-label":c.panelTitle}},init:function(){this.startGroup(c.panelTitle);for(var a in d){var e=c["tag_"+a];this.add(a,d[a].buildPreview(e),e)}},onClick:function(b){a.focus();a.fire("saveSnapshot");var b=d[b],e=a.elementPath();a[b.checkActive(e,a)?"removeStyle":"applyStyle"](b);setTimeout(function(){a.fire("saveSnapshot")},0)},onRender:function(){a.on("selectionChange",function(b){var e=this.getValue(),b=b.data.path;this.refresh();for(var c in d)if(d[c].checkActive(b,a)){c!=
-e&&this.setValue(c,a.lang.format["tag_"+c]);return}this.setValue("")},this)},onOpen:function(){this.showAll();for(var b in d)a.activeFilter.check(d[b])||this.hideItem(b)},refresh:function(){var b=a.elementPath();if(b){if(b.isContextFor("p"))for(var c in d)if(a.activeFilter.check(d[c]))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}}})}}});CKEDITOR.config.format_tags="p;h1;h2;h3;h4;h5;h6;pre;address;div";CKEDITOR.config.format_p={element:"p"};CKEDITOR.config.format_div={element:"div"};
-CKEDITOR.config.format_pre={element:"pre"};CKEDITOR.config.format_address={element:"address"};CKEDITOR.config.format_h1={element:"h1"};CKEDITOR.config.format_h2={element:"h2"};CKEDITOR.config.format_h3={element:"h3"};CKEDITOR.config.format_h4={element:"h4"};CKEDITOR.config.format_h5={element:"h5"};CKEDITOR.config.format_h6={element:"h6"};(function(){var b={canUndo:!1,exec:function(a){var b=a.document.createElement("hr");a.insertElement(b)},allowedContent:"hr",requiredContent:"hr"};CKEDITOR.plugins.add("horizontalrule",{init:function(a){a.blockless||(a.addCommand("horizontalrule",b),a.ui.addButton&&a.ui.addButton("HorizontalRule",{label:a.lang.horizontalrule.toolbar,command:"horizontalrule",toolbar:"insert,40"}))}})})();CKEDITOR.plugins.add("htmlwriter",{init:function(b){var a=new CKEDITOR.htmlWriter;a.forceSimpleAmpersand=b.config.forceSimpleAmpersand;a.indentationChars=b.config.dataIndentationChars||"\t";b.dataProcessor.writer=a}});
-CKEDITOR.htmlWriter=CKEDITOR.tools.createClass({base:CKEDITOR.htmlParser.basicWriter,$:function(){this.base();this.indentationChars="\t";this.selfClosingEnd=" />";this.lineBreakChars="\n";this.sortAttributes=1;this._.indent=0;this._.indentation="";this._.inPre=0;this._.rules={};var b=CKEDITOR.dtd,a;for(a in CKEDITOR.tools.extend({},b.$nonBodyContent,b.$block,b.$listItem,b.$tableContent))this.setRules(a,{indent:!b[a]["#"],breakBeforeOpen:1,breakBeforeClose:!b[a]["#"],breakAfterClose:1,needsSpace:a in
-b.$block&&!(a in{li:1,dt:1,dd:1})});this.setRules("br",{breakAfterOpen:1});this.setRules("title",{indent:0,breakAfterOpen:0});this.setRules("style",{indent:0,breakBeforeClose:1});this.setRules("pre",{breakAfterOpen:1,indent:0})},proto:{openTag:function(b){var a=this._.rules[b];this._.afterCloser&&(a&&a.needsSpace&&this._.needsSpace)&&this._.output.push("\n");this._.indent?this.indentation():a&&a.breakBeforeOpen&&(this.lineBreak(),this.indentation());this._.output.push("<",b);this._.afterCloser=0},
-openTagClose:function(b,a){var c=this._.rules[b];a?(this._.output.push(this.selfClosingEnd),c&&c.breakAfterClose&&(this._.needsSpace=c.needsSpace)):(this._.output.push(">"),c&&c.indent&&(this._.indentation+=this.indentationChars));c&&c.breakAfterOpen&&this.lineBreak();"pre"==b&&(this._.inPre=1)},attribute:function(b,a){"string"==typeof a&&(this.forceSimpleAmpersand&&(a=a.replace(/&amp;/g,"&")),a=CKEDITOR.tools.htmlEncodeAttr(a));this._.output.push(" ",b,'="',a,'"')},closeTag:function(b){var a=this._.rules[b];
-a&&a.indent&&(this._.indentation=this._.indentation.substr(this.indentationChars.length));this._.indent?this.indentation():a&&a.breakBeforeClose&&(this.lineBreak(),this.indentation());this._.output.push("</",b,">");"pre"==b&&(this._.inPre=0);a&&a.breakAfterClose&&(this.lineBreak(),this._.needsSpace=a.needsSpace);this._.afterCloser=1},text:function(b){this._.indent&&(this.indentation(),!this._.inPre&&(b=CKEDITOR.tools.ltrim(b)));this._.output.push(b)},comment:function(b){this._.indent&&this.indentation();
-this._.output.push("<\!--",b,"--\>")},lineBreak:function(){!this._.inPre&&0<this._.output.length&&this._.output.push(this.lineBreakChars);this._.indent=1},indentation:function(){!this._.inPre&&this._.indentation&&this._.output.push(this._.indentation);this._.indent=0},reset:function(){this._.output=[];this._.indent=0;this._.indentation="";this._.afterCloser=0;this._.inPre=0},setRules:function(b,a){var c=this._.rules[b];c?CKEDITOR.tools.extend(c,a,!0):this._.rules[b]=a}}});(function(){CKEDITOR.plugins.add("iframe",{requires:"dialog,fakeobjects",onLoad:function(){CKEDITOR.addCss("img.cke_iframe{background-image: url("+CKEDITOR.getUrl(this.path+"images/placeholder.png")+");background-position: center center;background-repeat: no-repeat;border: 1px solid #a9a9a9;width: 80px;height: 80px;}")},init:function(a){var b=a.lang.iframe,c="iframe[align,longdesc,frameborder,height,name,scrolling,src,title,width]";a.plugins.dialogadvtab&&(c+=";iframe"+a.plugins.dialogadvtab.allowedContent({id:1,
-classes:1,styles:1}));CKEDITOR.dialog.add("iframe",this.path+"dialogs/iframe.js");a.addCommand("iframe",new CKEDITOR.dialogCommand("iframe",{allowedContent:c,requiredContent:"iframe"}));a.ui.addButton&&a.ui.addButton("Iframe",{label:b.toolbar,command:"iframe",toolbar:"insert,80"});a.on("doubleclick",function(a){var b=a.data.element;b.is("img")&&"iframe"==b.data("cke-real-element-type")&&(a.data.dialog="iframe")});a.addMenuItems&&a.addMenuItems({iframe:{label:b.title,command:"iframe",group:"image"}});
-a.contextMenu&&a.contextMenu.addListener(function(a){if(a&&a.is("img")&&"iframe"==a.data("cke-real-element-type"))return{iframe:CKEDITOR.TRISTATE_OFF}})},afterInit:function(a){var b=a.dataProcessor;(b=b&&b.dataFilter)&&b.addRules({elements:{iframe:function(b){return a.createFakeParserElement(b,"cke_iframe","iframe",!0)}}})}})})();(function(){function k(a){var e=this.editor,b=a.document,c=b.body,d=b.getElementById("cke_actscrpt");d&&d.parentNode.removeChild(d);(d=b.getElementById("cke_shimscrpt"))&&d.parentNode.removeChild(d);(d=b.getElementById("cke_basetagscrpt"))&&d.parentNode.removeChild(d);CKEDITOR.env.gecko&&(c.contentEditable=!1,2E4>CKEDITOR.env.version&&(c.innerHTML=c.innerHTML.replace(/^.*<\!-- cke-content-start --\>/,""),setTimeout(function(){var a=new CKEDITOR.dom.range(new CKEDITOR.dom.document(b));a.setStart(new CKEDITOR.dom.node(c),
-0);e.getSelection().selectRanges([a])},0)));c.contentEditable=!0;CKEDITOR.env.ie&&(c.hideFocus=!0,c.disabled=!0,c.removeAttribute("disabled"));delete this._.isLoadingData;this.$=c;b=new CKEDITOR.dom.document(b);this.setup();CKEDITOR.env.ie&&(b.getDocumentElement().addClass(b.$.compatMode),e.config.enterMode!=CKEDITOR.ENTER_P&&this.attachListener(b,"selectionchange",function(){var a=b.getBody(),c=e.getSelection(),d=c&&c.getRanges()[0];d&&(a.getHtml().match(/^<p>(?:&nbsp;|<br>)<\/p>$/i)&&d.startContainer.equals(a))&&
-setTimeout(function(){d=e.getSelection().getRanges()[0];if(!d.startContainer.equals("body")){a.getFirst().remove(1);d.moveToElementEditEnd(a);d.select()}},0)}));if(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)b.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&setTimeout(function(){e.editable().focus()})});l(e);try{e.document.$.execCommand("2D-position",!1,!0)}catch(g){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==e.document.$.compatMode)&&this.attachListener(this,
-"keydown",function(a){var b=a.data.getKeystroke();if(b==33||b==34)if(CKEDITOR.env.ie)setTimeout(function(){e.getSelection().scrollIntoView()},0);else if(e.window.$.innerHeight>this.$.offsetHeight){var c=e.createRange();c[b==33?"moveToElementEditStart":"moveToElementEditEnd"](this);c.select();a.data.preventDefault()}});CKEDITOR.env.ie&&this.attachListener(b,"blur",function(){try{b.$.selection.empty()}catch(a){}});CKEDITOR.env.iOS&&this.attachListener(b,"touchend",function(){a.focus()});d=e.document.getElementsByTag("title").getItem(0);
-d.data("cke-title",d.getText());CKEDITOR.env.ie&&(e.document.$.title=this._.docTitle);CKEDITOR.tools.setTimeout(function(){if(this.status=="unloaded")this.status="ready";e.fire("contentDom");if(this._.isPendingFocus){e.focus();this._.isPendingFocus=false}setTimeout(function(){e.fire("dataReady")},0);CKEDITOR.env.ie&&setTimeout(function(){if(e.document){var a=e.document.$.body;a.runtimeStyle.marginBottom="0px";a.runtimeStyle.marginBottom=""}},1E3)},0,this)}function l(a){function e(){var c;a.editable().attachListener(a,
-"selectionChange",function(){var d=a.getSelection().getSelectedElement();d&&(c&&(c.detachEvent("onresizestart",b),c=null),d.$.attachEvent("onresizestart",b),c=d.$)})}function b(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var c=a.document.$;c.execCommand("enableObjectResizing",!1,!a.config.disableObjectResizing);c.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(d){}else CKEDITOR.env.ie&&(11>CKEDITOR.env.version&&a.config.disableObjectResizing)&&e(a)}function m(){var a=
-[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable=false]{min-height:0 !important}");var e=[],b;for(b in CKEDITOR.dtd.$removeEmpty)e.push("html.CSS1Compat "+b+"[contenteditable=false]");a.push(e.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&(a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));a.push("html{cursor:text;*cursor:auto}");a.push("img,input,textarea{cursor:default}");
-return a.join("\n")}CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",requiredContent:"body"});a.addMode("wysiwyg",function(e){function b(b){b&&b.removeListener();a.editable(new j(a,d.$.contentWindow.document.body));a.setData(a.getData(1),e)}var c="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",c=CKEDITOR.env.air?"javascript:void(0)":
-CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent(c)+"}())":"",d=CKEDITOR.dom.element.createFromHtml('<iframe src="'+c+'" frameBorder="0"></iframe>');d.setStyles({width:"100%",height:"100%"});d.addClass("cke_wysiwyg_frame cke_reset");var g=a.ui.space("contents");g.append(d);if(c=CKEDITOR.env.ie||CKEDITOR.env.gecko)d.on("load",b);var f=a.title,h=a.fire("ariaEditorHelpLabel",{}).label;f&&(CKEDITOR.env.ie&&h&&(f+=", "+h),d.setAttribute("title",f));if(h){var f=CKEDITOR.tools.getNextId(),
-i=CKEDITOR.dom.element.createFromHtml('<span id="'+f+'" class="cke_voice_label">'+h+"</span>");g.append(i,1);d.setAttribute("aria-describedby",f)}a.on("beforeModeUnload",function(a){a.removeListener();i&&i.remove()});d.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"});!c&&b();CKEDITOR.env.webkit&&(c=function(){g.setStyle("width","100%");d.hide();d.setSize("width",g.getSize("width"));g.removeStyle("width");d.show()},d.setCustomData("onResize",c),CKEDITOR.document.getWindow().on("resize",
-c));a.fire("ariaWidget",d)})}});CKEDITOR.editor.prototype.addContentsCss=function(a){var e=this.config,b=e.contentsCss;CKEDITOR.tools.isArray(b)||(e.contentsCss=b?[b]:[]);e.contentsCss.push(a)};var j=CKEDITOR.tools.createClass({$:function(a){this.base.apply(this,arguments);this._.frameLoadedHandler=CKEDITOR.tools.addFunction(function(a){CKEDITOR.tools.setTimeout(k,0,this,a)},this);this._.docTitle=this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,e){var b=
-this.editor;if(e)this.setHtml(a),b.fire("dataReady");else{this._.isLoadingData=!0;b._.dataStore={id:1};var c=b.config,d=c.fullPage,g=c.docType,f=CKEDITOR.tools.buildStyleHtml(m()).replace(/<style>/,'<style data-cke-temp="1">');d||(f+=CKEDITOR.tools.buildStyleHtml(b.config.contentsCss));var h=c.baseHref?'<base href="'+c.baseHref+'" data-cke-temp="1" />':"";d&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){b.docType=g=a;return""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){b.xmlDeclaration=a;return""}));
-a=b.dataProcessor.toHtml(a);d?(/<body[\s|>]/.test(a)||(a="<body>"+a),/<html[\s|>]/.test(a)||(a="<html>"+a+"</html>"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$&<title></title>")):a=a.replace(/<html[^>]*>/,"$&<head><title></title></head>"),h&&(a=a.replace(/<head[^>]*?>/,"$&"+h)),a=a.replace(/<\/head\s*>/,f+"$&"),a=g+a):a=c.docType+'<html dir="'+c.contentsLangDirection+'" lang="'+(c.contentsLanguage||b.langCode)+'"><head><title>'+this._.docTitle+"</title>"+h+f+"</head><body"+
-(c.bodyId?' id="'+c.bodyId+'"':"")+(c.bodyClass?' class="'+c.bodyClass+'"':"")+">"+a+"</body></html>";CKEDITOR.env.gecko&&(a=a.replace(/<body/,'<body contenteditable="true" '),2E4>CKEDITOR.env.version&&(a=a.replace(/<body[^>]*>/,"$&<\!-- cke-content-start --\>")));c='<script id="cke_actscrpt" type="text/javascript"'+(CKEDITOR.env.ie?' defer="defer" ':"")+">var wasLoaded=0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded=1;}"+
-(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"<\/script>";CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(c+='<script id="cke_shimscrpt">window.parent.CKEDITOR.tools.enableHtml5Elements(document)<\/script>');h&&(CKEDITOR.env.ie&&10>CKEDITOR.env.version)&&(c+='<script id="cke_basetagscrpt">var baseTag = document.querySelector( "base" );baseTag.href = baseTag.href;<\/script>');a=a.replace(/(?=\s*<\/(:?head)>)/,c);this.clearCustomData();this.clearListeners();
-b.fire("contentDomUnload");var i=this.getDocument();try{i.write(a)}catch(j){setTimeout(function(){i.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();var a=this.editor,e=a.config,b=e.fullPage,c=b&&a.docType,d=b&&a.xmlDeclaration,g=this.getDocument(),b=b?g.getDocumentElement().getOuterHtml():g.getBody().getHtml();CKEDITOR.env.gecko&&e.enterMode!=CKEDITOR.ENTER_BR&&(b=b.replace(/<br>(?=\s*(:?$|<\/body>))/,""));b=a.dataProcessor.toDataFormat(b);d&&(b=d+"\n"+b);c&&(b=c+"\n"+b);return b},
-focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:j.baseProto.focus.call(this)},detach:function(){var a=this.editor,e=a.document,a=a.window.getFrame();j.baseProto.detach.call(this);this.clearCustomData();e.getDocumentElement().clearCustomData();a.clearCustomData();CKEDITOR.tools.removeFunction(this._.frameLoadedHandler);(e=a.removeCustomData("onResize"))&&e.removeListener();a.remove()}}})})();CKEDITOR.config.disableObjectResizing=!1;CKEDITOR.config.disableNativeTableHandles=!0;
-CKEDITOR.config.disableNativeSpellChecker=!0;CKEDITOR.config.contentsCss=CKEDITOR.getUrl("contents.css");(function(){function e(b,a){a||(a=b.getSelection().getSelectedElement());if(a&&a.is("img")&&!a.data("cke-realelement")&&!a.isReadOnly())return a}function f(b){var a=b.getStyle("float");if("inherit"==a||"none"==a)a=0;a||(a=b.getAttribute("align"));return a}CKEDITOR.plugins.add("image",{requires:"dialog",init:function(b){if(!b.plugins.image2){CKEDITOR.dialog.add("image",this.path+"dialogs/image.js");var a="img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}";
-CKEDITOR.dialog.isTabEnabled(b,"image","advanced")&&(a="img[alt,dir,id,lang,longdesc,!src,title]{*}(*)");b.addCommand("image",new CKEDITOR.dialogCommand("image",{allowedContent:a,requiredContent:"img[alt,src]",contentTransformations:[["img{width}: sizeToStyle","img[width]: sizeToAttribute"],["img{float}: alignmentToStyle","img[align]: alignmentToAttribute"]]}));b.ui.addButton&&b.ui.addButton("Image",{label:b.lang.common.image,command:"image",toolbar:"insert,10"});b.on("doubleclick",function(b){var a=
-b.data.element;a.is("img")&&(!a.data("cke-realelement")&&!a.isReadOnly())&&(b.data.dialog="image")});b.addMenuItems&&b.addMenuItems({image:{label:b.lang.image.menu,command:"image",group:"image"}});b.contextMenu&&b.contextMenu.addListener(function(a){if(e(b,a))return{image:CKEDITOR.TRISTATE_OFF}})}},afterInit:function(b){function a(a){var d=b.getCommand("justify"+a);if(d){if("left"==a||"right"==a)d.on("exec",function(d){var c=e(b),g;c&&(g=f(c),g==a?(c.removeStyle("float"),a==f(c)&&c.removeAttribute("align")):
-c.setStyle("float",a),d.cancel())});d.on("refresh",function(d){var c=e(b);c&&(c=f(c),this.setState(c==a?CKEDITOR.TRISTATE_ON:"right"==a||"left"==a?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),d.cancel())})}}b.plugins.image2||(a("left"),a("right"),a("center"),a("block"))}})})();CKEDITOR.config.image_removeLinkByEmptyURL=!0;(function(){function k(a,b){var e,f;b.on("refresh",function(a){var b=[i],c;for(c in a.data.states)b.push(a.data.states[c]);this.setState(CKEDITOR.tools.search(b,m)?m:i)},b,null,100);b.on("exec",function(b){e=a.getSelection();f=e.createBookmarks(1);b.data||(b.data={});b.data.done=!1},b,null,0);b.on("exec",function(){a.forceNextSelectionCheck();e.selectBookmarks(f)},b,null,100)}var i=CKEDITOR.TRISTATE_DISABLED,m=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indent",{init:function(a){var b=CKEDITOR.plugins.indent.genericDefinition;
-k(a,a.addCommand("indent",new b(!0)));k(a,a.addCommand("outdent",new b));a.ui.addButton&&(a.ui.addButton("Indent",{label:a.lang.indent.indent,command:"indent",directional:!0,toolbar:"indent,20"}),a.ui.addButton("Outdent",{label:a.lang.indent.outdent,command:"outdent",directional:!0,toolbar:"indent,10"}));a.on("dirChanged",function(b){var f=a.createRange(),j=b.data.node;f.setStartBefore(j);f.setEndAfter(j);for(var l=new CKEDITOR.dom.walker(f),c;c=l.next();)if(c.type==CKEDITOR.NODE_ELEMENT)if(!c.equals(j)&&
-c.getDirection()){f.setStartAfter(c);l=new CKEDITOR.dom.walker(f)}else{var d=a.config.indentClasses;if(d)for(var g=b.data.dir=="ltr"?["_rtl",""]:["","_rtl"],h=0;h<d.length;h++)if(c.hasClass(d[h]+g[0])){c.removeClass(d[h]+g[0]);c.addClass(d[h]+g[1])}d=c.getStyle("margin-right");g=c.getStyle("margin-left");d?c.setStyle("margin-left",d):c.removeStyle("margin-left");g?c.setStyle("margin-right",g):c.removeStyle("margin-right")}})}});CKEDITOR.plugins.indent={genericDefinition:function(a){this.isIndent=
-!!a;this.startDisabled=!this.isIndent},specificDefinition:function(a,b,e){this.name=b;this.editor=a;this.jobs={};this.enterBr=a.config.enterMode==CKEDITOR.ENTER_BR;this.isIndent=!!e;this.relatedGlobal=e?"indent":"outdent";this.indentKey=e?9:CKEDITOR.SHIFT+9;this.database={}},registerCommands:function(a,b){a.on("pluginsLoaded",function(){for(var a in b)(function(a,b){var e=a.getCommand(b.relatedGlobal),c;for(c in b.jobs)e.on("exec",function(d){d.data.done||(a.fire("lockSnapshot"),b.execJob(a,c)&&(d.data.done=
-!0),a.fire("unlockSnapshot"),CKEDITOR.dom.element.clearAllMarkers(b.database))},this,null,c),e.on("refresh",function(d){d.data.states||(d.data.states={});d.data.states[b.name+"@"+c]=b.refreshJob(a,c,d.data.path)},this,null,c);a.addFeature(b)})(this,b[a])})}};CKEDITOR.plugins.indent.genericDefinition.prototype={context:"p",exec:function(){}};CKEDITOR.plugins.indent.specificDefinition.prototype={execJob:function(a,b){var e=this.jobs[b];if(e.state!=i)return e.exec.call(this,a)},refreshJob:function(a,
-b,e){b=this.jobs[b];b.state=a.activeFilter.checkFeature(this)?b.refresh.call(this,a,e):i;return b.state},getContext:function(a){return a.contains(this.context)}}})();(function(){function h(b,c,a){if(!b.getCustomData("indent_processed")){var d=this.editor,f=this.isIndent;if(c){d=b.$.className.match(this.classNameRegex);a=0;d&&(d=d[1],a=CKEDITOR.tools.indexOf(c,d)+1);if(0>(a+=f?1:-1))return;a=Math.min(a,c.length);a=Math.max(a,0);b.$.className=CKEDITOR.tools.ltrim(b.$.className.replace(this.classNameRegex,""));0<a&&b.addClass(c[a-1])}else{var c=i(b,a),a=parseInt(b.getStyle(c),10),g=d.config.indentOffset||40;isNaN(a)&&(a=0);a+=(f?1:-1)*g;if(0>a)return;a=Math.max(a,
-0);a=Math.ceil(a/g)*g;b.setStyle(c,a?a+(d.config.indentUnit||"px"):"");""===b.getAttribute("style")&&b.removeAttribute("style")}CKEDITOR.dom.element.setMarker(this.database,b,"indent_processed",1)}}function i(b,c){return"ltr"==(c||b.getComputedStyle("direction"))?"margin-left":"margin-right"}var j=CKEDITOR.dtd.$listItem,l=CKEDITOR.dtd.$list,f=CKEDITOR.TRISTATE_DISABLED,k=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentblock",{requires:"indent",init:function(b){function c(b,c){a.specificDefinition.apply(this,
-arguments);this.allowedContent={"div h1 h2 h3 h4 h5 h6 ol p pre ul":{propertiesOnly:!0,styles:!d?"margin-left,margin-right":null,classes:d||null}};this.enterBr&&(this.allowedContent.div=!0);this.requiredContent=(this.enterBr?"div":"p")+(d?"("+d.join(",")+")":"{margin-left}");this.jobs={20:{refresh:function(a,b){var e=b.block||b.blockLimit;if(e.is(j))e=e.getParent();else if(e.getAscendant(j))return f;if(!this.enterBr&&!this.getContext(b))return f;if(d){var c;c=d;var e=e.$.className.match(this.classNameRegex),
-g=this.isIndent;c=e?g?e[1]!=c.slice(-1):true:g;return c?k:f}return this.isIndent?k:e?CKEDITOR[(parseInt(e.getStyle(i(e)),10)||0)<=0?"TRISTATE_DISABLED":"TRISTATE_OFF"]:f},exec:function(a){var b=a.getSelection(),b=b&&b.getRanges()[0],c;if(c=a.elementPath().contains(l))h.call(this,c,d);else{b=b.createIterator();a=a.config.enterMode;b.enforceRealBlocks=true;for(b.enlargeBr=a!=CKEDITOR.ENTER_BR;c=b.getNextParagraph(a==CKEDITOR.ENTER_P?"p":"div");)c.isReadOnly()||h.call(this,c,d)}return true}}}}var a=
-CKEDITOR.plugins.indent,d=b.config.indentClasses;a.registerCommands(b,{indentblock:new c(b,"indentblock",!0),outdentblock:new c(b,"outdentblock")});CKEDITOR.tools.extend(c.prototype,a.specificDefinition.prototype,{context:{div:1,dl:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ul:1,ol:1,p:1,pre:1,table:1},classNameRegex:d?RegExp("(?:^|\\s+)("+d.join("|")+")(?=$|\\s)"):null})}})})();(function(){function s(e){function g(b){for(var f=d.startContainer,a=d.endContainer;f&&!f.getParent().equals(b);)f=f.getParent();for(;a&&!a.getParent().equals(b);)a=a.getParent();if(!f||!a)return!1;for(var h=f,f=[],c=!1;!c;)h.equals(a)&&(c=!0),f.push(h),h=h.getNext();if(1>f.length)return!1;h=b.getParents(!0);for(a=0;a<h.length;a++)if(h[a].getName&&k[h[a].getName()]){b=h[a];break}for(var h=n.isIndent?1:-1,a=f[0],f=f[f.length-1],c=CKEDITOR.plugins.list.listToArray(b,o),g=c[f.getCustomData("listarray_index")].indent,
-a=a.getCustomData("listarray_index");a<=f.getCustomData("listarray_index");a++)if(c[a].indent+=h,0<h){var l=c[a].parent;c[a].parent=new CKEDITOR.dom.element(l.getName(),l.getDocument())}for(a=f.getCustomData("listarray_index")+1;a<c.length&&c[a].indent>g;a++)c[a].indent+=h;f=CKEDITOR.plugins.list.arrayToList(c,o,null,e.config.enterMode,b.getDirection());if(!n.isIndent){var i;if((i=b.getParent())&&i.is("li"))for(var h=f.listNode.getChildren(),m=[],j,a=h.count()-1;0<=a;a--)(j=h.getItem(a))&&(j.is&&
-j.is("li"))&&m.push(j)}f&&f.listNode.replace(b);if(m&&m.length)for(a=0;a<m.length;a++){for(j=b=m[a];(j=j.getNext())&&j.is&&j.getName()in k;)CKEDITOR.env.needsNbspFiller&&!b.getFirst(t)&&b.append(d.document.createText(" ")),b.append(j);b.insertAfter(i)}f&&e.fire("contentDomInvalidated");return!0}for(var n=this,o=this.database,k=this.context,l=e.getSelection(),l=(l&&l.getRanges()).createIterator(),d;d=l.getNextRange();){for(var b=d.getCommonAncestor();b&&!(b.type==CKEDITOR.NODE_ELEMENT&&k[b.getName()]);)b=
-b.getParent();b||(b=d.startPath().contains(k))&&d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);if(!b){var c=d.getEnclosedNode();c&&(c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in k)&&(d.setStartAt(c,CKEDITOR.POSITION_AFTER_START),d.setEndAt(c,CKEDITOR.POSITION_BEFORE_END),b=c)}b&&(d.startContainer.type==CKEDITOR.NODE_ELEMENT&&d.startContainer.getName()in k)&&(c=new CKEDITOR.dom.walker(d),c.evaluator=i,d.startContainer=c.next());b&&(d.endContainer.type==CKEDITOR.NODE_ELEMENT&&d.endContainer.getName()in k)&&
-(c=new CKEDITOR.dom.walker(d),c.evaluator=i,d.endContainer=c.previous());if(b)return g(b)}return 0}function p(e,g){g||(g=e.contains(this.context));return g&&e.block&&e.block.equals(g.getFirst(i))}function i(e){return e.type==CKEDITOR.NODE_ELEMENT&&e.is("li")}function t(e){return u(e)&&v(e)}var u=CKEDITOR.dom.walker.whitespaces(!0),v=CKEDITOR.dom.walker.bookmark(!1,!0),q=CKEDITOR.TRISTATE_DISABLED,r=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(e){function g(e,
-g){i.specificDefinition.apply(this,arguments);this.requiredContent=["ul","ol"];e.on("key",function(g){if("wysiwyg"==e.mode&&g.data.keyCode==this.indentKey){var d=this.getContext(e.elementPath());if(d&&(!this.isIndent||!p.call(this,e.elementPath(),d)))e.execCommand(this.relatedGlobal),g.cancel()}},this);this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(e,d){var b=this.getContext(d),c=p.call(this,d,b);return!b||!this.isIndent||c?q:r}:function(e,d){return!this.getContext(d)||this.isIndent?
-q:r},exec:CKEDITOR.tools.bind(s,this)}}var i=CKEDITOR.plugins.indent;i.registerCommands(e,{indentlist:new g(e,"indentlist",!0),outdentlist:new g(e,"outdentlist")});CKEDITOR.tools.extend(g.prototype,i.specificDefinition.prototype,{context:{ol:1,ul:1}})}})})();CKEDITOR.plugins.add("smiley",{requires:"dialog",init:function(a){a.config.smiley_path=a.config.smiley_path||this.path+"images/";a.addCommand("smiley",new CKEDITOR.dialogCommand("smiley",{allowedContent:"img[alt,height,!src,title,width]",requiredContent:"img"}));a.ui.addButton&&a.ui.addButton("Smiley",{label:a.lang.smiley.toolbar,command:"smiley",toolbar:"insert,50"});CKEDITOR.dialog.add("smiley",this.path+"dialogs/smiley.js")}});CKEDITOR.config.smiley_images="regular_smile.png sad_smile.png wink_smile.png teeth_smile.png confused_smile.png tongue_smile.png embarrassed_smile.png omg_smile.png whatchutalkingabout_smile.png angry_smile.png angel_smile.png shades_smile.png devil_smile.png cry_smile.png lightbulb.png thumbs_down.png thumbs_up.png heart.png broken_heart.png kiss.png envelope.png".split(" ");
-CKEDITOR.config.smiley_descriptions="smiley;sad;wink;laugh;frown;cheeky;blush;surprise;indecision;angry;angel;cool;devil;crying;enlightened;no;yes;heart;broken heart;kiss;mail".split(";");(function(){function l(a,c){var c=void 0===c||c,b;if(c)b=a.getComputedStyle("text-align");else{for(;!a.hasAttribute||!a.hasAttribute("align")&&!a.getStyle("text-align");){b=a.getParent();if(!b)break;a=b}b=a.getStyle("text-align")||a.getAttribute("align")||""}b&&(b=b.replace(/(?:-(?:moz|webkit)-)?(?:start|auto)/i,""));!b&&c&&(b="rtl"==a.getComputedStyle("direction")?"right":"left");return b}function g(a,c,b){this.editor=a;this.name=c;this.value=b;this.context="p";var c=a.config.justifyClasses,h=a.config.enterMode==
-CKEDITOR.ENTER_P?"p":"div";if(c){switch(b){case "left":this.cssClassName=c[0];break;case "center":this.cssClassName=c[1];break;case "right":this.cssClassName=c[2];break;case "justify":this.cssClassName=c[3]}this.cssClassRegex=RegExp("(?:^|\\s+)(?:"+c.join("|")+")(?=$|\\s)");this.requiredContent=h+"("+this.cssClassName+")"}else this.requiredContent=h+"{text-align}";this.allowedContent={"caption div h1 h2 h3 h4 h5 h6 p pre td th li":{propertiesOnly:!0,styles:this.cssClassName?null:"text-align",classes:this.cssClassName||
-null}};a.config.enterMode==CKEDITOR.ENTER_BR&&(this.allowedContent.div=!0)}function j(a){var c=a.editor,b=c.createRange();b.setStartBefore(a.data.node);b.setEndAfter(a.data.node);for(var h=new CKEDITOR.dom.walker(b),d;d=h.next();)if(d.type==CKEDITOR.NODE_ELEMENT)if(!d.equals(a.data.node)&&d.getDirection())b.setStartAfter(d),h=new CKEDITOR.dom.walker(b);else{var e=c.config.justifyClasses;e&&(d.hasClass(e[0])?(d.removeClass(e[0]),d.addClass(e[2])):d.hasClass(e[2])&&(d.removeClass(e[2]),d.addClass(e[0])));
-e=d.getStyle("text-align");"left"==e?d.setStyle("text-align","right"):"right"==e&&d.setStyle("text-align","left")}}g.prototype={exec:function(a){var c=a.getSelection(),b=a.config.enterMode;if(c){for(var h=c.createBookmarks(),d=c.getRanges(),e=this.cssClassName,g,f,i=a.config.useComputedState,i=void 0===i||i,k=d.length-1;0<=k;k--){g=d[k].createIterator();for(g.enlargeBr=b!=CKEDITOR.ENTER_BR;f=g.getNextParagraph(b==CKEDITOR.ENTER_P?"p":"div");)if(!f.isReadOnly()){f.removeAttribute("align");f.removeStyle("text-align");
-var j=e&&(f.$.className=CKEDITOR.tools.ltrim(f.$.className.replace(this.cssClassRegex,""))),m=this.state==CKEDITOR.TRISTATE_OFF&&(!i||l(f,!0)!=this.value);e?m?f.addClass(e):j||f.removeAttribute("class"):m&&f.setStyle("text-align",this.value)}}a.focus();a.forceNextSelectionCheck();c.selectBookmarks(h)}},refresh:function(a,c){var b=c.block||c.blockLimit;this.setState("body"!=b.getName()&&l(b,this.editor.config.useComputedState)==this.value?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)}};CKEDITOR.plugins.add("justify",
-{init:function(a){if(!a.blockless){var c=new g(a,"justifyleft","left"),b=new g(a,"justifycenter","center"),h=new g(a,"justifyright","right"),d=new g(a,"justifyblock","justify");a.addCommand("justifyleft",c);a.addCommand("justifycenter",b);a.addCommand("justifyright",h);a.addCommand("justifyblock",d);a.ui.addButton&&(a.ui.addButton("JustifyLeft",{label:a.lang.justify.left,command:"justifyleft",toolbar:"align,10"}),a.ui.addButton("JustifyCenter",{label:a.lang.justify.center,command:"justifycenter",
-toolbar:"align,20"}),a.ui.addButton("JustifyRight",{label:a.lang.justify.right,command:"justifyright",toolbar:"align,30"}),a.ui.addButton("JustifyBlock",{label:a.lang.justify.block,command:"justifyblock",toolbar:"align,40"}));a.on("dirChanged",j)}}})})();CKEDITOR.plugins.add("menubutton",{requires:"button,menu",onLoad:function(){var d=function(c){var a=this._,b=a.menu;a.state!==CKEDITOR.TRISTATE_DISABLED&&(a.on&&b?b.hide():(a.previousState=a.state,b||(b=a.menu=new CKEDITOR.menu(c,{panel:{className:"cke_menu_panel",attributes:{"aria-label":c.lang.common.options}}}),b.onHide=CKEDITOR.tools.bind(function(){var b=this.command?c.getCommand(this.command).modes:this.modes;this.setState(!b||b[c.mode]?a.previousState:CKEDITOR.TRISTATE_DISABLED);a.on=0},this),
-this.onMenu&&b.addListener(this.onMenu)),this.setState(CKEDITOR.TRISTATE_ON),a.on=1,setTimeout(function(){b.show(CKEDITOR.document.getById(a.id),4)},0)))};CKEDITOR.ui.menuButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(c){delete c.panel;this.base(c);this.hasArrow=!0;this.click=d},statics:{handler:{create:function(c){return new CKEDITOR.ui.menuButton(c)}}}})},beforeInit:function(d){d.ui.addHandler(CKEDITOR.UI_MENUBUTTON,CKEDITOR.ui.menuButton.handler)}});
-CKEDITOR.UI_MENUBUTTON="menubutton";(function(){CKEDITOR.plugins.add("language",{requires:"menubutton",init:function(a){var b=a.config.language_list||["ar:Arabic:rtl","fr:French","es:Spanish"],c=this,d=a.lang.language,e={},g,h,i,f;a.addCommand("language",{allowedContent:"span[!lang,!dir]",requiredContent:"span[lang,dir]",contextSensitive:!0,exec:function(a,b){var c=e["language_"+b];if(c)a[c.style.checkActive(a.elementPath(),a)?"removeStyle":"applyStyle"](c.style)},refresh:function(a){this.setState(c.getCurrentLangElement(a)?CKEDITOR.TRISTATE_ON:
-CKEDITOR.TRISTATE_OFF)}});for(f=0;f<b.length;f++)g=b[f].split(":"),h=g[0],i="language_"+h,e[i]={label:g[1],langId:h,group:"language",order:f,ltr:"rtl"!=(""+g[2]).toLowerCase(),onClick:function(){a.execCommand("language",this.langId)},role:"menuitemcheckbox"},e[i].style=new CKEDITOR.style({element:"span",attributes:{lang:h,dir:e[i].ltr?"ltr":"rtl"}});e.language_remove={label:d.remove,group:"language_remove",state:CKEDITOR.TRISTATE_DISABLED,order:e.length,onClick:function(){var b=c.getCurrentLangElement(a);
-b&&a.execCommand("language",b.getAttribute("lang"))}};a.addMenuGroup("language",1);a.addMenuGroup("language_remove");a.addMenuItems(e);a.ui.add("Language",CKEDITOR.UI_MENUBUTTON,{label:d.button,allowedContent:"span[!lang,!dir]",requiredContent:"span[lang,dir]",toolbar:"bidi,30",command:"language",onMenu:function(){var b={},d=c.getCurrentLangElement(a),f;for(f in e)b[f]=CKEDITOR.TRISTATE_OFF;b.language_remove=d?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;d&&(b["language_"+d.getAttribute("lang")]=
-CKEDITOR.TRISTATE_ON);return b}})},getCurrentLangElement:function(a){var b=a.elementPath(),a=b&&b.elements,c;if(b)for(var d=0;d<a.length;d++)b=a[d],!c&&("span"==b.getName()&&b.hasAttribute("dir")&&b.hasAttribute("lang"))&&(c=b);return c}})})();(function(){function m(c){return c.replace(/'/g,"\\$&")}function n(c){for(var b,a=c.length,f=[],e=0;e<a;e++)b=c.charCodeAt(e),f.push(b);return"String.fromCharCode("+f.join(",")+")"}function o(c,b){var a=c.plugins.link,f=a.compiledProtectionFunction.params,e,d;d=[a.compiledProtectionFunction.name,"("];for(var g=0;g<f.length;g++)a=f[g].toLowerCase(),e=b[a],0<g&&d.push(","),d.push("'",e?m(encodeURIComponent(b[a])):"","'");d.push(")");return d.join("")}function l(c){var c=c.config.emailProtection||"",
-b;c&&"encode"!=c&&(b={},c.replace(/^([^(]+)\(([^)]+)\)$/,function(a,c,e){b.name=c;b.params=[];e.replace(/[^,\s]+/g,function(a){b.params.push(a)})}));return b}CKEDITOR.plugins.add("link",{requires:"dialog,fakeobjects",onLoad:function(){function c(b){return a.replace(/%1/g,"rtl"==b?"right":"left").replace(/%2/g,"cke_contents_"+b)}var b="background:url("+CKEDITOR.getUrl(this.path+"images"+(CKEDITOR.env.hidpi?"/hidpi":"")+"/anchor.png")+") no-repeat %1 center;border:1px dotted #00f;background-size:16px;",
-a=".%2 a.cke_anchor,.%2 a.cke_anchor_empty,.cke_editable.%2 a[name],.cke_editable.%2 a[data-cke-saved-name]{"+b+"padding-%1:18px;cursor:auto;}.%2 img.cke_anchor{"+b+"width:16px;min-height:15px;height:1.15em;vertical-align:text-bottom;}";CKEDITOR.addCss(c("ltr")+c("rtl"))},init:function(c){var b="a[!href]";CKEDITOR.dialog.isTabEnabled(c,"link","advanced")&&(b=b.replace("]",",accesskey,charset,dir,id,lang,name,rel,tabindex,title,type]{*}(*)"));CKEDITOR.dialog.isTabEnabled(c,"link","target")&&(b=b.replace("]",
-",target,onclick]"));c.addCommand("link",new CKEDITOR.dialogCommand("link",{allowedContent:b,requiredContent:"a[href]"}));c.addCommand("anchor",new CKEDITOR.dialogCommand("anchor",{allowedContent:"a[!name,id]",requiredContent:"a[name]"}));c.addCommand("unlink",new CKEDITOR.unlinkCommand);c.addCommand("removeAnchor",new CKEDITOR.removeAnchorCommand);c.setKeystroke(CKEDITOR.CTRL+76,"link");c.ui.addButton&&(c.ui.addButton("Link",{label:c.lang.link.toolbar,command:"link",toolbar:"links,10"}),c.ui.addButton("Unlink",
-{label:c.lang.link.unlink,command:"unlink",toolbar:"links,20"}),c.ui.addButton("Anchor",{label:c.lang.link.anchor.toolbar,command:"anchor",toolbar:"links,30"}));CKEDITOR.dialog.add("link",this.path+"dialogs/link.js");CKEDITOR.dialog.add("anchor",this.path+"dialogs/anchor.js");c.on("doubleclick",function(a){var b=CKEDITOR.plugins.link.getSelectedLink(c)||a.data.element;if(!b.isReadOnly())if(b.is("a")){a.data.dialog=b.getAttribute("name")&&(!b.getAttribute("href")||!b.getChildCount())?"anchor":"link";
-a.data.link=b}else if(CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b))a.data.dialog="anchor"},null,null,0);c.on("doubleclick",function(a){a.data.dialog in{link:1,anchor:1}&&a.data.link&&c.getSelection().selectElement(a.data.link)},null,null,20);c.addMenuItems&&c.addMenuItems({anchor:{label:c.lang.link.anchor.menu,command:"anchor",group:"anchor",order:1},removeAnchor:{label:c.lang.link.anchor.remove,command:"removeAnchor",group:"anchor",order:5},link:{label:c.lang.link.menu,command:"link",group:"link",
-order:1},unlink:{label:c.lang.link.unlink,command:"unlink",group:"link",order:5}});c.contextMenu&&c.contextMenu.addListener(function(a){if(!a||a.isReadOnly())return null;a=CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,a);if(!a&&!(a=CKEDITOR.plugins.link.getSelectedLink(c)))return null;var b={};a.getAttribute("href")&&a.getChildCount()&&(b={link:CKEDITOR.TRISTATE_OFF,unlink:CKEDITOR.TRISTATE_OFF});if(a&&a.hasAttribute("name"))b.anchor=b.removeAnchor=CKEDITOR.TRISTATE_OFF;return b});this.compiledProtectionFunction=
-l(c)},afterInit:function(c){c.dataProcessor.dataFilter.addRules({elements:{a:function(a){return!a.attributes.name?null:!a.children.length?c.createFakeParserElement(a,"cke_anchor","anchor"):null}}});var b=c._.elementsPath&&c._.elementsPath.filters;b&&b.push(function(a,b){if("a"==b&&(CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,a)||a.getAttribute("name")&&(!a.getAttribute("href")||!a.getChildCount())))return"anchor"})}});var p=/^javascript:/,q=/^mailto:([^?]+)(?:\?(.+))?$/,r=/subject=([^;?:@&=$,\/]*)/,
-s=/body=([^;?:@&=$,\/]*)/,t=/^#(.*)$/,u=/^((?:http|https|ftp|news):\/\/)?(.*)$/,v=/^(_(?:self|top|parent|blank))$/,w=/^javascript:void\(location\.href='mailto:'\+String\.fromCharCode\(([^)]+)\)(?:\+'(.*)')?\)$/,x=/^javascript:([^(]+)\(([^)]+)\)$/,y=/\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*/,z=/(?:^|,)([^=]+)=(\d+|yes|no)/gi,j={id:"advId",dir:"advLangDir",accessKey:"advAccessKey",name:"advName",lang:"advLangCode",tabindex:"advTabIndex",title:"advTitle",
-type:"advContentType","class":"advCSSClasses",charset:"advCharset",style:"advStyles",rel:"advRel"};CKEDITOR.plugins.link={getSelectedLink:function(c){var b=c.getSelection(),a=b.getSelectedElement();return a&&a.is("a")?a:(b=b.getRanges()[0])?(b.shrink(CKEDITOR.SHRINK_TEXT),c.elementPath(b.getCommonAncestor()).contains("a",1)):null},getEditorAnchors:function(c){for(var b=c.editable(),a=b.isInline()&&!c.plugins.divarea?c.document:b,b=a.getElementsByTag("a"),a=a.getElementsByTag("img"),f=[],e=0,d;d=b.getItem(e++);)if(d.data("cke-saved-name")||
-d.hasAttribute("name"))f.push({name:d.data("cke-saved-name")||d.getAttribute("name"),id:d.getAttribute("id")});for(e=0;d=a.getItem(e++);)(d=this.tryRestoreFakeAnchor(c,d))&&f.push({name:d.getAttribute("name"),id:d.getAttribute("id")});return f},fakeAnchor:!0,tryRestoreFakeAnchor:function(c,b){if(b&&b.data("cke-real-element-type")&&"anchor"==b.data("cke-real-element-type")){var a=c.restoreRealElement(b);if(a.data("cke-saved-name"))return a}},parseLinkAttributes:function(c,b){var a=b&&(b.data("cke-saved-href")||
-b.getAttribute("href"))||"",f=c.plugins.link.compiledProtectionFunction,e=c.config.emailProtection,d,g={};a.match(p)&&("encode"==e?a=a.replace(w,function(a,b,c){return"mailto:"+String.fromCharCode.apply(String,b.split(","))+(c&&c.replace(/\\'/g,"'"))}):e&&a.replace(x,function(a,b,c){if(b==f.name){g.type="email";for(var a=g.email={},b=/(^')|('$)/g,c=c.match(/[^,\s]+/g),d=c.length,e,h,i=0;i<d;i++)e=decodeURIComponent,h=c[i].replace(b,"").replace(/\\'/g,"'"),h=e(h),e=f.params[i].toLowerCase(),a[e]=h;
-a.address=[a.name,a.domain].join("@")}}));if(!g.type)if(e=a.match(t))g.type="anchor",g.anchor={},g.anchor.name=g.anchor.id=e[1];else if(e=a.match(q)){d=a.match(r);a=a.match(s);g.type="email";var i=g.email={};i.address=e[1];d&&(i.subject=decodeURIComponent(d[1]));a&&(i.body=decodeURIComponent(a[1]))}else if(a&&(d=a.match(u)))g.type="url",g.url={},g.url.protocol=d[1],g.url.url=d[2];if(b){if(a=b.getAttribute("target"))g.target={type:a.match(v)?a:"frame",name:a};else if(a=(a=b.data("cke-pa-onclick")||
-b.getAttribute("onclick"))&&a.match(y))for(g.target={type:"popup",name:a[1]};e=z.exec(a[2]);)("yes"==e[2]||"1"==e[2])&&!(e[1]in{height:1,width:1,top:1,left:1})?g.target[e[1]]=!0:isFinite(e[2])&&(g.target[e[1]]=e[2]);var a={},h;for(h in j)(e=b.getAttribute(h))&&(a[j[h]]=e);if(h=b.data("cke-saved-name")||a.advName)a.advName=h;CKEDITOR.tools.isEmpty(a)||(g.advanced=a)}return g},getLinkAttributes:function(c,b){var a=c.config.emailProtection||"",f={};switch(b.type){case "url":var a=b.url&&void 0!=b.url.protocol?
-b.url.protocol:"http://",e=b.url&&CKEDITOR.tools.trim(b.url.url)||"";f["data-cke-saved-href"]=0===e.indexOf("/")?e:a+e;break;case "anchor":a=b.anchor&&b.anchor.id;f["data-cke-saved-href"]="#"+(b.anchor&&b.anchor.name||a||"");break;case "email":var d=b.email,e=d.address;switch(a){case "":case "encode":var g=encodeURIComponent(d.subject||""),i=encodeURIComponent(d.body||""),d=[];g&&d.push("subject="+g);i&&d.push("body="+i);d=d.length?"?"+d.join("&"):"";"encode"==a?(a=["javascript:void(location.href='mailto:'+",
-n(e)],d&&a.push("+'",m(d),"'"),a.push(")")):a=["mailto:",e,d];break;default:a=e.split("@",2),d.name=a[0],d.domain=a[1],a=["javascript:",o(c,d)]}f["data-cke-saved-href"]=a.join("")}if(b.target)if("popup"==b.target.type){for(var a=["window.open(this.href, '",b.target.name||"","', '"],h="resizable status location toolbar menubar fullscreen scrollbars dependent".split(" "),e=h.length,g=function(a){b.target[a]&&h.push(a+"="+b.target[a])},d=0;d<e;d++)h[d]+=b.target[h[d]]?"=yes":"=no";g("width");g("left");
-g("height");g("top");a.push(h.join(","),"'); return false;");f["data-cke-pa-onclick"]=a.join("")}else"notSet"!=b.target.type&&b.target.name&&(f.target=b.target.name);if(b.advanced){for(var k in j)(a=b.advanced[j[k]])&&(f[k]=a);f.name&&(f["data-cke-saved-name"]=f.name)}f["data-cke-saved-href"]&&(f.href=f["data-cke-saved-href"]);k=CKEDITOR.tools.extend({target:1,onclick:1,"data-cke-pa-onclick":1,"data-cke-saved-name":1},j);for(var l in f)delete k[l];return{set:f,removed:CKEDITOR.tools.objectKeys(k)}}};
-CKEDITOR.unlinkCommand=function(){};CKEDITOR.unlinkCommand.prototype={exec:function(c){var b=new CKEDITOR.style({element:"a",type:CKEDITOR.STYLE_INLINE,alwaysRemoveElement:1});c.removeStyle(b)},refresh:function(c,b){var a=b.lastElement&&b.lastElement.getAscendant("a",!0);a&&"a"==a.getName()&&a.getAttribute("href")&&a.getChildCount()?this.setState(CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_DISABLED)},contextSensitive:1,startDisabled:1,requiredContent:"a[href]"};CKEDITOR.removeAnchorCommand=
-function(){};CKEDITOR.removeAnchorCommand.prototype={exec:function(c){var b=c.getSelection(),a=b.createBookmarks(),f;if(b&&(f=b.getSelectedElement())&&(!f.getChildCount()?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,f):f.is("a")))f.remove(1);else if(f=CKEDITOR.plugins.link.getSelectedLink(c))f.hasAttribute("href")?(f.removeAttributes({name:1,"data-cke-saved-name":1}),f.removeClass("cke_anchor")):f.remove(1);b.selectBookmarks(a)},requiredContent:"a[name]"};CKEDITOR.tools.extend(CKEDITOR.config,{linkShowAdvancedTab:!0,
-linkShowTargetTab:!0})})();(function(){function E(c,j,e){function b(b){if((d=a[b?"getFirst":"getLast"]())&&(!d.is||!d.isBlockBoundary())&&(m=j.root[b?"getPrevious":"getNext"](CKEDITOR.dom.walker.invisible(!0)))&&(!m.is||!m.isBlockBoundary({br:1})))c.document.createElement("br")[b?"insertBefore":"insertAfter"](d)}for(var k=CKEDITOR.plugins.list.listToArray(j.root,e),g=[],h=0;h<j.contents.length;h++){var f=j.contents[h];if((f=f.getAscendant("li",!0))&&!f.getCustomData("list_item_processed"))g.push(f),CKEDITOR.dom.element.setMarker(e,
-f,"list_item_processed",!0)}f=null;for(h=0;h<g.length;h++)f=g[h].getCustomData("listarray_index"),k[f].indent=-1;for(h=f+1;h<k.length;h++)if(k[h].indent>k[h-1].indent+1){g=k[h-1].indent+1-k[h].indent;for(f=k[h].indent;k[h]&&k[h].indent>=f;)k[h].indent+=g,h++;h--}var a=CKEDITOR.plugins.list.arrayToList(k,e,null,c.config.enterMode,j.root.getAttribute("dir")).listNode,d,m;b(!0);b();a.replace(j.root);c.fire("contentDomInvalidated")}function x(c,j){this.name=c;this.context=this.type=j;this.allowedContent=
-j+" li";this.requiredContent=j}function A(c,j,e,b){for(var k,g;k=c[b?"getLast":"getFirst"](F);)(g=k.getDirection(1))!==j.getDirection(1)&&k.setAttribute("dir",g),k.remove(),e?k[b?"insertBefore":"insertAfter"](e):j.append(k,b)}function B(c){var j;(j=function(e){var b=c[e?"getPrevious":"getNext"](q);b&&(b.type==CKEDITOR.NODE_ELEMENT&&b.is(c.getName()))&&(A(c,b,null,!e),c.remove(),c=b)})();j(1)}function C(c){return c.type==CKEDITOR.NODE_ELEMENT&&(c.getName()in CKEDITOR.dtd.$block||c.getName()in CKEDITOR.dtd.$listItem)&&
-CKEDITOR.dtd[c.getName()]["#"]}function y(c,j,e){c.fire("saveSnapshot");e.enlarge(CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS);var b=e.extractContents();j.trim(!1,!0);var k=j.createBookmark(),g=new CKEDITOR.dom.elementPath(j.startContainer),h=g.block,g=g.lastElement.getAscendant("li",1)||h,f=new CKEDITOR.dom.elementPath(e.startContainer),a=f.contains(CKEDITOR.dtd.$listItem),f=f.contains(CKEDITOR.dtd.$list);h?(h=h.getBogus())&&h.remove():f&&(h=f.getPrevious(q))&&v(h)&&h.remove();(h=b.getLast())&&(h.type==
-CKEDITOR.NODE_ELEMENT&&h.is("br"))&&h.remove();(h=j.startContainer.getChild(j.startOffset))?b.insertBefore(h):j.startContainer.append(b);if(a&&(b=w(a)))g.contains(a)?(A(b,a.getParent(),a),b.remove()):g.append(b);for(;e.checkStartOfBlock()&&e.checkEndOfBlock();){f=e.startPath();b=f.block;if(!b)break;b.is("li")&&(g=b.getParent(),b.equals(g.getLast(q))&&b.equals(g.getFirst(q))&&(b=g));e.moveToPosition(b,CKEDITOR.POSITION_BEFORE_START);b.remove()}e=e.clone();b=c.editable();e.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);
-e=new CKEDITOR.dom.walker(e);e.evaluator=function(a){return q(a)&&!v(a)};(e=e.next())&&(e.type==CKEDITOR.NODE_ELEMENT&&e.getName()in CKEDITOR.dtd.$list)&&B(e);j.moveToBookmark(k);j.select();c.fire("saveSnapshot")}function w(c){return(c=c.getLast(q))&&c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in r?c:null}var r={ol:1,ul:1},G=CKEDITOR.dom.walker.whitespaces(),D=CKEDITOR.dom.walker.bookmark(),q=function(c){return!(G(c)||D(c))},v=CKEDITOR.dom.walker.bogus();CKEDITOR.plugins.list={listToArray:function(c,
-j,e,b,k){if(!r[c.getName()])return[];b||(b=0);e||(e=[]);for(var g=0,h=c.getChildCount();g<h;g++){var f=c.getChild(g);f.type==CKEDITOR.NODE_ELEMENT&&f.getName()in CKEDITOR.dtd.$list&&CKEDITOR.plugins.list.listToArray(f,j,e,b+1);if("li"==f.$.nodeName.toLowerCase()){var a={parent:c,indent:b,element:f,contents:[]};k?a.grandparent=k:(a.grandparent=c.getParent(),a.grandparent&&"li"==a.grandparent.$.nodeName.toLowerCase()&&(a.grandparent=a.grandparent.getParent()));j&&CKEDITOR.dom.element.setMarker(j,f,
-"listarray_index",e.length);e.push(a);for(var d=0,m=f.getChildCount(),i;d<m;d++)i=f.getChild(d),i.type==CKEDITOR.NODE_ELEMENT&&r[i.getName()]?CKEDITOR.plugins.list.listToArray(i,j,e,b+1,a.grandparent):a.contents.push(i)}}return e},arrayToList:function(c,j,e,b,k){e||(e=0);if(!c||c.length<e+1)return null;for(var g,h=c[e].parent.getDocument(),f=new CKEDITOR.dom.documentFragment(h),a=null,d=e,m=Math.max(c[e].indent,0),i=null,n,l,p=b==CKEDITOR.ENTER_P?"p":"div";;){var o=c[d];g=o.grandparent;n=o.element.getDirection(1);
-if(o.indent==m){if(!a||c[d].parent.getName()!=a.getName())a=c[d].parent.clone(!1,1),k&&a.setAttribute("dir",k),f.append(a);i=a.append(o.element.clone(0,1));n!=a.getDirection(1)&&i.setAttribute("dir",n);for(g=0;g<o.contents.length;g++)i.append(o.contents[g].clone(1,1));d++}else if(o.indent==Math.max(m,0)+1)o=c[d-1].element.getDirection(1),d=CKEDITOR.plugins.list.arrayToList(c,null,d,b,o!=n?n:null),!i.getChildCount()&&(CKEDITOR.env.needsNbspFiller&&!(7<h.$.documentMode))&&i.append(h.createText(" ")),
-i.append(d.listNode),d=d.nextIndex;else if(-1==o.indent&&!e&&g){r[g.getName()]?(i=o.element.clone(!1,!0),n!=g.getDirection(1)&&i.setAttribute("dir",n)):i=new CKEDITOR.dom.documentFragment(h);var a=g.getDirection(1)!=n,u=o.element,z=u.getAttribute("class"),v=u.getAttribute("style"),w=i.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(b!=CKEDITOR.ENTER_BR||a||v||z),s,x=o.contents.length,t;for(g=0;g<x;g++)if(s=o.contents[g],D(s)&&1<x)w?t=s.clone(1,1):i.append(s.clone(1,1));else if(s.type==CKEDITOR.NODE_ELEMENT&&
-s.isBlockBoundary()){a&&!s.getDirection()&&s.setAttribute("dir",n);l=s;var y=u.getAttribute("style");y&&l.setAttribute("style",y.replace(/([^;])$/,"$1;")+(l.getAttribute("style")||""));z&&s.addClass(z);l=null;t&&(i.append(t),t=null);i.append(s.clone(1,1))}else w?(l||(l=h.createElement(p),i.append(l),a&&l.setAttribute("dir",n)),v&&l.setAttribute("style",v),z&&l.setAttribute("class",z),t&&(l.append(t),t=null),l.append(s.clone(1,1))):i.append(s.clone(1,1));t&&((l||i).append(t),t=null);i.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&
-d!=c.length-1&&(CKEDITOR.env.needsBrFiller&&(n=i.getLast())&&(n.type==CKEDITOR.NODE_ELEMENT&&n.is("br"))&&n.remove(),n=i.getLast(q),(!n||!(n.type==CKEDITOR.NODE_ELEMENT&&n.is(CKEDITOR.dtd.$block)))&&i.append(h.createElement("br")));n=i.$.nodeName.toLowerCase();("div"==n||"p"==n)&&i.appendBogus();f.append(i);a=null;d++}else return null;l=null;if(c.length<=d||Math.max(c[d].indent,0)<m)break}if(j)for(c=f.getFirst();c;){if(c.type==CKEDITOR.NODE_ELEMENT&&(CKEDITOR.dom.element.clearMarkers(j,c),c.getName()in
-CKEDITOR.dtd.$listItem&&(e=c,h=k=b=void 0,b=e.getDirection()))){for(k=e.getParent();k&&!(h=k.getDirection());)k=k.getParent();b==h&&e.removeAttribute("dir")}c=c.getNextSourceNode()}return{listNode:f,nextIndex:d}}};var H=/^h[1-6]$/,F=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT);x.prototype={exec:function(c){this.refresh(c,c.elementPath());var j=c.config,e=c.getSelection(),b=e&&e.getRanges();if(this.state==CKEDITOR.TRISTATE_OFF){var k=c.editable();if(k.getFirst(q)){var g=1==b.length&&b[0];(j=
-g&&g.getEnclosedNode())&&(j.is&&this.type==j.getName())&&this.setState(CKEDITOR.TRISTATE_ON)}else j.enterMode==CKEDITOR.ENTER_BR?k.appendBogus():b[0].fixBlock(1,j.enterMode==CKEDITOR.ENTER_P?"p":"div"),e.selectRanges(b)}for(var j=e.createBookmarks(!0),k=[],h={},b=b.createIterator(),f=0;(g=b.getNextRange())&&++f;){var a=g.getBoundaryNodes(),d=a.startNode,m=a.endNode;d.type==CKEDITOR.NODE_ELEMENT&&"td"==d.getName()&&g.setStartAt(a.startNode,CKEDITOR.POSITION_AFTER_START);m.type==CKEDITOR.NODE_ELEMENT&&
-"td"==m.getName()&&g.setEndAt(a.endNode,CKEDITOR.POSITION_BEFORE_END);g=g.createIterator();for(g.forceBrBreak=this.state==CKEDITOR.TRISTATE_OFF;a=g.getNextParagraph();)if(!a.getCustomData("list_block")){CKEDITOR.dom.element.setMarker(h,a,"list_block",1);for(var i=c.elementPath(a),d=i.elements,m=0,i=i.blockLimit,n,l=d.length-1;0<=l&&(n=d[l]);l--)if(r[n.getName()]&&i.contains(n)){i.removeCustomData("list_group_object_"+f);(d=n.getCustomData("list_group_object"))?d.contents.push(a):(d={root:n,contents:[a]},
-k.push(d),CKEDITOR.dom.element.setMarker(h,n,"list_group_object",d));m=1;break}m||(m=i,m.getCustomData("list_group_object_"+f)?m.getCustomData("list_group_object_"+f).contents.push(a):(d={root:m,contents:[a]},CKEDITOR.dom.element.setMarker(h,m,"list_group_object_"+f,d),k.push(d)))}}for(n=[];0<k.length;)if(d=k.shift(),this.state==CKEDITOR.TRISTATE_OFF)if(r[d.root.getName()]){b=c;f=d;d=h;g=n;m=CKEDITOR.plugins.list.listToArray(f.root,d);i=[];for(a=0;a<f.contents.length;a++)if(l=f.contents[a],(l=l.getAscendant("li",
-!0))&&!l.getCustomData("list_item_processed"))i.push(l),CKEDITOR.dom.element.setMarker(d,l,"list_item_processed",!0);for(var l=f.root.getDocument(),p=void 0,o=void 0,a=0;a<i.length;a++){var u=i[a].getCustomData("listarray_index"),p=m[u].parent;p.is(this.type)||(o=l.createElement(this.type),p.copyAttributes(o,{start:1,type:1}),o.removeStyle("list-style-type"),m[u].parent=o)}d=CKEDITOR.plugins.list.arrayToList(m,d,null,b.config.enterMode);m=void 0;i=d.listNode.getChildCount();for(a=0;a<i&&(m=d.listNode.getChild(a));a++)m.getName()==
-this.type&&g.push(m);d.listNode.replace(f.root);b.fire("contentDomInvalidated")}else{m=c;a=d;g=n;i=a.contents;b=a.root.getDocument();f=[];1==i.length&&i[0].equals(a.root)&&(d=b.createElement("div"),i[0].moveChildren&&i[0].moveChildren(d),i[0].append(d),i[0]=d);a=a.contents[0].getParent();for(l=0;l<i.length;l++)a=a.getCommonAncestor(i[l].getParent());p=m.config.useComputedState;m=d=void 0;p=void 0===p||p;for(l=0;l<i.length;l++)for(o=i[l];u=o.getParent();){if(u.equals(a)){f.push(o);!m&&o.getDirection()&&
-(m=1);o=o.getDirection(p);null!==d&&(d=d&&d!=o?null:o);break}o=u}if(!(1>f.length)){i=f[f.length-1].getNext();l=b.createElement(this.type);g.push(l);for(p=g=void 0;f.length;)g=f.shift(),p=b.createElement("li"),g.is("pre")||H.test(g.getName())||"false"==g.getAttribute("contenteditable")?g.appendTo(p):(g.copyAttributes(p),d&&g.getDirection()&&(p.removeStyle("direction"),p.removeAttribute("dir")),g.moveChildren(p),g.remove()),p.appendTo(l);d&&m&&l.setAttribute("dir",d);i?l.insertBefore(i):l.appendTo(a)}}else this.state==
-CKEDITOR.TRISTATE_ON&&r[d.root.getName()]&&E.call(this,c,d,h);for(l=0;l<n.length;l++)B(n[l]);CKEDITOR.dom.element.clearAllMarkers(h);e.selectBookmarks(j);c.focus()},refresh:function(c,j){var e=j.contains(r,1),b=j.blockLimit||j.root;e&&b.contains(e)?this.setState(e.is(this.type)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_OFF)}};CKEDITOR.plugins.add("list",{requires:"indentlist",init:function(c){c.blockless||(c.addCommand("numberedlist",new x("numberedlist","ol")),c.addCommand("bulletedlist",
-new x("bulletedlist","ul")),c.ui.addButton&&(c.ui.addButton("NumberedList",{label:c.lang.list.numberedlist,command:"numberedlist",directional:!0,toolbar:"list,10"}),c.ui.addButton("BulletedList",{label:c.lang.list.bulletedlist,command:"bulletedlist",directional:!0,toolbar:"list,20"})),c.on("key",function(j){var e=j.data.domEvent.getKey();if(c.mode=="wysiwyg"&&e in{8:1,46:1}){var b=c.getSelection().getRanges()[0],k=b&&b.startPath();if(b&&b.collapsed){var g=e==8,h=c.editable(),f=new CKEDITOR.dom.walker(b.clone());
-f.evaluator=function(a){return q(a)&&!v(a)};f.guard=function(a,b){return!(b&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))};e=b.clone();if(g){var a,d;if((a=k.contains(r))&&b.checkBoundaryOfElement(a,CKEDITOR.START)&&(a=a.getParent())&&a.is("li")&&(a=w(a))){d=a;a=a.getPrevious(q);e.moveToPosition(a&&v(a)?a:d,CKEDITOR.POSITION_BEFORE_START)}else{f.range.setStartAt(h,CKEDITOR.POSITION_AFTER_START);f.range.setEnd(b.startContainer,b.startOffset);if((a=f.previous())&&a.type==CKEDITOR.NODE_ELEMENT&&(a.getName()in
-r||a.is("li"))){if(!a.is("li")){f.range.selectNodeContents(a);f.reset();f.evaluator=C;a=f.previous()}d=a;e.moveToElementEditEnd(d)}}if(d){y(c,e,b);j.cancel()}else if((e=k.contains(r))&&b.checkBoundaryOfElement(e,CKEDITOR.START)){d=e.getFirst(q);if(b.checkBoundaryOfElement(d,CKEDITOR.START)){a=e.getPrevious(q);if(w(d)){if(a){b.moveToElementEditEnd(a);b.select()}}else c.execCommand("outdent");j.cancel()}}}else if(d=k.contains("li")){f.range.setEndAt(h,CKEDITOR.POSITION_BEFORE_END);h=(k=d.getLast(q))&&
-C(k)?k:d;d=0;if((a=f.next())&&a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in r&&a.equals(k)){d=1;a=f.next()}else b.checkBoundaryOfElement(h,CKEDITOR.END)&&(d=1);if(d&&a){b=b.clone();b.moveToElementEditStart(a);y(c,e,b);j.cancel()}}else{f.range.setEndAt(h,CKEDITOR.POSITION_BEFORE_END);if((a=f.next())&&a.type==CKEDITOR.NODE_ELEMENT&&a.is(r)){a=a.getFirst(q);if(k.block&&b.checkStartOfBlock()&&b.checkEndOfBlock()){k.block.remove();b.moveToElementEditStart(a);b.select()}else if(w(a)){b.moveToElementEditStart(a);
-b.select()}else{b=b.clone();b.moveToElementEditStart(a);y(c,e,b)}j.cancel()}}setTimeout(function(){c.selectionChange(1)})}}}))}})})();(function(){CKEDITOR.plugins.liststyle={requires:"dialog,contextmenu",init:function(a){if(!a.blockless){var b;b=new CKEDITOR.dialogCommand("numberedListStyle",{requiredContent:"ol",allowedContent:"ol{list-style-type}[start]"});b=a.addCommand("numberedListStyle",b);a.addFeature(b);CKEDITOR.dialog.add("numberedListStyle",this.path+"dialogs/liststyle.js");b=new CKEDITOR.dialogCommand("bulletedListStyle",{requiredContent:"ul",allowedContent:"ul{list-style-type}"});b=a.addCommand("bulletedListStyle",b);
-a.addFeature(b);CKEDITOR.dialog.add("bulletedListStyle",this.path+"dialogs/liststyle.js");a.addMenuGroup("list",108);a.addMenuItems({numberedlist:{label:a.lang.liststyle.numberedTitle,group:"list",command:"numberedListStyle"},bulletedlist:{label:a.lang.liststyle.bulletedTitle,group:"list",command:"bulletedListStyle"}});a.contextMenu.addListener(function(a){if(!a||a.isReadOnly())return null;for(;a;){var b=a.getName();if("ol"==b)return{numberedlist:CKEDITOR.TRISTATE_OFF};if("ul"==b)return{bulletedlist:CKEDITOR.TRISTATE_OFF};
-a=a.getParent()}return null})}}};CKEDITOR.plugins.add("liststyle",CKEDITOR.plugins.liststyle)})();(function(){function Q(a,c,d){return m(c)&&m(d)&&d.equals(c.getNext(function(a){return!(z(a)||A(a)||p(a))}))}function u(a){this.upper=a[0];this.lower=a[1];this.set.apply(this,a.slice(2))}function J(a){var c=a.element;if(c&&m(c)&&(c=c.getAscendant(a.triggers,!0))&&a.editable.contains(c)){var d=K(c);if("true"==d.getAttribute("contenteditable"))return c;if(d.is(a.triggers))return d}return null}function ga(a,c,d){o(a,c);o(a,d);a=c.size.bottom;d=d.size.top;return a&&d?0|(a+d)/2:a||d}function r(a,c,d){return c=
-c[d?"getPrevious":"getNext"](function(b){return b&&b.type==CKEDITOR.NODE_TEXT&&!z(b)||m(b)&&!p(b)&&!v(a,b)})}function K(a,c){if(a.data("cke-editable"))return null;for(c||(a=a.getParent());a&&!a.data("cke-editable");){if(a.hasAttribute("contenteditable"))return a;a=a.getParent()}return null}function ha(a){var c=a.doc,d=B('<span contenteditable="false" style="'+L+"position:absolute;border-top:1px dashed "+a.boxColor+'"></span>',c),b=CKEDITOR.getUrl(this.path+"images/"+(n.hidpi?"hidpi/":"")+"icon"+(a.rtl?
-"-rtl":"")+".png");q(d,{attach:function(){this.wrap.getParent()||this.wrap.appendTo(a.editable,!0);return this},lineChildren:[q(B('<span title="'+a.editor.lang.magicline.title+'" contenteditable="false">&#8629;</span>',c),{base:L+"height:17px;width:17px;"+(a.rtl?"left":"right")+":17px;background:url("+b+") center no-repeat "+a.boxColor+";cursor:pointer;"+(n.hc?"font-size: 15px;line-height:14px;border:1px solid #fff;text-align:center;":"")+(n.hidpi?"background-size: 9px 10px;":""),looks:["top:-8px;"+
-CKEDITOR.tools.cssVendorPrefix("border-radius","2px",1),"top:-17px;"+CKEDITOR.tools.cssVendorPrefix("border-radius","2px 2px 0px 0px",1),"top:-1px;"+CKEDITOR.tools.cssVendorPrefix("border-radius","0px 0px 2px 2px",1)]}),q(B(R,c),{base:S+"left:0px;border-left-color:"+a.boxColor+";",looks:["border-width:8px 0 8px 8px;top:-8px","border-width:8px 0 0 8px;top:-8px","border-width:0 0 8px 8px;top:0px"]}),q(B(R,c),{base:S+"right:0px;border-right-color:"+a.boxColor+";",looks:["border-width:8px 8px 8px 0;top:-8px",
-"border-width:8px 8px 0 0;top:-8px","border-width:0 8px 8px 0;top:0px"]})],detach:function(){this.wrap.getParent()&&this.wrap.remove();return this},mouseNear:function(){o(a,this);var b=a.holdDistance,c=this.size;return c&&a.mouse.y>c.top-b&&a.mouse.y<c.bottom+b&&a.mouse.x>c.left-b&&a.mouse.x<c.right+b?!0:!1},place:function(){var b=a.view,c=a.editable,d=a.trigger,i=d.upper,h=d.lower,j=i||h,l=j.getParent(),k={};this.trigger=d;i&&o(a,i,!0);h&&o(a,h,!0);o(a,l,!0);a.inInlineMode&&C(a,!0);l.equals(c)?(k.left=
-b.scroll.x,k.right=-b.scroll.x,k.width=""):(k.left=j.size.left-j.size.margin.left+b.scroll.x-(a.inInlineMode?b.editable.left+b.editable.border.left:0),k.width=j.size.outerWidth+j.size.margin.left+j.size.margin.right+b.scroll.x,k.right="");i&&h?k.top=i.size.margin.bottom===h.size.margin.top?0|i.size.bottom+i.size.margin.bottom/2:i.size.margin.bottom<h.size.margin.top?i.size.bottom+i.size.margin.bottom:i.size.bottom+i.size.margin.bottom-h.size.margin.top:i?h||(k.top=i.size.bottom+i.size.margin.bottom):
-k.top=h.size.top-h.size.margin.top;d.is(x)||k.top>b.scroll.y-15&&k.top<b.scroll.y+5?(k.top=a.inInlineMode?0:b.scroll.y,this.look(x)):d.is(y)||k.top>b.pane.bottom-5&&k.top<b.pane.bottom+15?(k.top=a.inInlineMode?b.editable.height+b.editable.padding.top+b.editable.padding.bottom:b.pane.bottom-1,this.look(y)):(a.inInlineMode&&(k.top-=b.editable.top+b.editable.border.top),this.look(s));a.inInlineMode&&(k.top--,k.top+=b.editable.scroll.top,k.left+=b.editable.scroll.left);for(var T in k)k[T]=CKEDITOR.tools.cssLength(k[T]);
-this.setStyles(k)},look:function(a){if(this.oldLook!=a){for(var b=this.lineChildren.length,c;b--;)(c=this.lineChildren[b]).setAttribute("style",c.base+c.looks[0|a/2]);this.oldLook=a}},wrap:new M("span",a.doc)});for(c=d.lineChildren.length;c--;)d.lineChildren[c].appendTo(d);d.look(s);d.appendTo(d.wrap);d.unselectable();d.lineChildren[0].on("mouseup",function(b){d.detach();N(a,function(b){var c=a.line.trigger;b[c.is(D)?"insertBefore":"insertAfter"](c.is(D)?c.lower:c.upper)},!0);a.editor.focus();!n.ie&&
-a.enterMode!=CKEDITOR.ENTER_BR&&a.hotNode.scrollIntoView();b.data.preventDefault(!0)});d.on("mousedown",function(a){a.data.preventDefault(!0)});a.line=d}function N(a,c,d){var b=new CKEDITOR.dom.range(a.doc),e=a.editor,f;n.ie&&a.enterMode==CKEDITOR.ENTER_BR?f=a.doc.createText(E):(f=(f=K(a.element,!0))&&f.data("cke-enter-mode")||a.enterMode,f=new M(F[f],a.doc),f.is("br")||a.doc.createText(E).appendTo(f));d&&e.fire("saveSnapshot");c(f);b.moveToPosition(f,CKEDITOR.POSITION_AFTER_START);e.getSelection().selectRanges([b]);
-a.hotNode=f;d&&e.fire("saveSnapshot")}function U(a,c){return{canUndo:!0,modes:{wysiwyg:1},exec:function(){function d(b){var d=n.ie&&9>n.version?" ":E,f=a.hotNode&&a.hotNode.getText()==d&&a.element.equals(a.hotNode)&&a.lastCmdDirection===!!c;N(a,function(d){f&&a.hotNode&&a.hotNode.remove();d[c?"insertAfter":"insertBefore"](b);d.setAttributes({"data-cke-magicline-hot":1,"data-cke-magicline-dir":!!c});a.lastCmdDirection=!!c});!n.ie&&a.enterMode!=CKEDITOR.ENTER_BR&&a.hotNode.scrollIntoView();a.line.detach()}
-return function(b){var b=b.getSelection().getStartElement(),e,b=b.getAscendant(V,1);if(!W(a,b)&&b&&!b.equals(a.editable)&&!b.contains(a.editable)){if((e=K(b))&&"false"==e.getAttribute("contenteditable"))b=e;a.element=b;e=r(a,b,!c);var f;m(e)&&e.is(a.triggers)&&e.is(ia)&&(!r(a,e,!c)||(f=r(a,e,!c))&&m(f)&&f.is(a.triggers))?d(e):(f=J(a,b),m(f)&&(r(a,f,!c)?(b=r(a,f,!c))&&(m(b)&&b.is(a.triggers))&&d(f):d(f)))}}}()}}function v(a,c){if(!c||!(c.type==CKEDITOR.NODE_ELEMENT&&c.$))return!1;var d=a.line;return d.wrap.equals(c)||
-d.wrap.contains(c)}function m(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.$}function p(a){if(!m(a))return!1;var c;if(!(c=X(a)))m(a)?(c={left:1,right:1,center:1},c=!(!c[a.getComputedStyle("float")]&&!c[a.getAttribute("align")])):c=!1;return c}function X(a){return!!{absolute:1,fixed:1}[a.getComputedStyle("position")]}function G(a,c){return m(c)?c.is(a.triggers):null}function W(a,c){if(!c)return!1;for(var d=c.getParents(1),b=d.length;b--;)for(var e=a.tabuList.length;e--;)if(d[b].hasAttribute(a.tabuList[e]))return!0;
-return!1}function ja(a,c,d){c=c[d?"getLast":"getFirst"](function(b){return a.isRelevant(b)&&!b.is(ka)});if(!c)return!1;o(a,c);return d?c.size.top>a.mouse.y:c.size.bottom<a.mouse.y}function Y(a){var c=a.editable,d=a.mouse,b=a.view,e=a.triggerOffset;C(a);var f=d.y>(a.inInlineMode?b.editable.top+b.editable.height/2:Math.min(b.editable.height,b.pane.height)/2),c=c[f?"getLast":"getFirst"](function(a){return!(z(a)||A(a))});if(!c)return null;v(a,c)&&(c=a.line.wrap[f?"getPrevious":"getNext"](function(a){return!(z(a)||
-A(a))}));if(!m(c)||p(c)||!G(a,c))return null;o(a,c);return!f&&0<=c.size.top&&0<d.y&&d.y<c.size.top+e?(a=a.inInlineMode||0===b.scroll.y?x:s,new u([null,c,D,H,a])):f&&c.size.bottom<=b.pane.height&&d.y>c.size.bottom-e&&d.y<b.pane.height?(a=a.inInlineMode||c.size.bottom>b.pane.height-e&&c.size.bottom<b.pane.height?y:s,new u([c,null,Z,H,a])):null}function $(a){var c=a.mouse,d=a.view,b=a.triggerOffset,e=J(a);if(!e)return null;o(a,e);var b=Math.min(b,0|e.size.outerHeight/2),f=[],g,i;if(c.y>e.size.top-1&&
-c.y<e.size.top+b)i=!1;else if(c.y>e.size.bottom-b&&c.y<e.size.bottom+1)i=!0;else return null;if(p(e)||ja(a,e,i)||e.getParent().is(aa))return null;var h=r(a,e,!i);if(h){if(h&&h.type==CKEDITOR.NODE_TEXT)return null;if(m(h)){if(p(h)||!G(a,h)||h.getParent().is(aa))return null;f=[h,e][i?"reverse":"concat"]().concat([O,H])}}else e.equals(a.editable[i?"getLast":"getFirst"](a.isRelevant))?(C(a),i&&c.y>e.size.bottom-b&&c.y<d.pane.height&&e.size.bottom>d.pane.height-b&&e.size.bottom<d.pane.height?g=y:0<c.y&&
-c.y<e.size.top+b&&(g=x)):g=s,f=[null,e][i?"reverse":"concat"]().concat([i?Z:D,H,g,e.equals(a.editable[i?"getLast":"getFirst"](a.isRelevant))?i?y:x:s]);return 0 in f?new u(f):null}function P(a,c,d,b){for(var e=function(){var b=n.ie?c.$.currentStyle:a.win.$.getComputedStyle(c.$,"");return n.ie?function(a){return b[CKEDITOR.tools.cssStyleToDomStyle(a)]}:function(a){return b.getPropertyValue(a)}}(),f=c.getDocumentPosition(),g={},i={},h={},j={},l=t.length;l--;)g[t[l]]=parseInt(e("border-"+t[l]+"-width"),
-10)||0,h[t[l]]=parseInt(e("padding-"+t[l]),10)||0,i[t[l]]=parseInt(e("margin-"+t[l]),10)||0;(!d||b)&&I(a,b);j.top=f.y-(d?0:a.view.scroll.y);j.left=f.x-(d?0:a.view.scroll.x);j.outerWidth=c.$.offsetWidth;j.outerHeight=c.$.offsetHeight;j.height=j.outerHeight-(h.top+h.bottom+g.top+g.bottom);j.width=j.outerWidth-(h.left+h.right+g.left+g.right);j.bottom=j.top+j.outerHeight;j.right=j.left+j.outerWidth;a.inInlineMode&&(j.scroll={top:c.$.scrollTop,left:c.$.scrollLeft});return q({border:g,padding:h,margin:i,
-ignoreScroll:d},j,!0)}function o(a,c,d){if(!m(c))return c.size=null;if(c.size){if(c.size.ignoreScroll==d&&c.size.date>new Date-ba)return null}else c.size={};return q(c.size,P(a,c,d),{date:+new Date},!0)}function C(a,c){a.view.editable=P(a,a.editable,c,!0)}function I(a,c){a.view||(a.view={});var d=a.view;if(c||!(d&&d.date>new Date-ba)){var b=a.win,d=b.getScrollPosition(),b=b.getViewPaneSize();q(a.view,{scroll:{x:d.x,y:d.y,width:a.doc.$.documentElement.scrollWidth-b.width,height:a.doc.$.documentElement.scrollHeight-
-b.height},pane:{width:b.width,height:b.height,bottom:b.height+d.y},date:+new Date},!0)}}function la(a,c,d,b){for(var e=b,f=b,g=0,i=!1,h=!1,j=a.view.pane.height,l=a.mouse;l.y+g<j&&0<l.y-g;){i||(i=c(e,b));h||(h=c(f,b));!i&&0<l.y-g&&(e=d(a,{x:l.x,y:l.y-g}));!h&&l.y+g<j&&(f=d(a,{x:l.x,y:l.y+g}));if(i&&h)break;g+=2}return new u([e,f,null,null])}CKEDITOR.plugins.add("magicline",{init:function(a){var c=a.config,d=c.magicline_triggerOffset||30,b={editor:a,enterMode:c.enterMode,triggerOffset:d,holdDistance:0|
-d*(c.magicline_holdDistance||0.5),boxColor:c.magicline_color||"#ff0000",rtl:"rtl"==c.contentsLangDirection,tabuList:["data-cke-hidden-sel"].concat(c.magicline_tabuList||[]),triggers:c.magicline_everywhere?V:{table:1,hr:1,div:1,ul:1,ol:1,dl:1,form:1,blockquote:1}},e,f,g;b.isRelevant=function(a){return m(a)&&!v(b,a)&&!p(a)};a.on("contentDom",function(){var d=a.editable(),h=a.document,j=a.window;q(b,{editable:d,inInlineMode:d.isInline(),doc:h,win:j,hotNode:null},!0);b.boundary=b.inInlineMode?b.editable:
-b.doc.getDocumentElement();d.is(w.$inline)||(b.inInlineMode&&!X(d)&&d.setStyles({position:"relative",top:null,left:null}),ha.call(this,b),I(b),d.attachListener(a,"beforeUndoImage",function(){b.line.detach()}),d.attachListener(a,"beforeGetData",function(){b.line.wrap.getParent()&&(b.line.detach(),a.once("getData",function(){b.line.attach()},null,null,1E3))},null,null,0),d.attachListener(b.inInlineMode?h:h.getWindow().getFrame(),"mouseout",function(c){if("wysiwyg"==a.mode)if(b.inInlineMode){var d=c.data.$.clientX,
-c=c.data.$.clientY;I(b);C(b,!0);var e=b.view.editable,f=b.view.scroll;if(!(d>e.left-f.x&&d<e.right-f.x)||!(c>e.top-f.y&&c<e.bottom-f.y))clearTimeout(g),g=null,b.line.detach()}else clearTimeout(g),g=null,b.line.detach()}),d.attachListener(d,"keyup",function(){b.hiddenMode=0}),d.attachListener(d,"keydown",function(c){if("wysiwyg"==a.mode)switch(c=c.data.getKeystroke(),a.getSelection().getStartElement(),c){case 2228240:case 16:b.hiddenMode=1,b.line.detach()}}),d.attachListener(b.inInlineMode?d:h,"mousemove",
-function(c){f=!0;if(!("wysiwyg"!=a.mode||a.readOnly||g)){var d={x:c.data.$.clientX,y:c.data.$.clientY};g=setTimeout(function(){b.mouse=d;g=b.trigger=null;I(b);if(f&&!b.hiddenMode&&a.focusManager.hasFocus&&!b.line.mouseNear()&&(b.element=ca(b,!0)))(b.trigger=Y(b)||$(b)||da(b))&&!W(b,b.trigger.upper||b.trigger.lower)?b.line.attach().place():(b.trigger=null,b.line.detach()),f=!1},30)}}),d.attachListener(j,"scroll",function(){"wysiwyg"==a.mode&&(b.line.detach(),n.webkit&&(b.hiddenMode=1,clearTimeout(e),
-e=setTimeout(function(){b.mouseDown||(b.hiddenMode=0)},50)))}),d.attachListener(ea?h:j,"mousedown",function(){"wysiwyg"==a.mode&&(b.line.detach(),b.hiddenMode=1,b.mouseDown=1)}),d.attachListener(ea?h:j,"mouseup",function(){b.hiddenMode=0;b.mouseDown=0}),a.addCommand("accessPreviousSpace",U(b)),a.addCommand("accessNextSpace",U(b,!0)),a.setKeystroke([[c.magicline_keystrokePrevious,"accessPreviousSpace"],[c.magicline_keystrokeNext,"accessNextSpace"]]),a.on("loadSnapshot",function(){var c,d,e,f;for(f in{p:1,
-br:1,div:1}){c=a.document.getElementsByTag(f);for(e=c.count();e--;)if((d=c.getItem(e)).data("cke-magicline-hot")){b.hotNode=d;b.lastCmdDirection="true"===d.data("cke-magicline-dir")?!0:!1;return}}}),this.backdoor={accessFocusSpace:N,boxTrigger:u,isLine:v,getAscendantTrigger:J,getNonEmptyNeighbour:r,getSize:P,that:b,triggerEdge:$,triggerEditable:Y,triggerExpand:da})},this)}});var q=CKEDITOR.tools.extend,M=CKEDITOR.dom.element,B=M.createFromHtml,n=CKEDITOR.env,ea=CKEDITOR.env.ie&&9>CKEDITOR.env.version,
-w=CKEDITOR.dtd,F={},D=128,Z=64,O=32,H=16,fa=8,x=4,y=2,s=1,E=" ",aa=w.$listItem,ka=w.$tableContent,ia=q({},w.$nonEditable,w.$empty),V=w.$block,ba=100,L="width:0px;height:0px;padding:0px;margin:0px;display:block;z-index:9999;color:#fff;position:absolute;font-size: 0px;line-height:0px;",S=L+"border-color:transparent;display:block;border-style:solid;",R="<span>"+E+"</span>";F[CKEDITOR.ENTER_BR]="br";F[CKEDITOR.ENTER_P]="p";F[CKEDITOR.ENTER_DIV]="div";u.prototype={set:function(a,c,d){this.properties=a+
-c+(d||s);return this},is:function(a){return(this.properties&a)==a}};var ca=function(){function a(a,d){var b=a.$.elementFromPoint(d.x,d.y);return b&&b.nodeType?new CKEDITOR.dom.element(b):null}return function(c,d,b){if(!c.mouse)return null;var e=c.doc,f=c.line.wrap,b=b||c.mouse,g=a(e,b);d&&v(c,g)&&(f.hide(),g=a(e,b),f.show());return!g||!(g.type==CKEDITOR.NODE_ELEMENT&&g.$)||n.ie&&9>n.version&&!c.boundary.equals(g)&&!c.boundary.contains(g)?null:g}}(),z=CKEDITOR.dom.walker.whitespaces(),A=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_COMMENT),
-da=function(){function a(a){var b=a.element,e,f,g;if(!m(b)||b.contains(a.editable)||b.isReadOnly())return null;g=la(a,function(a,b){return!b.equals(a)},function(a,b){return ca(a,!0,b)},b);e=g.upper;f=g.lower;if(Q(a,e,f))return g.set(O,fa);if(e&&b.contains(e))for(;!e.getParent().equals(b);)e=e.getParent();else e=b.getFirst(function(b){return c(a,b)});if(f&&b.contains(f))for(;!f.getParent().equals(b);)f=f.getParent();else f=b.getLast(function(b){return c(a,b)});if(!e||!f)return null;o(a,e);o(a,f);if(!(a.mouse.y>
-e.size.top&&a.mouse.y<f.size.bottom))return null;for(var b=Number.MAX_VALUE,i,h,j,l;f&&!f.equals(e)&&(h=e.getNext(a.isRelevant));)i=Math.abs(ga(a,e,h)-a.mouse.y),i<b&&(b=i,j=e,l=h),e=h,o(a,e);if(!j||!l||!(a.mouse.y>j.size.top&&a.mouse.y<l.size.bottom))return null;g.upper=j;g.lower=l;return g.set(O,fa)}function c(a,b){return!(b&&b.type==CKEDITOR.NODE_TEXT||A(b)||p(b)||v(a,b)||b.type==CKEDITOR.NODE_ELEMENT&&b.$&&b.is("br"))}return function(c){var b=a(c),e;if(e=b){e=b.upper;var f=b.lower;e=!e||!f||p(f)||
-p(e)||f.equals(e)||e.equals(f)||f.contains(e)||e.contains(f)?!1:G(c,e)&&G(c,f)&&Q(c,e,f)?!0:!1}return e?b:null}}(),t=["top","left","right","bottom"]})();CKEDITOR.config.magicline_keystrokePrevious=CKEDITOR.CTRL+CKEDITOR.SHIFT+51;CKEDITOR.config.magicline_keystrokeNext=CKEDITOR.CTRL+CKEDITOR.SHIFT+52;(function(){function l(a){if(!a||a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())return[];for(var e=[],f=["style","className"],b=0;b<f.length;b++){var d=a.$.elements.namedItem(f[b]);d&&(d=new CKEDITOR.dom.element(d),e.push([d,d.nextSibling]),d.remove())}return e}function o(a,e){if(a&&!(a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())&&0<e.length)for(var f=e.length-1;0<=f;f--){var b=e[f][0],d=e[f][1];d?b.insertBefore(d):b.appendTo(a)}}function n(a,e){var f=l(a),b={},d=a.$;e||(b["class"]=d.className||
-"",d.className="");b.inline=d.style.cssText||"";e||(d.style.cssText="position: static; overflow: visible");o(f);return b}function p(a,e){var f=l(a),b=a.$;"class"in e&&(b.className=e["class"]);"inline"in e&&(b.style.cssText=e.inline);o(f)}function q(a){if(!a.editable().isInline()){var e=CKEDITOR.instances,f;for(f in e){var b=e[f];"wysiwyg"==b.mode&&!b.readOnly&&(b=b.document.getBody(),b.setAttribute("contentEditable",!1),b.setAttribute("contentEditable",!0))}a.editable().hasFocus&&(a.toolbox.focus(),
-a.focus())}}CKEDITOR.plugins.add("maximize",{init:function(a){function e(){var b=d.getViewPaneSize();a.resize(b.width,b.height,null,!0)}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f=a.lang,b=CKEDITOR.document,d=b.getWindow(),j,k,m,l=CKEDITOR.TRISTATE_OFF;a.addCommand("maximize",{modes:{wysiwyg:!CKEDITOR.env.iOS,source:!CKEDITOR.env.iOS},readOnly:1,editorFocus:!1,exec:function(){var h=a.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}),g=a.ui.space("contents");
-if("wysiwyg"==a.mode){var c=a.getSelection();j=c&&c.getRanges();k=d.getScrollPosition()}else{var i=a.editable().$;j=!CKEDITOR.env.ie&&[i.selectionStart,i.selectionEnd];k=[i.scrollLeft,i.scrollTop]}if(this.state==CKEDITOR.TRISTATE_OFF){d.on("resize",e);m=d.getScrollPosition();for(c=a.container;c=c.getParent();)c.setCustomData("maximize_saved_styles",n(c)),c.setStyle("z-index",a.config.baseFloatZIndex-5);g.setCustomData("maximize_saved_styles",n(g,!0));h.setCustomData("maximize_saved_styles",n(h,!0));
-g={overflow:CKEDITOR.env.webkit?"":"hidden",width:0,height:0};b.getDocumentElement().setStyles(g);!CKEDITOR.env.gecko&&b.getDocumentElement().setStyle("position","fixed");(!CKEDITOR.env.gecko||!CKEDITOR.env.quirks)&&b.getBody().setStyles(g);CKEDITOR.env.ie?setTimeout(function(){d.$.scrollTo(0,0)},0):d.$.scrollTo(0,0);h.setStyle("position",CKEDITOR.env.gecko&&CKEDITOR.env.quirks?"fixed":"absolute");h.$.offsetLeft;h.setStyles({"z-index":a.config.baseFloatZIndex-5,left:"0px",top:"0px"});h.addClass("cke_maximized");
-e();g=h.getDocumentPosition();h.setStyles({left:-1*g.x+"px",top:-1*g.y+"px"});CKEDITOR.env.gecko&&q(a)}else if(this.state==CKEDITOR.TRISTATE_ON){d.removeListener("resize",e);g=[g,h];for(c=0;c<g.length;c++)p(g[c],g[c].getCustomData("maximize_saved_styles")),g[c].removeCustomData("maximize_saved_styles");for(c=a.container;c=c.getParent();)p(c,c.getCustomData("maximize_saved_styles")),c.removeCustomData("maximize_saved_styles");CKEDITOR.env.ie?setTimeout(function(){d.$.scrollTo(m.x,m.y)},0):d.$.scrollTo(m.x,
-m.y);h.removeClass("cke_maximized");CKEDITOR.env.webkit&&(h.setStyle("display","inline"),setTimeout(function(){h.setStyle("display","block")},0));a.fire("resize")}this.toggleState();if(c=this.uiItems[0])g=this.state==CKEDITOR.TRISTATE_OFF?f.maximize.maximize:f.maximize.minimize,c=CKEDITOR.document.getById(c._.id),c.getChild(1).setHtml(g),c.setAttribute("title",g),c.setAttribute("href",'javascript:void("'+g+'");');"wysiwyg"==a.mode?j?(CKEDITOR.env.gecko&&q(a),a.getSelection().selectRanges(j),(i=a.getSelection().getStartElement())&&
-i.scrollIntoView(!0)):d.$.scrollTo(k.x,k.y):(j&&(i.selectionStart=j[0],i.selectionEnd=j[1]),i.scrollLeft=k[0],i.scrollTop=k[1]);j=k=null;l=this.state;a.fire("maximize",this.state)},canUndo:!1});a.ui.addButton&&a.ui.addButton("Maximize",{label:f.maximize.maximize,command:"maximize",toolbar:"tools,10"});a.on("mode",function(){var b=a.getCommand("maximize");b.setState(b.state==CKEDITOR.TRISTATE_DISABLED?CKEDITOR.TRISTATE_DISABLED:l)},null,null,100)}}})})();CKEDITOR.plugins.add("newpage",{init:function(a){a.addCommand("newpage",{modes:{wysiwyg:1,source:1},exec:function(b){var a=this;b.setData(b.config.newpage_html||"",function(){b.focus();setTimeout(function(){b.fire("afterCommandExec",{name:"newpage",command:a});b.selectionChange()},200)})},async:!0});a.ui.addButton&&a.ui.addButton("NewPage",{label:a.lang.newpage.toolbar,command:"newpage",toolbar:"document,20"})}});(function(){function e(a){return{"aria-label":a,"class":"cke_pagebreak",contenteditable:"false","data-cke-display-name":"pagebreak","data-cke-pagebreak":1,style:"page-break-after: always",title:a}}CKEDITOR.plugins.add("pagebreak",{requires:"fakeobjects",onLoad:function(){var a=("background:url("+CKEDITOR.getUrl(this.path+"images/pagebreak.gif")+") no-repeat center center;clear:both;width:100%;border-top:#999 1px dotted;border-bottom:#999 1px dotted;padding:0;height:5px;cursor:default;").replace(/;/g,
-" !important;");CKEDITOR.addCss("div.cke_pagebreak{"+a+"}")},init:function(a){a.blockless||(a.addCommand("pagebreak",CKEDITOR.plugins.pagebreakCmd),a.ui.addButton&&a.ui.addButton("PageBreak",{label:a.lang.pagebreak.toolbar,command:"pagebreak",toolbar:"insert,70"}),CKEDITOR.env.webkit&&a.on("contentDom",function(){a.document.on("click",function(b){b=b.data.getTarget();b.is("div")&&b.hasClass("cke_pagebreak")&&a.getSelection().selectElement(b)})}))},afterInit:function(a){function b(f){CKEDITOR.tools.extend(f.attributes,
-e(a.lang.pagebreak.alt),!0);f.children.length=0}var c=a.dataProcessor,g=c&&c.dataFilter,c=c&&c.htmlFilter,h=/page-break-after\s*:\s*always/i,i=/display\s*:\s*none/i;c&&c.addRules({attributes:{"class":function(a,b){var c=a.replace("cke_pagebreak","");if(c!=a){var d=CKEDITOR.htmlParser.fragment.fromHtml('<span style="display: none;">&nbsp;</span>').children[0];b.children.length=0;b.add(d);d=b.attributes;delete d["aria-label"];delete d.contenteditable;delete d.title}return c}}},{applyToAll:!0,priority:5});
-g&&g.addRules({elements:{div:function(a){if(a.attributes["data-cke-pagebreak"])b(a);else if(h.test(a.attributes.style)){var c=a.children[0];c&&("span"==c.name&&i.test(c.attributes.style))&&b(a)}}}})}});CKEDITOR.plugins.pagebreakCmd={exec:function(a){var b=a.document.createElement("div",{attributes:e(a.lang.pagebreak.alt)});a.insertElement(b)},context:"div",allowedContent:{div:{styles:"!page-break-after"},span:{match:function(a){return(a=a.parent)&&"div"==a.name&&a.styles&&a.styles["page-break-after"]},
-styles:"display"}},requiredContent:"div{page-break-after}"}})();(function(){var c={canUndo:!1,async:!0,exec:function(a){a.getClipboardData({title:a.lang.pastetext.title},function(b){b&&a.fire("paste",{type:"text",dataValue:b.dataValue});a.fire("afterCommandExec",{name:"pastetext",command:c,returnValue:!!b})})}};CKEDITOR.plugins.add("pastetext",{requires:"clipboard",init:function(a){a.addCommand("pastetext",c);a.ui.addButton&&a.ui.addButton("PasteText",{label:a.lang.pastetext.button,command:"pastetext",toolbar:"clipboard,40"});if(a.config.forcePasteAsPlainText)a.on("beforePaste",
-function(a){"html"!=a.data.type&&(a.data.type="text")});a.on("pasteState",function(b){a.getCommand("pastetext").setState(b.data)})}})})();(function(){function h(a,d,f){var b=CKEDITOR.cleanWord;b?f():(a=CKEDITOR.getUrl(a.config.pasteFromWordCleanupFile||d+"filter/default.js"),CKEDITOR.scriptLoader.load(a,f,null,!0));return!b}function i(a){a.data.type="html"}CKEDITOR.plugins.add("pastefromword",{requires:"clipboard",init:function(a){var d=0,f=this.path;a.addCommand("pastefromword",{canUndo:!1,async:!0,exec:function(a){var e=this;d=1;a.once("beforePaste",i);a.getClipboardData({title:a.lang.pastefromword.title},function(c){c&&a.fire("paste",
-{type:"html",dataValue:c.dataValue});a.fire("afterCommandExec",{name:"pastefromword",command:e,returnValue:!!c})})}});a.ui.addButton&&a.ui.addButton("PasteFromWord",{label:a.lang.pastefromword.toolbar,command:"pastefromword",toolbar:"clipboard,50"});a.on("pasteState",function(b){a.getCommand("pastefromword").setState(b.data)});a.on("paste",function(b){var e=b.data,c=e.dataValue;if(c&&(d||/(class=\"?Mso|style=\"[^\"]*\bmso\-|w:WordDocument)/.test(c))){var g=h(a,f,function(){if(g)a.fire("paste",e);
-else if(!a.config.pasteFromWordPromptCleanup||d||confirm(a.lang.pastefromword.confirmCleanup))e.dataValue=CKEDITOR.cleanWord(c,a)});g&&b.cancel()}},null,null,3)}})})();(function(){var h,i={modes:{wysiwyg:1,source:1},canUndo:!1,readOnly:1,exec:function(a){var g,b=a.config,f=b.baseHref?'<base href="'+b.baseHref+'"/>':"";if(b.fullPage)g=a.getData().replace(/<head>/,"$&"+f).replace(/[^>]*(?=<\/title>)/,"$& &mdash; "+a.lang.preview.preview);else{var b="<body ",d=a.document&&a.document.getBody();d&&(d.getAttribute("id")&&(b+='id="'+d.getAttribute("id")+'" '),d.getAttribute("class")&&(b+='class="'+d.getAttribute("class")+'" '));g=a.config.docType+'<html dir="'+a.config.contentsLangDirection+
-'"><head>'+f+"<title>"+a.lang.preview.preview+"</title>"+CKEDITOR.tools.buildStyleHtml(a.config.contentsCss)+"</head>"+(b+">")+a.getData()+"</body></html>"}f=640;b=420;d=80;try{var c=window.screen,f=Math.round(0.8*c.width),b=Math.round(0.7*c.height),d=Math.round(0.1*c.width)}catch(i){}if(!1===a.fire("contentPreview",a={dataValue:g}))return!1;var c="",e;CKEDITOR.env.ie&&(window._cke_htmlToLoad=a.dataValue,e="javascript:void( (function(){document.open();"+("("+CKEDITOR.tools.fixDomain+")();").replace(/\/\/.*?\n/g,
-"").replace(/parent\./g,"window.opener.")+"document.write( window.opener._cke_htmlToLoad );document.close();window.opener._cke_htmlToLoad = null;})() )",c="");CKEDITOR.env.gecko&&(window._cke_htmlToLoad=a.dataValue,c=CKEDITOR.getUrl(h+"preview.html"));c=window.open(c,null,"toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width="+f+",height="+b+",left="+d);CKEDITOR.env.ie&&c&&(c.location=e);!CKEDITOR.env.ie&&!CKEDITOR.env.gecko&&(e=c.document,e.open(),e.write(a.dataValue),
-e.close());return!0}};CKEDITOR.plugins.add("preview",{init:function(a){a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&(h=this.path,a.addCommand("preview",i),a.ui.addButton&&a.ui.addButton("Preview",{label:a.lang.preview.preview,command:"preview",toolbar:"document,40"}))}})})();CKEDITOR.plugins.add("print",{init:function(a){a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&(a.addCommand("print",CKEDITOR.plugins.print),a.ui.addButton&&a.ui.addButton("Print",{label:a.lang.print.toolbar,command:"print",toolbar:"document,50"}))}});CKEDITOR.plugins.print={exec:function(a){CKEDITOR.env.gecko?a.window.$.print():a.document.$.execCommand("Print")},canUndo:!1,readOnly:1,modes:{wysiwyg:1}};CKEDITOR.plugins.add("removeformat",{init:function(a){a.addCommand("removeFormat",CKEDITOR.plugins.removeformat.commands.removeformat);a.ui.addButton&&a.ui.addButton("RemoveFormat",{label:a.lang.removeformat.toolbar,command:"removeFormat",toolbar:"cleanup,10"})}});
-CKEDITOR.plugins.removeformat={commands:{removeformat:{exec:function(a){for(var h=a._.removeFormatRegex||(a._.removeFormatRegex=RegExp("^(?:"+a.config.removeFormatTags.replace(/,/g,"|")+")$","i")),e=a._.removeAttributes||(a._.removeAttributes=a.config.removeFormatAttributes.split(",")),f=CKEDITOR.plugins.removeformat.filter,k=a.getSelection().getRanges(),l=k.createIterator(),m=function(a){return a.type==CKEDITOR.NODE_ELEMENT},c;c=l.getNextRange();){c.collapsed||c.enlarge(CKEDITOR.ENLARGE_ELEMENT);
-var j=c.createBookmark(),b=j.startNode,d=j.endNode,i=function(b){for(var c=a.elementPath(b),e=c.elements,d=1,g;(g=e[d])&&!g.equals(c.block)&&!g.equals(c.blockLimit);d++)h.test(g.getName())&&f(a,g)&&b.breakParent(g)};i(b);if(d){i(d);for(b=b.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT);b&&!b.equals(d);)if(b.isReadOnly()){if(b.getPosition(d)&CKEDITOR.POSITION_CONTAINS)break;b=b.getNext(m)}else i=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT),!("img"==b.getName()&&b.data("cke-realelement"))&&f(a,b)&&(h.test(b.getName())?
-b.remove(1):(b.removeAttributes(e),a.fire("removeFormatCleanup",b))),b=i}c.moveToBookmark(j)}a.forceNextSelectionCheck();a.getSelection().selectRanges(k)}}},filter:function(a,h){for(var e=a._.removeFormatFilters||[],f=0;f<e.length;f++)if(!1===e[f](h))return!1;return!0}};CKEDITOR.editor.prototype.addRemoveFormatFilter=function(a){this._.removeFormatFilters||(this._.removeFormatFilters=[]);this._.removeFormatFilters.push(a)};CKEDITOR.config.removeFormatTags="b,big,cite,code,del,dfn,em,font,i,ins,kbd,q,s,samp,small,span,strike,strong,sub,sup,tt,u,var";
-CKEDITOR.config.removeFormatAttributes="class,style,lang,width,height,align,hspace,valign";(function(){var b={readOnly:1,exec:function(a){if(a.fire("save")&&(a=a.element.$.form))try{a.submit()}catch(b){a.submit.click&&a.submit.click()}}};CKEDITOR.plugins.add("save",{init:function(a){a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&(a.addCommand("save",b).modes={wysiwyg:!!a.element.$.form},a.ui.addButton&&a.ui.addButton("Save",{label:a.lang.save.toolbar,command:"save",toolbar:"document,10"}))}})})();(function(){CKEDITOR.plugins.add("selectall",{init:function(b){b.addCommand("selectAll",{modes:{wysiwyg:1,source:1},exec:function(a){var b=a.editable();if(b.is("textarea"))a=b.$,CKEDITOR.env.ie?a.createTextRange().execCommand("SelectAll"):(a.selectionStart=0,a.selectionEnd=a.value.length),a.focus();else{if(b.is("body"))a.document.$.execCommand("SelectAll",!1,null);else{var c=a.createRange();c.selectNodeContents(b);c.select()}a.forceNextSelectionCheck();a.selectionChange()}},canUndo:!1});b.ui.addButton&&
-b.ui.addButton("SelectAll",{label:b.lang.selectall.toolbar,command:"selectAll",toolbar:"selection,10"})}})})();(function(){var i={readOnly:1,preserveState:!0,editorFocus:!1,exec:function(a){this.toggleState();this.refresh(a)},refresh:function(a){if(a.document){var c=this.state==CKEDITOR.TRISTATE_ON&&(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE||a.focusManager.hasFocus)?"attachClass":"removeClass";a.editable()[c]("cke_show_blocks")}}};CKEDITOR.plugins.add("showblocks",{onLoad:function(){var a="p div pre address blockquote h1 h2 h3 h4 h5 h6".split(" "),c,b,e,f,i=CKEDITOR.getUrl(this.path),j=!(CKEDITOR.env.ie&&
-9>CKEDITOR.env.version),g=j?":not([contenteditable=false]):not(.cke_show_blocks_off)":"",d,h;for(c=b=e=f="";d=a.pop();)h=a.length?",":"",c+=".cke_show_blocks "+d+g+h,e+=".cke_show_blocks.cke_contents_ltr "+d+g+h,f+=".cke_show_blocks.cke_contents_rtl "+d+g+h,b+=".cke_show_blocks "+d+g+"{background-image:url("+CKEDITOR.getUrl(i+"images/block_"+d+".png")+")}";CKEDITOR.addCss((c+"{background-repeat:no-repeat;border:1px dotted gray;padding-top:8px}").concat(b,e+"{background-position:top left;padding-left:8px}",
-f+"{background-position:top right;padding-right:8px}"));j||CKEDITOR.addCss(".cke_show_blocks [contenteditable=false],.cke_show_blocks .cke_show_blocks_off{border:none;padding-top:0;background-image:none}.cke_show_blocks.cke_contents_rtl [contenteditable=false],.cke_show_blocks.cke_contents_rtl .cke_show_blocks_off{padding-right:0}.cke_show_blocks.cke_contents_ltr [contenteditable=false],.cke_show_blocks.cke_contents_ltr .cke_show_blocks_off{padding-left:0}")},init:function(a){function c(){b.refresh(a)}
-if(!a.blockless){var b=a.addCommand("showblocks",i);b.canUndo=!1;a.config.startupOutlineBlocks&&b.setState(CKEDITOR.TRISTATE_ON);a.ui.addButton&&a.ui.addButton("ShowBlocks",{label:a.lang.showblocks.toolbar,command:"showblocks",toolbar:"tools,20"});a.on("mode",function(){b.state!=CKEDITOR.TRISTATE_DISABLED&&b.refresh(a)});a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&(a.on("focus",c),a.on("blur",c));a.on("contentDom",function(){b.state!=CKEDITOR.TRISTATE_DISABLED&&b.refresh(a)})}}})})();(function(){var f={preserveState:!0,editorFocus:!1,readOnly:1,exec:function(a){this.toggleState();this.refresh(a)},refresh:function(a){if(a.document){var b=this.state==CKEDITOR.TRISTATE_ON?"attachClass":"removeClass";a.editable()[b]("cke_show_borders")}}};CKEDITOR.plugins.add("showborders",{modes:{wysiwyg:1},onLoad:function(){var a;a=(CKEDITOR.env.ie6Compat?[".%1 table.%2,",".%1 table.%2 td, .%1 table.%2 th","{","border : #d3d3d3 1px dotted","}"]:".%1 table.%2,;.%1 table.%2 > tr > td, .%1 table.%2 > tr > th,;.%1 table.%2 > tbody > tr > td, .%1 table.%2 > tbody > tr > th,;.%1 table.%2 > thead > tr > td, .%1 table.%2 > thead > tr > th,;.%1 table.%2 > tfoot > tr > td, .%1 table.%2 > tfoot > tr > th;{;border : #d3d3d3 1px dotted;}".split(";")).join("").replace(/%2/g,
-"cke_show_border").replace(/%1/g,"cke_show_borders ");CKEDITOR.addCss(a)},init:function(a){var b=a.addCommand("showborders",f);b.canUndo=!1;!1!==a.config.startupShowBorders&&b.setState(CKEDITOR.TRISTATE_ON);a.on("mode",function(){b.state!=CKEDITOR.TRISTATE_DISABLED&&b.refresh(a)},null,null,100);a.on("contentDom",function(){b.state!=CKEDITOR.TRISTATE_DISABLED&&b.refresh(a)});a.on("removeFormatCleanup",function(d){d=d.data;a.getCommand("showborders").state==CKEDITOR.TRISTATE_ON&&(d.is("table")&&(!d.hasAttribute("border")||
-0>=parseInt(d.getAttribute("border"),10)))&&d.addClass("cke_show_border")})},afterInit:function(a){var b=a.dataProcessor,a=b&&b.dataFilter,b=b&&b.htmlFilter;a&&a.addRules({elements:{table:function(a){var a=a.attributes,b=a["class"],c=parseInt(a.border,10);if((!c||0>=c)&&(!b||-1==b.indexOf("cke_show_border")))a["class"]=(b||"")+" cke_show_border"}}});b&&b.addRules({elements:{table:function(a){var a=a.attributes,b=a["class"];b&&(a["class"]=b.replace("cke_show_border","").replace(/\s{2}/," ").replace(/^\s+|\s+$/,
-""))}}})}});CKEDITOR.on("dialogDefinition",function(a){var b=a.data.name;if("table"==b||"tableProperties"==b)if(a=a.data.definition,b=a.getContents("info").get("txtBorder"),b.commit=CKEDITOR.tools.override(b.commit,function(a){return function(b,c){a.apply(this,arguments);var e=parseInt(this.getValue(),10);c[!e||0>=e?"addClass":"removeClass"]("cke_show_border")}}),a=(a=a.getContents("advanced"))&&a.get("advCSSClasses"))a.setup=CKEDITOR.tools.override(a.setup,function(a){return function(){a.apply(this,
-arguments);this.setValue(this.getValue().replace(/cke_show_border/,""))}}),a.commit=CKEDITOR.tools.override(a.commit,function(a){return function(b,c){a.apply(this,arguments);parseInt(c.getAttribute("border"),10)||c.addClass("cke_show_border")}})})})();(function(){CKEDITOR.plugins.add("sourcearea",{init:function(a){function d(){var a=e&&this.equals(CKEDITOR.document.getActive());this.hide();this.setStyle("height",this.getParent().$.clientHeight+"px");this.setStyle("width",this.getParent().$.clientWidth+"px");this.show();a&&this.focus()}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f=CKEDITOR.plugins.sourcearea;a.addMode("source",function(e){var b=a.ui.space("contents").getDocument().createElement("textarea");b.setStyles(CKEDITOR.tools.extend({width:CKEDITOR.env.ie7Compat?
-"99%":"100%",height:"100%",resize:"none",outline:"none","text-align":"left"},CKEDITOR.tools.cssVendorPrefix("tab-size",a.config.sourceAreaTabSize||4)));b.setAttribute("dir","ltr");b.addClass("cke_source cke_reset cke_enable_context_menu");a.ui.space("contents").append(b);b=a.editable(new c(a,b));b.setData(a.getData(1));CKEDITOR.env.ie&&(b.attachListener(a,"resize",d,b),b.attachListener(CKEDITOR.document.getWindow(),"resize",d,b),CKEDITOR.tools.setTimeout(d,0,b));a.fire("ariaWidget",this);e()});a.addCommand("source",
-f.commands.source);a.ui.addButton&&a.ui.addButton("Source",{label:a.lang.sourcearea.toolbar,command:"source",toolbar:"mode,10"});a.on("mode",function(){a.getCommand("source").setState("source"==a.mode?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)});var e=CKEDITOR.env.ie&&9==CKEDITOR.env.version}}});var c=CKEDITOR.tools.createClass({base:CKEDITOR.editable,proto:{setData:function(a){this.setValue(a);this.status="ready";this.editor.fire("dataReady")},getData:function(){return this.getValue()},insertHtml:function(){},
-insertElement:function(){},insertText:function(){},setReadOnly:function(a){this[(a?"set":"remove")+"Attribute"]("readOnly","readonly")},detach:function(){c.baseProto.detach.call(this);this.clearCustomData();this.remove()}}})})();CKEDITOR.plugins.sourcearea={commands:{source:{modes:{wysiwyg:1,source:1},editorFocus:!1,readOnly:1,exec:function(c){"wysiwyg"==c.mode&&c.fire("saveSnapshot");c.getCommand("source").setState(CKEDITOR.TRISTATE_DISABLED);c.setMode("source"==c.mode?"wysiwyg":"source")},canUndo:!1}}};CKEDITOR.plugins.add("specialchar",{availableLangs:{ar:1,bg:1,ca:1,cs:1,cy:1,de:1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,fa:1,fi:1,fr:1,"fr-ca":1,gl:1,he:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ku:1,lv:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ru:1,si:1,sk:1,sl:1,sq:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},requires:"dialog",init:function(a){var c=this;CKEDITOR.dialog.add("specialchar",this.path+"dialogs/specialchar.js");a.addCommand("specialchar",{exec:function(){var b=a.langCode,b=c.availableLangs[b]?
-b:c.availableLangs[b.replace(/-.*/,"")]?b.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(c.path+"dialogs/lang/"+b+".js"),function(){CKEDITOR.tools.extend(a.lang.specialchar,c.langEntries[b]);a.openDialog("specialchar")})},modes:{wysiwyg:1},canUndo:!1});a.ui.addButton&&a.ui.addButton("SpecialChar",{label:a.lang.specialchar.toolbar,command:"specialchar",toolbar:"insert,50"})}});CKEDITOR.config.specialChars="! &quot; # $ % &amp; ' ( ) * + - . / 0 1 2 3 4 5 6 7 8 9 : ; &lt; = &gt; ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ &euro; &lsquo; &rsquo; &ldquo; &rdquo; &ndash; &mdash; &iexcl; &cent; &pound; &curren; &yen; &brvbar; &sect; &uml; &copy; &ordf; &laquo; &not; &reg; &macr; &deg; &sup2; &sup3; &acute; &micro; &para; &middot; &cedil; &sup1; &ordm; &raquo; &frac14; &frac12; &frac34; &iquest; &Agrave; &Aacute; &Acirc; &Atilde; &Auml; &Aring; &AElig; &Ccedil; &Egrave; &Eacute; &Ecirc; &Euml; &Igrave; &Iacute; &Icirc; &Iuml; &ETH; &Ntilde; &Ograve; &Oacute; &Ocirc; &Otilde; &Ouml; &times; &Oslash; &Ugrave; &Uacute; &Ucirc; &Uuml; &Yacute; &THORN; &szlig; &agrave; &aacute; &acirc; &atilde; &auml; &aring; &aelig; &ccedil; &egrave; &eacute; &ecirc; &euml; &igrave; &iacute; &icirc; &iuml; &eth; &ntilde; &ograve; &oacute; &ocirc; &otilde; &ouml; &divide; &oslash; &ugrave; &uacute; &ucirc; &uuml; &yacute; &thorn; &yuml; &OElig; &oelig; &#372; &#374 &#373 &#375; &sbquo; &#8219; &bdquo; &hellip; &trade; &#9658; &bull; &rarr; &rArr; &hArr; &diams; &asymp;".split(" ");CKEDITOR.plugins.add("scayt",{requires:"menubutton,dialog",tabToOpen:null,dialogName:"scaytDialog",init:function(a){var d=this,c=CKEDITOR.plugins.scayt;this.bindEvents(a);this.parseConfig(a);this.addRule(a);CKEDITOR.dialog.add(this.dialogName,CKEDITOR.getUrl(this.path+"dialogs/options.js"));this.addMenuItems(a);var b=a.lang.scayt,f=CKEDITOR.env;a.ui.add("Scayt",CKEDITOR.UI_MENUBUTTON,{label:b.text_title,title:b.text_title,modes:{wysiwyg:!(f.ie&&(8>f.version||f.quirks))},toolbar:"spellchecker,20",
-refresh:function(){var b=a.ui.instances.Scayt.getState();a.scayt&&(b=c.state[a.name]?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF);a.fire("scaytButtonState",b)},onRender:function(){var c=this;a.on("scaytButtonState",function(a){void 0!==typeof a.data&&c.setState(a.data)})},onMenu:function(){var b=a.scayt;a.getMenuItem("scaytToggle").label=a.lang.scayt[b&&c.state[a.name]?"btn_disable":"btn_enable"];b={scaytToggle:CKEDITOR.TRISTATE_OFF,scaytOptions:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytLangs:b?
-CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytDict:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytAbout:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,WSC:a.plugins.wsc?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED};a.config.scayt_uiTabs[0]||delete b.scaytOptions;a.config.scayt_uiTabs[1]||delete b.scaytLangs;a.config.scayt_uiTabs[2]||delete b.scaytDict;return b}});a.contextMenu&&a.addMenuItems&&(a.contextMenu.addListener(function(){var c=a.scayt,b;if(c){var h=c.getSelectionNode();
-if(h=h?h.getAttribute(c.getNodeAttribute()):h)b=d.menuGenerator(a,h,d),c.showBanner("."+a.contextMenu._.definition.panel.className.split(" ").join(" ."))}return b}),a.contextMenu._.onHide=CKEDITOR.tools.override(a.contextMenu._.onHide,function(c){return function(){var b=a.scayt;b&&b.hideBanner();return c.apply(this)}}))},addMenuItems:function(a){var d=this,c=CKEDITOR.plugins.scayt;a.addMenuGroup("scaytButton");var b=a.config.scayt_contextMenuItemsOrder.split("|");if(b&&b.length)for(var f=0;f<b.length;f++)a.addMenuGroup("scayt_"+
-b[f],f-10);b={scaytToggle:{label:a.lang.scayt.btn_enable,group:"scaytButton",onClick:function(){var b=a.scayt;c.state[a.name]=!c.state[a.name];!0===c.state[a.name]?b||c.createScayt(a):b&&c.destroy(a)}},scaytAbout:{label:a.lang.scayt.btn_about,group:"scaytButton",onClick:function(){a.scayt.tabToOpen="about";a.lockSelection();a.openDialog(d.dialogName)}},scaytOptions:{label:a.lang.scayt.btn_options,group:"scaytButton",onClick:function(){a.scayt.tabToOpen="options";a.lockSelection();a.openDialog(d.dialogName)}},
-scaytLangs:{label:a.lang.scayt.btn_langs,group:"scaytButton",onClick:function(){a.scayt.tabToOpen="langs";a.lockSelection();a.openDialog(d.dialogName)}},scaytDict:{label:a.lang.scayt.btn_dictionaries,group:"scaytButton",onClick:function(){a.scayt.tabToOpen="dictionaries";a.lockSelection();a.openDialog(d.dialogName)}}};a.plugins.wsc&&(b.WSC={label:a.lang.wsc.toolbar,group:"scaytButton",onClick:function(){var c=CKEDITOR.plugins.scayt,b=a.scayt,d=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():
-a.document.getBody().getText();(d=d.replace(/\s/g,""))?(b&&(c.state[a.name]&&b.setMarkupPaused)&&b.setMarkupPaused(!0),a.lockSelection(),a.execCommand("checkspell")):alert("Nothing to check!")}});a.addMenuItems(b)},bindEvents:function(a){var d=CKEDITOR.plugins.scayt,c=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE;CKEDITOR.on("dialogDefinition",function(a){if("scaytDialog"===a.data.name)a.data.definition.dialog.on("cancel",function(){return!1},this,null,-1)});var b=function(){a.scayt&&d.destroy(a)},
-f=function(){d.state[a.name]&&!a.readOnly&&d.createScayt(a)},g=function(){c?(a.on("blur",b),a.on("focus",f),a.focusManager.hasFocus&&f()):f()};a.on("contentDom",g);a.on("beforeCommandExec",function(c){if(c.data.name in d.options.disablingCommandExec&&"wysiwyg"==a.mode){if(c=a.scayt)d.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)}else if("bold"===c.data.name||"italic"===c.data.name||"underline"===c.data.name||"strike"===c.data.name||"subscript"===c.data.name||"superscript"===c.data.name)if(c=
-a.scayt)c.removeMarkupInSelectionNode(),c.fire("startSpellCheck")});a.on("beforeSetMode",function(c){if("source"==c.data&&(c=a.scayt))d.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)});a.on("afterCommandExec",function(c){var b;if("wysiwyg"==a.mode&&("undo"==c.data.name||"redo"==c.data.name))(b=a.scayt)&&setTimeout(function(){b.fire("startSpellCheck")},250)});a.on("readOnly",function(c){var b;c&&(b=a.scayt,!0===c.editor.readOnly?b&&b.fire("removeMarkupInDocument",{}):b?b.fire("startSpellCheck"):
-"wysiwyg"==c.editor.mode&&!0===d.state[c.editor.name]&&(d.createScayt(a),c.editor.fire("scaytButtonState",CKEDITOR.TRISTATE_ON)))});a.on("beforeDestroy",b);a.on("setData",function(){b();a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&g()},this,null,50);a.on("insertElement",function(){var c=a.scayt;c&&(c.removeMarkupInSelectionNode(),c.fire("startSpellCheck"))},this,null,50);a.on("insertHtml",function(){var c=a.scayt;c&&(c.removeMarkupInSelectionNode(),c.fire("startSpellCheck"))},this,null,50);a.on("scaytDialogShown",
-function(c){c.data.selectPage(a.scayt.tabToOpen)})},parseConfig:function(a){var d=CKEDITOR.plugins.scayt;d.replaceOldOptionsNames(a.config);"boolean"!==typeof a.config.scayt_autoStartup&&(a.config.scayt_autoStartup=!1);d.state[a.name]=a.config.scayt_autoStartup;a.config.scayt_contextCommands||(a.config.scayt_contextCommands="ignore|ignoreall|add");a.config.scayt_contextMenuItemsOrder||(a.config.scayt_contextMenuItemsOrder="suggest|moresuggest|control");a.config.scayt_sLang||(a.config.scayt_sLang=
-"en_US");if(void 0===a.config.scayt_maxSuggestions||"number"!=typeof a.config.scayt_maxSuggestions||0>a.config.scayt_maxSuggestions)a.config.scayt_maxSuggestions=5;if(void 0===a.config.scayt_customDictionaryIds||"string"!==typeof a.config.scayt_customDictionaryIds)a.config.scayt_customDictionaryIds="";if(void 0===a.config.scayt_userDictionaryName||"string"!==typeof a.config.scayt_userDictionaryName)a.config.scayt_userDictionaryName=null;if("string"===typeof a.config.scayt_uiTabs&&3===a.config.scayt_uiTabs.split(",").length){var c=
-[],b=[];a.config.scayt_uiTabs=a.config.scayt_uiTabs.split(",");CKEDITOR.tools.search(a.config.scayt_uiTabs,function(a){if(Number(a)===1||Number(a)===0){b.push(true);c.push(Number(a))}else b.push(false)});a.config.scayt_uiTabs=null===CKEDITOR.tools.search(b,!1)?c:[1,1,1]}else a.config.scayt_uiTabs=[1,1,1];"string"!=typeof a.config.scayt_serviceProtocol&&(a.config.scayt_serviceProtocol=null);"string"!=typeof a.config.scayt_serviceHost&&(a.config.scayt_serviceHost=null);"string"!=typeof a.config.scayt_servicePort&&
-(a.config.scayt_servicePort=null);"string"!=typeof a.config.scayt_servicePath&&(a.config.scayt_servicePath=null);a.config.scayt_moreSuggestions||(a.config.scayt_moreSuggestions="on");"string"!==typeof a.config.scayt_customerId&&(a.config.scayt_customerId="1:WvF0D4-UtPqN1-43nkD4-NKvUm2-daQqk3-LmNiI-z7Ysb4-mwry24-T8YrS3-Q2tpq2");"string"!==typeof a.config.scayt_srcUrl&&(d=document.location.protocol,d=-1!=d.search(/https?:/)?d:"http:",a.config.scayt_srcUrl=d+"//svc.webspellchecker.net/spellcheck31/lf/scayt3/ckscayt/ckscayt.js");
-"boolean"!==typeof CKEDITOR.config.scayt_handleCheckDirty&&(CKEDITOR.config.scayt_handleCheckDirty=!0);"boolean"!==typeof CKEDITOR.config.scayt_handleUndoRedo&&(CKEDITOR.config.scayt_handleUndoRedo=!0)},addRule:function(a){var d=a.dataProcessor,c=d&&d.htmlFilter,b=a._.elementsPath&&a._.elementsPath.filters,d=d&&d.dataFilter,f=a.addRemoveFormatFilter,g=function(c){var b=CKEDITOR.plugins.scayt;if(a.scayt&&c.hasAttribute(b.options.data_attribute_name))return!1},e=function(c){var b=CKEDITOR.plugins.scayt,
-d=!0;a.scayt&&c.hasAttribute(b.options.data_attribute_name)&&(d=!1);return d};b&&b.push(g);d&&d.addRules({elements:{span:function(c){var b=CKEDITOR.plugins.scayt;b&&(b.state[a.name]&&c.classes&&CKEDITOR.tools.search(c.classes,b.options.misspelled_word_class))&&(c.classes&&c.parent.type===CKEDITOR.NODE_DOCUMENT_FRAGMENT?(delete c.attributes.style,delete c.name):delete c.classes[CKEDITOR.tools.indexOf(c.classes,b.options.misspelled_word_class)]);return c}}});c&&c.addRules({elements:{span:function(c){var b=
-CKEDITOR.plugins.scayt;b&&(b.state[a.name]&&c.hasClass(b.options.misspelled_word_class)&&c.attributes[b.options.data_attribute_name])&&(c.removeClass(b.options.misspelled_word_class),delete c.attributes[b.options.data_attribute_name],delete c.name);return c}}});f&&f.call(a,e)},scaytMenuDefinition:function(a){var d=this,a=a.scayt;return{scayt_ignore:{label:a.getLocal("btn_ignore"),group:"scayt_control",order:1,exec:function(a){a.scayt.ignoreWord()}},scayt_ignoreall:{label:a.getLocal("btn_ignoreAll"),
-group:"scayt_control",order:2,exec:function(a){a.scayt.ignoreAllWords()}},scayt_add:{label:a.getLocal("btn_addWord"),group:"scayt_control",order:3,exec:function(a){var b=a.scayt;setTimeout(function(){b.addWordToUserDictionary()},10)}},option:{label:a.getLocal("btn_options"),group:"scayt_control",order:4,exec:function(a){a.scayt.tabToOpen="options";a.lockSelection();a.openDialog(d.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[0]?!0:!1}},language:{label:a.getLocal("btn_langs"),
-group:"scayt_control",order:5,exec:function(a){a.scayt.tabToOpen="langs";a.lockSelection();a.openDialog(d.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[1]?!0:!1}},dictionary:{label:a.getLocal("btn_dictionaries"),group:"scayt_control",order:6,exec:function(a){a.scayt.tabToOpen="dictionaries";a.lockSelection();a.openDialog(d.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[2]?!0:!1}},about:{label:a.getLocal("btn_about"),group:"scayt_control",order:7,exec:function(a){a.scayt.tabToOpen=
-"about";a.lockSelection();a.openDialog(d.dialogName)}}}},buildSuggestionMenuItems:function(a,d){var c={},b={},f=a.scayt;if(0<d.length&&"no_any_suggestions"!==d[0])for(var g=0;g<d.length;g++){var e="scayt_suggest_"+CKEDITOR.plugins.scayt.suggestions[g].replace(" ","_");a.addCommand(e,this.createCommand(CKEDITOR.plugins.scayt.suggestions[g]));g<a.config.scayt_maxSuggestions?(a.addMenuItem(e,{label:d[g],command:e,group:"scayt_suggest",order:g+1}),c[e]=CKEDITOR.TRISTATE_OFF):(a.addMenuItem(e,{label:d[g],
-command:e,group:"scayt_moresuggest",order:g+1}),b[e]=CKEDITOR.TRISTATE_OFF,"on"===a.config.scayt_moreSuggestions&&(a.addMenuItem("scayt_moresuggest",{label:f.getLocal("btn_moreSuggestions"),group:"scayt_moresuggest",order:10,getItems:function(){return b}}),c.scayt_moresuggest=CKEDITOR.TRISTATE_OFF))}else c.no_scayt_suggest=CKEDITOR.TRISTATE_DISABLED,a.addCommand("no_scayt_suggest",{exec:function(){}}),a.addMenuItem("no_scayt_suggest",{label:f.getLocal("btn_noSuggestions")||"no_scayt_suggest",command:"no_scayt_suggest",
-group:"scayt_suggest",order:0});return c},menuGenerator:function(a,d){var c=a.scayt,b=this.scaytMenuDefinition(a),f={},g=a.config.scayt_contextCommands.split("|");c.fire("getSuggestionsList",{lang:c.getLang(),word:d});f=this.buildSuggestionMenuItems(a,CKEDITOR.plugins.scayt.suggestions);if("off"==a.config.scayt_contextCommands)return f;for(var e in b)-1==CKEDITOR.tools.indexOf(g,e.replace("scayt_",""))&&"all"!=a.config.scayt_contextCommands||(f[e]=CKEDITOR.TRISTATE_OFF,"function"===typeof b[e].verification&&
-!b[e].verification(a)&&delete f[e],a.addCommand(e,{exec:b[e].exec}),a.addMenuItem(e,{label:a.lang.scayt[b[e].label]||b[e].label,command:e,group:b[e].group,order:b[e].order}));return f},createCommand:function(a){return{exec:function(d){d.scayt.replaceSelectionNode({word:a})}}}});
-CKEDITOR.plugins.scayt={state:{},suggestions:[],loadingHelper:{loadOrder:[]},isLoading:!1,options:{disablingCommandExec:{source:!0,newpage:!0,templates:!0},data_attribute_name:"data-scayt-word",misspelled_word_class:"scayt-misspell-word"},backCompatibilityMap:{scayt_service_protocol:"scayt_serviceProtocol",scayt_service_host:"scayt_serviceHost",scayt_service_port:"scayt_servicePort",scayt_service_path:"scayt_servicePath",scayt_customerid:"scayt_customerId"},replaceOldOptionsNames:function(a){for(var d in a)d in
-this.backCompatibilityMap&&(a[this.backCompatibilityMap[d]]=a[d],delete a[d])},createScayt:function(a){var d=this;this.loadScaytLibrary(a,function(a){var b={lang:a.config.scayt_sLang,container:"BODY"==a.editable().$.nodeName?a.document.getWindow().$.frameElement:a.editable().$,customDictionary:a.config.scayt_customDictionaryIds,userDictionaryName:a.config.scayt_userDictionaryName,localization:a.langCode,customer_id:a.config.scayt_customerId,data_attribute_name:d.options.data_attribute_name,misspelled_word_class:d.options.misspelled_word_class};
-a.config.scayt_serviceProtocol&&(b.service_protocol=a.config.scayt_serviceProtocol);a.config.scayt_serviceHost&&(b.service_host=a.config.scayt_serviceHost);a.config.scayt_servicePort&&(b.service_port=a.config.scayt_servicePort);a.config.scayt_servicePath&&(b.service_path=a.config.scayt_servicePath);b=new SCAYT.CKSCAYT(b,function(){},function(){});b.subscribe("suggestionListSend",function(a){for(var b={},c=[],d=0;d<a.suggestionList.length;d++)if(!b[a.suggestionList[d]]){b[a.suggestionList[d]]=a.suggestionList[d];
-c.push(a.suggestionList[d])}CKEDITOR.plugins.scayt.suggestions=c});a.scayt=b;a.fire("scaytButtonState",a.readOnly?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_ON)})},destroy:function(a){a.scayt&&a.scayt.destroy();delete a.scayt;a.fire("scaytButtonState",CKEDITOR.TRISTATE_OFF)},loadScaytLibrary:function(a,d){var c=this;"undefined"===typeof window.SCAYT||"function"!==typeof window.SCAYT.CKSCAYT?(this.loadingHelper[a.name]=d,this.loadingHelper.loadOrder.push(a.name),CKEDITOR.scriptLoader.load(a.config.scayt_srcUrl,
-function(){var a;CKEDITOR.fireOnce("scaytReady");for(var d=0;d<c.loadingHelper.loadOrder.length;d++){a=c.loadingHelper.loadOrder[d];if("function"===typeof c.loadingHelper[a])c.loadingHelper[a](CKEDITOR.instances[a]);delete c.loadingHelper[a]}c.loadingHelper.loadOrder=[]})):window.SCAYT&&"function"===typeof window.SCAYT.CKSCAYT&&(CKEDITOR.fireOnce("scaytReady"),a.scayt||"function"===typeof d&&d(a))}};
-CKEDITOR.on("scaytReady",function(){if(!0===CKEDITOR.config.scayt_handleCheckDirty){var a=CKEDITOR.editor.prototype;a.checkDirty=CKEDITOR.tools.override(a.checkDirty,function(a){return function(){var b=null,d=this.scayt;if(!CKEDITOR.plugins.scayt||!CKEDITOR.plugins.scayt.state[this.name]||!this.scayt)b=a.call(this);else if(b="ready"==this.status)var g=d.removeMarkupFromString(this.getSnapshot()),d=d.removeMarkupFromString(this._.previousValue),b=b&&d!==g;return b}});a.resetDirty=CKEDITOR.tools.override(a.resetDirty,
-function(a){return function(){var b=this.scayt;!CKEDITOR.plugins.scayt||!CKEDITOR.plugins.scayt.state[this.name]||!this.scayt?a.call(this):this._.previousValue=b.removeMarkupFromString(this.getSnapshot())}})}if(!0===CKEDITOR.config.scayt_handleUndoRedo){var a=CKEDITOR.plugins.undo.Image.prototype,d="function"==typeof a.equalsContent?"equalsContent":"equals";a[d]=CKEDITOR.tools.override(a[d],function(a){return function(b){var d=b.editor.scayt,g=this.contents,e=b.contents,h=null;CKEDITOR.plugins.scayt&&
-(CKEDITOR.plugins.scayt.state[b.editor.name]&&b.editor.scayt)&&(this.contents=d.removeMarkupFromString(g)||"",b.contents=d.removeMarkupFromString(e)||"");h=a.apply(this,arguments);this.contents=g;b.contents=e;return h}})}});(function(){CKEDITOR.plugins.add("stylescombo",{requires:"richcombo",init:function(c){var j=c.config,g=c.lang.stylescombo,f={},i=[],k=[];c.on("stylesSet",function(b){if(b=b.data.styles){for(var a,h,d,e=0,l=b.length;e<l;e++)if(a=b[e],!(c.blockless&&a.element in CKEDITOR.dtd.$block)&&(h=a.name,a=new CKEDITOR.style(a),!c.filter.customConfig||c.filter.check(a)))a._name=h,a._.enterMode=j.enterMode,a._.type=d=a.assignedTo||a.type,a._.weight=e+1E3*(d==CKEDITOR.STYLE_OBJECT?1:d==CKEDITOR.STYLE_BLOCK?2:3),
-f[h]=a,i.push(a),k.push(a);i.sort(function(a,b){return a._.weight-b._.weight})}});c.ui.addRichCombo("Styles",{label:g.label,title:g.panelTitle,toolbar:"styles,10",allowedContent:k,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(j.contentsCss),multiSelect:!0,attributes:{"aria-label":g.panelTitle}},init:function(){var b,a,c,d,e,f;e=0;for(f=i.length;e<f;e++)b=i[e],a=b._name,d=b._.type,d!=c&&(this.startGroup(g["panelTitle"+d]),c=d),this.add(a,b.type==CKEDITOR.STYLE_OBJECT?a:b.buildPreview(),a);this.commit()},
-onClick:function(b){c.focus();c.fire("saveSnapshot");var b=f[b],a=c.elementPath();c[b.checkActive(a,c)?"removeStyle":"applyStyle"](b);c.fire("saveSnapshot")},onRender:function(){c.on("selectionChange",function(b){for(var a=this.getValue(),b=b.data.path.elements,h=0,d=b.length,e;h<d;h++){e=b[h];for(var g in f)if(f[g].checkElementRemovable(e,!0,c)){g!=a&&this.setValue(g);return}}this.setValue("")},this)},onOpen:function(){var b=c.getSelection().getSelectedElement(),b=c.elementPath(b),a=[0,0,0,0];this.showAll();
-this.unmarkAll();for(var h in f){var d=f[h],e=d._.type;d.checkApplicable(b,c,c.activeFilter)?a[e]++:this.hideItem(h);d.checkActive(b,c)&&this.mark(h)}a[CKEDITOR.STYLE_BLOCK]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_BLOCK]);a[CKEDITOR.STYLE_INLINE]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_INLINE]);a[CKEDITOR.STYLE_OBJECT]||this.hideGroup(g["panelTitle"+CKEDITOR.STYLE_OBJECT])},refresh:function(){var b=c.elementPath();if(b){for(var a in f)if(f[a].checkApplicable(b,c,c.activeFilter))return;
-this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){f={};i=[]}})}})})();(function(){function i(c){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(d){if(d.editable().hasFocus){var e=d.getSelection(),b;if(b=(new CKEDITOR.dom.elementPath(e.getCommonAncestor(),e.root)).contains({td:1,th:1},1)){var e=d.createRange(),a=CKEDITOR.tools.tryThese(function(){var a=b.getParent().$.cells[b.$.cellIndex+(c?-1:1)];a.parentNode.parentNode;return a},function(){var a=b.getParent(),a=a.getAscendant("table").$.rows[a.$.rowIndex+(c?-1:1)];return a.cells[c?a.cells.length-1:
-0]});if(!a&&!c){for(var f=b.getAscendant("table").$,a=b.getParent().$.cells,f=new CKEDITOR.dom.element(f.insertRow(-1),d.document),g=0,h=a.length;g<h;g++)f.append((new CKEDITOR.dom.element(a[g],d.document)).clone(!1,!1)).appendBogus();e.moveToElementEditStart(f)}else if(a)a=new CKEDITOR.dom.element(a),e.moveToElementEditStart(a),(!e.checkStartOfBlock()||!e.checkEndOfBlock())&&e.selectNodeContents(a);else return!0;e.select(!0);return!0}}return!1}}}var h={editorFocus:!1,modes:{wysiwyg:1,source:1}},
-g={exec:function(c){c.container.focusNext(!0,c.tabIndex)}},f={exec:function(c){c.container.focusPrevious(!0,c.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(c){for(var d=!1!==c.config.enableTabKeyTools,e=c.config.tabSpaces||0,b="";e--;)b+=" ";if(b)c.on("key",function(a){9==a.data.keyCode&&(c.insertHtml(b),a.cancel())});if(d)c.on("key",function(a){(9==a.data.keyCode&&c.execCommand("selectNextCell")||a.data.keyCode==CKEDITOR.SHIFT+9&&c.execCommand("selectPreviousCell"))&&a.cancel()});c.addCommand("blur",
-CKEDITOR.tools.extend(g,h));c.addCommand("blurBack",CKEDITOR.tools.extend(f,h));c.addCommand("selectNextCell",i());c.addCommand("selectPreviousCell",i(!0))}})})();
-CKEDITOR.dom.element.prototype.focusNext=function(i,h){var g=void 0===h?this.getTabIndex():h,f,c,d,e,b,a;if(0>=g)for(b=this.getNextSourceNode(i,CKEDITOR.NODE_ELEMENT);b;){if(b.isVisible()&&0===b.getTabIndex()){d=b;break}b=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT)}else for(b=this.getDocument().getBody().getFirst();b=b.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!c&&b.equals(this)){if(c=!0,i){if(!(b=b.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else c&&!this.contains(b)&&
-(f=1);if(b.isVisible()&&!(0>(a=b.getTabIndex()))){if(f&&a==g){d=b;break}a>g&&(!d||!e||a<e)?(d=b,e=a):!d&&0===a&&(d=b,e=a)}}d&&d.focus()};
-CKEDITOR.dom.element.prototype.focusPrevious=function(i,h){for(var g=void 0===h?this.getTabIndex():h,f,c,d,e=0,b,a=this.getDocument().getBody().getLast();a=a.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!c&&a.equals(this)){if(c=!0,i){if(!(a=a.getPreviousSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else c&&!this.contains(a)&&(f=1);if(a.isVisible()&&!(0>(b=a.getTabIndex())))if(0>=g){if(f&&0===b){d=a;break}b>e&&(d=a,e=b)}else{if(f&&b==g){d=a;break}if(b<g&&(!d||b>e))d=a,e=b}}d&&d.focus()};CKEDITOR.plugins.add("table",{requires:"dialog",init:function(a){function e(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,f){this.setState(f.contains("table",1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}if(!a.blockless){var c=a.lang.table;a.addCommand("table",new CKEDITOR.dialogCommand("table",{context:"table",allowedContent:"table{width,height}[align,border,cellpadding,cellspacing,summary];caption tbody thead tfoot;th td tr[scope];"+(a.plugins.dialogadvtab?
-"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table",contentTransformations:[["table{width}: sizeToStyle","table[width]: sizeToAttribute"]]}));a.addCommand("tableProperties",new CKEDITOR.dialogCommand("tableProperties",e()));a.addCommand("tableDelete",e({exec:function(a){var b=a.elementPath().contains("table",1);if(b){var d=b.getParent(),c=a.editable();1==d.getChildCount()&&(!d.is("td","th")&&!d.equals(c))&&(b=d);a=a.createRange();a.moveToPosition(b,CKEDITOR.POSITION_BEFORE_START);
-b.remove();a.select()}}}));a.ui.addButton&&a.ui.addButton("Table",{label:c.toolbar,command:"table",toolbar:"insert,30"});CKEDITOR.dialog.add("table",this.path+"dialogs/table.js");CKEDITOR.dialog.add("tableProperties",this.path+"dialogs/table.js");a.addMenuItems&&a.addMenuItems({table:{label:c.menu,command:"tableProperties",group:"table",order:5},tabledelete:{label:c.deleteTable,command:"tableDelete",group:"table",order:1}});a.on("doubleclick",function(a){a.data.element.is("table")&&(a.data.dialog=
-"tableProperties")});a.contextMenu&&a.contextMenu.addListener(function(){return{tabledelete:CKEDITOR.TRISTATE_OFF,table:CKEDITOR.TRISTATE_OFF}})}}});(function(){function p(e){function d(a){!(0<b.length)&&(a.type==CKEDITOR.NODE_ELEMENT&&y.test(a.getName())&&!a.getCustomData("selected_cell"))&&(CKEDITOR.dom.element.setMarker(c,a,"selected_cell",!0),b.push(a))}for(var e=e.getRanges(),b=[],c={},a=0;a<e.length;a++){var f=e[a];if(f.collapsed)f=f.getCommonAncestor(),(f=f.getAscendant("td",!0)||f.getAscendant("th",!0))&&b.push(f);else{var f=new CKEDITOR.dom.walker(f),g;for(f.guard=d;g=f.next();)if(g.type!=CKEDITOR.NODE_ELEMENT||!g.is(CKEDITOR.dtd.table))if((g=
-g.getAscendant("td",!0)||g.getAscendant("th",!0))&&!g.getCustomData("selected_cell"))CKEDITOR.dom.element.setMarker(c,g,"selected_cell",!0),b.push(g)}}CKEDITOR.dom.element.clearAllMarkers(c);return b}function o(e,d){for(var b=p(e),c=b[0],a=c.getAscendant("table"),c=c.getDocument(),f=b[0].getParent(),g=f.$.rowIndex,b=b[b.length-1],h=b.getParent().$.rowIndex+b.$.rowSpan-1,b=new CKEDITOR.dom.element(a.$.rows[h]),g=d?g:h,f=d?f:b,b=CKEDITOR.tools.buildTableMap(a),a=b[g],g=d?b[g-1]:b[g+1],b=b[0].length,
-c=c.createElement("tr"),h=0;a[h]&&h<b;h++){var i;1<a[h].rowSpan&&g&&a[h]==g[h]?(i=a[h],i.rowSpan+=1):(i=(new CKEDITOR.dom.element(a[h])).clone(),i.removeAttribute("rowSpan"),i.appendBogus(),c.append(i),i=i.$);h+=i.colSpan-1}d?c.insertBefore(f):c.insertAfter(f)}function q(e){if(e instanceof CKEDITOR.dom.selection){for(var d=p(e),b=d[0].getAscendant("table"),c=CKEDITOR.tools.buildTableMap(b),e=d[0].getParent().$.rowIndex,d=d[d.length-1],a=d.getParent().$.rowIndex+d.$.rowSpan-1,d=[],f=e;f<=a;f++){for(var g=
-c[f],h=new CKEDITOR.dom.element(b.$.rows[f]),i=0;i<g.length;i++){var j=new CKEDITOR.dom.element(g[i]),l=j.getParent().$.rowIndex;1==j.$.rowSpan?j.remove():(j.$.rowSpan-=1,l==f&&(l=c[f+1],l[i-1]?j.insertAfter(new CKEDITOR.dom.element(l[i-1])):(new CKEDITOR.dom.element(b.$.rows[f+1])).append(j,1)));i+=j.$.colSpan-1}d.push(h)}c=b.$.rows;b=new CKEDITOR.dom.element(c[a+1]||(0<e?c[e-1]:null)||b.$.parentNode);for(f=d.length;0<=f;f--)q(d[f]);return b}e instanceof CKEDITOR.dom.element&&(b=e.getAscendant("table"),
-1==b.$.rows.length?b.remove():e.remove());return null}function r(e,d){for(var b=d?Infinity:0,c=0;c<e.length;c++){var a;a=e[c];for(var f=d,g=a.getParent().$.cells,h=0,i=0;i<g.length;i++){var j=g[i],h=h+(f?1:j.colSpan);if(j==a.$)break}a=h-1;if(d?a<b:a>b)b=a}return b}function k(e,d){for(var b=p(e),c=b[0].getAscendant("table"),a=r(b,1),b=r(b),a=d?a:b,f=CKEDITOR.tools.buildTableMap(c),c=[],b=[],g=f.length,h=0;h<g;h++)c.push(f[h][a]),b.push(d?f[h][a-1]:f[h][a+1]);for(h=0;h<g;h++)c[h]&&(1<c[h].colSpan&&
-b[h]==c[h]?(a=c[h],a.colSpan+=1):(a=(new CKEDITOR.dom.element(c[h])).clone(),a.removeAttribute("colSpan"),a.appendBogus(),a[d?"insertBefore":"insertAfter"].call(a,new CKEDITOR.dom.element(c[h])),a=a.$),h+=a.rowSpan-1)}function u(e,d){var b=e.getStartElement();if(b=b.getAscendant("td",1)||b.getAscendant("th",1)){var c=b.clone();c.appendBogus();d?c.insertBefore(b):c.insertAfter(b)}}function t(e){if(e instanceof CKEDITOR.dom.selection){var e=p(e),d=e[0]&&e[0].getAscendant("table"),b;a:{var c=0;b=e.length-
-1;for(var a={},f,g;f=e[c++];)CKEDITOR.dom.element.setMarker(a,f,"delete_cell",!0);for(c=0;f=e[c++];)if((g=f.getPrevious())&&!g.getCustomData("delete_cell")||(g=f.getNext())&&!g.getCustomData("delete_cell")){CKEDITOR.dom.element.clearAllMarkers(a);b=g;break a}CKEDITOR.dom.element.clearAllMarkers(a);g=e[0].getParent();(g=g.getPrevious())?b=g.getLast():(g=e[b].getParent(),b=(g=g.getNext())?g.getChild(0):null)}for(g=e.length-1;0<=g;g--)t(e[g]);b?m(b,!0):d&&d.remove()}else e instanceof CKEDITOR.dom.element&&
-(d=e.getParent(),1==d.getChildCount()?d.remove():e.remove())}function m(e,d){var b=e.getDocument(),c=CKEDITOR.document;CKEDITOR.env.ie&&10==CKEDITOR.env.version&&(c.focus(),b.focus());b=new CKEDITOR.dom.range(b);if(!b["moveToElementEdit"+(d?"End":"Start")](e))b.selectNodeContents(e),b.collapse(d?!1:!0);b.select(!0)}function v(e,d,b){e=e[d];if("undefined"==typeof b)return e;for(d=0;e&&d<e.length;d++){if(b.is&&e[d]==b.$)return d;if(d==b)return new CKEDITOR.dom.element(e[d])}return b.is?-1:null}function s(e,
-d,b){var c=p(e),a;if((d?1!=c.length:2>c.length)||(a=e.getCommonAncestor())&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))return!1;var f,e=c[0];a=e.getAscendant("table");var g=CKEDITOR.tools.buildTableMap(a),h=g.length,i=g[0].length,j=e.getParent().$.rowIndex,l=v(g,j,e);if(d){var n;try{var m=parseInt(e.getAttribute("rowspan"),10)||1;f=parseInt(e.getAttribute("colspan"),10)||1;n=g["up"==d?j-m:"down"==d?j+m:j]["left"==d?l-f:"right"==d?l+f:l]}catch(z){return!1}if(!n||e.$==n)return!1;c["up"==d||"left"==
-d?"unshift":"push"](new CKEDITOR.dom.element(n))}for(var d=e.getDocument(),o=j,m=n=0,q=!b&&new CKEDITOR.dom.documentFragment(d),s=0,d=0;d<c.length;d++){f=c[d];var k=f.getParent(),t=f.getFirst(),r=f.$.colSpan,u=f.$.rowSpan,k=k.$.rowIndex,w=v(g,k,f),s=s+r*u,m=Math.max(m,w-l+r);n=Math.max(n,k-j+u);if(!b){r=f;(u=r.getBogus())&&u.remove();r.trim();if(f.getChildren().count()){if(k!=o&&t&&(!t.isBlockBoundary||!t.isBlockBoundary({br:1})))(o=q.getLast(CKEDITOR.dom.walker.whitespaces(!0)))&&(!o.is||!o.is("br"))&&
-q.append("br");f.moveChildren(q)}d?f.remove():f.setHtml("")}o=k}if(b)return n*m==s;q.moveChildren(e);e.appendBogus();m>=i?e.removeAttribute("rowSpan"):e.$.rowSpan=n;n>=h?e.removeAttribute("colSpan"):e.$.colSpan=m;b=new CKEDITOR.dom.nodeList(a.$.rows);c=b.count();for(d=c-1;0<=d;d--)a=b.getItem(d),a.$.cells.length||(a.remove(),c++);return e}function w(e,d){var b=p(e);if(1<b.length)return!1;if(d)return!0;var b=b[0],c=b.getParent(),a=c.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(a),g=c.$.rowIndex,
-h=v(f,g,b),i=b.$.rowSpan,j;if(1<i){j=Math.ceil(i/2);for(var i=Math.floor(i/2),c=g+j,a=new CKEDITOR.dom.element(a.$.rows[c]),f=v(f,c),l,c=b.clone(),g=0;g<f.length;g++)if(l=f[g],l.parentNode==a.$&&g>h){c.insertBefore(new CKEDITOR.dom.element(l));break}else l=null;l||a.append(c)}else{i=j=1;a=c.clone();a.insertAfter(c);a.append(c=b.clone());l=v(f,g);for(h=0;h<l.length;h++)l[h].rowSpan++}c.appendBogus();b.$.rowSpan=j;c.$.rowSpan=i;1==j&&b.removeAttribute("rowSpan");1==i&&c.removeAttribute("rowSpan");return c}
-function x(e,d){var b=p(e);if(1<b.length)return!1;if(d)return!0;var b=b[0],c=b.getParent(),a=c.getAscendant("table"),a=CKEDITOR.tools.buildTableMap(a),f=v(a,c.$.rowIndex,b),g=b.$.colSpan;if(1<g)c=Math.ceil(g/2),g=Math.floor(g/2);else{for(var g=c=1,h=[],i=0;i<a.length;i++){var j=a[i];h.push(j[f]);1<j[f].rowSpan&&(i+=j[f].rowSpan-1)}for(a=0;a<h.length;a++)h[a].colSpan++}a=b.clone();a.insertAfter(b);a.appendBogus();b.$.colSpan=c;a.$.colSpan=g;1==c&&b.removeAttribute("colSpan");1==g&&a.removeAttribute("colSpan");
-return a}var y=/^(?:td|th)$/;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(e){function d(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function b(a,b){var c=e.addCommand(a,b);e.addFeature(c)}var c=e.lang.table;b("cellProperties",new CKEDITOR.dialogCommand("cellProperties",d({allowedContent:"td th{width,height,border-color,background-color,white-space,vertical-align,text-align}[colspan,rowspan]",
-requiredContent:"table"})));CKEDITOR.dialog.add("cellProperties",this.path+"dialogs/tableCell.js");b("rowDelete",d({requiredContent:"table",exec:function(a){a=a.getSelection();m(q(a))}}));b("rowInsertBefore",d({requiredContent:"table",exec:function(a){a=a.getSelection();o(a,!0)}}));b("rowInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();o(a)}}));b("columnDelete",d({requiredContent:"table",exec:function(a){for(var a=a.getSelection(),a=p(a),b=a[0],c=a[a.length-1],a=b.getAscendant("table"),
-d=CKEDITOR.tools.buildTableMap(a),e,j,l=[],n=0,o=d.length;n<o;n++)for(var k=0,q=d[n].length;k<q;k++)d[n][k]==b.$&&(e=k),d[n][k]==c.$&&(j=k);for(n=e;n<=j;n++)for(k=0;k<d.length;k++)c=d[k],b=new CKEDITOR.dom.element(a.$.rows[k]),c=new CKEDITOR.dom.element(c[n]),c.$&&(1==c.$.colSpan?c.remove():c.$.colSpan-=1,k+=c.$.rowSpan-1,b.$.cells.length||l.push(b));j=a.$.rows[0]&&a.$.rows[0].cells;e=new CKEDITOR.dom.element(j[e]||(e?j[e-1]:a.$.parentNode));l.length==o&&a.remove();e&&m(e,!0)}}));b("columnInsertBefore",
-d({requiredContent:"table",exec:function(a){a=a.getSelection();k(a,!0)}}));b("columnInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();k(a)}}));b("cellDelete",d({requiredContent:"table",exec:function(a){a=a.getSelection();t(a)}}));b("cellMerge",d({allowedContent:"td[colspan,rowspan]",requiredContent:"td[colspan,rowspan]",exec:function(a){m(s(a.getSelection()),!0)}}));b("cellMergeRight",d({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){m(s(a.getSelection(),
-"right"),!0)}}));b("cellMergeDown",d({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){m(s(a.getSelection(),"down"),!0)}}));b("cellVerticalSplit",d({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){m(w(a.getSelection()))}}));b("cellHorizontalSplit",d({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){m(x(a.getSelection()))}}));b("cellInsertBefore",d({requiredContent:"table",exec:function(a){a=a.getSelection();u(a,!0)}}));
-b("cellInsertAfter",d({requiredContent:"table",exec:function(a){a=a.getSelection();u(a)}}));e.addMenuItems&&e.addMenuItems({tablecell:{label:c.cell.menu,group:"tablecell",order:1,getItems:function(){var a=e.getSelection(),b=p(a);return{tablecell_insertBefore:CKEDITOR.TRISTATE_OFF,tablecell_insertAfter:CKEDITOR.TRISTATE_OFF,tablecell_delete:CKEDITOR.TRISTATE_OFF,tablecell_merge:s(a,null,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_right:s(a,"right",!0)?CKEDITOR.TRISTATE_OFF:
-CKEDITOR.TRISTATE_DISABLED,tablecell_merge_down:s(a,"down",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_vertical:w(a,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_horizontal:x(a,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_properties:0<b.length?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED}}},tablecell_insertBefore:{label:c.cell.insertBefore,group:"tablecell",command:"cellInsertBefore",order:5},tablecell_insertAfter:{label:c.cell.insertAfter,
-group:"tablecell",command:"cellInsertAfter",order:10},tablecell_delete:{label:c.cell.deleteCell,group:"tablecell",command:"cellDelete",order:15},tablecell_merge:{label:c.cell.merge,group:"tablecell",command:"cellMerge",order:16},tablecell_merge_right:{label:c.cell.mergeRight,group:"tablecell",command:"cellMergeRight",order:17},tablecell_merge_down:{label:c.cell.mergeDown,group:"tablecell",command:"cellMergeDown",order:18},tablecell_split_horizontal:{label:c.cell.splitHorizontal,group:"tablecell",
-command:"cellHorizontalSplit",order:19},tablecell_split_vertical:{label:c.cell.splitVertical,group:"tablecell",command:"cellVerticalSplit",order:20},tablecell_properties:{label:c.cell.title,group:"tablecellproperties",command:"cellProperties",order:21},tablerow:{label:c.row.menu,group:"tablerow",order:1,getItems:function(){return{tablerow_insertBefore:CKEDITOR.TRISTATE_OFF,tablerow_insertAfter:CKEDITOR.TRISTATE_OFF,tablerow_delete:CKEDITOR.TRISTATE_OFF}}},tablerow_insertBefore:{label:c.row.insertBefore,
-group:"tablerow",command:"rowInsertBefore",order:5},tablerow_insertAfter:{label:c.row.insertAfter,group:"tablerow",command:"rowInsertAfter",order:10},tablerow_delete:{label:c.row.deleteRow,group:"tablerow",command:"rowDelete",order:15},tablecolumn:{label:c.column.menu,group:"tablecolumn",order:1,getItems:function(){return{tablecolumn_insertBefore:CKEDITOR.TRISTATE_OFF,tablecolumn_insertAfter:CKEDITOR.TRISTATE_OFF,tablecolumn_delete:CKEDITOR.TRISTATE_OFF}}},tablecolumn_insertBefore:{label:c.column.insertBefore,
-group:"tablecolumn",command:"columnInsertBefore",order:5},tablecolumn_insertAfter:{label:c.column.insertAfter,group:"tablecolumn",command:"columnInsertAfter",order:10},tablecolumn_delete:{label:c.column.deleteColumn,group:"tablecolumn",command:"columnDelete",order:15}});e.contextMenu&&e.contextMenu.addListener(function(a,b,c){return(a=c.contains({td:1,th:1},1))&&!a.isReadOnly()?{tablecell:CKEDITOR.TRISTATE_OFF,tablerow:CKEDITOR.TRISTATE_OFF,tablecolumn:CKEDITOR.TRISTATE_OFF}:null})},getSelectedCells:p};
-CKEDITOR.plugins.add("tabletools",CKEDITOR.plugins.tabletools)})();CKEDITOR.tools.buildTableMap=function(p){for(var p=p.$.rows,o=-1,q=[],r=0;r<p.length;r++){o++;!q[o]&&(q[o]=[]);for(var k=-1,u=0;u<p[r].cells.length;u++){var t=p[r].cells[u];for(k++;q[o][k];)k++;for(var m=isNaN(t.colSpan)?1:t.colSpan,t=isNaN(t.rowSpan)?1:t.rowSpan,v=0;v<t;v++){q[o+v]||(q[o+v]=[]);for(var s=0;s<m;s++)q[o+v][k+s]=p[r].cells[u]}k+=m-1}}return q};(function(){var g=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],l={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(a){function b(a){d.enabled&&!1!==a.data.command.canUndo&&d.save()}function c(){d.enabled=a.readOnly?!1:"wysiwyg"==a.mode;d.onChange()}var d=a.undoManager=new e(a),j=d.editingHandler=new i(d),f=a.addCommand("undo",{exec:function(){d.undo()&&(a.selectionChange(),this.fire("afterUndo"))},startDisabled:!0,canUndo:!1}),h=a.addCommand("redo",{exec:function(){d.redo()&&
-(a.selectionChange(),this.fire("afterRedo"))},startDisabled:!0,canUndo:!1});a.setKeystroke([[g[0],"undo"],[g[1],"redo"],[g[2],"redo"]]);d.onChange=function(){f.setState(d.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);h.setState(d.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)};a.on("beforeCommandExec",b);a.on("afterCommandExec",b);a.on("saveSnapshot",function(a){d.save(a.data&&a.data.contentOnly)});a.on("contentDom",j.attachListeners,j);a.on("instanceReady",function(){a.fire("saveSnapshot")});
-a.on("beforeModeUnload",function(){"wysiwyg"==a.mode&&d.save(!0)});a.on("mode",c);a.on("readOnly",c);a.ui.addButton&&(a.ui.addButton("Undo",{label:a.lang.undo.undo,command:"undo",toolbar:"undo,10"}),a.ui.addButton("Redo",{label:a.lang.undo.redo,command:"redo",toolbar:"undo,20"}));a.resetUndo=function(){d.reset();a.fire("saveSnapshot")};a.on("updateSnapshot",function(){d.currentImage&&d.update()});a.on("lockSnapshot",function(a){a=a.data;d.lock(a&&a.dontUpdate,a&&a.forceUpdate)});a.on("unlockSnapshot",
-d.unlock,d)}});CKEDITOR.plugins.undo={};var e=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0];this.locked=null;this.previousKeyGroup=-1;this.limit=a.config.undoStackSize||20;this.strokesLimit=25;this.editor=a;this.reset()};e.prototype={type:function(a,b){var c=e.getKeyGroup(a),d=this.strokesRecorded[c]+1,b=b||d>=this.strokesLimit;this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange());b?(d=0,this.editor.fire("saveSnapshot")):this.editor.fire("change");this.strokesRecorded[c]=
-d;this.previousKeyGroup=c},keyGroupChanged:function(a){return e.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[];this.index=-1;this.currentImage=null;this.hasRedo=this.hasUndo=!1;this.locked=null;this.resetType()},resetType:function(){this.strokesRecorded=[0,0];this.typing=!1;this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0);this.hasRedo=!!this.getNextImage(!1);this.resetType();this.onChange()},save:function(a,b,c){var d=this.editor;if(this.locked||
-"ready"!=d.status||"wysiwyg"!=d.mode)return!1;var e=d.editable();if(!e||"ready"!=e.status)return!1;e=this.snapshots;b||(b=new f(d));if(!1===b.contents)return!1;if(this.currentImage)if(b.equalsContent(this.currentImage)){if(a||b.equalsSelection(this.currentImage))return!1}else!1!==c&&d.fire("change");e.splice(this.index+1,e.length-this.index-1);e.length==this.limit&&e.shift();this.index=e.push(b)-1;this.currentImage=b;!1!==c&&this.refreshState();return!0},restoreImage:function(a){var b=this.editor,
-c;a.bookmarks&&(b.focus(),c=b.getSelection());this.locked={level:999};this.editor.loadSnapshot(a.contents);a.bookmarks?c.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(c=this.editor.document.getBody().$.createTextRange(),c.collapse(!0),c.select());this.locked=null;this.index=a.index;this.currentImage=this.snapshots[this.index];this.update();this.refreshState();b.fire("change")},getNextImage:function(a){var b=this.snapshots,c=this.currentImage,d;if(c)if(a)for(d=this.index-1;0<=d;d--){if(a=b[d],!c.equalsContent(a))return a.index=
-d,a}else for(d=this.index+1;d<b.length;d++)if(a=b[d],!c.equalsContent(a))return a.index=d,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||
-(a=new f(this.editor));for(var b=this.index,c=this.snapshots;0<b&&this.currentImage.equalsContent(c[b-1]);)b-=1;c.splice(b,this.index-b+1,a);this.index=b;this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var b=this.snapshots,c=b[b.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=b[b.length-1]=a,!0):!1},lock:function(a,b){if(this.locked)this.locked.level++;else if(a)this.locked={level:1};else{var c=null;if(b)c=!0;else{var d=new f(this.editor,
-!0);this.currentImage&&this.currentImage.equalsContent(d)&&(c=d)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;this.locked=null;if(!0===a)this.update();else if(a){var b=new f(this.editor,!0);a.equalsContent(b)||this.update()}}}};e.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1};e.keyGroups={PRINTABLE:0,FUNCTIONAL:1};e.isNavigationKey=function(a){return!!e.navigationKeyCodes[a]};e.getKeyGroup=function(a){var b=e.keyGroups;
-return l[a]?b.FUNCTIONAL:b.PRINTABLE};e.getOppositeKeyGroup=function(a){var b=e.keyGroups;return a==b.FUNCTIONAL?b.PRINTABLE:b.FUNCTIONAL};e.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&e.getKeyGroup(a)==e.keyGroups.FUNCTIONAL};var f=CKEDITOR.plugins.undo.Image=function(a,b){this.editor=a;a.fire("beforeUndoImage");var c=a.getSnapshot();CKEDITOR.env.ie&&c&&(c=c.replace(/\s+data-cke-expando=".*?"/g,""));this.contents=c;b||(this.bookmarks=(c=c&&a.getSelection())&&c.createBookmarks2(!0));a.fire("afterUndoImage")},
-h=/\b(?:href|src|name)="[^"]*?"/gi;f.prototype={equalsContent:function(a){var b=this.contents,a=a.contents;if(CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks))b=b.replace(h,""),a=a.replace(h,"");return b!=a?!1:!0},equalsSelection:function(a){var b=this.bookmarks,a=a.bookmarks;if(b||a){if(!b||!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++){var d=b[c],e=a[c];if(d.startOffset!=e.startOffset||d.endOffset!=e.endOffset||!CKEDITOR.tools.arrayCompare(d.start,e.start)||!CKEDITOR.tools.arrayCompare(d.end,
-e.end))return!1}}return!0}};var i=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a;this.ignoreInputEvent=!1;this.keyEventsStack=new k;this.lastKeydownImage=null};i.prototype={onKeydown:function(a){if(-1<CKEDITOR.tools.indexOf(g,a.data.getKeystroke()))a.data.preventDefault();else{this.keyEventsStack.cleanUp(a);var a=a.data.getKey(),b=this.undoManager;this.keyEventsStack.getLast(a)||this.keyEventsStack.push(a);this.lastKeydownImage=new f(b.editor);if(e.isNavigationKey(a)||this.undoManager.keyGroupChanged(a))if(b.strokesRecorded[0]||
-b.strokesRecorded[1])b.save(!1,this.lastKeydownImage),b.resetType()}},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=!1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0));this.keyEventsStack.increment(a.keyCode);this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&(this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var b=this.undoManager,a=a.data.getKey(),c=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a);
-if(!e.ieFunctionalKeysBug(a)||!this.lastKeydownImage||!this.lastKeydownImage.equalsContent(new f(b.editor,!0)))if(0<c)b.type(a);else if(e.isNavigationKey(a))this.onNavigationKey(!0)},onNavigationKey:function(a){var b=this.undoManager;(a||!b.save(!0,null,!1))&&b.updateSelection(new f(b.editor));b.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},attachListeners:function(){var a=this.undoManager.editor,b=a.editable(),c=this;b.attachListener(b,"keydown",function(a){c.onKeydown(a);
-if(e.ieFunctionalKeysBug(a.data.getKey()))c.onInput()},null,null,999);b.attachListener(b,CKEDITOR.env.ie?"keypress":"input",c.onInput,c,null,999);b.attachListener(b,"keyup",c.onKeyup,c,null,999);b.attachListener(b,"paste",c.ignoreInputEventListener,c,null,999);b.attachListener(b,"drop",c.ignoreInputEventListener,c,null,999);b.attachListener(b.isInline()?b:a.document.getDocumentElement(),"click",function(){c.onNavigationKey()},null,null,999);b.attachListener(this.undoManager.editor,"blur",function(){c.keyEventsStack.remove(9)},
-null,null,999)}};var k=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};k.prototype={push:function(a){return this.stack[this.stack.push({keyCode:a,inputs:0})-1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var b=this.stack.length;b--;)if(this.stack[b].keyCode==a)return b;return-1},getLast:function(a){a=this.getLastIndex(a);return-1!=a?this.stack[a]:null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a);-1!=a&&
-this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=this.stack.length,b=0;a--;)b+=this.stack[a].inputs;return b},cleanUp:function(a){a=a.data.$;!a.ctrlKey&&!a.metaKey&&this.remove(17);a.shiftKey||this.remove(16);a.altKey||this.remove(18)}}})();CKEDITOR.config.wsc_removeGlobalVariable=!0;
-CKEDITOR.plugins.add("wsc",{requires:"dialog",parseApi:function(a){a.config.wsc_onFinish="function"===typeof a.config.wsc_onFinish?a.config.wsc_onFinish:function(){};a.config.wsc_onClose="function"===typeof a.config.wsc_onClose?a.config.wsc_onClose:function(){}},parseConfig:function(a){a.config.wsc_customerId=a.config.wsc_customerId||CKEDITOR.config.wsc_customerId||"1:ua3xw1-2XyGJ3-GWruD3-6OFNT1-oXcuB1-nR6Bp4-hgQHc-EcYng3-sdRXG3-NOfFk";a.config.wsc_customDictionaryIds=a.config.wsc_customDictionaryIds||
-CKEDITOR.config.wsc_customDictionaryIds||"";a.config.wsc_userDictionaryName=a.config.wsc_userDictionaryName||CKEDITOR.config.wsc_userDictionaryName||"";a.config.wsc_customLoaderScript=a.config.wsc_customLoaderScript||CKEDITOR.config.wsc_customLoaderScript;CKEDITOR.config.wsc_cmd=a.config.wsc_cmd||CKEDITOR.config.wsc_cmd||"spell";CKEDITOR.config.wsc_version=CKEDITOR.version+" | %Rev%"},init:function(a){var b=CKEDITOR.env;this.parseConfig(a);this.parseApi(a);a.addCommand("checkspell",new CKEDITOR.dialogCommand("checkspell")).modes=
-{wysiwyg:!CKEDITOR.env.opera&&!CKEDITOR.env.air&&document.domain==window.location.hostname&&!(b.ie&&(8>b.version||b.quirks))};"undefined"==typeof a.plugins.scayt&&a.ui.addButton&&a.ui.addButton("SpellChecker",{label:a.lang.wsc.toolbar,click:function(a){var b=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():a.document.getBody().getText();(b=b.replace(/\s/g,""))?a.execCommand("checkspell"):alert("Nothing to check!")},toolbar:"spellchecker,10"});CKEDITOR.dialog.add("checkspell",this.path+
-(CKEDITOR.env.ie&&7>=CKEDITOR.env.version?"dialogs/wsc_ie.js":window.postMessage?"dialogs/wsc.js":"dialogs/wsc_ie.js"))}});CKEDITOR.config.plugins='dialogui,dialog,about,a11yhelp,dialogadvtab,basicstyles,bidi,blockquote,clipboard,button,panelbutton,panel,floatpanel,colorbutton,colordialog,templates,menu,contextmenu,div,resize,toolbar,elementspath,enterkey,entities,popup,filebrowser,find,fakeobjects,flash,floatingspace,listblock,richcombo,font,forms,format,horizontalrule,htmlwriter,iframe,wysiwygarea,image,indent,indentblock,indentlist,smiley,justify,menubutton,language,link,list,liststyle,magicline,maximize,newpage,pagebreak,pastetext,pastefromword,preview,print,removeformat,save,selectall,showblocks,showborders,sourcearea,specialchar,scayt,stylescombo,tab,table,tabletools,undo,wsc';CKEDITOR.config.skin='moono';(function() {var setIcons = function(icons, strip) {var path = CKEDITOR.getUrl( 'plugins/' + strip );icons = icons.split( ',' );for ( var i = 0; i < icons.length; i++ )CKEDITOR.skin.icons[ icons[ i ] ] = { path: path, offset: -icons[ ++i ], bgsize : icons[ ++i ] };};if (CKEDITOR.env.hidpi) setIcons('about,0,,bold,24,,italic,48,,strike,72,,subscript,96,,superscript,120,,underline,144,,bidiltr,168,,bidirtl,192,,blockquote,216,,copy-rtl,240,,copy,264,,cut-rtl,288,,cut,312,,paste-rtl,336,,paste,360,,bgcolor,384,,textcolor,408,,templates-rtl,432,,templates,456,,creatediv,480,,find-rtl,504,,find,528,,replace,552,,flash,576,,button,600,,checkbox,624,,form,648,,hiddenfield,672,,imagebutton,696,,radio,720,,select-rtl,744,,select,768,,textarea-rtl,792,,textarea,816,,textfield-rtl,840,,textfield,864,,horizontalrule,888,,iframe,912,,image,936,,indent-rtl,960,,indent,984,,outdent-rtl,1008,,outdent,1032,,smiley,1056,,justifyblock,1080,,justifycenter,1104,,justifyleft,1128,,justifyright,1152,,language,1176,,anchor-rtl,1200,,anchor,1224,,link,1248,,unlink,1272,,bulletedlist-rtl,1296,,bulletedlist,1320,,numberedlist-rtl,1344,,numberedlist,1368,,maximize,1392,,newpage-rtl,1416,,newpage,1440,,pagebreak-rtl,1464,,pagebreak,1488,,pastetext-rtl,1512,,pastetext,1536,,pastefromword-rtl,1560,,pastefromword,1584,,preview-rtl,1608,,preview,1632,,print,1656,,removeformat,1680,,save,1704,,selectall,1728,,showblocks-rtl,1752,,showblocks,1776,,source-rtl,1800,,source,1824,,specialchar,1848,,scayt,1872,,table,1896,,redo-rtl,1920,,redo,1944,,undo-rtl,1968,,undo,1992,,spellchecker,2016,','icons_hidpi.png');else setIcons('about,0,auto,bold,24,auto,italic,48,auto,strike,72,auto,subscript,96,auto,superscript,120,auto,underline,144,auto,bidiltr,168,auto,bidirtl,192,auto,blockquote,216,auto,copy-rtl,240,auto,copy,264,auto,cut-rtl,288,auto,cut,312,auto,paste-rtl,336,auto,paste,360,auto,bgcolor,384,auto,textcolor,408,auto,templates-rtl,432,auto,templates,456,auto,creatediv,480,auto,find-rtl,504,auto,find,528,auto,replace,552,auto,flash,576,auto,button,600,auto,checkbox,624,auto,form,648,auto,hiddenfield,672,auto,imagebutton,696,auto,radio,720,auto,select-rtl,744,auto,select,768,auto,textarea-rtl,792,auto,textarea,816,auto,textfield-rtl,840,auto,textfield,864,auto,horizontalrule,888,auto,iframe,912,auto,image,936,auto,indent-rtl,960,auto,indent,984,auto,outdent-rtl,1008,auto,outdent,1032,auto,smiley,1056,auto,justifyblock,1080,auto,justifycenter,1104,auto,justifyleft,1128,auto,justifyright,1152,auto,language,1176,auto,anchor-rtl,1200,auto,anchor,1224,auto,link,1248,auto,unlink,1272,auto,bulletedlist-rtl,1296,auto,bulletedlist,1320,auto,numberedlist-rtl,1344,auto,numberedlist,1368,auto,maximize,1392,auto,newpage-rtl,1416,auto,newpage,1440,auto,pagebreak-rtl,1464,auto,pagebreak,1488,auto,pastetext-rtl,1512,auto,pastetext,1536,auto,pastefromword-rtl,1560,auto,pastefromword,1584,auto,preview-rtl,1608,auto,preview,1632,auto,print,1656,auto,removeformat,1680,auto,save,1704,auto,selectall,1728,auto,showblocks-rtl,1752,auto,showblocks,1776,auto,source-rtl,1800,auto,source,1824,auto,specialchar,1848,auto,scayt,1872,auto,table,1896,auto,redo-rtl,1920,auto,redo,1944,auto,undo-rtl,1968,auto,undo,1992,auto,spellchecker,2016,auto','icons.png');})();CKEDITOR.lang.languages={"af":1,"sq":1,"ar":1,"eu":1,"bn":1,"bs":1,"bg":1,"ca":1,"zh-cn":1,"zh":1,"hr":1,"cs":1,"da":1,"nl":1,"en":1,"en-au":1,"en-ca":1,"en-gb":1,"eo":1,"et":1,"fo":1,"fi":1,"fr":1,"fr-ca":1,"gl":1,"ka":1,"de":1,"el":1,"gu":1,"he":1,"hi":1,"hu":1,"is":1,"id":1,"it":1,"ja":1,"km":1,"ko":1,"ku":1,"lv":1,"lt":1,"mk":1,"ms":1,"mn":1,"no":1,"nb":1,"fa":1,"pl":1,"pt-br":1,"pt":1,"ro":1,"ru":1,"sr":1,"sr-latn":1,"si":1,"sk":1,"sl":1,"es":1,"sv":1,"tt":1,"th":1,"tr":1,"ug":1,"uk":1,"vi":1,"cy":1};}()); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/config.js b/wqflask/wqflask/static/packages/ckeditor/config.js
deleted file mode 100644
index dd43dc10..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/config.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- */
-
-CKEDITOR.editorConfig = function( config ) {
- // Define changes to default configuration here. For example:
- // config.language = 'fr';
- // config.uiColor = '#AADC6E';
-};
diff --git a/wqflask/wqflask/static/packages/ckeditor/contents.css b/wqflask/wqflask/static/packages/ckeditor/contents.css
deleted file mode 100644
index f29bc0a8..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/contents.css
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-
-body
-{
- /* Font */
- font-family: sans-serif, Arial, Verdana, "Trebuchet MS";
- font-size: 12px;
-
- /* Text color */
- color: #333;
-
- /* Remove the background color to make it transparent */
- background-color: #fff;
-
- margin: 20px;
-}
-
-.cke_editable
-{
- font-size: 13px;
- line-height: 1.6;
-}
-
-blockquote
-{
- font-style: italic;
- font-family: Georgia, Times, "Times New Roman", serif;
- padding: 2px 0;
- border-style: solid;
- border-color: #ccc;
- border-width: 0;
-}
-
-.cke_contents_ltr blockquote
-{
- padding-left: 20px;
- padding-right: 8px;
- border-left-width: 5px;
-}
-
-.cke_contents_rtl blockquote
-{
- padding-left: 8px;
- padding-right: 20px;
- border-right-width: 5px;
-}
-
-a
-{
- color: #0782C1;
-}
-
-ol,ul,dl
-{
- /* IE7: reset rtl list margin. (#7334) */
- *margin-right: 0px;
- /* preserved spaces for list items with text direction other than the list. (#6249,#8049)*/
- padding: 0 40px;
-}
-
-h1,h2,h3,h4,h5,h6
-{
- font-weight: normal;
- line-height: 1.2;
-}
-
-hr
-{
- border: 0px;
- border-top: 1px solid #ccc;
-}
-
-img.right
-{
- border: 1px solid #ccc;
- float: right;
- margin-left: 15px;
- padding: 5px;
-}
-
-img.left
-{
- border: 1px solid #ccc;
- float: left;
- margin-right: 15px;
- padding: 5px;
-}
-
-pre
-{
- white-space: pre-wrap; /* CSS 2.1 */
- word-wrap: break-word; /* IE7 */
- -moz-tab-size: 4;
- -o-tab-size: 4;
- -webkit-tab-size: 4;
- tab-size: 4;
-}
-
-.marker
-{
- background-color: Yellow;
-}
-
-span[lang]
-{
- font-style: italic;
-}
-
-figure
-{
- text-align: center;
- border: solid 1px #ccc;
- border-radius: 2px;
- background: rgba(0,0,0,0.05);
- padding: 10px;
- margin: 10px 20px;
- display: inline-block;
-}
-
-figure > figcaption
-{
- text-align: center;
- display: block; /* For IE8 */
-}
-
-a > img {
- padding: 1px;
- margin: 1px;
- border: none;
- outline: 1px solid #0782C1;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/af.js b/wqflask/wqflask/static/packages/ckeditor/lang/af.js
deleted file mode 100644
index 3d0a2b2d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/af.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['af']={"editor":"Teksverwerker","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Druk op ALT 0 vir hulp","browseServer":"Blaai op bediener","url":"URL","protocol":"Protokol","upload":"Oplaai","uploadSubmit":"Stuur na bediener","image":"Afbeelding","flash":"Flash","form":"Vorm","checkbox":"Merkhokkie","radio":"Radioknoppie","textField":"Teksveld","textarea":"Teks-area","hiddenField":"Blinde veld","button":"Knop","select":"Keuseveld","imageButton":"Afbeeldingsknop","notSet":"<geen instelling>","id":"Id","name":"Naam","langDir":"Skryfrigting","langDirLtr":"Links na regs (LTR)","langDirRtl":"Regs na links (RTL)","langCode":"Taalkode","longDescr":"Lang beskrywing URL","cssClass":"CSS klasse","advisoryTitle":"Aanbevole titel","cssStyle":"Styl","ok":"OK","cancel":"Kanselleer","close":"Sluit","preview":"Voorbeeld","resize":"Sleep om te herskaal","generalTab":"Algemeen","advancedTab":"Gevorderd","validateNumberFailed":"Hierdie waarde is nie 'n getal nie.","confirmNewPage":"Alle wysiginge sal verlore gaan. Is u seker dat u 'n nuwe bladsy wil laai?","confirmCancel":"Sommige opsies is gewysig. Is u seker dat u hierdie dialoogvenster wil sluit?","options":"Opsies","target":"Doel","targetNew":"Nuwe venster (_blank)","targetTop":"Boonste venster (_top)","targetSelf":"Selfde venster (_self)","targetParent":"Oorspronklike venster (_parent)","langDirLTR":"Links na Regs (LTR)","langDirRTL":"Regs na Links (RTL)","styles":"Styl","cssClasses":"CSS klasse","width":"Breedte","height":"Hoogte","align":"Oplyn","alignLeft":"Links","alignRight":"Regs","alignCenter":"Sentreer","alignJustify":"Uitvul","alignTop":"Bo","alignMiddle":"Middel","alignBottom":"Onder","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Hoogte moet 'n getal wees","invalidWidth":"Breedte moet 'n getal wees.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, nie beskikbaar nie</span>"},"about":{"copy":"Kopiereg &copy; $1. Alle regte voorbehou.","dlgTitle":"Info oor CKEditor","help":"Check $1 for help.","moreInfo":"Vir lisensie-informasie, besoek asb. ons webwerf:","title":"Info oor CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Vet","italic":"Skuins","strike":"Deurstreep","subscript":"Onderskrif","superscript":"Bo-skrif","underline":"Onderstreep"},"bidi":{"ltr":"Skryfrigting van links na regs","rtl":"Skryfrigting van regs na links"},"blockquote":{"toolbar":"Sitaatblok"},"clipboard":{"copy":"Kopiëer","copyError":"U blaaier se sekuriteitsinstelling belet die kopiëringsaksie. Gebruik die sleutelbordkombinasie (Ctrl/Cmd+C).","cut":"Knip","cutError":"U blaaier se sekuriteitsinstelling belet die outomatiese knip-aksie. Gebruik die sleutelbordkombinasie (Ctrl/Cmd+X).","paste":"Plak","pasteArea":"Plak-area","pasteMsg":"Plak die teks in die volgende teks-area met die sleutelbordkombinasie (<STRONG>Ctrl/Cmd+V</STRONG>) en druk <STRONG>OK</STRONG>.","securityMsg":"Weens u blaaier se sekuriteitsinstelling is data op die knipbord nie toeganklik nie. U kan dit eers weer in hierdie venster plak.","title":"Byvoeg"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Outomaties","bgColorTitle":"Agtergrondkleur","colors":{"000":"Swart","800000":"Meroen","8B4513":"Sjokoladebruin","2F4F4F":"Donkerleisteengrys","008080":"Blougroen","000080":"Vlootblou","4B0082":"Indigo","696969":"Donkergrys","B22222":"Rooibaksteen","A52A2A":"Bruin","DAA520":"Donkergeel","006400":"Donkergroen","40E0D0":"Turkoois","0000CD":"Middelblou","800080":"Pers","808080":"Grys","F00":"Rooi","FF8C00":"Donkeroranje","FFD700":"Goud","008000":"Groen","0FF":"Siaan","00F":"Blou","EE82EE":"Viooltjieblou","A9A9A9":"Donkergrys","FFA07A":"Ligsalm","FFA500":"Oranje","FFFF00":"Geel","00FF00":"Lemmetjie","AFEEEE":"Ligturkoois","ADD8E6":"Ligblou","DDA0DD":"Pruim","D3D3D3":"Liggrys","FFF0F5":"Linne","FAEBD7":"Ivoor","FFFFE0":"Liggeel","F0FFF0":"Heuningdou","F0FFFF":"Asuur","F0F8FF":"Ligte hemelsblou","E6E6FA":"Laventel","FFF":"Wit"},"more":"Meer Kleure...","panelTitle":"Kleure","textColorTitle":"Tekskleur"},"colordialog":{"clear":"Herstel","highlight":"Aktief","options":"Kleuropsies","selected":"Geselekteer","title":"Kies kleur"},"templates":{"button":"Sjablone","emptyListMsg":"(Geen sjablone gedefineer nie)","insertOption":"Vervang huidige inhoud","options":"Sjabloon opsies","selectPromptMsg":"Kies die sjabloon om te gebruik in die redigeerder (huidige inhoud gaan verlore):","title":"Inhoud Sjablone"},"contextmenu":{"options":"Konteks Spyskaart-opsies"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Aanbevole Titel","cssClassInputLabel":"CSS klasse","edit":"Wysig Div","inlineStyleInputLabel":"Inlyn Styl","langDirLTRLabel":"Links na regs (LTR)","langDirLabel":"Skryfrigting","langDirRTLLabel":"Regs na links (RTL)","languageCodeInputLabel":" Taalkode","remove":"Verwyder Div","styleSelectLabel":"Styl","title":"Skep Div houer","toolbar":"Skep Div houer"},"toolbar":{"toolbarCollapse":"Verklein werkbalk","toolbarExpand":"Vergroot werkbalk","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elemente-pad","eleTitle":"%1 element"},"find":{"find":"Soek","findOptions":"Find Options","findWhat":"Soek na:","matchCase":"Hoof/kleinletter sensitief","matchCyclic":"Soek deurlopend","matchWord":"Hele woord moet voorkom","notFoundMsg":"Teks nie gevind nie.","replace":"Vervang","replaceAll":"Vervang alles","replaceSuccessMsg":"%1 voorkoms(te) vervang.","replaceWith":"Vervang met:","title":"Soek en vervang"},"fakeobjects":{"anchor":"Anker","flash":"Flash animasie","hiddenfield":"Verborge veld","iframe":"IFrame","unknown":"Onbekende objek"},"flash":{"access":"Skrip toegang","accessAlways":"Altyd","accessNever":"Nooit","accessSameDomain":"Selfde domeinnaam","alignAbsBottom":"Absoluut-onder","alignAbsMiddle":"Absoluut-middel","alignBaseline":"Basislyn","alignTextTop":"Teks bo","bgcolor":"Agtergrondkleur","chkFull":"Laat volledige skerm toe","chkLoop":"Herhaal","chkMenu":"Flash spyskaart aan","chkPlay":"Speel outomaties","flashvars":"Veranderlikes vir Flash","hSpace":"HSpasie","properties":"Flash eienskappe","propertiesTab":"Eienskappe","quality":"Kwaliteit","qualityAutoHigh":"Outomaties hoog","qualityAutoLow":"Outomaties laag","qualityBest":"Beste","qualityHigh":"Hoog","qualityLow":"Laag","qualityMedium":"Gemiddeld","scale":"Skaal","scaleAll":"Wys alles","scaleFit":"Presiese pas","scaleNoBorder":"Geen rand","title":"Flash eienskappe","vSpace":"VSpasie","validateHSpace":"HSpasie moet 'n heelgetal wees.","validateSrc":"Voeg die URL in","validateVSpace":"VSpasie moet 'n heelgetal wees.","windowMode":"Venster modus","windowModeOpaque":"Ondeursigtig","windowModeTransparent":"Deursigtig","windowModeWindow":"Venster"},"font":{"fontSize":{"label":"Grootte","voiceLabel":"Fontgrootte","panelTitle":"Fontgrootte"},"label":"Font","panelTitle":"Fontnaam","voiceLabel":"Font"},"forms":{"button":{"title":"Knop eienskappe","text":"Teks (Waarde)","type":"Soort","typeBtn":"Knop","typeSbm":"Stuur","typeRst":"Maak leeg"},"checkboxAndRadio":{"checkboxTitle":"Merkhokkie eienskappe","radioTitle":"Radioknoppie eienskappe","value":"Waarde","selected":"Geselekteer"},"form":{"title":"Vorm eienskappe","menu":"Vorm eienskappe","action":"Aksie","method":"Metode","encoding":"Kodering"},"hidden":{"title":"Verborge veld eienskappe","name":"Naam","value":"Waarde"},"select":{"title":"Keuseveld eienskappe","selectInfo":"Info","opAvail":"Beskikbare opsies","value":"Waarde","size":"Grootte","lines":"Lyne","chkMulti":"Laat meer as een keuse toe","opText":"Teks","opValue":"Waarde","btnAdd":"Byvoeg","btnModify":"Wysig","btnUp":"Op","btnDown":"Af","btnSetValue":"Stel as geselekteerde waarde","btnDelete":"Verwyder"},"textarea":{"title":"Teks-area eienskappe","cols":"Kolomme","rows":"Rye"},"textfield":{"title":"Teksveld eienskappe","name":"Naam","value":"Waarde","charWidth":"Breedte (karakters)","maxChars":"Maksimum karakters","type":"Soort","typeText":"Teks","typePass":"Wagwoord","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Opmaak","panelTitle":"Opmaak","tag_address":"Adres","tag_div":"Normaal (DIV)","tag_h1":"Opskrif 1","tag_h2":"Opskrif 2","tag_h3":"Opskrif 3","tag_h4":"Opskrif 4","tag_h5":"Opskrif 5","tag_h6":"Opskrif 6","tag_p":"Normaal","tag_pre":"Opgemaak"},"horizontalrule":{"toolbar":"Horisontale lyn invoeg"},"iframe":{"border":"Wys rand van raam","noUrl":"Gee die iframe URL","scrolling":"Skuifbalke aan","title":"IFrame Eienskappe","toolbar":"IFrame"},"image":{"alertUrl":"Gee URL van afbeelding.","alt":"Alternatiewe teks","border":"Rand","btnUpload":"Stuur na bediener","button2Img":"Wil u die geselekteerde afbeeldingsknop vervang met 'n eenvoudige afbeelding?","hSpace":"HSpasie","img2Button":"Wil u die geselekteerde afbeelding vervang met 'n afbeeldingsknop?","infoTab":"Afbeelding informasie","linkTab":"Skakel","lockRatio":"Vaste proporsie","menu":"Afbeelding eienskappe","resetSize":"Herstel grootte","title":"Afbeelding eienskappe","titleButton":"Afbeeldingsknop eienskappe","upload":"Oplaai","urlMissing":"Die URL na die afbeelding ontbreek.","vSpace":"VSpasie","validateBorder":"Rand moet 'n heelgetal wees.","validateHSpace":"HSpasie moet 'n heelgetal wees.","validateVSpace":"VSpasie moet 'n heelgetal wees."},"indent":{"indent":"Vergroot inspring","outdent":"Verklein inspring"},"smiley":{"options":"Lagbekkie opsies","title":"Voeg lagbekkie by","toolbar":"Lagbekkie"},"justify":{"block":"Uitvul","center":"Sentreer","left":"Links oplyn","right":"Regs oplyn"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Toegangsleutel","advanced":"Gevorderd","advisoryContentType":"Aanbevole inhoudstipe","advisoryTitle":"Aanbevole titel","anchor":{"toolbar":"Anker byvoeg/verander","menu":"Anker-eienskappe","title":"Anker-eienskappe","name":"Ankernaam","errorName":"Voltooi die ankernaam asseblief","remove":"Remove Anchor"},"anchorId":"Op element Id","anchorName":"Op ankernaam","charset":"Karakterstel van geskakelde bron","cssClasses":"CSS klasse","emailAddress":"E-posadres","emailBody":"Berig-inhoud","emailSubject":"Berig-onderwerp","id":"Id","info":"Skakel informasie","langCode":"Taalkode","langDir":"Skryfrigting","langDirLTR":"Links na regs (LTR)","langDirRTL":"Regs na links (RTL)","menu":"Wysig skakel","name":"Naam","noAnchors":"(Geen ankers beskikbaar in dokument)","noEmail":"Gee die e-posadres","noUrl":"Gee die skakel se URL","other":"<ander>","popupDependent":"Afhanklik (Netscape)","popupFeatures":"Eienskappe van opspringvenster","popupFullScreen":"Volskerm (IE)","popupLeft":"Posisie links","popupLocationBar":"Adresbalk","popupMenuBar":"Spyskaartbalk","popupResizable":"Herskaalbaar","popupScrollBars":"Skuifbalke","popupStatusBar":"Statusbalk","popupToolbar":"Werkbalk","popupTop":"Posisie bo","rel":"Relationship","selectAnchor":"Kies 'n anker","styles":"Styl","tabIndex":"Tab indeks","target":"Doel","targetFrame":"<raam>","targetFrameName":"Naam van doelraam","targetPopup":"<opspringvenster>","targetPopupName":"Naam van opspringvenster","title":"Skakel","toAnchor":"Anker in bladsy","toEmail":"E-pos","toUrl":"URL","toolbar":"Skakel invoeg/wysig","type":"Skakelsoort","unlink":"Verwyder skakel","upload":"Oplaai"},"list":{"bulletedlist":"Ongenommerde lys","numberedlist":"Genommerde lys"},"liststyle":{"armenian":"Armeense nommering","bulletedTitle":"Eienskappe van ongenommerde lys","circle":"Sirkel","decimal":"Desimale syfers (1, 2, 3, ens.)","decimalLeadingZero":"Desimale syfers met voorloopnul (01, 02, 03, ens.)","disc":"Skyf","georgian":"Georgiese nommering (an, ban, gan, ens.)","lowerAlpha":"Kleinletters (a, b, c, d, e, ens.)","lowerGreek":"Griekse kleinletters (alpha, beta, gamma, ens.)","lowerRoman":"Romeinse kleinletters (i, ii, iii, iv, v, ens.)","none":"Geen","notset":"<nie ingestel nie>","numberedTitle":"Eienskappe van genommerde lys","square":"Vierkant","start":"Begin","type":"Tipe","upperAlpha":"Hoofletters (A, B, C, D, E, ens.)","upperRoman":"Romeinse hoofletters (I, II, III, IV, V, ens.)","validateStartNumber":"Beginnommer van lys moet 'n heelgetal wees."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maksimaliseer","minimize":"Minimaliseer"},"newpage":{"toolbar":"Nuwe bladsy"},"pagebreak":{"alt":"Bladsy-einde","toolbar":"Bladsy-einde invoeg"},"pastetext":{"button":"Plak as eenvoudige teks","title":"Plak as eenvoudige teks"},"pastefromword":{"confirmCleanup":"Die teks wat u wil plak lyk asof dit uit Word gekopiëer is. Wil u dit eers skoonmaak voordat dit geplak word?","error":"Die geplakte teks kon nie skoongemaak word nie, weens 'n interne fout","title":"Plak vanuit Word","toolbar":"Plak vanuit Word"},"preview":{"preview":"Voorbeeld"},"print":{"toolbar":"Druk"},"removeformat":{"toolbar":"Verwyder opmaak"},"save":{"toolbar":"Bewaar"},"selectall":{"toolbar":"Selekteer alles"},"showblocks":{"toolbar":"Toon blokke"},"sourcearea":{"toolbar":"Bron"},"specialchar":{"options":"Spesiale karakter-opsies","title":"Kies spesiale karakter","toolbar":"Voeg spesiaale karakter in"},"scayt":{"btn_about":"SCAYT info","btn_dictionaries":"Woordeboeke","btn_disable":"SCAYT af","btn_enable":"SCAYT aan","btn_langs":"Tale","btn_options":"Opsies","text_title":""},"stylescombo":{"label":"Styl","panelTitle":"Opmaak style","panelTitle1":"Blok style","panelTitle2":"Inlyn style","panelTitle3":"Objek style"},"table":{"border":"Randbreedte","caption":"Naam","cell":{"menu":"Sel","insertBefore":"Voeg sel in voor","insertAfter":"Voeg sel in na","deleteCell":"Verwyder sel","merge":"Voeg selle saam","mergeRight":"Voeg saam na regs","mergeDown":"Voeg saam ondertoe","splitHorizontal":"Splits sel horisontaal","splitVertical":"Splits sel vertikaal","title":"Sel eienskappe","cellType":"Sel tipe","rowSpan":"Omspan rye","colSpan":"Omspan kolomme","wordWrap":"Woord terugloop","hAlign":"Horisontale oplyning","vAlign":"Vertikale oplyning","alignBaseline":"Basislyn","bgColor":"Agtergrondkleur","borderColor":"Randkleur","data":"Inhoud","header":"Opskrif","yes":"Ja","no":"Nee","invalidWidth":"Selbreedte moet 'n getal wees.","invalidHeight":"Selhoogte moet 'n getal wees.","invalidRowSpan":"Omspan rye moet 'n heelgetal wees.","invalidColSpan":"Omspan kolomme moet 'n heelgetal wees.","chooseColor":"Kies"},"cellPad":"Sel-spasie","cellSpace":"Sel-afstand","column":{"menu":"Kolom","insertBefore":"Voeg kolom in voor","insertAfter":"Voeg kolom in na","deleteColumn":"Verwyder kolom"},"columns":"Kolomme","deleteTable":"Verwyder tabel","headers":"Opskrifte","headersBoth":"Beide ","headersColumn":"Eerste kolom","headersNone":"Geen","headersRow":"Eerste ry","invalidBorder":"Randbreedte moet 'n getal wees.","invalidCellPadding":"Sel-spasie moet 'n getal wees.","invalidCellSpacing":"Sel-afstand moet 'n getal wees.","invalidCols":"Aantal kolomme moet 'n getal groter as 0 wees.","invalidHeight":"Tabelhoogte moet 'n getal wees.","invalidRows":"Aantal rye moet 'n getal groter as 0 wees.","invalidWidth":"Tabelbreedte moet 'n getal wees.","menu":"Tabel eienskappe","row":{"menu":"Ry","insertBefore":"Voeg ry in voor","insertAfter":"Voeg ry in na","deleteRow":"Verwyder ry"},"rows":"Rye","summary":"Opsomming","title":"Tabel eienskappe","toolbar":"Tabel","widthPc":"persent","widthPx":"piksels","widthUnit":"breedte-eenheid"},"undo":{"redo":"Oordoen","undo":"Ontdoen"},"wsc":{"btnIgnore":"Ignoreer","btnIgnoreAll":"Ignoreer alles","btnReplace":"Vervang","btnReplaceAll":"vervang alles","btnUndo":"Ontdoen","changeTo":"Verander na","errorLoading":"Fout by inlaai van diens: %s.","ieSpellDownload":"Speltoetser is nie geïnstalleer nie. Wil u dit nou aflaai?","manyChanges":"Klaar met speltoets: %1 woorde verander","noChanges":"Klaar met speltoets: Geen woorde verander nie","noMispell":"Klaar met speltoets: Geen foute nie","noSuggestions":"- Geen voorstel -","notAvailable":"Jammer, hierdie diens is nie nou beskikbaar nie.","notInDic":"Nie in woordeboek nie","oneChange":"Klaar met speltoets: Een woord verander","progress":"Spelling word getoets...","title":"Speltoetser","toolbar":"Speltoets"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ar.js b/wqflask/wqflask/static/packages/ckeditor/lang/ar.js
deleted file mode 100644
index d1ab6617..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ar.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ar']={"editor":"محرر النص الغني","editorPanel":"لائحة محرر النص المنسق","common":{"editorHelp":"إضغط على ALT + 0 للحصول على المساعدة.","browseServer":"تصفح","url":"الرابط","protocol":"البروتوكول","upload":"رفع","uploadSubmit":"أرسل","image":"صورة","flash":"فلاش","form":"نموذج","checkbox":"خانة إختيار","radio":"زر اختيار","textField":"مربع نص","textarea":"مساحة نصية","hiddenField":"إدراج حقل خفي","button":"زر ضغط","select":"اختار","imageButton":"زر صورة","notSet":"<بدون تحديد>","id":"الرقم","name":"إسم","langDir":"إتجاه النص","langDirLtr":"اليسار لليمين (LTR)","langDirRtl":"اليمين لليسار (RTL)","langCode":"رمز اللغة","longDescr":"الوصف التفصيلى","cssClass":"فئات التنسيق","advisoryTitle":"عنوان التقرير","cssStyle":"نمط","ok":"موافق","cancel":"إلغاء الأمر","close":"أغلق","preview":"استعراض","resize":"تغيير الحجم","generalTab":"عام","advancedTab":"متقدم","validateNumberFailed":"لايوجد نتيجة","confirmNewPage":"ستفقد أي متغييرات اذا لم تقم بحفظها اولا. هل أنت متأكد أنك تريد صفحة جديدة؟","confirmCancel":"بعض الخيارات قد تغيرت. هل أنت متأكد من إغلاق مربع النص؟","options":"خيارات","target":"هدف الرابط","targetNew":"نافذة جديدة","targetTop":"النافذة الأعلى","targetSelf":"داخل النافذة","targetParent":"النافذة الأم","langDirLTR":"اليسار لليمين (LTR)","langDirRTL":"اليمين لليسار (RTL)","styles":"نمط","cssClasses":"فئات التنسيق","width":"العرض","height":"الإرتفاع","align":"محاذاة","alignLeft":"يسار","alignRight":"يمين","alignCenter":"وسط","alignJustify":"ضبط","alignTop":"أعلى","alignMiddle":"وسط","alignBottom":"أسفل","alignNone":"None","invalidValue":"قيمة غير مفبولة.","invalidHeight":"الارتفاع يجب أن يكون عدداً.","invalidWidth":"العرض يجب أن يكون عدداً.","invalidCssLength":"قيمة الخانة المخصصة لـ \"%1\" يجب أن تكون رقما موجبا، باستخدام أو من غير استخدام وحدة CSS قياس مقبولة (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"قيمة الخانة المخصصة لـ \"%1\" يجب أن تكون رقما موجبا، باستخدام أو من غير استخدام وحدة HTML قياس مقبولة (px or %).","invalidInlineStyle":"قيمة الخانة المخصصة لـ Inline Style يجب أن تختوي على مجموع واحد أو أكثر بالشكل التالي: \"name : value\", مفصولة بفاصلة منقزطة.","cssLengthTooltip":"أدخل رقما للقيمة بالبكسل أو رقما بوحدة CSS مقبولة (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, غير متاح</span>"},"about":{"copy":"حقوق النشر &copy; $1. جميع الحقوق محفوظة.","dlgTitle":"عن CKEditor","help":"راجع $1 من أجل المساعدة","moreInfo":"للحصول على معلومات الترخيص ، يرجى زيارة موقعنا:","title":"عن CKEditor","userGuide":"دليل مستخدم CKEditor."},"basicstyles":{"bold":"عريض","italic":"مائل","strike":"يتوسطه خط","subscript":"منخفض","superscript":"مرتفع","underline":"تسطير"},"bidi":{"ltr":"إتجاه النص من اليسار إلى اليمين","rtl":"إتجاه النص من اليمين إلى اليسار"},"blockquote":{"toolbar":"اقتباس"},"clipboard":{"copy":"نسخ","copyError":"الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع عمليات النسخ التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl/Cmd+C).","cut":"قص","cutError":"الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع القص التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl/Cmd+X).","paste":"لصق","pasteArea":"منطقة اللصق","pasteMsg":"الصق داخل الصندوق بإستخدام زرائر (<STRONG>Ctrl/Cmd+V</STRONG>) في لوحة المفاتيح، ثم اضغط زر <STRONG>موافق</STRONG>.","securityMsg":"نظراً لإعدادات الأمان الخاصة بمتصفحك، لن يتمكن هذا المحرر من الوصول لمحتوى حافظتك، لذلك يجب عليك لصق المحتوى مرة أخرى في هذه النافذة.","title":"لصق"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"تلقائي","bgColorTitle":"لون الخلفية","colors":{"000":"أسود","800000":"كستنائي","8B4513":"بني فاتح","2F4F4F":"رمادي أردوازي غامق","008080":"أزرق مخضر","000080":"أزرق داكن","4B0082":"كحلي","696969":"رمادي داكن","B22222":"طوبي","A52A2A":"بني","DAA520":"ذهبي داكن","006400":"أخضر داكن","40E0D0":"فيروزي","0000CD":"أزرق متوسط","800080":"بنفسجي غامق","808080":"رمادي","F00":"أحمر","FF8C00":"برتقالي داكن","FFD700":"ذهبي","008000":"أخضر","0FF":"تركواز","00F":"أزرق","EE82EE":"بنفسجي","A9A9A9":"رمادي شاحب","FFA07A":"برتقالي وردي","FFA500":"برتقالي","FFFF00":"أصفر","00FF00":"ليموني","AFEEEE":"فيروزي شاحب","ADD8E6":"أزرق فاتح","DDA0DD":"بنفسجي فاتح","D3D3D3":"رمادي فاتح","FFF0F5":"وردي فاتح","FAEBD7":"أبيض عتيق","FFFFE0":"أصفر فاتح","F0FFF0":"أبيض مائل للأخضر","F0FFFF":"سماوي","F0F8FF":"لبني","E6E6FA":"أرجواني","FFF":"أبيض"},"more":"ألوان إضافية...","panelTitle":"Colors","textColorTitle":"لون النص"},"colordialog":{"clear":"مسح","highlight":"تحديد","options":"اختيارات الألوان","selected":"اللون المختار","title":"اختر اللون"},"templates":{"button":"القوالب","emptyListMsg":"(لم يتم تعريف أي قالب)","insertOption":"استبدال المحتوى","options":"خصائص القوالب","selectPromptMsg":"اختر القالب الذي تود وضعه في المحرر","title":"قوالب المحتوى"},"contextmenu":{"options":"خصائص قائمة السياق"},"div":{"IdInputLabel":"هوية","advisoryTitleInputLabel":"عنوان التقرير","cssClassInputLabel":"فئات التنسيق","edit":"تحرير Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"اليسار لليمين (LTR)","langDirLabel":"إتجاه النص","langDirRTLLabel":"اليمين لليسار (RTL)","languageCodeInputLabel":"رمز اللغة","remove":"إزالة Div","styleSelectLabel":"نمط","title":"إحداث Div Container","toolbar":"إحداث Div Container"},"toolbar":{"toolbarCollapse":"تقليص شريط الأدوت","toolbarExpand":"تمديد شريط الأدوات","toolbarGroups":{"document":"مستند","clipboard":"الحافظة/الرجوع","editing":"تحرير","forms":"نماذج","basicstyles":"نمط بسيط","paragraph":"فقرة","links":"روابط","insert":"إدراج","styles":"أنماط","colors":"ألوان","tools":"أدوات"},"toolbars":"أشرطة أدوات المحرر"},"elementspath":{"eleLabel":"مسار العنصر","eleTitle":"عنصر 1%"},"find":{"find":"بحث","findOptions":"Find Options","findWhat":"البحث بـ:","matchCase":"مطابقة حالة الأحرف","matchCyclic":"مطابقة دورية","matchWord":"مطابقة بالكامل","notFoundMsg":"لم يتم العثور على النص المحدد.","replace":"إستبدال","replaceAll":"إستبدال الكل","replaceSuccessMsg":"تم استبدال 1% من الحالات ","replaceWith":"إستبدال بـ:","title":"بحث واستبدال"},"fakeobjects":{"anchor":"إرساء","flash":"رسم متحرك بالفلاش","hiddenfield":"إدراج حقل خفي","iframe":"iframe","unknown":"عنصر غير معروف"},"flash":{"access":"دخول النص البرمجي","accessAlways":"دائماً","accessNever":"مطلقاً","accessSameDomain":"نفس النطاق","alignAbsBottom":"أسفل النص","alignAbsMiddle":"وسط السطر","alignBaseline":"على السطر","alignTextTop":"أعلى النص","bgcolor":"لون الخلفية","chkFull":"ملء الشاشة","chkLoop":"تكرار","chkMenu":"تمكين قائمة فيلم الفلاش","chkPlay":"تشغيل تلقائي","flashvars":"متغيرات الفلاش","hSpace":"تباعد أفقي","properties":"خصائص الفلاش","propertiesTab":"الخصائص","quality":"جودة","qualityAutoHigh":"عالية تلقائياً","qualityAutoLow":"منخفضة تلقائياً","qualityBest":"أفضل","qualityHigh":"عالية","qualityLow":"منخفضة","qualityMedium":"متوسطة","scale":"الحجم","scaleAll":"إظهار الكل","scaleFit":"ضبط تام","scaleNoBorder":"بلا حدود","title":"خصائص فيلم الفلاش","vSpace":"تباعد عمودي","validateHSpace":"HSpace يجب أن يكون عدداً.","validateSrc":"فضلاً أدخل عنوان الموقع الذي يشير إليه الرابط","validateVSpace":"VSpace يجب أن يكون عدداً.","windowMode":"وضع النافذة","windowModeOpaque":"غير شفاف","windowModeTransparent":"شفاف","windowModeWindow":"نافذة"},"font":{"fontSize":{"label":"حجم الخط","voiceLabel":"حجم الخط","panelTitle":"حجم الخط"},"label":"خط","panelTitle":"حجم الخط","voiceLabel":"حجم الخط"},"forms":{"button":{"title":"خصائص زر الضغط","text":"القيمة/التسمية","type":"نوع الزر","typeBtn":"زر","typeSbm":"إرسال","typeRst":"إعادة تعيين"},"checkboxAndRadio":{"checkboxTitle":"خصائص خانة الإختيار","radioTitle":"خصائص زر الخيار","value":"القيمة","selected":"محدد"},"form":{"title":"خصائص النموذج","menu":"خصائص النموذج","action":"اسم الملف","method":"الأسلوب","encoding":"تشفير"},"hidden":{"title":"خصائص الحقل المخفي","name":"الاسم","value":"القيمة"},"select":{"title":"خصائص اختيار الحقل","selectInfo":"اختار معلومات","opAvail":"الخيارات المتاحة","value":"القيمة","size":"الحجم","lines":"الأسطر","chkMulti":"السماح بتحديدات متعددة","opText":"النص","opValue":"القيمة","btnAdd":"إضافة","btnModify":"تعديل","btnUp":"أعلى","btnDown":"أسفل","btnSetValue":"إجعلها محددة","btnDelete":"إزالة"},"textarea":{"title":"خصائص مساحة النص","cols":"الأعمدة","rows":"الصفوف"},"textfield":{"title":"خصائص مربع النص","name":"الاسم","value":"القيمة","charWidth":"عرض السمات","maxChars":"اقصى عدد للسمات","type":"نوع المحتوى","typeText":"نص","typePass":"كلمة مرور","typeEmail":"بريد إلكتروني","typeSearch":"بحث","typeTel":"رقم الهاتف","typeUrl":"الرابط"}},"format":{"label":"تنسيق","panelTitle":"تنسيق الفقرة","tag_address":"عنوان","tag_div":"عادي (DIV)","tag_h1":"العنوان 1","tag_h2":"العنوان 2","tag_h3":"العنوان 3","tag_h4":"العنوان 4","tag_h5":"العنوان 5","tag_h6":"العنوان 6","tag_p":"عادي","tag_pre":"منسّق"},"horizontalrule":{"toolbar":"خط فاصل"},"iframe":{"border":"إظهار حدود الإطار","noUrl":"فضلا أكتب رابط الـ iframe","scrolling":"تفعيل أشرطة الإنتقال","title":"خصائص iframe","toolbar":"iframe"},"image":{"alertUrl":"فضلاً أكتب الموقع الذي توجد عليه هذه الصورة.","alt":"عنوان الصورة","border":"سمك الحدود","btnUpload":"أرسلها للخادم","button2Img":"هل تريد تحويل زر الصورة المختار إلى صورة بسيطة؟","hSpace":"تباعد أفقي","img2Button":"هل تريد تحويل الصورة المختارة إلى زر صورة؟","infoTab":"معلومات الصورة","linkTab":"الرابط","lockRatio":"تناسق الحجم","menu":"خصائص الصورة","resetSize":"إستعادة الحجم الأصلي","title":"خصائص الصورة","titleButton":"خصائص زر الصورة","upload":"رفع","urlMissing":"عنوان مصدر الصورة مفقود","vSpace":"تباعد عمودي","validateBorder":"الإطار يجب أن يكون عددا","validateHSpace":"HSpace يجب أن يكون عدداً.","validateVSpace":"VSpace يجب أن يكون عدداً."},"indent":{"indent":"زيادة المسافة البادئة","outdent":"إنقاص المسافة البادئة"},"smiley":{"options":"خصائص الإبتسامات","title":"إدراج ابتسامات","toolbar":"ابتسامات"},"justify":{"block":"ضبط","center":"توسيط","left":"محاذاة إلى اليسار","right":"محاذاة إلى اليمين"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"مفاتيح الإختصار","advanced":"متقدم","advisoryContentType":"نوع التقرير","advisoryTitle":"عنوان التقرير","anchor":{"toolbar":"إشارة مرجعية","menu":"تحرير الإشارة المرجعية","title":"خصائص الإشارة المرجعية","name":"اسم الإشارة المرجعية","errorName":"الرجاء كتابة اسم الإشارة المرجعية","remove":"إزالة الإشارة المرجعية"},"anchorId":"حسب رقم العنصر","anchorName":"حسب إسم الإشارة المرجعية","charset":"ترميز المادة المطلوبة","cssClasses":"فئات التنسيق","emailAddress":"البريد الإلكتروني","emailBody":"محتوى الرسالة","emailSubject":"موضوع الرسالة","id":"هوية","info":"معلومات الرابط","langCode":"رمز اللغة","langDir":"إتجاه نص اللغة","langDirLTR":"اليسار لليمين (LTR)","langDirRTL":"اليمين لليسار (RTL)","menu":"تحرير الرابط","name":"إسم","noAnchors":"(لا توجد علامات مرجعية في هذا المستند)","noEmail":"الرجاء كتابة الريد الإلكتروني","noUrl":"الرجاء كتابة رابط الموقع","other":"<أخرى>","popupDependent":"تابع (Netscape)","popupFeatures":"خصائص النافذة المنبثقة","popupFullScreen":"ملئ الشاشة (IE)","popupLeft":"التمركز لليسار","popupLocationBar":"شريط العنوان","popupMenuBar":"القوائم الرئيسية","popupResizable":"قابلة التشكيل","popupScrollBars":"أشرطة التمرير","popupStatusBar":"شريط الحالة","popupToolbar":"شريط الأدوات","popupTop":"التمركز للأعلى","rel":"العلاقة","selectAnchor":"اختر علامة مرجعية","styles":"نمط","tabIndex":"الترتيب","target":"هدف الرابط","targetFrame":"<إطار>","targetFrameName":"اسم الإطار المستهدف","targetPopup":"<نافذة منبثقة>","targetPopupName":"اسم النافذة المنبثقة","title":"رابط","toAnchor":"مكان في هذا المستند","toEmail":"بريد إلكتروني","toUrl":"الرابط","toolbar":"رابط","type":"نوع الربط","unlink":"إزالة رابط","upload":"رفع"},"list":{"bulletedlist":"ادخال/حذف تعداد نقطي","numberedlist":"ادخال/حذف تعداد رقمي"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"إدراج فقرة هنا"},"maximize":{"maximize":"تكبير","minimize":"تصغير"},"newpage":{"toolbar":"صفحة جديدة"},"pagebreak":{"alt":"فاصل الصفحة","toolbar":"إدخال صفحة جديدة"},"pastetext":{"button":"لصق كنص بسيط","title":"لصق كنص بسيط"},"pastefromword":{"confirmCleanup":"يبدو أن النص المراد لصقه منسوخ من برنامج وورد. هل تود تنظيفه قبل الشروع في عملية اللصق؟","error":"لم يتم مسح المعلومات الملصقة لخلل داخلي","title":"لصق من وورد","toolbar":"لصق من وورد"},"preview":{"preview":"معاينة الصفحة"},"print":{"toolbar":"طباعة"},"removeformat":{"toolbar":"إزالة التنسيقات"},"save":{"toolbar":"حفظ"},"selectall":{"toolbar":"تحديد الكل"},"showblocks":{"toolbar":"مخطط تفصيلي"},"sourcearea":{"toolbar":"المصدر"},"specialchar":{"options":"خيارات الأحرف الخاصة","title":"اختر حرف خاص","toolbar":"إدراج حرف خاص"},"scayt":{"btn_about":"عن SCAYT","btn_dictionaries":"قواميس","btn_disable":"تعطيل SCAYT","btn_enable":"تفعيل SCAYT","btn_langs":"لغات","btn_options":"خيارات","text_title":""},"stylescombo":{"label":"أنماط","panelTitle":"أنماط التنسيق","panelTitle1":"أنماط الفقرة","panelTitle2":"أنماط مضمنة","panelTitle3":"أنماط الكائن"},"table":{"border":"الحدود","caption":"الوصف","cell":{"menu":"خلية","insertBefore":"إدراج خلية قبل","insertAfter":"إدراج خلية بعد","deleteCell":"حذف خلية","merge":"دمج خلايا","mergeRight":"دمج لليمين","mergeDown":"دمج للأسفل","splitHorizontal":"تقسيم الخلية أفقياً","splitVertical":"تقسيم الخلية عمودياً","title":"خصائص الخلية","cellType":"نوع الخلية","rowSpan":"امتداد الصفوف","colSpan":"امتداد الأعمدة","wordWrap":"التفاف النص","hAlign":"محاذاة أفقية","vAlign":"محاذاة رأسية","alignBaseline":"خط القاعدة","bgColor":"لون الخلفية","borderColor":"لون الحدود","data":"بيانات","header":"عنوان","yes":"نعم","no":"لا","invalidWidth":"عرض الخلية يجب أن يكون عدداً.","invalidHeight":"ارتفاع الخلية يجب أن يكون عدداً.","invalidRowSpan":"امتداد الصفوف يجب أن يكون عدداً صحيحاً.","invalidColSpan":"امتداد الأعمدة يجب أن يكون عدداً صحيحاً.","chooseColor":"اختر"},"cellPad":"المسافة البادئة","cellSpace":"تباعد الخلايا","column":{"menu":"عمود","insertBefore":"إدراج عمود قبل","insertAfter":"إدراج عمود بعد","deleteColumn":"حذف أعمدة"},"columns":"أعمدة","deleteTable":"حذف الجدول","headers":"العناوين","headersBoth":"كلاهما","headersColumn":"العمود الأول","headersNone":"بدون","headersRow":"الصف الأول","invalidBorder":"حجم الحد يجب أن يكون عدداً.","invalidCellPadding":"المسافة البادئة يجب أن تكون عدداً","invalidCellSpacing":"المسافة بين الخلايا يجب أن تكون عدداً.","invalidCols":"عدد الأعمدة يجب أن يكون عدداً أكبر من صفر.","invalidHeight":"ارتفاع الجدول يجب أن يكون عدداً.","invalidRows":"عدد الصفوف يجب أن يكون عدداً أكبر من صفر.","invalidWidth":"عرض الجدول يجب أن يكون عدداً.","menu":"خصائص الجدول","row":{"menu":"صف","insertBefore":"إدراج صف قبل","insertAfter":"إدراج صف بعد","deleteRow":"حذف صفوف"},"rows":"صفوف","summary":"الخلاصة","title":"خصائص الجدول","toolbar":"جدول","widthPc":"بالمئة","widthPx":"بكسل","widthUnit":"وحدة العرض"},"undo":{"redo":"إعادة","undo":"تراجع"},"wsc":{"btnIgnore":"تجاهل","btnIgnoreAll":"تجاهل الكل","btnReplace":"تغيير","btnReplaceAll":"تغيير الكل","btnUndo":"تراجع","changeTo":"التغيير إلى","errorLoading":"خطأ في تحميل تطبيق خدمة الاستضافة: %s.","ieSpellDownload":"المدقق الإملائي (الإنجليزي) غير مثبّت. هل تود تحميله الآن؟","manyChanges":"تم إكمال التدقيق الإملائي: تم تغيير %1 من كلمات","noChanges":"تم التدقيق الإملائي: لم يتم تغيير أي كلمة","noMispell":"تم التدقيق الإملائي: لم يتم العثور على أي أخطاء إملائية","noSuggestions":"- لا توجد إقتراحات -","notAvailable":"عفواً، ولكن هذه الخدمة غير متاحة الان","notInDic":"ليست في القاموس","oneChange":"تم التدقيق الإملائي: تم تغيير كلمة واحدة فقط","progress":"جاري التدقيق الاملائى","title":"التدقيق الإملائي","toolbar":"تدقيق إملائي"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/bg.js b/wqflask/wqflask/static/packages/ckeditor/lang/bg.js
deleted file mode 100644
index daae1f70..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/bg.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['bg']={"editor":"Текстов редактор за форматиран текст","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"натиснете ALT 0 за помощ","browseServer":"Избор от сървъра","url":"URL","protocol":"Протокол","upload":"Качване","uploadSubmit":"Изпращане към сървъра","image":"Снимка","flash":"Флаш","form":"Форма","checkbox":"Поле за избор","radio":"Радио бутон","textField":"Текстово поле","textarea":"Текстова зона","hiddenField":"Скрито поле","button":"Бутон","select":"Поле за избор","imageButton":"Бутон за снимка","notSet":"<не е избрано>","id":"ID","name":"Име","langDir":"Посока на езика","langDirLtr":"Ляво на дясно (ЛнД)","langDirRtl":"Дясно на ляво (ДнЛ)","langCode":"Код на езика","longDescr":"Уеб адрес за дълго описание","cssClass":"Класове за CSS","advisoryTitle":"Препоръчително заглавие","cssStyle":"Стил","ok":"ОК","cancel":"Отказ","close":"Затвори","preview":"Преглед","resize":"Влачете за да оразмерите","generalTab":"Общи","advancedTab":"Разширено","validateNumberFailed":"Тази стойност не е число","confirmNewPage":"Всички незапазени промени ще бъдат изгубени. Сигурни ли сте, че желаете да заредите нова страница?","confirmCancel":"Някои от опциите са променени. Сигурни ли сте, че желаете да затворите прозореца?","options":"Опции","target":"Цел","targetNew":"Нов прозорец (_blank)","targetTop":"Горна позиция (_top)","targetSelf":"Текущия прозорец (_self)","targetParent":"Основен прозорец (_parent)","langDirLTR":"Ляво на дясно (ЛнД)","langDirRTL":"Дясно на ляво (ДнЛ)","styles":"Стил","cssClasses":"Класове за CSS","width":"Ширина","height":"Височина","align":"Подравняване","alignLeft":"Ляво","alignRight":"Дясно","alignCenter":"Център","alignJustify":"Двустранно подравняване","alignTop":"Горе","alignMiddle":"По средата","alignBottom":"Долу","alignNone":"None","invalidValue":"Невалидна стойност.","invalidHeight":"Височината трябва да е число.","invalidWidth":"Ширина требе да е число.","invalidCssLength":"Стойността на полето \"%1\" трябва да бъде положително число с или без валидна CSS измервателна единица (px, %, in, cm, mm, em, ex, pt, или pc).","invalidHtmlLength":"Стойността на полето \"%1\" трябва да бъде положително число с или без валидна HTML измервателна единица (px или %).","invalidInlineStyle":"Стойността на стилa трябва да съдържат една или повече двойки във формат \"name : value\", разделени с двоеточие.","cssLengthTooltip":"Въведете числена стойност в пиксели или друга валидна CSS единица (px, %, in, cm, mm, em, ex, pt, или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недостъпно</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"Относно CKEditor","help":"Проверете $1 за помощ.","moreInfo":"За лицензионна информация моля посетете сайта ни:","title":"Относно CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Удебелен","italic":"Наклонен","strike":"Зачертан текст","subscript":"Индексиран текст","superscript":"Суперскрипт","underline":"Подчертан"},"bidi":{"ltr":"Посока на текста от ляво на дясно","rtl":"Посока на текста от дясно на ляво"},"blockquote":{"toolbar":"Блок за цитат"},"clipboard":{"copy":"Копирай","copyError":"Настройките за сигурност на вашия бразуър не разрешават на редактора да изпълни запаметяването. За целта използвайте клавиатурата (Ctrl/Cmd+C).","cut":"Отрежи","cutError":"Настройките за сигурност на Вашия браузър не позволяват на редактора автоматично да изъплни действията за отрязване. Моля ползвайте клавиатурните команди за целта (ctrl+x).","paste":"Вмъкни","pasteArea":"Зона за вмъкване","pasteMsg":"Вмъкнете тук съдъжанието с клавиатуарата (<STRONG>Ctrl/Cmd+V</STRONG>) и натиснете <STRONG>OK</STRONG>.","securityMsg":"Заради настройките за сигурност на Вашия браузър, редакторът не може да прочете данните от клипборда коректно.","title":"Вмъкни"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Автоматично","bgColorTitle":"Фонов цвят","colors":{"000":"Черно","800000":"Кестеняво","8B4513":"Светлокафяво","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Индиго","696969":"Тъмно сиво","B22222":"Огнено червено","A52A2A":"Кафяво","DAA520":"Златисто","006400":"Тъмно зелено","40E0D0":"Тюркуазено","0000CD":"Средно синьо","800080":"Пурпурно","808080":"Сиво","F00":"Червено","FF8C00":"Тъмно оранжево","FFD700":"Златно","008000":"Зелено","0FF":"Светло синьо","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Още цветове","panelTitle":"Цветове","textColorTitle":"Цвят на шрифт"},"colordialog":{"clear":"Изчистване","highlight":"Осветяване","options":"Цветови опции","selected":"Изберете цвят","title":"Изберете цвят"},"templates":{"button":"Шаблони","emptyListMsg":"(Няма дефинирани шаблони)","insertOption":"Препокрива актуалното съдържание","options":"Опции за шаблона","selectPromptMsg":"Изберете шаблон <br>(текущото съдържание на редактора ще бъде загубено):","title":"Шаблони"},"contextmenu":{"options":"Опции на контекстното меню"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Препоръчително заглавие","cssClassInputLabel":"Класове за CSS","edit":"Промяна на Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Ляво на Дясно (ЛнД)","langDirLabel":"Посока на езика","langDirRTLLabel":"Дясно на Ляво (ДнЛ)","languageCodeInputLabel":" Код на езика","remove":"Премахване на Div","styleSelectLabel":"Стил","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Свиване на лентата с инструменти","toolbarExpand":"Разширяване на лентата с инструменти","toolbarGroups":{"document":"Документ","clipboard":"Clipboard/Undo","editing":"Промяна","forms":"Форми","basicstyles":"Базови стилове","paragraph":"Параграф","links":"Връзки","insert":"Вмъкване","styles":"Стилове","colors":"Цветове","tools":"Инструменти"},"toolbars":"Ленти с инструменти"},"elementspath":{"eleLabel":"Път за елементите","eleTitle":"%1 елемент"},"find":{"find":"Търсене","findOptions":"Find Options","findWhat":"Търси за:","matchCase":"Съвпадение","matchCyclic":"Циклично съвпадение","matchWord":"Съвпадение с дума","notFoundMsg":"Указаният текст не е намерен.","replace":"Препокриване","replaceAll":"Препокрий всички","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Препокрива с:","title":"Търсене и препокриване"},"fakeobjects":{"anchor":"Кука","flash":"Флаш анимация","hiddenfield":"Скрито поле","iframe":"IFrame","unknown":"Неизвестен обект"},"flash":{"access":"Достъп до скрипт","accessAlways":"Винаги","accessNever":"Никога","accessSameDomain":"Същият домейн","alignAbsBottom":"Най-долу","alignAbsMiddle":"Точно по средата","alignBaseline":"Базова линия","alignTextTop":"Върху текста","bgcolor":"Цвят на фона","chkFull":"Включи на цял екран","chkLoop":"Цикъл","chkMenu":"Разрешено Flash меню","chkPlay":"Авто. пускане","flashvars":"Променливи за Флаш","hSpace":"Хоризонтален отстъп","properties":"Настройки за флаш","propertiesTab":"Настройки","quality":"Качество","qualityAutoHigh":"Авто. високо","qualityAutoLow":"Авто. ниско","qualityBest":"Отлично","qualityHigh":"Високо","qualityLow":"Ниско","qualityMedium":"Средно","scale":"Оразмеряване","scaleAll":"Показва всичко","scaleFit":"Според мястото","scaleNoBorder":"Без рамка","title":"Настройки за флаш","vSpace":"Вертикален отстъп","validateHSpace":"HSpace трябва да е число.","validateSrc":"Уеб адреса не трябва да е празен.","validateVSpace":"VSpace трябва да е число.","windowMode":"Режим на прозореца","windowModeOpaque":"Плътност","windowModeTransparent":"Прозрачност","windowModeWindow":"Прозорец"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер на шрифт","panelTitle":"Размер на шрифт"},"label":"Шрифт","panelTitle":"Име на шрифт","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Настройки на бутона","text":"Текст (стойност)","type":"Тип","typeBtn":"Бутон","typeSbm":"Добави","typeRst":"Нулиране"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Настройки на радиобутон","value":"Стойност","selected":"Избрано"},"form":{"title":"Настройки на формата","menu":"Настройки на формата","action":"Действие","method":"Метод","encoding":"Кодиране"},"hidden":{"title":"Настройки за скрито поле","name":"Име","value":"Стойност"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Налични опции","value":"Стойност","size":"Размер","lines":"линии","chkMulti":"Allow multiple selections","opText":"Текст","opValue":"Стойност","btnAdd":"Добави","btnModify":"Промени","btnUp":"На горе","btnDown":"На долу","btnSetValue":"Set as selected value","btnDelete":"Изтриване"},"textarea":{"title":"Опции за текстовата зона","cols":"Колони","rows":"Редове"},"textfield":{"title":"Настройки за текстово поле","name":"Име","value":"Стойност","charWidth":"Ширина на знаците","maxChars":"Макс. знаци","type":"Тип","typeText":"Текст","typePass":"Парола","typeEmail":"Email","typeSearch":"Търсене","typeTel":"Телефонен номер","typeUrl":"Уеб адрес"}},"format":{"label":"Формат","panelTitle":"Формат","tag_address":"Адрес","tag_div":"Параграф (DIV)","tag_h1":"Заглавие 1","tag_h2":"Заглавие 2","tag_h3":"Заглавие 3","tag_h4":"Заглавие 4","tag_h5":"Заглавие 5","tag_h6":"Заглавие 6","tag_p":"Нормален","tag_pre":"Форматиран"},"horizontalrule":{"toolbar":"Вмъкване на хоризонтална линия"},"iframe":{"border":"Показва рамка на карето","noUrl":"Моля въведете URL за iFrame","scrolling":"Вкл. скролбаровете","title":"IFrame настройки","toolbar":"IFrame"},"image":{"alertUrl":"Моля, въведете пълния път до изображението","alt":"Алтернативен текст","border":"Рамка","btnUpload":"Изпрати я на сървъра","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"Хоризонтален отстъп","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Инфо за снимка","linkTab":"Връзка","lockRatio":"Заключване на съотношението","menu":"Настройки за снимка","resetSize":"Нулиране на размер","title":"Настройки за снимка","titleButton":"Настойки за бутон за снимка","upload":"Качване","urlMissing":"Image source URL is missing.","vSpace":"Вертикален отстъп","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Увеличаване на отстъпа","outdent":"Намаляване на отстъпа"},"smiley":{"options":"Опции за усмивката","title":"Вмъкване на усмивка","toolbar":"Усмивка"},"justify":{"block":"Двустранно подравняване","center":"Център","left":"Подравни в ляво","right":"Подравни в дясно"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Ключ за достъп","advanced":"Разширено","advisoryContentType":"Препоръчителен тип на съдържанието","advisoryTitle":"Препоръчително заглавие","anchor":{"toolbar":"Котва","menu":"Промяна на котва","title":"Настройки на котва","name":"Име на котва","errorName":"Моля въведете име на котвата","remove":"Премахване на котва"},"anchorId":"По ID на елемент","anchorName":"По име на котва","charset":"Тип на свързания ресурс","cssClasses":"Класове за CSS","emailAddress":"E-mail aдрес","emailBody":"Съдържание","emailSubject":"Тема","id":"ID","info":"Инфо за връзката","langCode":"Код за езика","langDir":"Посока на езика","langDirLTR":"Ляво на Дясно (ЛнД)","langDirRTL":"Дясно на Ляво (ДнЛ)","menu":"Промяна на връзка","name":"Име","noAnchors":"(Няма котви в текущия документ)","noEmail":"Моля въведете e-mail aдрес","noUrl":"Моля въведете URL адреса","other":"<друго>","popupDependent":"Зависимост (Netscape)","popupFeatures":"Функции на изкачащ прозорец","popupFullScreen":"Цял екран (IE)","popupLeft":"Лява позиция","popupLocationBar":"Лента с локацията","popupMenuBar":"Лента за меню","popupResizable":"Оразмеряем","popupScrollBars":"Скролери","popupStatusBar":"Статусна лента","popupToolbar":"Лента с инструменти","popupTop":"Горна позиция","rel":"Връзка","selectAnchor":"Изберете котва","styles":"Стил","tabIndex":"Ред на достъп","target":"Цел","targetFrame":"<frame>","targetFrameName":"Име на целевият прозорец","targetPopup":"<изкачащ прозорец>","targetPopupName":"Име на изкачащ прозорец","title":"Връзка","toAnchor":"Връзка към котва в текста","toEmail":"E-mail","toUrl":"Уеб адрес","toolbar":"Връзка","type":"Тип на връзката","unlink":"Премахни връзката","upload":"Качване"},"list":{"bulletedlist":"Вмъкване/Премахване на точков списък","numberedlist":"Вмъкване/Премахване на номериран списък"},"liststyle":{"armenian":"Арменско номериране","bulletedTitle":"Bulleted List Properties","circle":"Кръг","decimal":"Числа (1, 2, 3 и др.)","decimalLeadingZero":"Числа с водеща нула (01, 02, 03 и т.н.)","disc":"Диск","georgian":"Грузинско номериране (an, ban, gan, и т.н.)","lowerAlpha":"Малки букви (а, б, в, г, д и т.н.)","lowerGreek":"Малки гръцки букви (алфа, бета, гама и т.н.)","lowerRoman":"Малки римски числа (i, ii, iii, iv, v и т.н.)","none":"Няма","notset":"<не е указано>","numberedTitle":"Numbered List Properties","square":"Квадрат","start":"Старт","type":"Тип","upperAlpha":"Големи букви (А, Б, В, Г, Д и т.н.)","upperRoman":"Големи римски числа (I, II, III, IV, V и т.н.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Вмъкнете параграф тук"},"maximize":{"maximize":"Максимизиране","minimize":"Минимизиране"},"newpage":{"toolbar":"Нова страница"},"pagebreak":{"alt":"Разделяне на страници","toolbar":"Вмъкване на нова страница при печат"},"pastetext":{"button":"Вмъкни като чист текст","title":"Вмъкни като чист текст"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Вмъкни от MS Word","toolbar":"Вмъкни от MS Word"},"preview":{"preview":"Преглед"},"print":{"toolbar":"Печат"},"removeformat":{"toolbar":"Премахване на форматирането"},"save":{"toolbar":"Запис"},"selectall":{"toolbar":"Избери всичко"},"showblocks":{"toolbar":"Показва блокове"},"sourcearea":{"toolbar":"Източник"},"specialchar":{"options":"Опции за специален знак","title":"Избор на специален знак","toolbar":"Вмъкване на специален знак"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Речници","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Стилове","panelTitle":"Стилове за форматиране","panelTitle1":"Блокови стилове","panelTitle2":"Вътрешни стилове","panelTitle3":"Обектни стилове"},"table":{"border":"Размер на рамката","caption":"Заглавие","cell":{"menu":"Клетка","insertBefore":"Вмъкване на клетка преди","insertAfter":"Вмъкване на клетка след","deleteCell":"Изтриване на клетки","merge":"Сливане на клетки","mergeRight":"Сливане в дясно","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Настройки на клетката","cellType":"Тип на клетката","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Авто. пренос","hAlign":"Хоризонтално подравняване","vAlign":"Вертикално подравняване","alignBaseline":"Базова линия","bgColor":"Фон","borderColor":"Цвят на рамката","data":"Данни","header":"Хедър","yes":"Да","no":"Не","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Изберете"},"cellPad":"Отделяне на клетките","cellSpace":"Разтояние между клетките","column":{"menu":"Колона","insertBefore":"Вмъкване на колона преди","insertAfter":"Вмъкване на колона след","deleteColumn":"Изтриване на колони"},"columns":"Колони","deleteTable":"Изтриване на таблица","headers":"Хедъри","headersBoth":"Заедно","headersColumn":"Първа колона","headersNone":"Няма","headersRow":"Първи ред","invalidBorder":"Размерът на рамката трябва да е число.","invalidCellPadding":"Отстоянието на клетките трябва да е позитивно число.","invalidCellSpacing":"Интервала в клетките трябва да е позитивно число.","invalidCols":"Броят колони трябва да е по-голям от 0.","invalidHeight":"Височината на таблицата трябва да е число.","invalidRows":"Броят редове трябва да е по-голям от 0.","invalidWidth":"Ширината на таблицата трябва да е число.","menu":"Настройки на таблицата","row":{"menu":"Ред","insertBefore":"Вмъкване на ред преди","insertAfter":"Вмъкване на ред след","deleteRow":"Изтриване на редове"},"rows":"Редове","summary":"Обща информация","title":"Настройки на таблицата","toolbar":"Таблица","widthPc":"процент","widthPx":"пиксела","widthUnit":"единица за ширина"},"undo":{"redo":"Връщане на предишен статус","undo":"Възтанови"},"wsc":{"btnIgnore":"Игнорирай","btnIgnoreAll":"Игнорирай всичко","btnReplace":"Препокриване","btnReplaceAll":"Препокрий всичко","btnUndo":"Възтанови","changeTo":"Промени на","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- Няма препоръчани -","notAvailable":"Съжаляваме, но услугата не е достъпна за момента","notInDic":"Не е в речника","oneChange":"Spell check complete: One word changed","progress":"Проверява се правописа...","title":"Проверка на правопис","toolbar":"Проверка на правопис"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/bn.js b/wqflask/wqflask/static/packages/ckeditor/lang/bn.js
deleted file mode 100644
index 2e2ffb58..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/bn.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['bn']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"ব্রাউজ সার্ভার","url":"URL","protocol":"প্রোটোকল","upload":"আপলোড","uploadSubmit":"ইহাকে সার্ভারে প্রেরন কর","image":"ছবির লেবেল যুক্ত কর","flash":"ফ্লাশ লেবেল যুক্ত কর","form":"ফর্ম","checkbox":"চেক বাক্স","radio":"রেডিও বাটন","textField":"টেক্সট ফীল্ড","textarea":"টেক্সট এরিয়া","hiddenField":"গুপ্ত ফীল্ড","button":"বাটন","select":"বাছাই ফীল্ড","imageButton":"ছবির বাটন","notSet":"<সেট নেই>","id":"আইডি","name":"নাম","langDir":"ভাষা লেখার দিক","langDirLtr":"বাম থেকে ডান (LTR)","langDirRtl":"ডান থেকে বাম (RTL)","langCode":"ভাষা কোড","longDescr":"URL এর লম্বা বর্ণনা","cssClass":"স্টাইল-শীট ক্লাস","advisoryTitle":"পরামর্শ শীর্ষক","cssStyle":"স্টাইল","ok":"ওকে","cancel":"বাতিল","close":"Close","preview":"প্রিভিউ","resize":"Resize","generalTab":"General","advancedTab":"এডভান্সড","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"টার্গেট","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"বাম থেকে ডান (LTR)","langDirRTL":"ডান থেকে বাম (RTL)","styles":"স্টাইল","cssClasses":"স্টাইল-শীট ক্লাস","width":"প্রস্থ","height":"দৈর্ঘ্য","align":"এলাইন","alignLeft":"বামে","alignRight":"ডানে","alignCenter":"মাঝখানে","alignJustify":"ব্লক জাস্টিফাই","alignTop":"উপর","alignMiddle":"মধ্য","alignBottom":"নীচে","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"বোল্ড","italic":"ইটালিক","strike":"স্ট্রাইক থ্রু","subscript":"অধোলেখ","superscript":"অভিলেখ","underline":"আন্ডারলাইন"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"কপি","copyError":"আপনার ব্রাউজারের সুরক্ষা সেটিংস এডিটরকে অটোমেটিক কপি করার অনুমতি দেয়নি। দয়া করে এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl/Cmd+C)।","cut":"কাট","cutError":"আপনার ব্রাউজারের সুরক্ষা সেটিংস এডিটরকে অটোমেটিক কাট করার অনুমতি দেয়নি। দয়া করে এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl/Cmd+X)।","paste":"পেস্ট","pasteArea":"Paste Area","pasteMsg":"অনুগ্রহ করে নীচের বাক্সে কিবোর্ড ব্যবহার করে (<STRONG>Ctrl/Cmd+V</STRONG>) পেস্ট করুন এবং <STRONG>OK</STRONG> চাপ দিন","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"পেস্ট"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"অটোমেটিক","bgColorTitle":"বেকগ্রাউন্ড রং","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"আরও রং...","panelTitle":"Colors","textColorTitle":"টেক্স্ট রং"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"টেমপ্লেট","emptyListMsg":"(কোন টেমপ্লেট ডিফাইন করা নেই)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"অনুগ্রহ করে এডিটরে ওপেন করার জন্য টেমপ্লেট বাছাই করুন<br>(আসল কনটেন্ট হারিয়ে যাবে):","title":"কনটেন্ট টেমপ্লেট"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"খোজো","findOptions":"Find Options","findWhat":"যা খুঁজতে হবে:","matchCase":"কেস মিলাও","matchCyclic":"Match cyclic","matchWord":"পুরা শব্দ মেলাও","notFoundMsg":"আপনার উল্লেখিত টেকস্ট পাওয়া যায়নি","replace":"রিপ্লেস","replaceAll":"সব বদলে দাও","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"যার সাথে বদলাতে হবে:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs নীচে","alignAbsMiddle":"Abs উপর","alignBaseline":"মূল রেখা","alignTextTop":"টেক্সট উপর","bgcolor":"বেকগ্রাউন্ড রং","chkFull":"Allow Fullscreen","chkLoop":"লূপ","chkMenu":"ফ্ল্যাশ মেনু এনাবল কর","chkPlay":"অটো প্লে","flashvars":"Variables for Flash","hSpace":"হরাইজন্টাল স্পেস","properties":"ফ্লাশ প্রোপার্টি","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"স্কেল","scaleAll":"সব দেখাও","scaleFit":"নিখুঁত ফিট","scaleNoBorder":"কোনো বর্ডার নেই","title":"ফ্ল্যাশ প্রোপার্টি","vSpace":"ভার্টিকেল স্পেস","validateHSpace":"HSpace must be a number.","validateSrc":"অনুগ্রহ করে URL লিংক টাইপ করুন","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"সাইজ","voiceLabel":"Font Size","panelTitle":"সাইজ"},"label":"ফন্ট","panelTitle":"ফন্ট","voiceLabel":"ফন্ট"},"forms":{"button":{"title":"বাটন প্রোপার্টি","text":"টেক্সট (ভ্যালু)","type":"প্রকার","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"চেক বক্স প্রোপার্টি","radioTitle":"রেডিও বাটন প্রোপার্টি","value":"ভ্যালু","selected":"সিলেক্টেড"},"form":{"title":"ফর্ম প্রোপার্টি","menu":"ফর্ম প্রোপার্টি","action":"একশ্যন","method":"পদ্ধতি","encoding":"Encoding"},"hidden":{"title":"গুপ্ত ফীল্ড প্রোপার্টি","name":"নাম","value":"ভ্যালু"},"select":{"title":"বাছাই ফীল্ড প্রোপার্টি","selectInfo":"তথ্য","opAvail":"অন্যান্য বিকল্প","value":"ভ্যালু","size":"সাইজ","lines":"লাইন সমূহ","chkMulti":"একাধিক সিলেকশন এলাউ কর","opText":"টেক্সট","opValue":"ভ্যালু","btnAdd":"যুক্ত","btnModify":"বদলে দাও","btnUp":"উপর","btnDown":"নীচে","btnSetValue":"বাছাই করা ভ্যালু হিসেবে সেট কর","btnDelete":"ডিলীট"},"textarea":{"title":"টেক্সট এরিয়া প্রোপার্টি","cols":"কলাম","rows":"রো"},"textfield":{"title":"টেক্সট ফীল্ড প্রোপার্টি","name":"নাম","value":"ভ্যালু","charWidth":"ক্যারেক্টার প্রশস্ততা","maxChars":"সর্বাধিক ক্যারেক্টার","type":"টাইপ","typeText":"টেক্সট","typePass":"পাসওয়ার্ড","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"ফন্ট ফরমেট","panelTitle":"ফন্ট ফরমেট","tag_address":"ঠিকানা","tag_div":"শীর্ষক (DIV)","tag_h1":"শীর্ষক ১","tag_h2":"শীর্ষক ২","tag_h3":"শীর্ষক ৩","tag_h4":"শীর্ষক ৪","tag_h5":"শীর্ষক ৫","tag_h6":"শীর্ষক ৬","tag_p":"সাধারণ","tag_pre":"ফর্মেটেড"},"horizontalrule":{"toolbar":"রেখা যুক্ত কর"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"অনুগ্রহক করে ছবির URL টাইপ করুন","alt":"বিকল্প টেক্সট","border":"বর্ডার","btnUpload":"ইহাকে সার্ভারে প্রেরন কর","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"হরাইজন্টাল স্পেস","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"ছবির তথ্য","linkTab":"লিংক","lockRatio":"অনুপাত লক কর","menu":"ছবির প্রোপার্টি","resetSize":"সাইজ পূর্বাবস্থায় ফিরিয়ে দাও","title":"ছবির প্রোপার্টি","titleButton":"ছবি বাটন প্রোপার্টি","upload":"আপলোড","urlMissing":"Image source URL is missing.","vSpace":"ভার্টিকেল স্পেস","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"ইনডেন্ট বাড়াও","outdent":"ইনডেন্ট কমাও"},"smiley":{"options":"Smiley Options","title":"স্মাইলী যুক্ত কর","toolbar":"স্মাইলী"},"justify":{"block":"ব্লক জাস্টিফাই","center":"মাঝ বরাবর ঘেষা","left":"বা দিকে ঘেঁষা","right":"ডান দিকে ঘেঁষা"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"এক্সেস কী","advanced":"এডভান্সড","advisoryContentType":"পরামর্শ কন্টেন্টের প্রকার","advisoryTitle":"পরামর্শ শীর্ষক","anchor":{"toolbar":"নোঙ্গর","menu":"নোঙর প্রোপার্টি","title":"নোঙর প্রোপার্টি","name":"নোঙরের নাম","errorName":"নোঙরের নাম টাইপ করুন","remove":"Remove Anchor"},"anchorId":"নোঙরের আইডি দিয়ে","anchorName":"নোঙরের নাম দিয়ে","charset":"লিংক রিসোর্স ক্যারেক্টর সেট","cssClasses":"স্টাইল-শীট ক্লাস","emailAddress":"ইমেইল ঠিকানা","emailBody":"মেসেজের দেহ","emailSubject":"মেসেজের বিষয়","id":"আইডি","info":"লিংক তথ্য","langCode":"ভাষা লেখার দিক","langDir":"ভাষা লেখার দিক","langDirLTR":"বাম থেকে ডান (LTR)","langDirRTL":"ডান থেকে বাম (RTL)","menu":"লিংক সম্পাদন","name":"নাম","noAnchors":"(No anchors available in the document)","noEmail":"অনুগ্রহ করে ইমেইল এড্রেস টাইপ করুন","noUrl":"অনুগ্রহ করে URL লিংক টাইপ করুন","other":"<other>","popupDependent":"ডিপেন্ডেন্ট (Netscape)","popupFeatures":"পপআপ উইন্ডো ফীচার সমূহ","popupFullScreen":"পূর্ণ পর্দা জুড়ে (IE)","popupLeft":"বামের পজিশন","popupLocationBar":"লোকেশন বার","popupMenuBar":"মেন্যু বার","popupResizable":"Resizable","popupScrollBars":"স্ক্রল বার","popupStatusBar":"স্ট্যাটাস বার","popupToolbar":"টুল বার","popupTop":"ডানের পজিশন","rel":"Relationship","selectAnchor":"নোঙর বাছাই","styles":"স্টাইল","tabIndex":"ট্যাব ইন্ডেক্স","target":"টার্গেট","targetFrame":"<ফ্রেম>","targetFrameName":"টার্গেট ফ্রেমের নাম","targetPopup":"<পপআপ উইন্ডো>","targetPopupName":"পপআপ উইন্ডোর নাম","title":"লিংক","toAnchor":"এই পেজে নোঙর কর","toEmail":"ইমেইল","toUrl":"URL","toolbar":"লিংক যুক্ত কর","type":"লিংক প্রকার","unlink":"লিংক সরাও","upload":"আপলোড"},"list":{"bulletedlist":"বুলেট লিস্ট লেবেল","numberedlist":"সাংখ্যিক লিস্টের লেবেল"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"নতুন পেজ"},"pagebreak":{"alt":"Page Break","toolbar":"পেজ ব্রেক"},"pastetext":{"button":"সাদা টেক্সট হিসেবে পেস্ট কর","title":"সাদা টেক্সট হিসেবে পেস্ট কর"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"পেস্ট (শব্দ)","toolbar":"পেস্ট (শব্দ)"},"preview":{"preview":"প্রিভিউ"},"print":{"toolbar":"প্রিন্ট"},"removeformat":{"toolbar":"ফরমেট সরাও"},"save":{"toolbar":"সংরক্ষন কর"},"selectall":{"toolbar":"সব সিলেক্ট কর"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"সোর্স"},"specialchar":{"options":"Special Character Options","title":"বিশেষ ক্যারেক্টার বাছাই কর","toolbar":"বিশেষ অক্ষর যুক্ত কর"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"স্টাইল","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"বর্ডার সাইজ","caption":"শীর্ষক","cell":{"menu":"সেল","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"সেল মুছে দাও","merge":"সেল জোড়া দাও","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"সেল প্যাডিং","cellSpace":"সেল স্পেস","column":{"menu":"কলাম","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"কলাম মুছে দাও"},"columns":"কলাম","deleteTable":"টেবিল ডিলীট কর","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"টেবিল প্রোপার্টি","row":{"menu":"রো","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"রো মুছে দাও"},"rows":"রো","summary":"সারাংশ","title":"টেবিল প্রোপার্টি","toolbar":"টেবিলের লেবেল যুক্ত কর","widthPc":"শতকরা","widthPx":"পিক্সেল","widthUnit":"width unit"},"undo":{"redo":"রি-ডু","undo":"আনডু"},"wsc":{"btnIgnore":"ইগনোর কর","btnIgnoreAll":"সব ইগনোর কর","btnReplace":"বদলে দাও","btnReplaceAll":"সব বদলে দাও","btnUndo":"আন্ডু","changeTo":"এতে বদলাও","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"বানান পরীক্ষক ইনস্টল করা নেই। আপনি কি এখনই এটা ডাউনলোড করতে চান?","manyChanges":"বানান পরীক্ষা শেষ: %1 গুলো শব্দ বদলে গ্যাছে","noChanges":"বানান পরীক্ষা শেষ: কোন শব্দ পরিবর্তন করা হয়নি","noMispell":"বানান পরীক্ষা শেষ: কোন ভুল বানান পাওয়া যায়নি","noSuggestions":"- কোন সাজেশন নেই -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"শব্দকোষে নেই","oneChange":"বানান পরীক্ষা শেষ: একটি মাত্র শব্দ পরিবর্তন করা হয়েছে","progress":"বানান পরীক্ষা চলছে...","title":"Spell Check","toolbar":"বানান চেক"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/bs.js b/wqflask/wqflask/static/packages/ckeditor/lang/bs.js
deleted file mode 100644
index f12f8bec..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/bs.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['bs']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protokol","upload":"Šalji","uploadSubmit":"Šalji na server","image":"Slika","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<nije podešeno>","id":"Id","name":"Naziv","langDir":"Smjer pisanja","langDirLtr":"S lijeva na desno (LTR)","langDirRtl":"S desna na lijevo (RTL)","langCode":"Jezièni kôd","longDescr":"Dugaèki opis URL-a","cssClass":"Klase CSS stilova","advisoryTitle":"Advisory title","cssStyle":"Stil","ok":"OK","cancel":"Odustani","close":"Close","preview":"Prikaži","resize":"Resize","generalTab":"General","advancedTab":"Naprednije","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Prozor","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","styles":"Stil","cssClasses":"Klase CSS stilova","width":"Širina","height":"Visina","align":"Poravnanje","alignLeft":"Lijevo","alignRight":"Desno","alignCenter":"Centar","alignJustify":"Puno poravnanje","alignTop":"Vrh","alignMiddle":"Sredina","alignBottom":"Dno","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Boldiraj","italic":"Ukosi","strike":"Precrtaj","subscript":"Subscript","superscript":"Superscript","underline":"Podvuci"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Kopiraj","copyError":"Sigurnosne postavke Vašeg pretraživaèa ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tastaturi (Ctrl/Cmd+C).","cut":"Izreži","cutError":"Sigurnosne postavke vašeg pretraživaèa ne dozvoljavaju operacije automatskog rezanja. Molimo koristite kraticu na tastaturi (Ctrl/Cmd+X).","paste":"Zalijepi","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Zalijepi"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatska","bgColorTitle":"Boja pozadine","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Više boja...","panelTitle":"Colors","textColorTitle":"Boja teksta"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory title","cssClassInputLabel":"Klase CSS stilova","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"S lijeva na desno (LTR)","langDirLabel":"Smjer pisanja","langDirRTLLabel":"S desna na lijevo (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Stil","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Naði","findOptions":"Find Options","findWhat":"Naði šta:","matchCase":"Uporeðuj velika/mala slova","matchCyclic":"Match cyclic","matchWord":"Uporeðuj samo cijelu rijeè","notFoundMsg":"Traženi tekst nije pronaðen.","replace":"Zamjeni","replaceAll":"Zamjeni sve","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Zamjeni sa:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs dole","alignAbsMiddle":"Abs sredina","alignBaseline":"Bazno","alignTextTop":"Vrh teksta","bgcolor":"Boja pozadine","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"Molimo ukucajte URL link","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Velièina","voiceLabel":"Font Size","panelTitle":"Velièina"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Ubaci horizontalnu liniju"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Molimo ukucajte URL od slike.","alt":"Tekst na slici","border":"Okvir","btnUpload":"Šalji na server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Info slike","linkTab":"Link","lockRatio":"Zakljuèaj odnos","menu":"Svojstva slike","resetSize":"Resetuj dimenzije","title":"Svojstva slike","titleButton":"Image Button Properties","upload":"Šalji","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Poveæaj uvod","outdent":"Smanji uvod"},"smiley":{"options":"Smiley Options","title":"Ubaci smješka","toolbar":"Smješko"},"justify":{"block":"Puno poravnanje","center":"Centralno poravnanje","left":"Lijevo poravnanje","right":"Desno poravnanje"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Pristupna tipka","advanced":"Naprednije","advisoryContentType":"Advisory vrsta sadržaja","advisoryTitle":"Advisory title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"Po Id-u elementa","anchorName":"Po nazivu sidra","charset":"Linked Resource Charset","cssClasses":"Klase CSS stilova","emailAddress":"E-Mail Adresa","emailBody":"Poruka","emailSubject":"Subjekt poruke","id":"Id","info":"Link info","langCode":"Smjer pisanja","langDir":"Smjer pisanja","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","menu":"Izmjeni link","name":"Naziv","noAnchors":"(Nema dostupnih sidra na stranici)","noEmail":"Molimo ukucajte e-mail adresu","noUrl":"Molimo ukucajte URL link","other":"<other>","popupDependent":"Ovisno (Netscape)","popupFeatures":"Moguænosti popup prozora","popupFullScreen":"Cijeli ekran (IE)","popupLeft":"Lijeva pozicija","popupLocationBar":"Traka za lokaciju","popupMenuBar":"Izborna traka","popupResizable":"Resizable","popupScrollBars":"Scroll traka","popupStatusBar":"Statusna traka","popupToolbar":"Traka sa alatima","popupTop":"Gornja pozicija","rel":"Relationship","selectAnchor":"Izaberi sidro","styles":"Stil","tabIndex":"Tab indeks","target":"Prozor","targetFrame":"<frejm>","targetFrameName":"Target Frame Name","targetPopup":"<popup prozor>","targetPopupName":"Naziv popup prozora","title":"Link","toAnchor":"Sidro na ovoj stranici","toEmail":"E-Mail","toUrl":"URL","toolbar":"Ubaci/Izmjeni link","type":"Tip linka","unlink":"Izbriši link","upload":"Šalji"},"list":{"bulletedlist":"Lista","numberedlist":"Numerisana lista"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Novi dokument"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Zalijepi kao obièan tekst","title":"Zalijepi kao obièan tekst"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Zalijepi iz Word-a","toolbar":"Zalijepi iz Word-a"},"preview":{"preview":"Prikaži"},"print":{"toolbar":"Štampaj"},"removeformat":{"toolbar":"Poništi format"},"save":{"toolbar":"Snimi"},"selectall":{"toolbar":"Selektuj sve"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"HTML kôd"},"specialchar":{"options":"Special Character Options","title":"Izaberi specijalni karakter","toolbar":"Ubaci specijalni karater"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Okvir","caption":"Naslov","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Briši æelije","merge":"Spoji æelije","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Uvod æelija","cellSpace":"Razmak æelija","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Briši kolone"},"columns":"Kolona","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Svojstva tabele","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Briši redove"},"rows":"Redova","summary":"Summary","title":"Svojstva tabele","toolbar":"Tabela","widthPc":"posto","widthPx":"piksela","widthUnit":"width unit"},"undo":{"redo":"Ponovi","undo":"Vrati"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ca.js b/wqflask/wqflask/static/packages/ckeditor/lang/ca.js
deleted file mode 100644
index 222aaa91..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ca.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ca']={"editor":"Editor de text enriquit","editorPanel":"Panell de l'editor de text enriquit","common":{"editorHelp":"Premeu ALT 0 per ajuda","browseServer":"Veure servidor","url":"URL","protocol":"Protocol","upload":"Puja","uploadSubmit":"Envia-la al servidor","image":"Imatge","flash":"Flash","form":"Formulari","checkbox":"Casella de verificació","radio":"Botó d'opció","textField":"Camp de text","textarea":"Àrea de text","hiddenField":"Camp ocult","button":"Botó","select":"Camp de selecció","imageButton":"Botó d'imatge","notSet":"<no definit>","id":"Id","name":"Nom","langDir":"Direcció de l'idioma","langDirLtr":"D'esquerra a dreta (LTR)","langDirRtl":"De dreta a esquerra (RTL)","langCode":"Codi d'idioma","longDescr":"Descripció llarga de la URL","cssClass":"Classes del full d'estil","advisoryTitle":"Títol consultiu","cssStyle":"Estil","ok":"D'acord","cancel":"Cancel·la","close":"Tanca","preview":"Previsualitza","resize":"Arrossegueu per redimensionar","generalTab":"General","advancedTab":"Avançat","validateNumberFailed":"Aquest valor no és un número.","confirmNewPage":"Els canvis en aquest contingut que no es desin es perdran. Esteu segur que voleu carregar una pàgina nova?","confirmCancel":"Algunes opcions s'han canviat. Esteu segur que voleu tancar el quadre de diàleg?","options":"Opcions","target":"Destí","targetNew":"Nova finestra (_blank)","targetTop":"Finestra superior (_top)","targetSelf":"Mateixa finestra (_self)","targetParent":"Finestra pare (_parent)","langDirLTR":"D'esquerra a dreta (LTR)","langDirRTL":"De dreta a esquerra (RTL)","styles":"Estil","cssClasses":"Classes del full d'estil","width":"Amplada","height":"Alçada","align":"Alineació","alignLeft":"Ajusta a l'esquerra","alignRight":"Ajusta a la dreta","alignCenter":"Centre","alignJustify":"Justificat","alignTop":"Superior","alignMiddle":"Centre","alignBottom":"Inferior","alignNone":"None","invalidValue":"Valor no vàlid.","invalidHeight":"L'alçada ha de ser un número.","invalidWidth":"L'amplada ha de ser un número.","invalidCssLength":"El valor especificat per als \"%1\" camps ha de ser un número positiu amb o sense unitat de mesura vàlida de CSS (px, %, in, cm, mm, em, ex, pt o pc).","invalidHtmlLength":"El valor especificat per als \"%1\" camps ha de ser un número positiu amb o sense unitat de mesura vàlida d'HTML (px o %).","invalidInlineStyle":"El valor especificat per l'estil en línia ha de constar d'una o més tuples amb el format \"name: value\", separats per punt i coma.","cssLengthTooltip":"Introduïu un número per un valor en píxels o un número amb una unitat vàlida de CSS (px, %, in, cm, mm, em, ex, pt o pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>"},"about":{"copy":"Copyright &copy; $1. Tots els drets reservats.","dlgTitle":"Quant al CKEditor","help":"Premi $1 per obtenir ajuda.","moreInfo":"Per informació sobre llicències visiteu el nostre lloc web:","title":"Quant al CKEditor","userGuide":"Manual d'usuari de CKEditor"},"basicstyles":{"bold":"Negreta","italic":"Cursiva","strike":"Ratllat","subscript":"Subíndex","superscript":"Superíndex","underline":"Subratllat"},"bidi":{"ltr":"Direcció del text d'esquerra a dreta","rtl":"Direcció del text de dreta a esquerra"},"blockquote":{"toolbar":"Bloc de cita"},"clipboard":{"copy":"Copiar","copyError":"La configuració de seguretat del vostre navegador no permet executar automàticament les operacions de copiar. Si us plau, utilitzeu el teclat (Ctrl/Cmd+C).","cut":"Retallar","cutError":"La configuració de seguretat del vostre navegador no permet executar automàticament les operacions de retallar. Si us plau, utilitzeu el teclat (Ctrl/Cmd+X).","paste":"Enganxar","pasteArea":"Àrea d'enganxat","pasteMsg":"Si us plau, enganxi dins del següent camp utilitzant el teclat (<strong>Ctrl/Cmd+V</strong>) i premi OK.","securityMsg":"A causa de la configuració de seguretat del vostre navegador, l'editor no pot accedir a les dades del porta-retalls directament. Enganxeu-ho un altre cop en aquesta finestra.","title":"Enganxar"},"button":{"selectedLabel":"%1 (Seleccionat)"},"colorbutton":{"auto":"Automàtic","bgColorTitle":"Color de Fons","colors":{"000":"Negre","800000":"Grana","8B4513":"Marró sella","2F4F4F":"Gris pissarra fosca","008080":"Blau xarxet","000080":"Blau marí","4B0082":"Indi","696969":"Gris Fosc","B22222":"Foc Maó","A52A2A":"Marró","DAA520":"Solidago","006400":"Verd Fosc","40E0D0":"Turquesa","0000CD":"Blau 1/2","800080":"Lila","808080":"Gris","F00":"Vermell","FF8C00":"Taronja Fosc","FFD700":"Or","008000":"Verd","0FF":"Cian","00F":"Blau","EE82EE":"Violat","A9A9A9":"Gris clar","FFA07A":"Salmó clar","FFA500":"Taronja","FFFF00":"Groc","00FF00":"Verd Llima","AFEEEE":"Turquesa Pàl·lid","ADD8E6":"Blau Clar","DDA0DD":"Pruna","D3D3D3":"Gris Clar","FFF0F5":"Lavanda rosat","FAEBD7":"Blanc Antic","FFFFE0":"Groc Clar","F0FFF0":"Verd Pàl·lid","F0FFFF":"Atzur","F0F8FF":"Cian pàlid","E6E6FA":"Lavanda","FFF":"Blanc"},"more":"Més Colors...","panelTitle":"Colors","textColorTitle":"Color del Text"},"colordialog":{"clear":"Neteja","highlight":"Destacat","options":"Opcions del color","selected":"Color Seleccionat","title":"Seleccioni el color"},"templates":{"button":"Plantilles","emptyListMsg":"(No hi ha plantilles definides)","insertOption":"Reemplaça el contingut actual","options":"Opcions de plantilla","selectPromptMsg":"Seleccioneu una plantilla per usar a l'editor<br>(per defecte s'elimina el contingut actual):","title":"Plantilles de contingut"},"contextmenu":{"options":"Opcions del menú contextual"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Títol de guia","cssClassInputLabel":"Classes de la fulla d'estils","edit":"Edita la Capa","inlineStyleInputLabel":"Estil en línia","langDirLTRLabel":"D'esquerra a dreta (LTR)","langDirLabel":"Direcció de l'idioma","langDirRTLLabel":"De dreta a esquerra (RTL)","languageCodeInputLabel":" Codi d'idioma","remove":"Elimina la Capa","styleSelectLabel":"Estil","title":"Crea una Capa Contenidora","toolbar":"Crea una Capa Contenidora"},"toolbar":{"toolbarCollapse":"Redueix la barra d'eines","toolbarExpand":"Amplia la barra d'eines","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor de barra d'eines"},"elementspath":{"eleLabel":"Ruta dels elements","eleTitle":"%1 element"},"find":{"find":"Cerca","findOptions":"Opcions de Cerca","findWhat":"Cerca el:","matchCase":"Distingeix majúscules/minúscules","matchCyclic":"Coincidència cíclica","matchWord":"Només paraules completes","notFoundMsg":"El text especificat no s'ha trobat.","replace":"Reemplaça","replaceAll":"Reemplaça-ho tot","replaceSuccessMsg":"%1 ocurrència/es reemplaçada/es.","replaceWith":"Reemplaça amb:","title":"Cerca i reemplaça"},"fakeobjects":{"anchor":"Àncora","flash":"Animació Flash","hiddenfield":"Camp ocult","iframe":"IFrame","unknown":"Objecte desconegut"},"flash":{"access":"Accés a scripts","accessAlways":"Sempre","accessNever":"Mai","accessSameDomain":"El mateix domini","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Superior","bgcolor":"Color de Fons","chkFull":"Permetre la pantalla completa","chkLoop":"Bucle","chkMenu":"Habilita menú Flash","chkPlay":"Reprodució automàtica","flashvars":"Variables de Flash","hSpace":"Espaiat horitzontal","properties":"Propietats del Flash","propertiesTab":"Propietats","quality":"Qualitat","qualityAutoHigh":"Alta automàtica","qualityAutoLow":"Baixa automàtica","qualityBest":"La millor","qualityHigh":"Alta","qualityLow":"Baixa","qualityMedium":"Mitjana","scale":"Escala","scaleAll":"Mostra-ho tot","scaleFit":"Mida exacta","scaleNoBorder":"Sense vores","title":"Propietats del Flash","vSpace":"Espaiat vertical","validateHSpace":"L'espaiat horitzontal ha de ser un número.","validateSrc":"La URL no pot estar buida.","validateVSpace":"L'espaiat vertical ha de ser un número.","windowMode":"Mode de la finestra","windowModeOpaque":"Opaca","windowModeTransparent":"Transparent","windowModeWindow":"Finestra"},"font":{"fontSize":{"label":"Mida","voiceLabel":"Mida de la lletra","panelTitle":"Mida de la lletra"},"label":"Tipus de lletra","panelTitle":"Tipus de lletra","voiceLabel":"Tipus de lletra"},"forms":{"button":{"title":"Propietats del botó","text":"Text (Valor)","type":"Tipus","typeBtn":"Botó","typeSbm":"Transmet formulari","typeRst":"Reinicia formulari"},"checkboxAndRadio":{"checkboxTitle":"Propietats de la casella de verificació","radioTitle":"Propietats del botó d'opció","value":"Valor","selected":"Seleccionat"},"form":{"title":"Propietats del formulari","menu":"Propietats del formulari","action":"Acció","method":"Mètode","encoding":"Codificació"},"hidden":{"title":"Propietats del camp ocult","name":"Nom","value":"Valor"},"select":{"title":"Propietats del camp de selecció","selectInfo":"Info","opAvail":"Opcions disponibles","value":"Valor","size":"Mida","lines":"Línies","chkMulti":"Permet múltiples seleccions","opText":"Text","opValue":"Valor","btnAdd":"Afegeix","btnModify":"Modifica","btnUp":"Amunt","btnDown":"Avall","btnSetValue":"Selecciona per defecte","btnDelete":"Elimina"},"textarea":{"title":"Propietats de l'àrea de text","cols":"Columnes","rows":"Files"},"textfield":{"title":"Propietats del camp de text","name":"Nom","value":"Valor","charWidth":"Amplada","maxChars":"Nombre màxim de caràcters","type":"Tipus","typeText":"Text","typePass":"Contrasenya","typeEmail":"Correu electrònic","typeSearch":"Cercar","typeTel":"Número de telèfon","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Adreça","tag_div":"Normal (DIV)","tag_h1":"Encapçalament 1","tag_h2":"Encapçalament 2","tag_h3":"Encapçalament 3","tag_h4":"Encapçalament 4","tag_h5":"Encapçalament 5","tag_h6":"Encapçalament 6","tag_p":"Normal","tag_pre":"Formatejat"},"horizontalrule":{"toolbar":"Insereix línia horitzontal"},"iframe":{"border":"Mostra la vora del marc","noUrl":"Si us plau, introdueixi la URL de l'iframe","scrolling":"Activa les barres de desplaçament","title":"Propietats de l'IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Si us plau, escriviu la URL de la imatge","alt":"Text alternatiu","border":"Vora","btnUpload":"Envia-la al servidor","button2Img":"Voleu transformar el botó d'imatge seleccionat en una simple imatge?","hSpace":"Espaiat horit.","img2Button":"Voleu transformar la imatge seleccionada en un botó d'imatge?","infoTab":"Informació de la imatge","linkTab":"Enllaç","lockRatio":"Bloqueja les proporcions","menu":"Propietats de la imatge","resetSize":"Restaura la mida","title":"Propietats de la imatge","titleButton":"Propietats del botó d'imatge","upload":"Puja","urlMissing":"Falta la URL de la imatge.","vSpace":"Espaiat vert.","validateBorder":"La vora ha de ser un nombre enter.","validateHSpace":"HSpace ha de ser un nombre enter.","validateVSpace":"VSpace ha de ser un nombre enter."},"indent":{"indent":"Augmenta el sagnat","outdent":"Redueix el sagnat"},"smiley":{"options":"Opcions d'emoticones","title":"Insereix una icona","toolbar":"Icona"},"justify":{"block":"Justificat","center":"Centrat","left":"Alinea a l'esquerra","right":"Alinea a la dreta"},"language":{"button":"Definir l'idioma","remove":"Eliminar idioma"},"link":{"acccessKey":"Clau d'accés","advanced":"Avançat","advisoryContentType":"Tipus de contingut consultiu","advisoryTitle":"Títol consultiu","anchor":{"toolbar":"Insereix/Edita àncora","menu":"Propietats de l'àncora","title":"Propietats de l'àncora","name":"Nom de l'àncora","errorName":"Si us plau, escriviu el nom de l'ancora","remove":"Remove Anchor"},"anchorId":"Per Id d'element","anchorName":"Per nom d'àncora","charset":"Conjunt de caràcters font enllaçat","cssClasses":"Classes del full d'estil","emailAddress":"Adreça de correu electrònic","emailBody":"Cos del missatge","emailSubject":"Assumpte del missatge","id":"Id","info":"Informació de l'enllaç","langCode":"Direcció de l'idioma","langDir":"Direcció de l'idioma","langDirLTR":"D'esquerra a dreta (LTR)","langDirRTL":"De dreta a esquerra (RTL)","menu":"Edita l'enllaç","name":"Nom","noAnchors":"(No hi ha àncores disponibles en aquest document)","noEmail":"Si us plau, escrigui l'adreça correu electrònic","noUrl":"Si us plau, escrigui l'enllaç URL","other":"<altre>","popupDependent":"Depenent (Netscape)","popupFeatures":"Característiques finestra popup","popupFullScreen":"Pantalla completa (IE)","popupLeft":"Posició esquerra","popupLocationBar":"Barra d'adreça","popupMenuBar":"Barra de menú","popupResizable":"Redimensionable","popupScrollBars":"Barres d'scroll","popupStatusBar":"Barra d'estat","popupToolbar":"Barra d'eines","popupTop":"Posició dalt","rel":"Relació","selectAnchor":"Selecciona una àncora","styles":"Estil","tabIndex":"Index de Tab","target":"Destí","targetFrame":"<marc>","targetFrameName":"Nom del marc de destí","targetPopup":"<finestra emergent>","targetPopupName":"Nom finestra popup","title":"Enllaç","toAnchor":"Àncora en aquesta pàgina","toEmail":"Correu electrònic","toUrl":"URL","toolbar":"Insereix/Edita enllaç","type":"Tipus d'enllaç","unlink":"Elimina l'enllaç","upload":"Puja"},"list":{"bulletedlist":"Llista de pics","numberedlist":"Llista numerada"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insereix el paràgraf aquí"},"maximize":{"maximize":"Maximitza","minimize":"Minimitza"},"newpage":{"toolbar":"Nova pàgina"},"pagebreak":{"alt":"Salt de pàgina","toolbar":"Insereix salt de pàgina"},"pastetext":{"button":"Enganxa com a text no formatat","title":"Enganxa com a text no formatat"},"pastefromword":{"confirmCleanup":"El text que voleu enganxar sembla provenir de Word. Voleu netejar aquest text abans que sigui enganxat?","error":"No ha estat possible netejar les dades enganxades degut a un error intern","title":"Enganxa des del Word","toolbar":"Enganxa des del Word"},"preview":{"preview":"Visualització prèvia"},"print":{"toolbar":"Imprimeix"},"removeformat":{"toolbar":"Elimina Format"},"save":{"toolbar":"Desa"},"selectall":{"toolbar":"Selecciona-ho tot"},"showblocks":{"toolbar":"Mostra els blocs"},"sourcearea":{"toolbar":"Codi font"},"specialchar":{"options":"Opcions de caràcters especials","title":"Selecciona el caràcter especial","toolbar":"Insereix caràcter especial"},"scayt":{"btn_about":"Quant a l'SCAYT","btn_dictionaries":"Diccionaris","btn_disable":"Deshabilita SCAYT","btn_enable":"Habilitat l'SCAYT","btn_langs":"Idiomes","btn_options":"Opcions","text_title":""},"stylescombo":{"label":"Estil","panelTitle":"Estils de format","panelTitle1":"Estils de bloc","panelTitle2":"Estils incrustats","panelTitle3":"Estils d'objecte"},"table":{"border":"Mida vora","caption":"Títol","cell":{"menu":"Cel·la","insertBefore":"Insereix abans","insertAfter":"Insereix després","deleteCell":"Suprimeix","merge":"Fusiona","mergeRight":"Fusiona a la dreta","mergeDown":"Fusiona avall","splitHorizontal":"Divideix horitzontalment","splitVertical":"Divideix verticalment","title":"Propietats de la cel·la","cellType":"Tipus de cel·la","rowSpan":"Expansió de files","colSpan":"Expansió de columnes","wordWrap":"Ajustar al contingut","hAlign":"Alineació Horizontal","vAlign":"Alineació Vertical","alignBaseline":"A la línia base","bgColor":"Color de fons","borderColor":"Color de la vora","data":"Dades","header":"Capçalera","yes":"Sí","no":"No","invalidWidth":"L'amplada de cel·la ha de ser un nombre.","invalidHeight":"L'alçada de cel·la ha de ser un nombre.","invalidRowSpan":"L'expansió de files ha de ser un nombre enter.","invalidColSpan":"L'expansió de columnes ha de ser un nombre enter.","chooseColor":"Trieu"},"cellPad":"Encoixinament de cel·les","cellSpace":"Espaiat de cel·les","column":{"menu":"Columna","insertBefore":"Insereix columna abans de","insertAfter":"Insereix columna darrera","deleteColumn":"Suprimeix una columna"},"columns":"Columnes","deleteTable":"Suprimeix la taula","headers":"Capçaleres","headersBoth":"Ambdues","headersColumn":"Primera columna","headersNone":"Cap","headersRow":"Primera fila","invalidBorder":"El gruix de la vora ha de ser un nombre.","invalidCellPadding":"L'encoixinament de cel·la ha de ser un nombre.","invalidCellSpacing":"L'espaiat de cel·la ha de ser un nombre.","invalidCols":"El nombre de columnes ha de ser un nombre major que 0.","invalidHeight":"L'alçada de la taula ha de ser un nombre.","invalidRows":"El nombre de files ha de ser un nombre major que 0.","invalidWidth":"L'amplada de la taula ha de ser un nombre.","menu":"Propietats de la taula","row":{"menu":"Fila","insertBefore":"Insereix fila abans de","insertAfter":"Insereix fila darrera","deleteRow":"Suprimeix una fila"},"rows":"Files","summary":"Resum","title":"Propietats de la taula","toolbar":"Taula","widthPc":"percentatge","widthPx":"píxels","widthUnit":"unitat d'amplada"},"undo":{"redo":"Refés","undo":"Desfés"},"wsc":{"btnIgnore":"Ignora","btnIgnoreAll":"Ignora-les totes","btnReplace":"Canvia","btnReplaceAll":"Canvia-les totes","btnUndo":"Desfés","changeTo":"Reemplaça amb","errorLoading":"Error carregant el servidor: %s.","ieSpellDownload":"Verificació ortogràfica no instal·lada. Voleu descarregar-ho ara?","manyChanges":"Verificació ortogràfica: s'han canviat %1 paraules","noChanges":"Verificació ortogràfica: no s'ha canviat cap paraula","noMispell":"Verificació ortogràfica acabada: no hi ha cap paraula mal escrita","noSuggestions":"Cap suggeriment","notAvailable":"El servei no es troba disponible ara.","notInDic":"No és al diccionari","oneChange":"Verificació ortogràfica: s'ha canviat una paraula","progress":"Verificació ortogràfica en curs...","title":"Comprova l'ortografia","toolbar":"Revisa l'ortografia"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/cs.js b/wqflask/wqflask/static/packages/ckeditor/lang/cs.js
deleted file mode 100644
index 3865e126..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/cs.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['cs']={"editor":"Textový editor","editorPanel":"Panel textového editoru","common":{"editorHelp":"Stiskněte ALT 0 pro nápovědu","browseServer":"Vybrat na serveru","url":"URL","protocol":"Protokol","upload":"Odeslat","uploadSubmit":"Odeslat na server","image":"Obrázek","flash":"Flash","form":"Formulář","checkbox":"Zaškrtávací políčko","radio":"Přepínač","textField":"Textové pole","textarea":"Textová oblast","hiddenField":"Skryté pole","button":"Tlačítko","select":"Seznam","imageButton":"Obrázkové tlačítko","notSet":"<nenastaveno>","id":"Id","name":"Jméno","langDir":"Směr jazyka","langDirLtr":"Zleva doprava (LTR)","langDirRtl":"Zprava doleva (RTL)","langCode":"Kód jazyka","longDescr":"Dlouhý popis URL","cssClass":"Třída stylu","advisoryTitle":"Pomocný titulek","cssStyle":"Styl","ok":"OK","cancel":"Zrušit","close":"Zavřít","preview":"Náhled","resize":"Uchopit pro změnu velikosti","generalTab":"Obecné","advancedTab":"Rozšířené","validateNumberFailed":"Zadaná hodnota není číselná.","confirmNewPage":"Jakékoliv neuložené změny obsahu budou ztraceny. Skutečně chcete otevřít novou stránku?","confirmCancel":"Některá z nastavení byla změněna. Skutečně chcete zavřít dialogové okno?","options":"Nastavení","target":"Cíl","targetNew":"Nové okno (_blank)","targetTop":"Okno nejvyšší úrovně (_top)","targetSelf":"Stejné okno (_self)","targetParent":"Rodičovské okno (_parent)","langDirLTR":"Zleva doprava (LTR)","langDirRTL":"Zprava doleva (RTL)","styles":"Styly","cssClasses":"Třídy stylů","width":"Šířka","height":"Výška","align":"Zarovnání","alignLeft":"Vlevo","alignRight":"Vpravo","alignCenter":"Na střed","alignJustify":"Zarovnat do bloku","alignTop":"Nahoru","alignMiddle":"Na střed","alignBottom":"Dolů","alignNone":"Žádné","invalidValue":"Neplatná hodnota.","invalidHeight":"Zadaná výška musí být číslo.","invalidWidth":"Šířka musí být číslo.","invalidCssLength":"Hodnota určená pro pole \"%1\" musí být kladné číslo bez nebo s platnou jednotkou míry CSS (px, %, in, cm, mm, em, ex, pt, nebo pc).","invalidHtmlLength":"Hodnota určená pro pole \"%1\" musí být kladné číslo bez nebo s platnou jednotkou míry HTML (px nebo %).","invalidInlineStyle":"Hodnota určená pro řádkový styl se musí skládat z jedné nebo více n-tic ve formátu \"název : hodnota\", oddělené středníky","cssLengthTooltip":"Zadejte číslo jako hodnotu v pixelech nebo číslo s platnou jednotkou CSS (px, %, v cm, mm, em, ex, pt, nebo pc).","unavailable":"%1<span class=\"cke_accessibility\">, nedostupné</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"O aplikaci CKEditor","help":"Prohlédněte si $1 pro nápovědu.","moreInfo":"Pro informace o lincenci navštivte naši webovou stránku:","title":"O aplikaci CKEditor","userGuide":"Uživatelská příručka CKEditor"},"basicstyles":{"bold":"Tučné","italic":"Kurzíva","strike":"Přeškrtnuté","subscript":"Dolní index","superscript":"Horní index","underline":"Podtržené"},"bidi":{"ltr":"Směr textu zleva doprava","rtl":"Směr textu zprava doleva"},"blockquote":{"toolbar":"Citace"},"clipboard":{"copy":"Kopírovat","copyError":"Bezpečnostní nastavení vašeho prohlížeče nedovolují editoru spustit funkci pro kopírování zvoleného textu do schránky. Prosím zkopírujte zvolený text do schránky pomocí klávesnice (Ctrl/Cmd+C).","cut":"Vyjmout","cutError":"Bezpečnostní nastavení vašeho prohlížeče nedovolují editoru spustit funkci pro vyjmutí zvoleného textu do schránky. Prosím vyjměte zvolený text do schránky pomocí klávesnice (Ctrl/Cmd+X).","paste":"Vložit","pasteArea":"Oblast vkládání","pasteMsg":"Do následujícího pole vložte požadovaný obsah pomocí klávesnice (<STRONG>Ctrl/Cmd+V</STRONG>) a stiskněte <STRONG>OK</STRONG>.","securityMsg":"Z důvodů nastavení bezpečnosti vašeho prohlížeče nemůže editor přistupovat přímo do schránky. Obsah schránky prosím vložte znovu do tohoto okna.","title":"Vložit"},"button":{"selectedLabel":"%1 (Vybráno)"},"colorbutton":{"auto":"Automaticky","bgColorTitle":"Barva pozadí","colors":{"000":"Černá","800000":"Kaštanová","8B4513":"Sedlová hněď","2F4F4F":"Tmavě bledě šedá","008080":"Čírka","000080":"Námořnická modř","4B0082":"Inkoustová","696969":"Tmavě šedá","B22222":"Pálená cihla","A52A2A":"Hnědá","DAA520":"Zlatý prut","006400":"Tmavě zelená","40E0D0":"Tyrkisová","0000CD":"Středně modrá","800080":"Purpurová","808080":"Šedá","F00":"Červená","FF8C00":"Tmavě oranžová","FFD700":"Zlatá","008000":"Zelená","0FF":"Azurová","00F":"Modrá","EE82EE":"Fialová","A9A9A9":"Kalně šedá","FFA07A":"Světle lososová","FFA500":"Oranžová","FFFF00":"Žlutá","00FF00":"Limetková","AFEEEE":"Bledě tyrkisová","ADD8E6":"Světle modrá","DDA0DD":"Švestková","D3D3D3":"Světle šedá","FFF0F5":"Levandulově ruměnná","FAEBD7":"Antická bílá","FFFFE0":"Světle žlutá","F0FFF0":"Medová rosa","F0FFFF":"Azurová","F0F8FF":"Alenčina modrá","E6E6FA":"Levandulová","FFF":"Bílá"},"more":"Více barev...","panelTitle":"Barvy","textColorTitle":"Barva textu"},"colordialog":{"clear":"Vyčistit","highlight":"Zvýraznit","options":"Nastavení barvy","selected":"Vybráno","title":"Výběr barvy"},"templates":{"button":"Šablony","emptyListMsg":"(Není definována žádná šablona)","insertOption":"Nahradit aktuální obsah","options":"Nastavení šablon","selectPromptMsg":"Prosím zvolte šablonu pro otevření v editoru<br>(aktuální obsah editoru bude ztracen):","title":"Šablony obsahu"},"contextmenu":{"options":"Nastavení kontextové nabídky"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Nápovědní titulek","cssClassInputLabel":"Třídy stylů","edit":"Změnit Div","inlineStyleInputLabel":"Vnitřní styly","langDirLTRLabel":"Zleva doprava (LTR)","langDirLabel":"Směr jazyka","langDirRTLLabel":"Zprava doleva (RTL)","languageCodeInputLabel":" Kód jazyka","remove":"Odstranit Div","styleSelectLabel":"Styly","title":"Vytvořit Div kontejner","toolbar":"Vytvořit Div kontejner"},"toolbar":{"toolbarCollapse":"Skrýt panel nástrojů","toolbarExpand":"Zobrazit panel nástrojů","toolbarGroups":{"document":"Dokument","clipboard":"Schránka/Zpět","editing":"Úpravy","forms":"Formuláře","basicstyles":"Základní styly","paragraph":"Odstavec","links":"Odkazy","insert":"Vložit","styles":"Styly","colors":"Barvy","tools":"Nástroje"},"toolbars":"Panely nástrojů editoru"},"elementspath":{"eleLabel":"Cesta objektu","eleTitle":"%1 objekt"},"find":{"find":"Hledat","findOptions":"Možnosti hledání","findWhat":"Co hledat:","matchCase":"Rozlišovat velikost písma","matchCyclic":"Procházet opakovaně","matchWord":"Pouze celá slova","notFoundMsg":"Hledaný text nebyl nalezen.","replace":"Nahradit","replaceAll":"Nahradit vše","replaceSuccessMsg":"%1 nahrazení.","replaceWith":"Čím nahradit:","title":"Najít a nahradit"},"fakeobjects":{"anchor":"Záložka","flash":"Flash animace","hiddenfield":"Skryté pole","iframe":"IFrame","unknown":"Neznámý objekt"},"flash":{"access":"Přístup ke skriptu","accessAlways":"Vždy","accessNever":"Nikdy","accessSameDomain":"Ve stejné doméně","alignAbsBottom":"Zcela dolů","alignAbsMiddle":"Doprostřed","alignBaseline":"Na účaří","alignTextTop":"Na horní okraj textu","bgcolor":"Barva pozadí","chkFull":"Povolit celoobrazovkový režim","chkLoop":"Opakování","chkMenu":"Nabídka Flash","chkPlay":"Automatické spuštění","flashvars":"Proměnné pro Flash","hSpace":"Horizontální mezera","properties":"Vlastnosti Flashe","propertiesTab":"Vlastnosti","quality":"Kvalita","qualityAutoHigh":"Vysoká - auto","qualityAutoLow":"Nízká - auto","qualityBest":"Nejlepší","qualityHigh":"Vysoká","qualityLow":"Nejnižší","qualityMedium":"Střední","scale":"Zobrazit","scaleAll":"Zobrazit vše","scaleFit":"Přizpůsobit","scaleNoBorder":"Bez okraje","title":"Vlastnosti Flashe","vSpace":"Vertikální mezera","validateHSpace":"Zadaná horizontální mezera musí být číslo.","validateSrc":"Zadejte prosím URL odkazu","validateVSpace":"Zadaná vertikální mezera musí být číslo.","windowMode":"Režim okna","windowModeOpaque":"Neprůhledné","windowModeTransparent":"Průhledné","windowModeWindow":"Okno"},"font":{"fontSize":{"label":"Velikost","voiceLabel":"Velikost písma","panelTitle":"Velikost"},"label":"Písmo","panelTitle":"Písmo","voiceLabel":"Písmo"},"forms":{"button":{"title":"Vlastnosti tlačítka","text":"Popisek","type":"Typ","typeBtn":"Tlačítko","typeSbm":"Odeslat","typeRst":"Obnovit"},"checkboxAndRadio":{"checkboxTitle":"Vlastnosti zaškrtávacího políčka","radioTitle":"Vlastnosti přepínače","value":"Hodnota","selected":"Zaškrtnuto"},"form":{"title":"Vlastnosti formuláře","menu":"Vlastnosti formuláře","action":"Akce","method":"Metoda","encoding":"Kódování"},"hidden":{"title":"Vlastnosti skrytého pole","name":"Název","value":"Hodnota"},"select":{"title":"Vlastnosti seznamu","selectInfo":"Info","opAvail":"Dostupná nastavení","value":"Hodnota","size":"Velikost","lines":"Řádků","chkMulti":"Povolit mnohonásobné výběry","opText":"Text","opValue":"Hodnota","btnAdd":"Přidat","btnModify":"Změnit","btnUp":"Nahoru","btnDown":"Dolů","btnSetValue":"Nastavit jako vybranou hodnotu","btnDelete":"Smazat"},"textarea":{"title":"Vlastnosti textové oblasti","cols":"Sloupců","rows":"Řádků"},"textfield":{"title":"Vlastnosti textového pole","name":"Název","value":"Hodnota","charWidth":"Šířka ve znacích","maxChars":"Maximální počet znaků","type":"Typ","typeText":"Text","typePass":"Heslo","typeEmail":"Email","typeSearch":"Hledat","typeTel":"Telefonní číslo","typeUrl":"URL"}},"format":{"label":"Formát","panelTitle":"Formát","tag_address":"Adresa","tag_div":"Normální (DIV)","tag_h1":"Nadpis 1","tag_h2":"Nadpis 2","tag_h3":"Nadpis 3","tag_h4":"Nadpis 4","tag_h5":"Nadpis 5","tag_h6":"Nadpis 6","tag_p":"Normální","tag_pre":"Naformátováno"},"horizontalrule":{"toolbar":"Vložit vodorovnou linku"},"iframe":{"border":"Zobrazit okraj","noUrl":"Zadejte prosím URL obsahu pro IFrame","scrolling":"Zapnout posuvníky","title":"Vlastnosti IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Zadejte prosím URL obrázku","alt":"Alternativní text","border":"Okraje","btnUpload":"Odeslat na server","button2Img":"Skutečně chcete převést zvolené obrázkové tlačítko na obyčejný obrázek?","hSpace":"Horizontální mezera","img2Button":"Skutečně chcete převést zvolený obrázek na obrázkové tlačítko?","infoTab":"Informace o obrázku","linkTab":"Odkaz","lockRatio":"Zámek","menu":"Vlastnosti obrázku","resetSize":"Původní velikost","title":"Vlastnosti obrázku","titleButton":"Vlastností obrázkového tlačítka","upload":"Odeslat","urlMissing":"Zadané URL zdroje obrázku nebylo nalezeno.","vSpace":"Vertikální mezera","validateBorder":"Okraj musí být nastaven v celých číslech.","validateHSpace":"Horizontální mezera musí být nastavena v celých číslech.","validateVSpace":"Vertikální mezera musí být nastavena v celých číslech."},"indent":{"indent":"Zvětšit odsazení","outdent":"Zmenšit odsazení"},"smiley":{"options":"Nastavení smajlíků","title":"Vkládání smajlíků","toolbar":"Smajlíci"},"justify":{"block":"Zarovnat do bloku","center":"Zarovnat na střed","left":"Zarovnat vlevo","right":"Zarovnat vpravo"},"language":{"button":"Nastavit jazyk","remove":"Odstranit jazyk"},"link":{"acccessKey":"Přístupový klíč","advanced":"Rozšířené","advisoryContentType":"Pomocný typ obsahu","advisoryTitle":"Pomocný titulek","anchor":{"toolbar":"Záložka","menu":"Vlastnosti záložky","title":"Vlastnosti záložky","name":"Název záložky","errorName":"Zadejte prosím název záložky","remove":"Odstranit záložku"},"anchorId":"Podle Id objektu","anchorName":"Podle jména kotvy","charset":"Přiřazená znaková sada","cssClasses":"Třída stylu","emailAddress":"E-mailová adresa","emailBody":"Tělo zprávy","emailSubject":"Předmět zprávy","id":"Id","info":"Informace o odkazu","langCode":"Kód jazyka","langDir":"Směr jazyka","langDirLTR":"Zleva doprava (LTR)","langDirRTL":"Zprava doleva (RTL)","menu":"Změnit odkaz","name":"Jméno","noAnchors":"(Ve stránce není definována žádná kotva!)","noEmail":"Zadejte prosím e-mailovou adresu","noUrl":"Zadejte prosím URL odkazu","other":"<jiný>","popupDependent":"Závislost (Netscape)","popupFeatures":"Vlastnosti vyskakovacího okna","popupFullScreen":"Celá obrazovka (IE)","popupLeft":"Levý okraj","popupLocationBar":"Panel umístění","popupMenuBar":"Panel nabídky","popupResizable":"Umožňující měnit velikost","popupScrollBars":"Posuvníky","popupStatusBar":"Stavový řádek","popupToolbar":"Panel nástrojů","popupTop":"Horní okraj","rel":"Vztah","selectAnchor":"Vybrat kotvu","styles":"Styl","tabIndex":"Pořadí prvku","target":"Cíl","targetFrame":"<rámec>","targetFrameName":"Název cílového rámu","targetPopup":"<vyskakovací okno>","targetPopupName":"Název vyskakovacího okna","title":"Odkaz","toAnchor":"Kotva v této stránce","toEmail":"E-mail","toUrl":"URL","toolbar":"Odkaz","type":"Typ odkazu","unlink":"Odstranit odkaz","upload":"Odeslat"},"list":{"bulletedlist":"Odrážky","numberedlist":"Číslování"},"liststyle":{"armenian":"Arménské","bulletedTitle":"Vlastnosti odrážek","circle":"Kroužky","decimal":"Arabská čísla (1, 2, 3, atd.)","decimalLeadingZero":"Arabská čísla uvozená nulou (01, 02, 03, atd.)","disc":"Kolečka","georgian":"Gruzínské (an, ban, gan, atd.)","lowerAlpha":"Malá latinka (a, b, c, d, e, atd.)","lowerGreek":"Malé řecké (alpha, beta, gamma, atd.)","lowerRoman":"Malé římské (i, ii, iii, iv, v, atd.)","none":"Nic","notset":"<nenastaveno>","numberedTitle":"Vlastnosti číslování","square":"Čtverce","start":"Počátek","type":"Typ","upperAlpha":"Velká latinka (A, B, C, D, E, atd.)","upperRoman":"Velké římské (I, II, III, IV, V, atd.)","validateStartNumber":"Číslování musí začínat celým číslem."},"magicline":{"title":"zde vložit odstavec"},"maximize":{"maximize":"Maximalizovat","minimize":"Minimalizovat"},"newpage":{"toolbar":"Nová stránka"},"pagebreak":{"alt":"Konec stránky","toolbar":"Vložit konec stránky"},"pastetext":{"button":"Vložit jako čistý text","title":"Vložit jako čistý text"},"pastefromword":{"confirmCleanup":"Jak je vidět, vkládaný text je kopírován z Wordu. Chcete jej před vložením vyčistit?","error":"Z důvodu vnitřní chyby nebylo možné provést vyčištění vkládaného textu.","title":"Vložit z Wordu","toolbar":"Vložit z Wordu"},"preview":{"preview":"Náhled"},"print":{"toolbar":"Tisk"},"removeformat":{"toolbar":"Odstranit formátování"},"save":{"toolbar":"Uložit"},"selectall":{"toolbar":"Vybrat vše"},"showblocks":{"toolbar":"Ukázat bloky"},"sourcearea":{"toolbar":"Zdroj"},"specialchar":{"options":"Nastavení speciálních znaků","title":"Výběr speciálního znaku","toolbar":"Vložit speciální znaky"},"scayt":{"btn_about":"O aplikaci SCAYT","btn_dictionaries":"Slovníky","btn_disable":"Vypnout SCAYT","btn_enable":"Zapnout SCAYT","btn_langs":"Jazyky","btn_options":"Nastavení","text_title":""},"stylescombo":{"label":"Styl","panelTitle":"Formátovací styly","panelTitle1":"Blokové styly","panelTitle2":"Řádkové styly","panelTitle3":"Objektové styly"},"table":{"border":"Ohraničení","caption":"Popis","cell":{"menu":"Buňka","insertBefore":"Vložit buňku před","insertAfter":"Vložit buňku za","deleteCell":"Smazat buňky","merge":"Sloučit buňky","mergeRight":"Sloučit doprava","mergeDown":"Sloučit dolů","splitHorizontal":"Rozdělit buňky vodorovně","splitVertical":"Rozdělit buňky svisle","title":"Vlastnosti buňky","cellType":"Typ buňky","rowSpan":"Spojit řádky","colSpan":"Spojit sloupce","wordWrap":"Zalamování","hAlign":"Vodorovné zarovnání","vAlign":"Svislé zarovnání","alignBaseline":"Na účaří","bgColor":"Barva pozadí","borderColor":"Barva okraje","data":"Data","header":"Hlavička","yes":"Ano","no":"Ne","invalidWidth":"Šířka buňky musí být číslo.","invalidHeight":"Zadaná výška buňky musí být číslená.","invalidRowSpan":"Zadaný počet sloučených řádků musí být celé číslo.","invalidColSpan":"Zadaný počet sloučených sloupců musí být celé číslo.","chooseColor":"Výběr"},"cellPad":"Odsazení obsahu v buňce","cellSpace":"Vzdálenost buněk","column":{"menu":"Sloupec","insertBefore":"Vložit sloupec před","insertAfter":"Vložit sloupec za","deleteColumn":"Smazat sloupec"},"columns":"Sloupce","deleteTable":"Smazat tabulku","headers":"Záhlaví","headersBoth":"Obojí","headersColumn":"První sloupec","headersNone":"Žádné","headersRow":"První řádek","invalidBorder":"Zdaná velikost okraje musí být číselná.","invalidCellPadding":"Zadané odsazení obsahu v buňce musí být číselné.","invalidCellSpacing":"Zadaná vzdálenost buněk musí být číselná.","invalidCols":"Počet sloupců musí být číslo větší než 0.","invalidHeight":"Zadaná výška tabulky musí být číselná.","invalidRows":"Počet řádků musí být číslo větší než 0.","invalidWidth":"Šířka tabulky musí být číslo.","menu":"Vlastnosti tabulky","row":{"menu":"Řádek","insertBefore":"Vložit řádek před","insertAfter":"Vložit řádek za","deleteRow":"Smazat řádky"},"rows":"Řádky","summary":"Souhrn","title":"Vlastnosti tabulky","toolbar":"Tabulka","widthPc":"procent","widthPx":"bodů","widthUnit":"jednotka šířky"},"undo":{"redo":"Znovu","undo":"Zpět"},"wsc":{"btnIgnore":"Přeskočit","btnIgnoreAll":"Přeskakovat vše","btnReplace":"Zaměnit","btnReplaceAll":"Zaměňovat vše","btnUndo":"Zpět","changeTo":"Změnit na","errorLoading":"Chyba nahrávání služby aplikace z: %s.","ieSpellDownload":"Kontrola pravopisu není nainstalována. Chcete ji nyní stáhnout?","manyChanges":"Kontrola pravopisu dokončena: %1 slov změněno","noChanges":"Kontrola pravopisu dokončena: Beze změn","noMispell":"Kontrola pravopisu dokončena: Žádné pravopisné chyby nenalezeny","noSuggestions":"- žádné návrhy -","notAvailable":"Omlouváme se, ale služba nyní není dostupná.","notInDic":"Není ve slovníku","oneChange":"Kontrola pravopisu dokončena: Jedno slovo změněno","progress":"Probíhá kontrola pravopisu...","title":"Kontrola pravopisu","toolbar":"Zkontrolovat pravopis"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/cy.js b/wqflask/wqflask/static/packages/ckeditor/lang/cy.js
deleted file mode 100644
index 420a0546..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/cy.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['cy']={"editor":"Golygydd Testun Cyfoethog","editorPanel":"Panel Golygydd Testun Cyfoethog","common":{"editorHelp":"Gwasgwch ALT 0 am gymorth","browseServer":"Pori'r Gweinydd","url":"URL","protocol":"Protocol","upload":"Lanlwytho","uploadSubmit":"Anfon i'r Gweinydd","image":"Delwedd","flash":"Flash","form":"Ffurflen","checkbox":"Blwch ticio","radio":"Botwm Radio","textField":"Maes Testun","textarea":"Ardal Testun","hiddenField":"Maes Cudd","button":"Botwm","select":"Maes Dewis","imageButton":"Botwm Delwedd","notSet":"<heb osod>","id":"Id","name":"Name","langDir":"Cyfeiriad Iaith","langDirLtr":"Chwith i'r Dde (LTR)","langDirRtl":"Dde i'r Chwith (RTL)","langCode":"Cod Iaith","longDescr":"URL Disgrifiad Hir","cssClass":"Dosbarthiadau Dalen Arddull","advisoryTitle":"Teitl Cynghorol","cssStyle":"Arddull","ok":"Iawn","cancel":"Diddymu","close":"Cau","preview":"Rhagolwg","resize":"Ailfeintio","generalTab":"Cyffredinol","advancedTab":"Uwch","validateNumberFailed":"'Dyw'r gwerth hwn ddim yn rhif.","confirmNewPage":"Byddwch chi'n colli unrhyw newidiadau i'r cynnwys sydd heb eu cadw. Ydych am barhau i lwytho tudalen newydd?","confirmCancel":"Cafodd rhai o'r opsiynau eu newid. Ydych chi wir am gau'r deialog?","options":"Opsiynau","target":"Targed","targetNew":"Ffenest Newydd (_blank)","targetTop":"Ffenest ar y Brig (_top)","targetSelf":"Yr un Ffenest (_self)","targetParent":"Ffenest y Rhiant (_parent)","langDirLTR":"Chwith i'r Dde (LTR)","langDirRTL":"Dde i'r Chwith (RTL)","styles":"Arddull","cssClasses":"Dosbarthiadau Dalen Arddull","width":"Lled","height":"Uchder","align":"Alinio","alignLeft":"Chwith","alignRight":"Dde","alignCenter":"Canol","alignJustify":"Unioni","alignTop":"Brig","alignMiddle":"Canol","alignBottom":"Gwaelod","alignNone":"None","invalidValue":"Gwerth annilys.","invalidHeight":"Mae'n rhaid i'r uchder fod yn rhif.","invalidWidth":"Mae'n rhaid i'r lled fod yn rhif.","invalidCssLength":"Mae'n rhaid i'r gwerth ar gyfer maes \"%1\" fod yn rhif positif gyda neu heb uned fesuriad CSS dilys (px, %, in, cm, mm, em, ex, pt, neu pc).","invalidHtmlLength":"Mae'n rhaid i'r gwerth ar gyfer maes \"%1\" fod yn rhif positif gyda neu heb uned fesuriad HTML dilys (px neu %).","invalidInlineStyle":"Mae'n rhaid i'r gwerth ar gyfer arddull mewn-llinell gynnwys un set neu fwy ar y fformat \"enw : gwerth\", wedi'u gwahanu gyda hanner colon.","cssLengthTooltip":"Rhowch rif am werth mewn picsel neu rhif gydag uned CSS dilys (px, %, in, cm, mm, em, pt neu pc).","unavailable":"%1<span class=\"cke_accessibility\">, ddim ar gael</span>"},"about":{"copy":"Hawlfraint &copy; $1. Cedwir pob hawl.","dlgTitle":"Ynghylch CKEditor","help":"Gwirio $1 am gymorth.","moreInfo":"Am wybodaeth ynghylch trwyddedau, ewch i'n gwefan:","title":"Ynghylch CKEditor","userGuide":"Canllawiau Defnyddiwr CKEditor"},"basicstyles":{"bold":"Bras","italic":"Italig","strike":"Llinell Trwyddo","subscript":"Is-sgript","superscript":"Uwchsgript","underline":"Tanlinellu"},"bidi":{"ltr":"Cyfeiriad testun o'r chwith i'r dde","rtl":"Cyfeiriad testun o'r dde i'r chwith"},"blockquote":{"toolbar":"Dyfyniad bloc"},"clipboard":{"copy":"Copïo","copyError":"'Dyw gosodiadau diogelwch eich porwr ddim yn caniatàu'r golygydd i gynnal 'gweithredoedd copïo' yn awtomatig. Defnyddiwch y bysellfwrdd (Ctrl/Cmd+C).","cut":"Torri","cutError":"Nid yw gosodiadau diogelwch eich porwr yn caniatàu'r golygydd i gynnal 'gweithredoedd torri' yn awtomatig. Defnyddiwch y bysellfwrdd (Ctrl/Cmd+X).","paste":"Gludo","pasteArea":"Ardal Gludo","pasteMsg":"Gludwch i mewn i'r blwch canlynol gan ddefnyddio'r bysellfwrdd (<strong>Ctrl/Cmd+V</strong>) a phwyso <strong>Iawn</strong>.","securityMsg":"Oherwydd gosodiadau diogelwch eich porwr, 'dyw'r porwr ddim yn gallu ennill mynediad i'r data ar y clipfwrdd yn uniongyrchol. Mae angen i chi ei ludo eto i'r ffenestr hon.","title":"Gludo"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Awtomatig","bgColorTitle":"Lliw Cefndir","colors":{"000":"Du","800000":"Marwn","8B4513":"Brown Cyfrwy","2F4F4F":"Llechen Tywyll","008080":"Corhwyad","000080":"Nefi","4B0082":"Indigo","696969":"Llwyd Tywyll","B22222":"Bric Tân","A52A2A":"Brown","DAA520":"Rhoden Aur","006400":"Gwyrdd Tywyll","40E0D0":"Gwyrddlas","0000CD":"Glas Canolig","800080":"Porffor","808080":"Llwyd","F00":"Coch","FF8C00":"Oren Tywyll","FFD700":"Aur","008000":"Gwyrdd","0FF":"Cyan","00F":"Glas","EE82EE":"Fioled","A9A9A9":"Llwyd Pwl","FFA07A":"Samwn Golau","FFA500":"Oren","FFFF00":"Melyn","00FF00":"Leim","AFEEEE":"Gwyrddlas Golau","ADD8E6":"Glas Golau","DDA0DD":"Eirinen","D3D3D3":"Llwyd Golau","FFF0F5":"Gwrid Lafant","FAEBD7":"Gwyn Hynafol","FFFFE0":"Melyn Golau","F0FFF0":"Melwn Gwyrdd Golau","F0FFFF":"Aswr","F0F8FF":"Glas Alys","E6E6FA":"Lafant","FFF":"Gwyn"},"more":"Mwy o Liwiau...","panelTitle":"Lliwiau","textColorTitle":"Lliw Testun"},"colordialog":{"clear":"Clirio","highlight":"Uwcholeuo","options":"Opsiynau Lliw","selected":"Lliw a Ddewiswyd","title":"Dewis lliw"},"templates":{"button":"Templedi","emptyListMsg":"(Dim templedi wedi'u diffinio)","insertOption":"Amnewid y cynnwys go iawn","options":"Opsiynau Templedi","selectPromptMsg":"Dewiswch dempled i'w agor yn y golygydd","title":"Templedi Cynnwys"},"contextmenu":{"options":"Opsiynau Dewislen Cyd-destun"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Teitl Cynghorol","cssClassInputLabel":"Dosbarthiadau Ffeil Arddull","edit":"Golygu Div","inlineStyleInputLabel":"Arddull Mewn Llinell","langDirLTRLabel":"Chwith i'r Dde (LTR)","langDirLabel":"Cyfeiriad yr Iaith","langDirRTLLabel":"Dde i'r Chwith (RTL)","languageCodeInputLabel":" Cod Iaith","remove":"Tynnu Div","styleSelectLabel":"Arddull","title":"Creu Cynhwysydd Div","toolbar":"Creu Cynhwysydd Div"},"toolbar":{"toolbarCollapse":"Cyfangu'r Bar Offer","toolbarExpand":"Ehangu'r Bar Offer","toolbarGroups":{"document":"Dogfen","clipboard":"Clipfwrdd/Dadwneud","editing":"Golygu","forms":"Ffurflenni","basicstyles":"Arddulliau Sylfaenol","paragraph":"Paragraff","links":"Dolenni","insert":"Mewnosod","styles":"Arddulliau","colors":"Lliwiau","tools":"Offer"},"toolbars":"Bariau offer y golygydd"},"elementspath":{"eleLabel":"Llwybr elfennau","eleTitle":"Elfen %1"},"find":{"find":"Chwilio","findOptions":"Opsiynau Chwilio","findWhat":"Chwilio'r term:","matchCase":"Cydweddu'r cas","matchCyclic":"Cydweddu'n gylchol","matchWord":"Cydweddu gair cyfan","notFoundMsg":"Nid oedd y testun wedi'i ddarganfod.","replace":"Amnewid Un","replaceAll":"Amnewid Pob","replaceSuccessMsg":"Amnewidiwyd %1 achlysur.","replaceWith":"Amnewid gyda:","title":"Chwilio ac Amnewid"},"fakeobjects":{"anchor":"Angor","flash":"Animeiddiant Flash","hiddenfield":"Maes Cudd","iframe":"IFrame","unknown":"Gwrthrych Anhysbys"},"flash":{"access":"Mynediad Sgript","accessAlways":"Pob amser","accessNever":"Byth","accessSameDomain":"R'un parth","alignAbsBottom":"Gwaelod Abs","alignAbsMiddle":"Canol Abs","alignBaseline":"Baslinell","alignTextTop":"Testun Top","bgcolor":"Lliw cefndir","chkFull":"Caniatàu Sgrin Llawn","chkLoop":"Lwpio","chkMenu":"Galluogi Dewislen Flash","chkPlay":"AwtoChwarae","flashvars":"Newidynnau ar gyfer Flash","hSpace":"BwlchLl","properties":"Priodweddau Flash","propertiesTab":"Priodweddau","quality":"Ansawdd","qualityAutoHigh":"Uchel Awto","qualityAutoLow":"Isel Awto","qualityBest":"Gorau","qualityHigh":"Uchel","qualityLow":"Isel","qualityMedium":"Canolig","scale":"Graddfa","scaleAll":"Dangos pob","scaleFit":"Ffit Union","scaleNoBorder":"Dim Ymyl","title":"Priodweddau Flash","vSpace":"BwlchF","validateHSpace":"Rhaid i'r BwlchLl fod yn rhif.","validateSrc":"Ni all yr URL fod yn wag.","validateVSpace":"Rhaid i'r BwlchF fod yn rhif.","windowMode":"Modd ffenestr","windowModeOpaque":"Afloyw","windowModeTransparent":"Tryloyw","windowModeWindow":"Ffenestr"},"font":{"fontSize":{"label":"Maint","voiceLabel":"Maint y Ffont","panelTitle":"Maint y Ffont"},"label":"Ffont","panelTitle":"Enw'r Ffont","voiceLabel":"Ffont"},"forms":{"button":{"title":"Priodweddau Botymau","text":"Testun (Gwerth)","type":"Math","typeBtn":"Botwm","typeSbm":"Anfon","typeRst":"Ailosod"},"checkboxAndRadio":{"checkboxTitle":"Priodweddau Blwch Ticio","radioTitle":"Priodweddau Botwm Radio","value":"Gwerth","selected":"Dewiswyd"},"form":{"title":"Priodweddau Ffurflen","menu":"Priodweddau Ffurflen","action":"Gweithred","method":"Dull","encoding":"Amgodio"},"hidden":{"title":"Priodweddau Maes Cudd","name":"Enw","value":"Gwerth"},"select":{"title":"Priodweddau Maes Dewis","selectInfo":"Gwyb Dewis","opAvail":"Opsiynau ar Gael","value":"Gwerth","size":"Maint","lines":"llinellau","chkMulti":"Caniatàu aml-ddewisiadau","opText":"Testun","opValue":"Gwerth","btnAdd":"Ychwanegu","btnModify":"Newid","btnUp":"Lan","btnDown":"Lawr","btnSetValue":"Gosod fel gwerth a ddewiswyd","btnDelete":"Dileu"},"textarea":{"title":"Priodweddau Ardal Testun","cols":"Colofnau","rows":"Rhesi"},"textfield":{"title":"Priodweddau Maes Testun","name":"Enw","value":"Gwerth","charWidth":"Lled Nod","maxChars":"Uchafswm y Nodau","type":"Math","typeText":"Testun","typePass":"Cyfrinair","typeEmail":"Ebost","typeSearch":"Chwilio","typeTel":"Rhif Ffôn","typeUrl":"URL"}},"format":{"label":"Fformat","panelTitle":"Fformat Paragraff","tag_address":"Cyfeiriad","tag_div":"Normal (DIV)","tag_h1":"Pennawd 1","tag_h2":"Pennawd 2","tag_h3":"Pennawd 3","tag_h4":"Pennawd 4","tag_h5":"Pennawd 5","tag_h6":"Pennawd 6","tag_p":"Normal","tag_pre":"Wedi'i Fformatio"},"horizontalrule":{"toolbar":"Mewnosod Llinell Lorweddol"},"iframe":{"border":"Dangos ymyl y ffrâm","noUrl":"Rhowch URL yr iframe","scrolling":"Galluogi bariau sgrolio","title":"Priodweddau IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Rhowch URL y ddelwedd","alt":"Testun Amgen","border":"Ymyl","btnUpload":"Anfon i'r Gweinydd","button2Img":"Ydych am drawsffurfio'r botwm ddelwedd hwn ar ddelwedd syml?","hSpace":"BwlchLl","img2Button":"Ydych am drawsffurfio'r ddelwedd hon ar fotwm delwedd?","infoTab":"Gwyb Delwedd","linkTab":"Dolen","lockRatio":"Cloi Cymhareb","menu":"Priodweddau Delwedd","resetSize":"Ailosod Maint","title":"Priodweddau Delwedd","titleButton":"Priodweddau Botwm Delwedd","upload":"Lanlwytho","urlMissing":"URL gwreiddiol y ddelwedd ar goll.","vSpace":"BwlchF","validateBorder":"Rhaid i'r ymyl fod yn gyfanrif.","validateHSpace":"Rhaid i'r HSpace fod yn gyfanrif.","validateVSpace":"Rhaid i'r VSpace fod yn gyfanrif."},"indent":{"indent":"Cynyddu'r Mewnoliad","outdent":"Lleihau'r Mewnoliad"},"smiley":{"options":"Opsiynau Gwenogluniau","title":"Mewnosod Gwenoglun","toolbar":"Gwenoglun"},"justify":{"block":"Unioni","center":"Alinio i'r Canol","left":"Alinio i'r Chwith","right":"Alinio i'r Dde"},"language":{"button":"Gosod iaith","remove":"Tynnu iaith"},"link":{"acccessKey":"Allwedd Mynediad","advanced":"Uwch","advisoryContentType":"Math y Cynnwys Cynghorol","advisoryTitle":"Teitl Cynghorol","anchor":{"toolbar":"Angor","menu":"Golygu'r Angor","title":"Priodweddau'r Angor","name":"Enw'r Angor","errorName":"Teipiwch enw'r angor","remove":"Tynnwch yr Angor"},"anchorId":"Gan Id yr Elfen","anchorName":"Gan Enw'r Angor","charset":"Set Nodau'r Adnodd Cysylltiedig","cssClasses":"Dosbarthiadau Dalen Arddull","emailAddress":"Cyfeiriad E-Bost","emailBody":"Corff y Neges","emailSubject":"Testun y Neges","id":"Id","info":"Gwyb y Ddolen","langCode":"Cod Iaith","langDir":"Cyfeiriad Iaith","langDirLTR":"Chwith i'r Dde (LTR)","langDirRTL":"Dde i'r Chwith (RTL)","menu":"Golygu Dolen","name":"Enw","noAnchors":"(Dim angorau ar gael yn y ddogfen)","noEmail":"Teipiwch gyfeiriad yr e-bost","noUrl":"Teipiwch URL y ddolen","other":"<eraill>","popupDependent":"Dibynnol (Netscape)","popupFeatures":"Nodweddion Ffenestr Bop","popupFullScreen":"Sgrin Llawn (IE)","popupLeft":"Safle Chwith","popupLocationBar":"Bar Safle","popupMenuBar":"Dewislen","popupResizable":"Ailfeintiol","popupScrollBars":"Barrau Sgrolio","popupStatusBar":"Bar Statws","popupToolbar":"Bar Offer","popupTop":"Safle Top","rel":"Perthynas","selectAnchor":"Dewiswch Angor","styles":"Arddull","tabIndex":"Indecs Tab","target":"Targed","targetFrame":"<ffrâm>","targetFrameName":"Enw Ffrâm y Targed","targetPopup":"<ffenestr bop>","targetPopupName":"Enw Ffenestr Bop","title":"Dolen","toAnchor":"Dolen at angor yn y testun","toEmail":"E-bost","toUrl":"URL","toolbar":"Dolen","type":"Math y Ddolen","unlink":"Datgysylltu","upload":"Lanlwytho"},"list":{"bulletedlist":"Mewnosod/Tynnu Rhestr Bwled","numberedlist":"Mewnosod/Tynnu Rhestr Rhifol"},"liststyle":{"armenian":"Rhifo Armeneg","bulletedTitle":"Priodweddau Rhestr Fwled","circle":"Cylch","decimal":"Degol (1, 2, 3, ayyb.)","decimalLeadingZero":"Degol â sero arweiniol (01, 02, 03, ayyb.)","disc":"Disg","georgian":"Rhifau Sioraidd (an, ban, gan, ayyb.)","lowerAlpha":"Alffa Is (a, b, c, d, e, ayyb.)","lowerGreek":"Groeg Is (alpha, beta, gamma, ayyb.)","lowerRoman":"Rhufeinig Is (i, ii, iii, iv, v, ayyb.)","none":"Dim","notset":"<heb osod>","numberedTitle":"Priodweddau Rhestr Rifol","square":"Sgwâr","start":"Dechrau","type":"Math","upperAlpha":"Alffa Uwch (A, B, C, D, E, ayyb.)","upperRoman":"Rhufeinig Uwch (I, II, III, IV, V, ayyb.)","validateStartNumber":"Rhaid bod y rhif cychwynnol yn gyfanrif."},"magicline":{"title":"Mewnosod paragraff yma"},"maximize":{"maximize":"Mwyhau","minimize":"Lleihau"},"newpage":{"toolbar":"Tudalen Newydd"},"pagebreak":{"alt":"Toriad Tudalen","toolbar":"Mewnosod Toriad Tudalen i Argraffu"},"pastetext":{"button":"Gludo fel testun plaen","title":"Gludo fel Testun Plaen"},"pastefromword":{"confirmCleanup":"Mae'r testun rydych chi am ludo wedi'i gopïo o Word. Ydych chi am ei lanhau cyn ei ludo?","error":"Doedd dim modd glanhau y data a ludwyd oherwydd gwall mewnol","title":"Gludo o Word","toolbar":"Gludo o Word"},"preview":{"preview":"Rhagolwg"},"print":{"toolbar":"Argraffu"},"removeformat":{"toolbar":"Tynnu Fformat"},"save":{"toolbar":"Cadw"},"selectall":{"toolbar":"Dewis Popeth"},"showblocks":{"toolbar":"Dangos Blociau"},"sourcearea":{"toolbar":"HTML"},"specialchar":{"options":"Opsiynau Nodau Arbennig","title":"Dewis Nod Arbennig","toolbar":"Mewnosod Nod Arbennig"},"scayt":{"btn_about":"Ynghylch SCAYT","btn_dictionaries":"Geiriaduron","btn_disable":"Analluogi SCAYT","btn_enable":"Galluogi SCAYT","btn_langs":"Ieithoedd","btn_options":"Opsiynau","text_title":""},"stylescombo":{"label":"Arddulliau","panelTitle":"Arddulliau Fformatio","panelTitle1":"Arddulliau Bloc","panelTitle2":"Arddulliau Mewnol","panelTitle3":"Arddulliau Gwrthrych"},"table":{"border":"Maint yr Ymyl","caption":"Pennawd","cell":{"menu":"Cell","insertBefore":"Mewnosod Cell Cyn","insertAfter":"Mewnosod Cell Ar Ôl","deleteCell":"Dileu Celloedd","merge":"Cyfuno Celloedd","mergeRight":"Cyfuno i'r Dde","mergeDown":"Cyfuno i Lawr","splitHorizontal":"Hollti'r Gell yn Lorweddol","splitVertical":"Hollti'r Gell yn Fertigol","title":"Priodweddau'r Gell","cellType":"Math y Gell","rowSpan":"Rhychwant Rhesi","colSpan":"Rhychwant Colofnau","wordWrap":"Lapio Geiriau","hAlign":"Aliniad Llorweddol","vAlign":"Aliniad Fertigol","alignBaseline":"Baslinell","bgColor":"Lliw Cefndir","borderColor":"Lliw Ymyl","data":"Data","header":"Pennyn","yes":"Ie","no":"Na","invalidWidth":"Mae'n rhaid i led y gell fod yn rhif.","invalidHeight":"Mae'n rhaid i uchder y gell fod yn rhif.","invalidRowSpan":"Mae'n rhaid i rychwant y rhesi fod yn gyfanrif.","invalidColSpan":"Mae'n rhaid i rychwant y colofnau fod yn gyfanrif.","chooseColor":"Dewis"},"cellPad":"Padio'r gell","cellSpace":"Bylchiad y gell","column":{"menu":"Colofn","insertBefore":"Mewnosod Colofn Cyn","insertAfter":"Mewnosod Colofn Ar Ôl","deleteColumn":"Dileu Colofnau"},"columns":"Colofnau","deleteTable":"Dileu Tabl","headers":"Penynnau","headersBoth":"Y Ddau","headersColumn":"Colofn gyntaf","headersNone":"Dim","headersRow":"Rhes gyntaf","invalidBorder":"Mae'n rhaid i faint yr ymyl fod yn rhif.","invalidCellPadding":"Mae'n rhaid i badiad y gell fod yn rhif positif.","invalidCellSpacing":"Mae'n rhaid i fylchiad y gell fod yn rhif positif.","invalidCols":"Mae'n rhaid cael o leiaf un golofn.","invalidHeight":"Mae'n rhaid i uchder y tabl fod yn rhif.","invalidRows":"Mae'n rhaid cael o leiaf un rhes.","invalidWidth":"Mae'n rhaid i led y tabl fod yn rhif.","menu":"Priodweddau'r Tabl","row":{"menu":"Rhes","insertBefore":"Mewnosod Rhes Cyn","insertAfter":"Mewnosod Rhes Ar Ôl","deleteRow":"Dileu Rhesi"},"rows":"Rhesi","summary":"Crynodeb","title":"Priodweddau'r Tabl","toolbar":"Tabl","widthPc":"y cant","widthPx":"picsel","widthUnit":"uned lled"},"undo":{"redo":"Ailwneud","undo":"Dadwneud"},"wsc":{"btnIgnore":"Anwybyddu Un","btnIgnoreAll":"Anwybyddu Pob","btnReplace":"Amnewid Un","btnReplaceAll":"Amnewid Pob","btnUndo":"Dadwneud","changeTo":"Newid i","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Gwirydd sillafu heb ei arsefydlu. A ydych am ei lawrlwytho nawr?","manyChanges":"Gwirio sillafu wedi gorffen: Newidiwyd %1 gair","noChanges":"Gwirio sillafu wedi gorffen: Dim newidiadau","noMispell":"Gwirio sillafu wedi gorffen: Dim camsillaf.","noSuggestions":"- Dim awgrymiadau -","notAvailable":"Nid yw'r gwasanaeth hwn ar gael yn bresennol.","notInDic":"Nid i'w gael yn y geiriadur","oneChange":"Gwirio sillafu wedi gorffen: Newidiwyd 1 gair","progress":"Gwirio sillafu yn ar y gweill...","title":"Gwirio Sillafu","toolbar":"Gwirio Sillafu"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/da.js b/wqflask/wqflask/static/packages/ckeditor/lang/da.js
deleted file mode 100644
index 32d3d184..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/da.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['da']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Tryk ALT 0 for hjælp","browseServer":"Gennemse...","url":"URL","protocol":"Protokol","upload":"Upload","uploadSubmit":"Upload","image":"Indsæt billede","flash":"Indsæt Flash","form":"Indsæt formular","checkbox":"Indsæt afkrydsningsfelt","radio":"Indsæt alternativknap","textField":"Indsæt tekstfelt","textarea":"Indsæt tekstboks","hiddenField":"Indsæt skjult felt","button":"Indsæt knap","select":"Indsæt liste","imageButton":"Indsæt billedknap","notSet":"<intet valgt>","id":"Id","name":"Navn","langDir":"Tekstretning","langDirLtr":"Fra venstre mod højre (LTR)","langDirRtl":"Fra højre mod venstre (RTL)","langCode":"Sprogkode","longDescr":"Udvidet beskrivelse","cssClass":"Typografiark (CSS)","advisoryTitle":"Titel","cssStyle":"Typografi (CSS)","ok":"OK","cancel":"Annullér","close":"Luk","preview":"Forhåndsvisning","resize":"Træk for at skalere","generalTab":"Generelt","advancedTab":"Avanceret","validateNumberFailed":"Værdien er ikke et tal.","confirmNewPage":"Alt indhold, der ikke er blevet gemt, vil gå tabt. Er du sikker på, at du vil indlæse en ny side?","confirmCancel":"Nogle af indstillingerne er blevet ændret. Er du sikker på, at du vil lukke vinduet?","options":"Vis muligheder","target":"Mål","targetNew":"Nyt vindue (_blank)","targetTop":"Øverste vindue (_top)","targetSelf":"Samme vindue (_self)","targetParent":"Samme vindue (_parent)","langDirLTR":"Venstre til højre (LTR)","langDirRTL":"Højre til venstre (RTL)","styles":"Style","cssClasses":"Stylesheetklasser","width":"Bredde","height":"Højde","align":"Justering","alignLeft":"Venstre","alignRight":"Højre","alignCenter":"Centreret","alignJustify":"Lige margener","alignTop":"Øverst","alignMiddle":"Centreret","alignBottom":"Nederst","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Højde skal være et tal.","invalidWidth":"Bredde skal være et tal.","invalidCssLength":"Værdien specificeret for \"%1\" feltet skal være et positivt nummer med eller uden en CSS måleenhed (px, %, in, cm, mm, em, ex, pt, eller pc).","invalidHtmlLength":"Værdien specificeret for \"%1\" feltet skal være et positivt nummer med eller uden en CSS måleenhed (px eller %).","invalidInlineStyle":"Værdien specificeret for inline style skal indeholde en eller flere elementer med et format som \"name:value\", separeret af semikoloner","cssLengthTooltip":"Indsæt en numerisk værdi i pixel eller nummer med en gyldig CSS værdi (px, %, in, cm, mm, em, ex, pt, eller pc).","unavailable":"%1<span class=\"cke_accessibility\">, ikke tilgængelig</span>"},"about":{"copy":"Copyright &copy; $1. Alle rettigheder forbeholdes.","dlgTitle":"Om CKEditor","help":"Se $1 for at få hjælp.","moreInfo":"For informationer omkring licens, se venligst vores hjemmeside (på engelsk):","title":"Om CKEditor","userGuide":"CKEditor-brugermanual"},"basicstyles":{"bold":"Fed","italic":"Kursiv","strike":"Gennemstreget","subscript":"Sænket skrift","superscript":"Hævet skrift","underline":"Understreget"},"bidi":{"ltr":"Tekstretning fra venstre til højre","rtl":"Tekstretning fra højre til venstre"},"blockquote":{"toolbar":"Blokcitat"},"clipboard":{"copy":"Kopiér","copyError":"Din browsers sikkerhedsindstillinger tillader ikke editoren at få automatisk adgang til udklipsholderen.<br><br>Brug i stedet tastaturet til at kopiere teksten (Ctrl/Cmd+C).","cut":"Klip","cutError":"Din browsers sikkerhedsindstillinger tillader ikke editoren at få automatisk adgang til udklipsholderen.<br><br>Brug i stedet tastaturet til at klippe teksten (Ctrl/Cmd+X).","paste":"Indsæt","pasteArea":"Indsæt område","pasteMsg":"Indsæt i feltet herunder (<STRONG>Ctrl/Cmd+V</STRONG>) og klik på <STRONG>OK</STRONG>.","securityMsg":"Din browsers sikkerhedsindstillinger tillader ikke editoren at få automatisk adgang til udklipsholderen.<br><br>Du skal indsætte udklipsholderens indhold i dette vindue igen.","title":"Indsæt"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatisk","bgColorTitle":"Baggrundsfarve","colors":{"000":"Sort","800000":"Mørkerød","8B4513":"Mørk orange","2F4F4F":"Dark Slate Grå","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Mørkegrå","B22222":"Scarlet / Rød","A52A2A":"Brun","DAA520":"Guld","006400":"Mørkegrøn","40E0D0":"Tyrkis","0000CD":"Mellemblå","800080":"Lilla","808080":"Grå","F00":"Rød","FF8C00":"Mørk orange","FFD700":"Guld","008000":"Grøn","0FF":"Cyan","00F":"Blå","EE82EE":"Violet","A9A9A9":"Matgrå","FFA07A":"Laksefarve","FFA500":"Orange","FFFF00":"Gul","00FF00":"Lime","AFEEEE":"Mat tyrkis","ADD8E6":"Lyseblå","DDA0DD":"Plum","D3D3D3":"Lysegrå","FFF0F5":"Lavender Blush","FAEBD7":"Antikhvid","FFFFE0":"Lysegul","F0FFF0":"Gul / Beige","F0FFFF":"Himmeblå","F0F8FF":"Alice blue","E6E6FA":"Lavendel","FFF":"Hvid"},"more":"Flere farver...","panelTitle":"Farver","textColorTitle":"Tekstfarve"},"colordialog":{"clear":"Nulstil","highlight":"Markér","options":"Farvemuligheder","selected":"Valgt farve","title":"Vælg farve"},"templates":{"button":"Skabeloner","emptyListMsg":"(Der er ikke defineret nogen skabelon)","insertOption":"Erstat det faktiske indhold","options":"Skabelon muligheder","selectPromptMsg":"Vælg den skabelon, som skal åbnes i editoren (nuværende indhold vil blive overskrevet):","title":"Indholdsskabeloner"},"contextmenu":{"options":"Muligheder for hjælpemenu"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Vejledende titel","cssClassInputLabel":"Typografiark","edit":"Rediger Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Venstre til højre (LTR)","langDirLabel":"Sprogretning","langDirRTLLabel":"Højre til venstre (RTL)","languageCodeInputLabel":" Sprogkode","remove":"Slet Div","styleSelectLabel":"Style","title":"Opret Div Container","toolbar":"Opret Div Container"},"toolbar":{"toolbarCollapse":"Sammenklap værktøjslinje","toolbarExpand":"Udvid værktøjslinje","toolbarGroups":{"document":"Dokument","clipboard":"Udklipsholder/Fortryd","editing":"Redigering","forms":"Formularer","basicstyles":"Basis styles","paragraph":"Paragraf","links":"Links","insert":"Indsæt","styles":"Typografier","colors":"Farver","tools":"Værktøjer"},"toolbars":"Editors værktøjslinjer"},"elementspath":{"eleLabel":"Sti på element","eleTitle":"%1 element"},"find":{"find":"Søg","findOptions":"Find muligheder","findWhat":"Søg efter:","matchCase":"Forskel på store og små bogstaver","matchCyclic":"Match cyklisk","matchWord":"Kun hele ord","notFoundMsg":"Søgeteksten blev ikke fundet","replace":"Erstat","replaceAll":"Erstat alle","replaceSuccessMsg":"%1 forekomst(er) erstattet.","replaceWith":"Erstat med:","title":"Søg og erstat"},"fakeobjects":{"anchor":"Anker","flash":"Flashanimation","hiddenfield":"Skjult felt","iframe":"Iframe","unknown":"Ukendt objekt"},"flash":{"access":"Scriptadgang","accessAlways":"Altid","accessNever":"Aldrig","accessSameDomain":"Samme domæne","alignAbsBottom":"Absolut nederst","alignAbsMiddle":"Absolut centreret","alignBaseline":"Grundlinje","alignTextTop":"Toppen af teksten","bgcolor":"Baggrundsfarve","chkFull":"Tillad fuldskærm","chkLoop":"Gentagelse","chkMenu":"Vis Flash-menu","chkPlay":"Automatisk afspilning","flashvars":"Variabler for Flash","hSpace":"Vandret margen","properties":"Egenskaber for Flash","propertiesTab":"Egenskaber","quality":"Kvalitet","qualityAutoHigh":"Auto høj","qualityAutoLow":"Auto lav","qualityBest":"Bedste","qualityHigh":"Høj","qualityLow":"Lav","qualityMedium":"Medium","scale":"Skalér","scaleAll":"Vis alt","scaleFit":"Tilpas størrelse","scaleNoBorder":"Ingen ramme","title":"Egenskaber for Flash","vSpace":"Lodret margen","validateHSpace":"Vandret margen skal være et tal.","validateSrc":"Indtast hyperlink URL!","validateVSpace":"Lodret margen skal være et tal.","windowMode":"Vinduestilstand","windowModeOpaque":"Gennemsigtig (opaque)","windowModeTransparent":"Transparent","windowModeWindow":"Vindue"},"font":{"fontSize":{"label":"Skriftstørrelse","voiceLabel":"Skriftstørrelse","panelTitle":"Skriftstørrelse"},"label":"Skrifttype","panelTitle":"Skrifttype","voiceLabel":"Skrifttype"},"forms":{"button":{"title":"Egenskaber for knap","text":"Tekst","type":"Type","typeBtn":"Knap","typeSbm":"Send","typeRst":"Nulstil"},"checkboxAndRadio":{"checkboxTitle":"Egenskaber for afkrydsningsfelt","radioTitle":"Egenskaber for alternativknap","value":"Værdi","selected":"Valgt"},"form":{"title":"Egenskaber for formular","menu":"Egenskaber for formular","action":"Handling","method":"Metode","encoding":"Kodning (encoding)"},"hidden":{"title":"Egenskaber for skjult felt","name":"Navn","value":"Værdi"},"select":{"title":"Egenskaber for liste","selectInfo":"Generelt","opAvail":"Valgmuligheder","value":"Værdi","size":"Størrelse","lines":"Linjer","chkMulti":"Tillad flere valg","opText":"Tekst","opValue":"Værdi","btnAdd":"Tilføj","btnModify":"Redigér","btnUp":"Op","btnDown":"Ned","btnSetValue":"Sæt som valgt","btnDelete":"Slet"},"textarea":{"title":"Egenskaber for tekstboks","cols":"Kolonner","rows":"Rækker"},"textfield":{"title":"Egenskaber for tekstfelt","name":"Navn","value":"Værdi","charWidth":"Bredde (tegn)","maxChars":"Max. antal tegn","type":"Type","typeText":"Tekst","typePass":"Adgangskode","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Formatering","panelTitle":"Formatering","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Overskrift 1","tag_h2":"Overskrift 2","tag_h3":"Overskrift 3","tag_h4":"Overskrift 4","tag_h5":"Overskrift 5","tag_h6":"Overskrift 6","tag_p":"Normal","tag_pre":"Formateret"},"horizontalrule":{"toolbar":"Indsæt vandret streg"},"iframe":{"border":"Vis kant på rammen","noUrl":"Venligst indsæt URL på iframen","scrolling":"Aktiver scrollbars","title":"Iframe egenskaber","toolbar":"Iframe"},"image":{"alertUrl":"Indtast stien til billedet","alt":"Alternativ tekst","border":"Ramme","btnUpload":"Upload fil til serveren","button2Img":"Vil du lave billedknappen om til et almindeligt billede?","hSpace":"Vandret margen","img2Button":"Vil du lave billedet om til en billedknap?","infoTab":"Generelt","linkTab":"Hyperlink","lockRatio":"Lås størrelsesforhold","menu":"Egenskaber for billede","resetSize":"Nulstil størrelse","title":"Egenskaber for billede","titleButton":"Egenskaber for billedknap","upload":"Upload","urlMissing":"Kilde på billed-URL mangler","vSpace":"Lodret margen","validateBorder":"Kant skal være et helt nummer.","validateHSpace":"HSpace skal være et helt nummer.","validateVSpace":"VSpace skal være et helt nummer."},"indent":{"indent":"Forøg indrykning","outdent":"Formindsk indrykning"},"smiley":{"options":"Smileymuligheder","title":"Vælg smiley","toolbar":"Smiley"},"justify":{"block":"Lige margener","center":"Centreret","left":"Venstrestillet","right":"Højrestillet"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Genvejstast","advanced":"Avanceret","advisoryContentType":"Indholdstype","advisoryTitle":"Titel","anchor":{"toolbar":"Indsæt/redigér bogmærke","menu":"Egenskaber for bogmærke","title":"Egenskaber for bogmærke","name":"Bogmærkenavn","errorName":"Indtast bogmærkenavn","remove":"Fjern bogmærke"},"anchorId":"Efter element-Id","anchorName":"Efter ankernavn","charset":"Tegnsæt","cssClasses":"Typografiark","emailAddress":"E-mailadresse","emailBody":"Besked","emailSubject":"Emne","id":"Id","info":"Generelt","langCode":"Tekstretning","langDir":"Tekstretning","langDirLTR":"Fra venstre mod højre (LTR)","langDirRTL":"Fra højre mod venstre (RTL)","menu":"Redigér hyperlink","name":"Navn","noAnchors":"(Ingen bogmærker i dokumentet)","noEmail":"Indtast e-mailadresse!","noUrl":"Indtast hyperlink-URL!","other":"<anden>","popupDependent":"Koblet/dependent (Netscape)","popupFeatures":"Egenskaber for popup","popupFullScreen":"Fuld skærm (IE)","popupLeft":"Position fra venstre","popupLocationBar":"Adresselinje","popupMenuBar":"Menulinje","popupResizable":"Justérbar","popupScrollBars":"Scrollbar","popupStatusBar":"Statuslinje","popupToolbar":"Værktøjslinje","popupTop":"Position fra toppen","rel":"Relation","selectAnchor":"Vælg et anker","styles":"Typografi","tabIndex":"Tabulatorindeks","target":"Mål","targetFrame":"<ramme>","targetFrameName":"Destinationsvinduets navn","targetPopup":"<popup vindue>","targetPopupName":"Popupvinduets navn","title":"Egenskaber for hyperlink","toAnchor":"Bogmærke på denne side","toEmail":"E-mail","toUrl":"URL","toolbar":"Indsæt/redigér hyperlink","type":"Type","unlink":"Fjern hyperlink","upload":"Upload"},"list":{"bulletedlist":"Punktopstilling","numberedlist":"Talopstilling"},"liststyle":{"armenian":"Armensk nummering","bulletedTitle":"Værdier for cirkelpunktopstilling","circle":"Cirkel","decimal":"Decimal (1, 2, 3, osv.)","decimalLeadingZero":"Decimaler med 0 først (01, 02, 03, etc.)","disc":"Værdier for diskpunktopstilling","georgian":"Georgiansk nummering (an, ban, gan, etc.)","lowerAlpha":"Små alfabet (a, b, c, d, e, etc.)","lowerGreek":"Små græsk (alpha, beta, gamma, etc.)","lowerRoman":"Små romerske (i, ii, iii, iv, v, etc.)","none":"Ingen","notset":"<ikke defineret>","numberedTitle":"Egenskaber for nummereret liste","square":"Firkant","start":"Start","type":"Type","upperAlpha":"Store alfabet (A, B, C, D, E, etc.)","upperRoman":"Store romerske (I, II, III, IV, V, etc.)","validateStartNumber":"Den nummererede liste skal starte med et rundt nummer"},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maksimér","minimize":"Minimér"},"newpage":{"toolbar":"Ny side"},"pagebreak":{"alt":"Sideskift","toolbar":"Indsæt sideskift"},"pastetext":{"button":"Indsæt som ikke-formateret tekst","title":"Indsæt som ikke-formateret tekst"},"pastefromword":{"confirmCleanup":"Den tekst du forsøger at indsætte ser ud til at komme fra Word. Vil du rense teksten før den indsættes?","error":"Det var ikke muligt at fjerne formatteringen på den indsatte tekst grundet en intern fejl","title":"Indsæt fra Word","toolbar":"Indsæt fra Word"},"preview":{"preview":"Vis eksempel"},"print":{"toolbar":"Udskriv"},"removeformat":{"toolbar":"Fjern formatering"},"save":{"toolbar":"Gem"},"selectall":{"toolbar":"Vælg alt"},"showblocks":{"toolbar":"Vis afsnitsmærker"},"sourcearea":{"toolbar":"Kilde"},"specialchar":{"options":"Muligheder for specialkarakterer","title":"Vælg symbol","toolbar":"Indsæt symbol"},"scayt":{"btn_about":"Om SCAYT","btn_dictionaries":"Ordbøger","btn_disable":"Deaktivér SCAYT","btn_enable":"Aktivér SCAYT","btn_langs":"Sprog","btn_options":"Indstillinger","text_title":""},"stylescombo":{"label":"Typografi","panelTitle":"Formattering på stylesheet","panelTitle1":"Block typografi","panelTitle2":"Inline typografi","panelTitle3":"Object typografi"},"table":{"border":"Rammebredde","caption":"Titel","cell":{"menu":"Celle","insertBefore":"Indsæt celle før","insertAfter":"Indsæt celle efter","deleteCell":"Slet celle","merge":"Flet celler","mergeRight":"Flet til højre","mergeDown":"Flet nedad","splitHorizontal":"Del celle vandret","splitVertical":"Del celle lodret","title":"Celleegenskaber","cellType":"Celletype","rowSpan":"Række span (rows span)","colSpan":"Kolonne span (columns span)","wordWrap":"Tekstombrydning","hAlign":"Vandret justering","vAlign":"Lodret justering","alignBaseline":"Grundlinje","bgColor":"Baggrundsfarve","borderColor":"Rammefarve","data":"Data","header":"Hoved","yes":"Ja","no":"Nej","invalidWidth":"Cellebredde skal være et tal.","invalidHeight":"Cellehøjde skal være et tal.","invalidRowSpan":"Række span skal være et heltal.","invalidColSpan":"Kolonne span skal være et heltal.","chooseColor":"Vælg"},"cellPad":"Cellemargen","cellSpace":"Celleafstand","column":{"menu":"Kolonne","insertBefore":"Indsæt kolonne før","insertAfter":"Indsæt kolonne efter","deleteColumn":"Slet kolonne"},"columns":"Kolonner","deleteTable":"Slet tabel","headers":"Hoved","headersBoth":"Begge","headersColumn":"Første kolonne","headersNone":"Ingen","headersRow":"Første række","invalidBorder":"Rammetykkelse skal være et tal.","invalidCellPadding":"Cellemargen skal være et tal.","invalidCellSpacing":"Celleafstand skal være et tal.","invalidCols":"Antallet af kolonner skal være større end 0.","invalidHeight":"Tabelhøjde skal være et tal.","invalidRows":"Antallet af rækker skal være større end 0.","invalidWidth":"Tabelbredde skal være et tal.","menu":"Egenskaber for tabel","row":{"menu":"Række","insertBefore":"Indsæt række før","insertAfter":"Indsæt række efter","deleteRow":"Slet række"},"rows":"Rækker","summary":"Resumé","title":"Egenskaber for tabel","toolbar":"Tabel","widthPc":"procent","widthPx":"pixels","widthUnit":"Bredde på enhed"},"undo":{"redo":"Annullér fortryd","undo":"Fortryd"},"wsc":{"btnIgnore":"Ignorér","btnIgnoreAll":"Ignorér alle","btnReplace":"Erstat","btnReplaceAll":"Erstat alle","btnUndo":"Tilbage","changeTo":"Forslag","errorLoading":"Fejl ved indlæsning af host: %s.","ieSpellDownload":"Stavekontrol ikke installeret. Vil du installere den nu?","manyChanges":"Stavekontrol færdig: %1 ord ændret","noChanges":"Stavekontrol færdig: Ingen ord ændret","noMispell":"Stavekontrol færdig: Ingen fejl fundet","noSuggestions":"(ingen forslag)","notAvailable":"Stavekontrol er desværre ikke tilgængelig.","notInDic":"Ikke i ordbogen","oneChange":"Stavekontrol færdig: Et ord ændret","progress":"Stavekontrollen arbejder...","title":"Stavekontrol","toolbar":"Stavekontrol"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/de.js b/wqflask/wqflask/static/packages/ckeditor/lang/de.js
deleted file mode 100644
index a056b364..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/de.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['de']={"editor":"WYSIWYG-Editor","editorPanel":"WYSIWYG-Editor-Leiste","common":{"editorHelp":"Drücken Sie ALT 0 für Hilfe","browseServer":"Server durchsuchen","url":"URL","protocol":"Protokoll","upload":"Hochladen","uploadSubmit":"Zum Server senden","image":"Bild","flash":"Flash","form":"Formular","checkbox":"Checkbox","radio":"Radiobutton","textField":"Textfeld einzeilig","textarea":"Textfeld mehrzeilig","hiddenField":"Verstecktes Feld","button":"Klickbutton","select":"Auswahlfeld","imageButton":"Bildbutton","notSet":"<nichts>","id":"ID","name":"Name","langDir":"Schreibrichtung","langDirLtr":"Links nach Rechts (LTR)","langDirRtl":"Rechts nach Links (RTL)","langCode":"Sprachenkürzel","longDescr":"Langform URL","cssClass":"Stylesheet Klasse","advisoryTitle":"Titel Beschreibung","cssStyle":"Style","ok":"OK","cancel":"Abbrechen","close":"Schließen","preview":"Vorschau","resize":"Zum Vergrößern ziehen","generalTab":"Allgemein","advancedTab":"Erweitert","validateNumberFailed":"Dieser Wert ist keine Nummer.","confirmNewPage":"Alle nicht gespeicherten Änderungen gehen verlohren. Sind Sie sicher die neue Seite zu laden?","confirmCancel":"Einige Optionen wurden geändert. Wollen Sie den Dialog dennoch schließen?","options":"Optionen","target":"Zielseite","targetNew":"Neues Fenster (_blank)","targetTop":"Oberstes Fenster (_top)","targetSelf":"Gleiches Fenster (_self)","targetParent":"Oberes Fenster (_parent)","langDirLTR":"Links nach Rechts (LNR)","langDirRTL":"Rechts nach Links (RNL)","styles":"Style","cssClasses":"Stylesheet Klasse","width":"Breite","height":"Höhe","align":"Ausrichtung","alignLeft":"Links","alignRight":"Rechts","alignCenter":"Zentriert","alignJustify":"Blocksatz","alignTop":"Oben","alignMiddle":"Mitte","alignBottom":"Unten","alignNone":"Keine","invalidValue":"Ungültiger Wert.","invalidHeight":"Höhe muss eine Zahl sein.","invalidWidth":"Breite muss eine Zahl sein.","invalidCssLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","invalidHtmlLength":"Wert spezifiziert für \"%1\" Feld muss ein positiver numerischer Wert sein mit oder ohne korrekte HTML Messeinheit (px oder %).","invalidInlineStyle":"Wert spezifiziert für inline Stilart muss enthalten ein oder mehr Tupels mit dem Format \"Name : Wert\" getrennt mit Semikolons.","cssLengthTooltip":"Gebe eine Zahl ein für ein Wert in pixels oder eine Zahl mit einer korrekten CSS Messeinheit (px, %, in, cm, mm, em, ex, pt oder pc).","unavailable":"%1<span class=\"cke_accessibility\">, nicht verfügbar</span>"},"about":{"copy":"Copyright &copy; $1. Alle Rechte vorbehalten.","dlgTitle":"Über CKEditor","help":"Prüfe $1 für Hilfe.","moreInfo":"Für Informationen über unsere Lizenzbestimmungen besuchen sie bitte unsere Webseite:","title":"Über CKEditor","userGuide":"CKEditor Benutzerhandbuch"},"basicstyles":{"bold":"Fett","italic":"Kursiv","strike":"Durchgestrichen","subscript":"Tiefgestellt","superscript":"Hochgestellt","underline":"Unterstrichen"},"bidi":{"ltr":"Leserichtung von Links nach Rechts","rtl":"Leserichtung von Rechts nach Links"},"blockquote":{"toolbar":"Zitatblock"},"clipboard":{"copy":"Kopieren","copyError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage über STRG-C (kopieren).","cut":"Ausschneiden","cutError":"Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage über STRG-X (ausschneiden) und STRG-V (einfügen).","paste":"Einfügen","pasteArea":"Einfügebereich","pasteMsg":"Bitte fügen Sie den Text in der folgenden Box über die Tastatur (mit <STRONG>Strg+V</STRONG>) ein und bestätigen Sie mit <STRONG>OK</STRONG>.","securityMsg":"Aufgrund von Sicherheitsbeschränkungen Ihres Browsers kann der Editor nicht direkt auf die Zwischenablage zugreifen. Bitte fügen Sie den Inhalt erneut in diesem Fenster ein.","title":"Einfügen"},"button":{"selectedLabel":"%1 (Ausgewählt)"},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Hintergrundfarbe","colors":{"000":"Schwarz","800000":"Kastanienbraun","8B4513":"Braun","2F4F4F":"Dunkles Schiefergrau","008080":"Blaugrün","000080":"Navy","4B0082":"Indigo","696969":"Dunkelgrau","B22222":"Ziegelrot","A52A2A":"Braun","DAA520":"Goldgelb","006400":"Dunkelgrün","40E0D0":"Türkis","0000CD":"Medium Blau","800080":"Lila","808080":"Grau","F00":"Rot","FF8C00":"Dunkelorange","FFD700":"Gold","008000":"Grün","0FF":"Cyan","00F":"Blau","EE82EE":"Hellviolett","A9A9A9":"Dunkelgrau","FFA07A":"Helles Lachsrosa","FFA500":"Orange","FFFF00":"Gelb","00FF00":"Lime","AFEEEE":"Blaß-Türkis","ADD8E6":"Hellblau","DDA0DD":"Pflaumenblau","D3D3D3":"Hellgrau","FFF0F5":"Lavendel","FAEBD7":"Antik Weiß","FFFFE0":"Hellgelb","F0FFF0":"Honigtau","F0FFFF":"Azurblau","F0F8FF":"Alice Blau","E6E6FA":"Lavendel","FFF":"Weiß"},"more":"Weitere Farben...","panelTitle":"Farben","textColorTitle":"Textfarbe"},"colordialog":{"clear":"Entfernen","highlight":"Hervorheben","options":"Farbeoptionen","selected":"Ausgewählte Farbe","title":"Farbe wählen"},"templates":{"button":"Vorlagen","emptyListMsg":"(keine Vorlagen definiert)","insertOption":"Aktuellen Inhalt ersetzen","options":"Vorlagen Optionen","selectPromptMsg":"Klicken Sie auf eine Vorlage, um sie im Editor zu öffnen (der aktuelle Inhalt wird dabei gelöscht!):","title":"Vorlagen"},"contextmenu":{"options":"Kontextmenü Optionen"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Tooltip","cssClassInputLabel":"Stylesheet Klasse","edit":"Div bearbeiten","inlineStyleInputLabel":"Inline Stil","langDirLTRLabel":"Links nach Rechs (LTR)","langDirLabel":"Sprache Richtung","langDirRTLLabel":"Rechs nach Links (RTL)","languageCodeInputLabel":"Sprachenkürzel","remove":"Div entfernen","styleSelectLabel":"Style","title":"Div Container erzeugen","toolbar":"Div Container erzeugen"},"toolbar":{"toolbarCollapse":"Symbolleiste einklappen","toolbarExpand":"Symbolleiste ausklappen","toolbarGroups":{"document":"Dokument","clipboard":"Zwischenablage/Rückgängig","editing":"Editieren","forms":"Formularen","basicstyles":"Grundstile","paragraph":"Absatz","links":"Links","insert":"Einfügen","styles":"Stile","colors":"Farben","tools":"Werkzeuge"},"toolbars":"Editor Symbolleisten"},"elementspath":{"eleLabel":"Elements Pfad","eleTitle":"%1 Element"},"find":{"find":"Suchen","findOptions":"Suchoptionen","findWhat":"Suche nach:","matchCase":"Groß-Kleinschreibung beachten","matchCyclic":"Zyklische Suche","matchWord":"Nur ganze Worte suchen","notFoundMsg":"Der gesuchte Text wurde nicht gefunden.","replace":"Ersetzen","replaceAll":"Alle ersetzen","replaceSuccessMsg":"%1 vorkommen ersetzt.","replaceWith":"Ersetze mit:","title":"Suchen und Ersetzen"},"fakeobjects":{"anchor":"Anker","flash":"Flash Animation","hiddenfield":"Verstecktes Feld","iframe":"IFrame","unknown":"Unbekanntes Objekt"},"flash":{"access":"Skript Zugang","accessAlways":"Immer","accessNever":"Nie","accessSameDomain":"Gleiche Domain","alignAbsBottom":"Abs Unten","alignAbsMiddle":"Abs Mitte","alignBaseline":"Baseline","alignTextTop":"Text Oben","bgcolor":"Hintergrundfarbe","chkFull":"Vollbildmodus erlauben","chkLoop":"Endlosschleife","chkMenu":"Flash-Menü aktivieren","chkPlay":"Automatisch Abspielen","flashvars":"Variablen für Flash","hSpace":"Horizontal-Abstand","properties":"Flash-Eigenschaften","propertiesTab":"Eigenschaften","quality":"Qualität","qualityAutoHigh":"Auto Hoch","qualityAutoLow":"Auto Niedrig","qualityBest":"Beste","qualityHigh":"Hoch","qualityLow":"Niedrig","qualityMedium":"Medium","scale":"Skalierung","scaleAll":"Alles anzeigen","scaleFit":"Passgenau","scaleNoBorder":"Ohne Rand","title":"Flash-Eigenschaften","vSpace":"Vertikal-Abstand","validateHSpace":"HSpace muss eine Zahl sein.","validateSrc":"Bitte geben Sie die Link-URL an","validateVSpace":"VSpace muss eine Zahl sein.","windowMode":"Fenster Modus","windowModeOpaque":"Deckend","windowModeTransparent":"Transparent","windowModeWindow":"Fenster"},"font":{"fontSize":{"label":"Größe","voiceLabel":"Schrifgröße","panelTitle":"Größe"},"label":"Schriftart","panelTitle":"Schriftart","voiceLabel":"Schriftart"},"forms":{"button":{"title":"Button-Eigenschaften","text":"Text (Wert)","type":"Typ","typeBtn":"Button","typeSbm":"Absenden","typeRst":"Zurücksetzen"},"checkboxAndRadio":{"checkboxTitle":"Checkbox-Eigenschaften","radioTitle":"Optionsfeld-Eigenschaften","value":"Wert","selected":"ausgewählt"},"form":{"title":"Formular-Eigenschaften","menu":"Formular-Eigenschaften","action":"Action","method":"Method","encoding":"Zeichenkodierung"},"hidden":{"title":"Verstecktes Feld-Eigenschaften","name":"Name","value":"Wert"},"select":{"title":"Auswahlfeld-Eigenschaften","selectInfo":"Info","opAvail":"Mögliche Optionen","value":"Wert","size":"Größe","lines":"Linien","chkMulti":"Erlaube Mehrfachauswahl","opText":"Text","opValue":"Wert","btnAdd":"Hinzufügen","btnModify":"Ändern","btnUp":"Hoch","btnDown":"Runter","btnSetValue":"Setze als Standardwert","btnDelete":"Entfernen"},"textarea":{"title":"Textfeld (mehrzeilig) Eigenschaften","cols":"Spalten","rows":"Reihen"},"textfield":{"title":"Textfeld (einzeilig) Eigenschaften","name":"Name","value":"Wert","charWidth":"Zeichenbreite","maxChars":"Max. Zeichen","type":"Typ","typeText":"Text","typePass":"Passwort","typeEmail":"E-mail","typeSearch":"Suche","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Addresse","tag_div":"Normal (DIV)","tag_h1":"Überschrift 1","tag_h2":"Überschrift 2","tag_h3":"Überschrift 3","tag_h4":"Überschrift 4","tag_h5":"Überschrift 5","tag_h6":"Überschrift 6","tag_p":"Normal","tag_pre":"Formatiert"},"horizontalrule":{"toolbar":"Horizontale Linie einfügen"},"iframe":{"border":"Rahmen anzeigen","noUrl":"Bitte geben Sie die IFrame-URL an","scrolling":"Rollbalken anzeigen","title":"IFrame-Eigenschaften","toolbar":"IFrame"},"image":{"alertUrl":"Bitte geben Sie die Bild-URL an","alt":"Alternativer Text","border":"Rahmen","btnUpload":"Zum Server senden","button2Img":"Möchten Sie den gewählten Bild-Button in ein einfaches Bild umwandeln?","hSpace":"Horizontal-Abstand","img2Button":"Möchten Sie das gewählten Bild in einen Bild-Button umwandeln?","infoTab":"Bild-Info","linkTab":"Link","lockRatio":"Größenverhältnis beibehalten","menu":"Bild-Eigenschaften","resetSize":"Größe zurücksetzen","title":"Bild-Eigenschaften","titleButton":"Bildbutton-Eigenschaften","upload":"Hochladen","urlMissing":"Imagequelle URL fehlt.","vSpace":"Vertikal-Abstand","validateBorder":"Rahmen muß eine ganze Zahl sein.","validateHSpace":"Horizontal-Abstand muß eine ganze Zahl sein.","validateVSpace":"Vertikal-Abstand muß eine ganze Zahl sein."},"indent":{"indent":"Einzug erhöhen","outdent":"Einzug verringern"},"smiley":{"options":"Smiley Optionen","title":"Smiley auswählen","toolbar":"Smiley"},"justify":{"block":"Blocksatz","center":"Zentriert","left":"Linksbündig","right":"Rechtsbündig"},"language":{"button":"Sprache stellen","remove":"Sprache entfernen"},"link":{"acccessKey":"Zugriffstaste","advanced":"Erweitert","advisoryContentType":"Inhaltstyp","advisoryTitle":"Titel Beschreibung","anchor":{"toolbar":"Anker einfügen/editieren","menu":"Anker-Eigenschaften","title":"Anker-Eigenschaften","name":"Anker Name","errorName":"Bitte geben Sie den Namen des Ankers ein","remove":"Anker entfernen"},"anchorId":"nach Element Id","anchorName":"nach Anker Name","charset":"Ziel-Zeichensatz","cssClasses":"Stylesheet Klasse","emailAddress":"E-Mail Adresse","emailBody":"Nachrichtentext","emailSubject":"Betreffzeile","id":"Id","info":"Link-Info","langCode":"Sprachenkürzel","langDir":"Schreibrichtung","langDirLTR":"Links nach Rechts (LTR)","langDirRTL":"Rechts nach Links (RTL)","menu":"Link editieren","name":"Name","noAnchors":"(keine Anker im Dokument vorhanden)","noEmail":"Bitte geben Sie e-Mail Adresse an","noUrl":"Bitte geben Sie die Link-URL an","other":"<andere>","popupDependent":"Abhängig (Netscape)","popupFeatures":"Pop-up Fenster-Eigenschaften","popupFullScreen":"Vollbild (IE)","popupLeft":"Linke Position","popupLocationBar":"Adress-Leiste","popupMenuBar":"Menü-Leiste","popupResizable":"Größe änderbar","popupScrollBars":"Rollbalken","popupStatusBar":"Statusleiste","popupToolbar":"Symbolleiste","popupTop":"Obere Position","rel":"Beziehung","selectAnchor":"Anker auswählen","styles":"Style","tabIndex":"Tab-Index","target":"Zielseite","targetFrame":"<Frame>","targetFrameName":"Ziel-Fenster-Name","targetPopup":"<Pop-up Fenster>","targetPopupName":"Pop-up Fenster-Name","title":"Link","toAnchor":"Anker in dieser Seite","toEmail":"E-Mail","toUrl":"URL","toolbar":"Link einfügen/editieren","type":"Link-Typ","unlink":"Link entfernen","upload":"Hochladen"},"list":{"bulletedlist":"Liste","numberedlist":"Nummerierte Liste"},"liststyle":{"armenian":"Armenisch Nummerierung","bulletedTitle":"Listen-Eigenschaften","circle":"Ring","decimal":"Dezimal (1, 2, 3, etc.)","decimalLeadingZero":"Dezimal mit führende Null (01, 02, 03, etc.)","disc":"Kreis","georgian":"Georgisch Nummerierung (an, ban, gan, etc.)","lowerAlpha":"Klein alpha (a, b, c, d, e, etc.)","lowerGreek":"Klein griechisch (alpha, beta, gamma, etc.)","lowerRoman":"Klein römisch (i, ii, iii, iv, v, etc.)","none":"Keine","notset":"<nicht gesetzt>","numberedTitle":"Nummerierte Listen-Eigenschaften","square":"Quadrat","start":"Start","type":"Typ","upperAlpha":"Groß alpha (A, B, C, D, E, etc.)","upperRoman":"Groß römisch (I, II, III, IV, V, etc.)","validateStartNumber":"List Startnummer muss eine ganze Zahl sein."},"magicline":{"title":"Absatz hier einfügen"},"maximize":{"maximize":"Maximieren","minimize":"Minimieren"},"newpage":{"toolbar":"Neue Seite"},"pagebreak":{"alt":"Seitenumbruch einfügen","toolbar":"Seitenumbruch einfügen"},"pastetext":{"button":"Als Text einfügen","title":"Als Text einfügen"},"pastefromword":{"confirmCleanup":"Der Text, den Sie einfügen möchten, scheint aus MS-Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?","error":"Aufgrund eines internen Fehlers war es nicht möglich die eingefügten Daten zu bereinigen","title":"Aus MS-Word einfügen","toolbar":"Aus MS-Word einfügen"},"preview":{"preview":"Vorschau"},"print":{"toolbar":"Drucken"},"removeformat":{"toolbar":"Formatierungen entfernen"},"save":{"toolbar":"Speichern"},"selectall":{"toolbar":"Alles auswählen"},"showblocks":{"toolbar":"Blöcke anzeigen"},"sourcearea":{"toolbar":"Quellcode"},"specialchar":{"options":"Sonderzeichen Optionen","title":"Sonderzeichen auswählen","toolbar":"Sonderzeichen einfügen/editieren"},"scayt":{"btn_about":"Über SCAYT","btn_dictionaries":"Wörterbücher","btn_disable":"SCAYT ausschalten","btn_enable":"SCAYT einschalten","btn_langs":"Sprachen","btn_options":"Optionen","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Formatierungsstile","panelTitle1":"Block Stilart","panelTitle2":"Inline Stilart","panelTitle3":"Objekt Stilart"},"table":{"border":"Rahmen","caption":"Überschrift","cell":{"menu":"Zelle","insertBefore":"Zelle davor einfügen","insertAfter":"Zelle danach einfügen","deleteCell":"Zelle löschen","merge":"Zellen verbinden","mergeRight":"Nach rechts verbinden","mergeDown":"Nach unten verbinden","splitHorizontal":"Zelle horizontal teilen","splitVertical":"Zelle vertikal teilen","title":"Zellen-Eigenschaften","cellType":"Zellart","rowSpan":"Anzahl Zeilen verbinden","colSpan":"Anzahl Spalten verbinden","wordWrap":"Zeilenumbruch","hAlign":"Horizontale Ausrichtung","vAlign":"Vertikale Ausrichtung","alignBaseline":"Grundlinie","bgColor":"Hintergrundfarbe","borderColor":"Rahmenfarbe","data":"Daten","header":"Überschrift","yes":"Ja","no":"Nein","invalidWidth":"Zellenbreite muß eine Zahl sein.","invalidHeight":"Zellenhöhe muß eine Zahl sein.","invalidRowSpan":"\"Anzahl Zeilen verbinden\" muss eine Ganzzahl sein.","invalidColSpan":"\"Anzahl Spalten verbinden\" muss eine Ganzzahl sein.","chooseColor":"Wählen"},"cellPad":"Zellenabstand innen","cellSpace":"Zellenabstand außen","column":{"menu":"Spalte","insertBefore":"Spalte links davor einfügen","insertAfter":"Spalte rechts danach einfügen","deleteColumn":"Spalte löschen"},"columns":"Spalte","deleteTable":"Tabelle löschen","headers":"Kopfzeile","headersBoth":"Beide","headersColumn":"Erste Spalte","headersNone":"Keine","headersRow":"Erste Zeile","invalidBorder":"Die Rahmenbreite muß eine Zahl sein.","invalidCellPadding":"Der Zellenabstand innen muß eine positive Zahl sein.","invalidCellSpacing":"Der Zellenabstand außen muß eine positive Zahl sein.","invalidCols":"Die Anzahl der Spalten muß größer als 0 sein..","invalidHeight":"Die Tabellenbreite muß eine Zahl sein.","invalidRows":"Die Anzahl der Zeilen muß größer als 0 sein.","invalidWidth":"Die Tabellenbreite muss eine Zahl sein.","menu":"Tabellen-Eigenschaften","row":{"menu":"Zeile","insertBefore":"Zeile oberhalb einfügen","insertAfter":"Zeile unterhalb einfügen","deleteRow":"Zeile entfernen"},"rows":"Zeile","summary":"Inhaltsübersicht","title":"Tabellen-Eigenschaften","toolbar":"Tabelle","widthPc":"%","widthPx":"Pixel","widthUnit":"Breite Einheit"},"undo":{"redo":"Wiederherstellen","undo":"Rückgängig"},"wsc":{"btnIgnore":"Ignorieren","btnIgnoreAll":"Alle Ignorieren","btnReplace":"Ersetzen","btnReplaceAll":"Alle Ersetzen","btnUndo":"Rückgängig","changeTo":"Ändern in","errorLoading":"Fehler beim laden des Dienstanbieters: %s.","ieSpellDownload":"Rechtschreibprüfung nicht installiert. Möchten Sie sie jetzt herunterladen?","manyChanges":"Rechtschreibprüfung abgeschlossen - %1 Wörter geändert","noChanges":"Rechtschreibprüfung abgeschlossen - keine Worte geändert","noMispell":"Rechtschreibprüfung abgeschlossen - keine Fehler gefunden","noSuggestions":" - keine Vorschläge - ","notAvailable":"Entschuldigung, aber dieser Dienst steht im Moment nicht zur Verfügung.","notInDic":"Nicht im Wörterbuch","oneChange":"Rechtschreibprüfung abgeschlossen - ein Wort geändert","progress":"Rechtschreibprüfung läuft...","title":"Rechtschreibprüfung","toolbar":"Rechtschreibprüfung"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/el.js b/wqflask/wqflask/static/packages/ckeditor/lang/el.js
deleted file mode 100644
index 3f5d17d4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/el.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['el']={"editor":"Επεξεργαστής Πλούσιου Κειμένου","editorPanel":"Πίνακας Επεξεργαστή Πλούσιου Κειμένου","common":{"editorHelp":"Πατήστε το ALT 0 για βοήθεια","browseServer":"Εξερεύνηση Διακομιστή","url":"URL","protocol":"Πρωτόκολλο","upload":"Αποστολή","uploadSubmit":"Αποστολή στον Διακομιστή","image":"Εικόνα","flash":"Flash","form":"Φόρμα","checkbox":"Κουτί Επιλογής","radio":"Κουμπί Επιλογής","textField":"Πεδίο Κειμένου","textarea":"Περιοχή Κειμένου","hiddenField":"Κρυφό Πεδίο","button":"Κουμπί","select":"Πεδίο Επιλογής","imageButton":"Κουμπί Εικόνας","notSet":"<δεν έχει ρυθμιστεί>","id":"Id","name":"Όνομα","langDir":"Κατεύθυνση Κειμένου","langDirLtr":"Αριστερά προς Δεξιά (LTR)","langDirRtl":"Δεξιά προς Αριστερά (RTL)","langCode":"Κωδικός Γλώσσας","longDescr":"Αναλυτική Περιγραφή URL","cssClass":"Κλάσεις Φύλλων Στυλ","advisoryTitle":"Ενδεικτικός Τίτλος","cssStyle":"Μορφή Κειμένου","ok":"OK","cancel":"Ακύρωση","close":"Κλείσιμο","preview":"Προεπισκόπηση","resize":"Αλλαγή Μεγέθους","generalTab":"Γενικά","advancedTab":"Για Προχωρημένους","validateNumberFailed":"Αυτή η τιμή δεν είναι αριθμός.","confirmNewPage":"Οι όποιες αλλαγές στο περιεχόμενο θα χαθούν. Είσαστε σίγουροι ότι θέλετε να φορτώσετε μια νέα σελίδα;","confirmCancel":"Μερικές επιλογές έχουν αλλάξει. Είσαστε σίγουροι ότι θέλετε να κλείσετε το παράθυρο διαλόγου;","options":"Επιλογές","target":"Προορισμός","targetNew":"Νέο Παράθυρο (_blank)","targetTop":"Αρχική Περιοχή (_top)","targetSelf":"Ίδιο Παράθυρο (_self)","targetParent":"Γονεϊκό Παράθυρο (_parent)","langDirLTR":"Αριστερά προς Δεξιά (LTR)","langDirRTL":"Δεξιά προς Αριστερά (RTL)","styles":"Μορφή","cssClasses":"Κλάσεις Φύλλων Στυλ","width":"Πλάτος","height":"Ύψος","align":"Στοίχιση","alignLeft":"Αριστερά","alignRight":"Δεξιά","alignCenter":"Κέντρο","alignJustify":"Πλήρης Στοίχιση","alignTop":"Πάνω","alignMiddle":"Μέση","alignBottom":"Κάτω","alignNone":"Χωρίς","invalidValue":"Μη έγκυρη τιμή.","invalidHeight":"Το ύψος πρέπει να είναι ένας αριθμός.","invalidWidth":"Το πλάτος πρέπει να είναι ένας αριθμός.","invalidCssLength":"Η τιμή που ορίζεται για το πεδίο \"%1\" πρέπει να είναι ένας θετικός αριθμός με ή χωρίς μια έγκυρη μονάδα μέτρησης CSS (px, %, in, cm, mm, em, ex, pt, ή pc).","invalidHtmlLength":"Η τιμή που ορίζεται για το πεδίο \"%1\" πρέπει να είναι ένας θετικός αριθμός με ή χωρίς μια έγκυρη μονάδα μέτρησης HTML (px ή %).","invalidInlineStyle":"Η τιμή για το εν σειρά στυλ πρέπει να περιέχει ένα ή περισσότερα ζεύγη με την μορφή \"όνομα: τιμή\" διαχωρισμένα με Ελληνικό ερωτηματικό.","cssLengthTooltip":"Εισάγεται μια τιμή σε pixel ή έναν αριθμό μαζί με μια έγκυρη μονάδα μέτρησης CSS (px, %, in, cm, mm, em, ex, pt, ή pc).","unavailable":"%1<span class=\"cke_accessibility\">, δεν είναι διαθέσιμο</span>"},"about":{"copy":"Πνευματικά δικαιώματα &copy; $1 Με επιφύλαξη παντός δικαιώματος.","dlgTitle":"Περί του CKEditor","help":"Ελέγξτε τις $1 για βοήθεια.","moreInfo":"Για πληροφορίες σχετικές με την άδεια χρήσης, παρακαλούμε επισκεφθείτε την ιστοσελίδα μας:","title":"Περί του CKEditor","userGuide":"Οδηγίες Χρήστη CKEditor"},"basicstyles":{"bold":"Έντονη","italic":"Πλάγια","strike":"Διακριτή Διαγραφή","subscript":"Δείκτης","superscript":"Εκθέτης","underline":"Υπογράμμιση"},"bidi":{"ltr":"Διεύθυνση κειμένου από αριστερά στα δεξιά","rtl":"Διεύθυνση κειμένου από δεξιά στα αριστερά"},"blockquote":{"toolbar":"Περιοχή Παράθεσης"},"clipboard":{"copy":"Αντιγραφή","copyError":"Οι ρυθμίσεις ασφαλείας του περιηγητή σας δεν επιτρέπουν την επιλεγμένη εργασία αντιγραφής. Παρακαλώ χρησιμοποιείστε το πληκτρολόγιο (Ctrl/Cmd+C).","cut":"Αποκοπή","cutError":"Οι ρυθμίσεις ασφαλείας του περιηγητή σας δεν επιτρέπουν την επιλεγμένη εργασία αποκοπής. Παρακαλώ χρησιμοποιείστε το πληκτρολόγιο (Ctrl/Cmd+X).","paste":"Επικόλληση","pasteArea":"Περιοχή Επικόλλησης","pasteMsg":"Παρακαλώ επικολλήστε στο ακόλουθο κουτί χρησιμοποιώντας το πληκτρολόγιο (<strong>Ctrl/Cmd+V</strong>) και πατήστε OK.","securityMsg":"Λόγων των ρυθμίσεων ασφάλειας του περιηγητή σας, ο επεξεργαστής δεν μπορεί να έχει πρόσβαση στην μνήμη επικόλλησης. Χρειάζεται να επικολλήσετε ξανά σε αυτό το παράθυρο.","title":"Επικόλληση"},"button":{"selectedLabel":"%1 (Επιλεγμένο)"},"colorbutton":{"auto":"Αυτόματα","bgColorTitle":"Χρώμα Φόντου","colors":{"000":"Μαύρο","800000":"Καστανέρυθρο","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Βαθυκύανο","000080":"Μπλε μαρέν","4B0082":"Ινδικό","696969":"Σκούρο Γκρι","B22222":"Ανοικτό Κόκκινο","A52A2A":"Καφέ","DAA520":"Golden Rod","006400":"Σκούρο Πράσινο","40E0D0":"Τυρκουάζ","0000CD":"Medium Blue","800080":"Μοβ","808080":"Γκρι","F00":"Κόκκινο","FF8C00":"Σκούρο Πορτοκαλί","FFD700":"Χρυσαφί","008000":"Πράσινο","0FF":"Κυανό","00F":"Μπλε","EE82EE":"Μενεξεδί","A9A9A9":"Ποντικί","FFA07A":"Ανοικτό Σομόν","FFA500":"Πορτοκαλί","FFFF00":"Κίτρινο","00FF00":"Μοσχολέμονο","AFEEEE":"Pale Turquoise","ADD8E6":"Γαλάζιο","DDA0DD":"Plum","D3D3D3":"Ανοικτό Γκρι","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Ανοικτό Κίτρινο","F0FFF0":"Honeydew","F0FFFF":"Γαλανό","F0F8FF":"Alice Blue","E6E6FA":"Ελαφρός Ιώδες","FFF":"Λευκό"},"more":"Περισσότερα Χρώματα...","panelTitle":"Χρώματα","textColorTitle":"Χρώμα Κειμένου"},"colordialog":{"clear":"Εκκαθάριση","highlight":"Σήμανση","options":"Επιλογές Χρωμάτων","selected":"Επιλεγμένο Χρώμα","title":"Επιλογή χρώματος"},"templates":{"button":"Πρότυπα","emptyListMsg":"(Δεν έχουν καθοριστεί πρότυπα)","insertOption":"Αντικατάσταση υπάρχοντων περιεχομένων","options":"Επιλογές Προτύπου","selectPromptMsg":"Παρακαλώ επιλέξτε πρότυπο για εισαγωγή στο πρόγραμμα","title":"Πρότυπα Περιεχομένου"},"contextmenu":{"options":"Επιλογές Αναδυόμενου Μενού"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Ενδεικτικός Τίτλος","cssClassInputLabel":"Κλάσεις Φύλλων Στυλ","edit":"Επεξεργασία Div","inlineStyleInputLabel":"Στυλ Εν Σειρά","langDirLTRLabel":"Αριστερά προς Δεξιά (LTR)","langDirLabel":"Κατεύθυνση Κειμένου","langDirRTLLabel":"Δεξιά προς Αριστερά (RTL)","languageCodeInputLabel":"Κωδικός Γλώσσας","remove":"Διαγραφή Div","styleSelectLabel":"Μορφή","title":"Δημιουργία Div","toolbar":"Δημιουργία Div"},"toolbar":{"toolbarCollapse":"Σύμπτυξη Εργαλειοθήκης","toolbarExpand":"Ανάπτυξη Εργαλειοθήκης","toolbarGroups":{"document":"Έγγραφο","clipboard":"Πρόχειρο/Αναίρεση","editing":"Επεξεργασία","forms":"Φόρμες","basicstyles":"Βασικά Στυλ","paragraph":"Παράγραφος","links":"Σύνδεσμοι","insert":"Εισαγωγή","styles":"Στυλ","colors":"Χρώματα","tools":"Εργαλεία"},"toolbars":"Εργαλειοθήκες επεξεργαστή"},"elementspath":{"eleLabel":"Διαδρομή Στοιχείων","eleTitle":"Στοιχείο %1"},"find":{"find":"Εύρεση","findOptions":"Επιλογές Εύρεσης","findWhat":"Εύρεση για:","matchCase":"Ταίριασμα πεζών/κεφαλαίων","matchCyclic":"Αναδρομική εύρεση","matchWord":"Εύρεση μόνο πλήρων λέξεων","notFoundMsg":"Το κείμενο δεν βρέθηκε.","replace":"Αντικατάσταση","replaceAll":"Αντικατάσταση Όλων","replaceSuccessMsg":"Ο(ι) όρος(-οι) αντικαταστήθηκε(-αν) %1 φορές.","replaceWith":"Αντικατάσταση με:","title":"Εύρεση και Αντικατάσταση"},"fakeobjects":{"anchor":"Άγκυρα","flash":"Ταινία Flash","hiddenfield":"Κρυφό Πεδίο","iframe":"IFrame","unknown":"Άγνωστο Αντικείμενο"},"flash":{"access":"Πρόσβαση Script","accessAlways":"Πάντα","accessNever":"Ποτέ","accessSameDomain":"Ίδιο όνομα τομέα","alignAbsBottom":"Απόλυτα Κάτω","alignAbsMiddle":"Απόλυτα στη Μέση","alignBaseline":"Γραμμή Βάσης","alignTextTop":"Κορυφή Κειμένου","bgcolor":"Χρώμα Υποβάθρου","chkFull":"Να Επιτρέπεται η Προβολή σε Πλήρη Οθόνη","chkLoop":"Επανάληψη","chkMenu":"Ενεργοποίηση Flash Menu","chkPlay":"Αυτόματη Εκτέλεση","flashvars":"Μεταβλητές για Flash","hSpace":"Οριζόντιο Διάστημα","properties":"Ιδιότητες Flash","propertiesTab":"Ιδιότητες","quality":"Ποιότητα","qualityAutoHigh":"Αυτόματη Υψηλή","qualityAutoLow":"Αυτόματη Χαμηλή","qualityBest":"Καλύτερη","qualityHigh":"Υψηλή","qualityLow":"Χαμηλή","qualityMedium":"Μεσαία","scale":"Μεγέθυνση","scaleAll":"Εμφάνιση όλων","scaleFit":"Ακριβές Μέγεθος","scaleNoBorder":"Χωρίς Περίγραμμα","title":"Ιδιότητες Flash","vSpace":"Κάθετο Διάστημα","validateHSpace":"Το HSpace πρέπει να είναι αριθμός.","validateSrc":"Εισάγετε την τοποθεσία (URL) του υπερσυνδέσμου (Link)","validateVSpace":"Το VSpace πρέπει να είναι αριθμός.","windowMode":"Τρόπος λειτουργίας παραθύρου","windowModeOpaque":"Συμπαγές","windowModeTransparent":"Διάφανο","windowModeWindow":"Παράθυρο"},"font":{"fontSize":{"label":"Μέγεθος","voiceLabel":"Μέγεθος Γραμματοσειράς","panelTitle":"Μέγεθος Γραμματοσειράς"},"label":"Γραμματοσειρά","panelTitle":"Όνομα Γραμματοσειράς","voiceLabel":"Γραμματοσειρά"},"forms":{"button":{"title":"Ιδιότητες Κουμπιού","text":"Κείμενο (Τιμή)","type":"Τύπος","typeBtn":"Κουμπί","typeSbm":"Υποβολή","typeRst":"Επαναφορά"},"checkboxAndRadio":{"checkboxTitle":"Ιδιότητες Κουτιού Επιλογής","radioTitle":"Ιδιότητες Κουμπιού Επιλογής","value":"Τιμή","selected":"Επιλεγμένο"},"form":{"title":"Ιδιότητες Φόρμας","menu":"Ιδιότητες Φόρμας","action":"Ενέργεια","method":"Μέθοδος","encoding":"Κωδικοποίηση"},"hidden":{"title":"Ιδιότητες Κρυφού Πεδίου","name":"Όνομα","value":"Τιμή"},"select":{"title":"Ιδιότητες Πεδίου Επιλογής","selectInfo":"Πληροφορίες Πεδίου Επιλογής","opAvail":"Διαθέσιμες Επιλογές","value":"Τιμή","size":"Μέγεθος","lines":"γραμμές","chkMulti":"Να επιτρέπονται οι πολλαπλές επιλογές","opText":"Κείμενο","opValue":"Τιμή","btnAdd":"Προσθήκη","btnModify":"Τροποποίηση","btnUp":"Πάνω","btnDown":"Κάτω","btnSetValue":"Θέση ως προεπιλογή","btnDelete":"Διαγραφή"},"textarea":{"title":"Ιδιότητες Περιοχής Κειμένου","cols":"Στήλες","rows":"Σειρές"},"textfield":{"title":"Ιδιότητες Πεδίου Κειμένου","name":"Όνομα","value":"Τιμή","charWidth":"Πλάτος Χαρακτήρων","maxChars":"Μέγιστοι χαρακτήρες","type":"Τύπος","typeText":"Κείμενο","typePass":"Κωδικός","typeEmail":"Email","typeSearch":"Αναζήτηση","typeTel":"Αριθμός Τηλεφώνου","typeUrl":"URL"}},"format":{"label":"Μορφοποίηση","panelTitle":"Μορφοποίηση Παραγράφου","tag_address":"Διεύθυνση","tag_div":"Κανονική (DIV)","tag_h1":"Κεφαλίδα 1","tag_h2":"Κεφαλίδα 2","tag_h3":"Κεφαλίδα 3","tag_h4":"Κεφαλίδα 4","tag_h5":"Κεφαλίδα 5","tag_h6":"Κεφαλίδα 6","tag_p":"Κανονική","tag_pre":"Προ-μορφοποιημένη"},"horizontalrule":{"toolbar":"Εισαγωγή Οριζόντιας Γραμμής"},"iframe":{"border":"Προβολή περιγράμματος πλαισίου","noUrl":"Παρακαλούμε εισάγεται το URL του iframe","scrolling":"Ενεργοποίηση μπαρών κύλισης","title":"Ιδιότητες IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Εισάγετε την τοποθεσία (URL) της εικόνας","alt":"Εναλλακτικό Κείμενο","border":"Περίγραμμα","btnUpload":"Αποστολή στον Διακομιστή","button2Img":"Θέλετε να μετατρέψετε το επιλεγμένο κουμπί εικόνας σε απλή εικόνα;","hSpace":"HSpace","img2Button":"Θέλετε να μεταμορφώσετε την επιλεγμένη εικόνα που είναι πάνω σε ένα κουμπί;","infoTab":"Πληροφορίες Εικόνας","linkTab":"Σύνδεσμος","lockRatio":"Κλείδωμα Αναλογίας","menu":"Ιδιότητες Εικόνας","resetSize":"Επαναφορά Αρχικού Μεγέθους","title":"Ιδιότητες Εικόνας","titleButton":"Ιδιότητες Κουμπιού Εικόνας","upload":"Αποστολή","urlMissing":"Το URL πηγής για την εικόνα λείπει.","vSpace":"VSpace","validateBorder":"Το περίγραμμα πρέπει να είναι ένας ακέραιος αριθμός.","validateHSpace":"Το HSpace πρέπει να είναι ένας ακέραιος αριθμός.","validateVSpace":"Το VSpace πρέπει να είναι ένας ακέραιος αριθμός."},"indent":{"indent":"Αύξηση Εσοχής","outdent":"Μείωση Εσοχής"},"smiley":{"options":"Επιλογές Φατσούλων","title":"Εισάγετε μια Φατσούλα","toolbar":"Φατσούλα"},"justify":{"block":"Πλήρης Στοίχιση","center":"Στο Κέντρο","left":"Στοίχιση Αριστερά","right":"Στοίχιση Δεξιά"},"language":{"button":"Θέση γλώσσας","remove":"Αφαίρεση γλώσσας"},"link":{"acccessKey":"Συντόμευση","advanced":"Για Προχωρημένους","advisoryContentType":"Ενδεικτικός Τύπος Περιεχομένου","advisoryTitle":"Ενδεικτικός Τίτλος","anchor":{"toolbar":"Εισαγωγή/επεξεργασία Άγκυρας","menu":"Ιδιότητες άγκυρας","title":"Ιδιότητες άγκυρας","name":"Όνομα άγκυρας","errorName":"Παρακαλούμε εισάγετε όνομα άγκυρας","remove":"Αφαίρεση Άγκυρας"},"anchorId":"Βάσει του Element Id","anchorName":"Βάσει του Ονόματος Άγκυρας","charset":"Κωδικοποίηση Χαρακτήρων Προσαρτημένης Πηγής","cssClasses":"Κλάσεις Φύλλων Στυλ","emailAddress":"Διεύθυνση E-mail","emailBody":"Κείμενο Μηνύματος","emailSubject":"Θέμα Μηνύματος","id":"Id","info":"Πληροφορίες Συνδέσμου","langCode":"Κατεύθυνση Κειμένου","langDir":"Κατεύθυνση Κειμένου","langDirLTR":"Αριστερά προς Δεξιά (LTR)","langDirRTL":"Δεξιά προς Αριστερά (RTL)","menu":"Επεξεργασία Συνδέσμου","name":"Όνομα","noAnchors":"(Δεν υπάρχουν άγκυρες στο κείμενο)","noEmail":"Εισάγετε τη διεύθυνση ηλεκτρονικού ταχυδρομείου","noUrl":"Εισάγετε την τοποθεσία (URL) του συνδέσμου","other":"<άλλο>","popupDependent":"Εξαρτημένο (Netscape)","popupFeatures":"Επιλογές Αναδυόμενου Παραθύρου","popupFullScreen":"Πλήρης Οθόνη (IE)","popupLeft":"Θέση Αριστερά","popupLocationBar":"Γραμμή Τοποθεσίας","popupMenuBar":"Γραμμή Επιλογών","popupResizable":"Προσαρμοζόμενο Μέγεθος","popupScrollBars":"Μπάρες Κύλισης","popupStatusBar":"Γραμμή Κατάστασης","popupToolbar":"Εργαλειοθήκη","popupTop":"Θέση Πάνω","rel":"Σχέση","selectAnchor":"Επιλέξτε μια Άγκυρα","styles":"Μορφή","tabIndex":"Σειρά Μεταπήδησης","target":"Παράθυρο Προορισμού","targetFrame":"<πλαίσιο>","targetFrameName":"Όνομα Πλαισίου Προορισμού","targetPopup":"<αναδυόμενο παράθυρο>","targetPopupName":"Όνομα Αναδυόμενου Παραθύρου","title":"Σύνδεσμος","toAnchor":"Άγκυρα σε αυτήν τη σελίδα","toEmail":"E-Mail","toUrl":"URL","toolbar":"Σύνδεσμος","type":"Τύπος Συνδέσμου","unlink":"Αφαίρεση Συνδέσμου","upload":"Αποστολή"},"list":{"bulletedlist":"Εισαγωγή/Απομάκρυνση Λίστας Κουκκίδων","numberedlist":"Εισαγωγή/Απομάκρυνση Αριθμημένης Λίστας"},"liststyle":{"armenian":"Αρμενική αρίθμηση","bulletedTitle":"Ιδιότητες Λίστας Σημείων","circle":"Κύκλος","decimal":"Δεκαδική (1, 2, 3, κτλ)","decimalLeadingZero":"Δεκαδική με αρχικό μηδεν (01, 02, 03, κτλ)","disc":"Δίσκος","georgian":"Γεωργιανή αρίθμηση (ა, ბ, გ, κτλ)","lowerAlpha":"Μικρά Λατινικά (a, b, c, d, e, κτλ.)","lowerGreek":"Μικρά Ελληνικά (α, β, γ, κτλ)","lowerRoman":"Μικρά Ρωμαϊκά (i, ii, iii, iv, v, κτλ)","none":"Καμία","notset":"<δεν έχει οριστεί>","numberedTitle":"Ιδιότητες Αριθμημένης Λίστας ","square":"Τετράγωνο","start":"Εκκίνηση","type":"Τύπος","upperAlpha":"Κεφαλαία Λατινικά (A, B, C, D, E, κτλ)","upperRoman":"Κεφαλαία Ρωμαϊκά (I, II, III, IV, V, κτλ)","validateStartNumber":"Ο αριθμός εκκίνησης της αρίθμησης πρέπει να είναι ακέραιος αριθμός."},"magicline":{"title":"Εισάγετε παράγραφο εδώ"},"maximize":{"maximize":"Μεγιστοποίηση","minimize":"Ελαχιστοποίηση"},"newpage":{"toolbar":"Νέα Σελίδα"},"pagebreak":{"alt":"Αλλαγή Σελίδας","toolbar":"Εισαγωγή Τέλους Σελίδας για Εκτύπωση"},"pastetext":{"button":"Επικόλληση ως απλό κείμενο","title":"Επικόλληση ως απλό κείμενο"},"pastefromword":{"confirmCleanup":"Το κείμενο που επικολλάται φαίνεται να είναι αντιγραμμένο από το Word. Μήπως θα θέλατε να καθαριστεί προτού επικολληθεί;","error":"Δεν ήταν δυνατό να καθαριστούν τα δεδομένα λόγω ενός εσωτερικού σφάλματος","title":"Επικόλληση από το Word","toolbar":"Επικόλληση από το Word"},"preview":{"preview":"Προεπισκόπιση"},"print":{"toolbar":"Εκτύπωση"},"removeformat":{"toolbar":"Εκκαθάριση Μορφοποίησης"},"save":{"toolbar":"Αποθήκευση"},"selectall":{"toolbar":"Επιλογή όλων"},"showblocks":{"toolbar":"Προβολή Τμημάτων"},"sourcearea":{"toolbar":"Κώδικας"},"specialchar":{"options":"Επιλογές Ειδικών Χαρακτήρων","title":"Επιλέξτε Έναν Ειδικό Χαρακτήρα","toolbar":"Εισαγωγή Ειδικού Χαρακτήρα"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Λεξικά","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Γλώσσες","btn_options":"Επιλογές","text_title":""},"stylescombo":{"label":"Μορφές","panelTitle":"Στυλ Μορφοποίησης","panelTitle1":"Στυλ Τμημάτων","panelTitle2":"Στυλ Εν Σειρά","panelTitle3":"Στυλ Αντικειμένων"},"table":{"border":"Πάχος Περιγράμματος","caption":"Λεζάντα","cell":{"menu":"Κελί","insertBefore":"Εισαγωγή Κελιού Πριν","insertAfter":"Εισαγωγή Κελιού Μετά","deleteCell":"Διαγραφή Κελιών","merge":"Ενοποίηση Κελιών","mergeRight":"Συγχώνευση Με Δεξιά","mergeDown":"Συγχώνευση Με Κάτω","splitHorizontal":"Οριζόντια Διαίρεση Κελιού","splitVertical":"Κατακόρυφη Διαίρεση Κελιού","title":"Ιδιότητες Κελιού","cellType":"Τύπος Κελιού","rowSpan":"Εύρος Γραμμών","colSpan":"Εύρος Στηλών","wordWrap":"Αναδίπλωση Λέξεων","hAlign":"Οριζόντια Στοίχιση","vAlign":"Κάθετη Στοίχιση","alignBaseline":"Baseline","bgColor":"Χρώμα Φόντου","borderColor":"Χρώμα Περιγράμματος","data":"Δεδομένα","header":"Κεφαλίδα","yes":"Ναι","no":"Όχι","invalidWidth":"Το πλάτος του κελιού πρέπει να είναι αριθμός.","invalidHeight":"Το ύψος του κελιού πρέπει να είναι αριθμός.","invalidRowSpan":"Το εύρος των γραμμών πρέπει να είναι ακέραιος αριθμός.","invalidColSpan":"Το εύρος των στηλών πρέπει να είναι ακέραιος αριθμός.","chooseColor":"Επιλέξτε"},"cellPad":"Αναπλήρωση κελιών","cellSpace":"Απόσταση κελιών","column":{"menu":"Στήλη","insertBefore":"Εισαγωγή Στήλης Πριν","insertAfter":"Εισαγωγή Στήλης Μετά","deleteColumn":"Διαγραφή Στηλών"},"columns":"Στήλες","deleteTable":"Διαγραφή Πίνακα","headers":"Κεφαλίδες","headersBoth":"Και τα δύο","headersColumn":"Πρώτη στήλη","headersNone":"Κανένα","headersRow":"Πρώτη Γραμμή","invalidBorder":"Το πάχος του περιγράμματος πρέπει να είναι ένας αριθμός.","invalidCellPadding":"Η αναπλήρωση των κελιών πρέπει να είναι θετικός αριθμός.","invalidCellSpacing":"Η απόσταση μεταξύ των κελιών πρέπει να είναι ένας θετικός αριθμός.","invalidCols":"Ο αριθμός των στηλών πρέπει να είναι μεγαλύτερος από 0.","invalidHeight":"Το ύψος του πίνακα πρέπει να είναι αριθμός.","invalidRows":"Ο αριθμός των σειρών πρέπει να είναι μεγαλύτερος από 0.","invalidWidth":"Το πλάτος του πίνακα πρέπει να είναι ένας αριθμός.","menu":"Ιδιότητες Πίνακα","row":{"menu":"Γραμμή","insertBefore":"Εισαγωγή Γραμμής Πριν","insertAfter":"Εισαγωγή Γραμμής Μετά","deleteRow":"Διαγραφή Γραμμών"},"rows":"Γραμμές","summary":"Περίληψη","title":"Ιδιότητες Πίνακα","toolbar":"Πίνακας","widthPc":"τοις εκατό","widthPx":"pixel","widthUnit":"μονάδα πλάτους"},"undo":{"redo":"Επανάληψη","undo":"Αναίρεση"},"wsc":{"btnIgnore":"Αγνόηση","btnIgnoreAll":"Αγνόηση όλων","btnReplace":"Αντικατάσταση","btnReplaceAll":"Αντικατάσταση όλων","btnUndo":"Αναίρεση","changeTo":"Αλλαγή σε","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Δεν υπάρχει εγκατεστημένος ορθογράφος. Θέλετε να τον κατεβάσετε τώρα;","manyChanges":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Άλλαξαν %1 λέξεις","noChanges":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν άλλαξαν λέξεις","noMispell":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν βρέθηκαν λάθη","noSuggestions":"- Δεν υπάρχουν προτάσεις -","notAvailable":"Η υπηρεσία δεν είναι διαθέσιμη αυτήν την στιγμή.","notInDic":"Δεν υπάρχει στο λεξικό","oneChange":"Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Άλλαξε μια λέξη","progress":"Γίνεται ορθογραφικός έλεγχος...","title":"Ορθογραφικός Έλεγχος","toolbar":"Ορθογραφικός Έλεγχος"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/en-au.js b/wqflask/wqflask/static/packages/ckeditor/lang/en-au.js
deleted file mode 100644
index 1c74e274..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/en-au.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['en-au']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","alignLeft":"Left","alignRight":"Right","alignCenter":"Centre","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colours...","panelTitle":"Colors","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Centre","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/en-ca.js b/wqflask/wqflask/static/packages/ckeditor/lang/en-ca.js
deleted file mode 100644
index 5a084f59..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/en-ca.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['en-ca']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","alignLeft":"Left","alignRight":"Right","alignCenter":"Centre","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colours...","panelTitle":"Colors","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Centre","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/en-gb.js b/wqflask/wqflask/static/packages/ckeditor/lang/en-gb.js
deleted file mode 100644
index e94862a4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/en-gb.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['en-gb']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Drag to resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialogue window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Align","alignLeft":"Left","alignRight":"Right","alignCenter":"Centre","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Colour","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Grey","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Grey","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Grey","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Grey","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colours...","panelTitle":"Colours","textColorTitle":"Text Colour"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Colour Options","selected":"Selected Colour","title":"Select colour"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background colour","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"E-mail","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Centre","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximise","minimize":"Minimise"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a number.","invalidCellSpacing":"Cell spacing must be a number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/en.js b/wqflask/wqflask/static/packages/ckeditor/lang/en.js
deleted file mode 100644
index 30ccb21d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/en.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['en']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","alignLeft":"Left","alignRight":"Right","alignCenter":"Center","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background color","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Center","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/eo.js b/wqflask/wqflask/static/packages/ckeditor/lang/eo.js
deleted file mode 100644
index ec00c4d8..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/eo.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['eo']={"editor":"RiĉTeksta Redaktilo","editorPanel":"Panelo de la RiĉTeksta Redaktilo","common":{"editorHelp":"Premu ALT 0 por helpilo","browseServer":"Foliumi en la Servilo","url":"URL","protocol":"Protokolo","upload":"Alŝuti","uploadSubmit":"Sendu al Servilo","image":"Bildo","flash":"Flaŝo","form":"Formularo","checkbox":"Markobutono","radio":"Radiobutono","textField":"Teksta kampo","textarea":"Teksta Areo","hiddenField":"Kaŝita Kampo","button":"Butono","select":"Elekta Kampo","imageButton":"Bildbutono","notSet":"<Defaŭlta>","id":"Id","name":"Nomo","langDir":"Skribdirekto","langDirLtr":"De maldekstro dekstren (LTR)","langDirRtl":"De dekstro maldekstren (RTL)","langCode":"Lingva Kodo","longDescr":"URL de Longa Priskribo","cssClass":"Klasoj de Stilfolioj","advisoryTitle":"Priskriba Titolo","cssStyle":"Stilo","ok":"Akcepti","cancel":"Rezigni","close":"Fermi","preview":"Vidigi Aspekton","resize":"Movigi por ŝanĝi la grandon","generalTab":"Ĝenerala","advancedTab":"Speciala","validateNumberFailed":"Tiu valoro ne estas nombro.","confirmNewPage":"La neregistritaj ŝanĝoj estas perdotaj. Ĉu vi certas, ke vi volas ŝargi novan paĝon?","confirmCancel":"Iuj opcioj esta ŝanĝitaj. Ĉu vi certas, ke vi volas fermi la dialogon?","options":"Opcioj","target":"Celo","targetNew":"Nova Fenestro (_blank)","targetTop":"Supra Fenestro (_top)","targetSelf":"Sama Fenestro (_self)","targetParent":"Patra Fenestro (_parent)","langDirLTR":"De maldekstro dekstren (LTR)","langDirRTL":"De dekstro maldekstren (RTL)","styles":"Stilo","cssClasses":"Stilfoliaj Klasoj","width":"Larĝo","height":"Alto","align":"Ĝisrandigo","alignLeft":"Maldekstre","alignRight":"Dekstre","alignCenter":"Centre","alignJustify":"Ĝisrandigi Ambaŭflanke","alignTop":"Supre","alignMiddle":"Centre","alignBottom":"Malsupre","alignNone":"None","invalidValue":"Nevalida Valoro","invalidHeight":"Alto devas esti nombro.","invalidWidth":"Larĝo devas esti nombro.","invalidCssLength":"La valoro indikita por la \"%1\" kampo devas esti pozitiva nombro kun aŭ sen valida CSSmezurunuo (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"La valoro indikita por la \"%1\" kampo devas esti pozitiva nombro kun aŭ sen valida HTMLmezurunuo (px or %).","invalidInlineStyle":"La valoro indikita por la enlinia stilo devas konsisti el unu aŭ pluraj elementoj kun la formato de \"nomo : valoro\", apartigitaj per punktokomoj.","cssLengthTooltip":"Entajpu nombron por rastrumera valoro aŭ nombron kun valida CSSunuo (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, nehavebla</span>"},"about":{"copy":"Copyright &copy; $1. Ĉiuj rajtoj rezervitaj.","dlgTitle":"Pri CKEditor","help":"Kontroli $1 por helpo.","moreInfo":"Por informoj pri licenco, bonvolu viziti nian retpaĝaron:","title":"Pri CKEditor","userGuide":"CKEditor Uzindikoj"},"basicstyles":{"bold":"Grasa","italic":"Kursiva","strike":"Trastreko","subscript":"Suba indico","superscript":"Supra indico","underline":"Substreko"},"bidi":{"ltr":"Tekstdirekto de maldekstre dekstren","rtl":"Tekstdirekto de dekstre maldekstren"},"blockquote":{"toolbar":"Citaĵo"},"clipboard":{"copy":"Kopii","copyError":"La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras kopiajn operaciojn. Bonvolu uzi la klavaron por tio (Ctrl/Cmd-C).","cut":"Eltondi","cutError":"La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras eltondajn operaciojn. Bonvolu uzi la klavaron por tio (Ctrl/Cmd-X).","paste":"Interglui","pasteArea":"Intergluoareo","pasteMsg":"Bonvolu glui la tekston en la jenan areon per uzado de la klavaro (<strong>Ctrl/Cmd+V</strong>) kaj premu OK","securityMsg":"Pro la sekurecagordo de via TTT-legilo, la redaktilo ne povas rekte atingi viajn datenojn en la poŝo. Bonvolu denove interglui la datenojn en tiun fenestron.","title":"Interglui"},"button":{"selectedLabel":"%1 (Selektita)"},"colorbutton":{"auto":"Aŭtomata","bgColorTitle":"Fona Koloro","colors":{"000":"Nigra","800000":"Kaŝtankolora","8B4513":"Mezbruna","2F4F4F":"Ardezgriza","008080":"Marĉanaskolora","000080":"Maristblua","4B0082":"Indigokolora","696969":"Malhelgriza","B22222":"Brikruĝa","A52A2A":"Bruna","DAA520":"Senbrilorkolora","006400":"Malhelverda","40E0D0":"Turkisblua","0000CD":"Reĝblua","800080":"Purpura","808080":"Griza","F00":"Ruĝa","FF8C00":"Malheloranĝkolora","FFD700":"Orkolora","008000":"Verda","0FF":"Verdblua","00F":"Blua","EE82EE":"Viola","A9A9A9":"Mezgriza","FFA07A":"Salmokolora","FFA500":"Oranĝkolora","FFFF00":"Flava","00FF00":"Limetkolora","AFEEEE":"Helturkiskolora","ADD8E6":"Helblua","DDA0DD":"Prunkolora","D3D3D3":"Helgriza","FFF0F5":"Lavendkolora vangoŝminko","FAEBD7":"Antikvablanka","FFFFE0":"Helflava","F0FFF0":"Vintromelonkolora","F0FFFF":"Lazura","F0F8FF":"Aliceblua","E6E6FA":"Lavendkolora","FFF":"Blanka"},"more":"Pli da Koloroj...","panelTitle":"Koloroj","textColorTitle":"Teksta Koloro"},"colordialog":{"clear":"Forigi","highlight":"Detaloj","options":"Opcioj pri koloroj","selected":"Selektita koloro","title":"Selekti koloron"},"templates":{"button":"Ŝablonoj","emptyListMsg":"(Neniu ŝablono difinita)","insertOption":"Anstataŭigi la nunan enhavon","options":"Opcioj pri ŝablonoj","selectPromptMsg":"Bonvolu selekti la ŝablonon por malfermi ĝin en la redaktilo","title":"Enhavo de ŝablonoj"},"contextmenu":{"options":"Opcioj de Kunteksta Menuo"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Priskriba Titolo","cssClassInputLabel":"Stilfolioklasoj","edit":"Redakti Div","inlineStyleInputLabel":"Enlinia stilo","langDirLTRLabel":"Maldekstre dekstren (angle LTR)","langDirLabel":"Skribdirekto","langDirRTLLabel":"Dekstre maldekstren (angle RTL)","languageCodeInputLabel":" Lingvokodo","remove":"Forigi Div","styleSelectLabel":"Stilo","title":"Krei DIV ujon","toolbar":"Krei DIV ujon"},"toolbar":{"toolbarCollapse":"Faldi la ilbreton","toolbarExpand":"Malfaldi la ilbreton","toolbarGroups":{"document":"Dokumento","clipboard":"Poŝo/Malfari","editing":"Redaktado","forms":"Formularoj","basicstyles":"Bazaj stiloj","paragraph":"Paragrafo","links":"Ligiloj","insert":"Enmeti","styles":"Stiloj","colors":"Koloroj","tools":"Iloj"},"toolbars":"Ilobretoj de la redaktilo"},"elementspath":{"eleLabel":"Vojo al Elementoj","eleTitle":"%1 elementoj"},"find":{"find":"Serĉi","findOptions":"Opcioj pri Serĉado","findWhat":"Serĉi:","matchCase":"Kongruigi Usklecon","matchCyclic":"Cikla Serĉado","matchWord":"Tuta Vorto","notFoundMsg":"La celteksto ne estas trovita.","replace":"Anstataŭigi","replaceAll":"Anstataŭigi Ĉion","replaceSuccessMsg":"%1 anstataŭigita(j) apero(j).","replaceWith":"Anstataŭigi per:","title":"Serĉi kaj Anstataŭigi"},"fakeobjects":{"anchor":"Ankro","flash":"FlaŝAnimacio","hiddenfield":"Kaŝita kampo","iframe":"Enlinia Kadro (IFrame)","unknown":"Nekonata objekto"},"flash":{"access":"Atingi skriptojn","accessAlways":"Ĉiam","accessNever":"Neniam","accessSameDomain":"Sama domajno","alignAbsBottom":"Absoluta Malsupro","alignAbsMiddle":"Absoluta Centro","alignBaseline":"TekstoMalsupro","alignTextTop":"TekstoSupro","bgcolor":"Fona Koloro","chkFull":"Permesi tutekranon","chkLoop":"Iteracio","chkMenu":"Ebligi flaŝmenuon","chkPlay":"Aŭtomata legado","flashvars":"Variabloj por Flaŝo","hSpace":"Horizontala Spaco","properties":"Flaŝatributoj","propertiesTab":"Atributoj","quality":"Kvalito","qualityAutoHigh":"Aŭtomate alta","qualityAutoLow":"Aŭtomate malalta","qualityBest":"Plej bona","qualityHigh":"Alta","qualityLow":"Malalta","qualityMedium":"Meza","scale":"Skalo","scaleAll":"Montri ĉion","scaleFit":"Origina grando","scaleNoBorder":"Neniu bordero","title":"Flaŝatributoj","vSpace":"Vertikala Spaco","validateHSpace":"Horizontala Spaco devas esti nombro.","validateSrc":"Bonvolu entajpi la retadreson (URL)","validateVSpace":"Vertikala Spaco devas esti nombro.","windowMode":"Fenestra reĝimo","windowModeOpaque":"Opaka","windowModeTransparent":"Travidebla","windowModeWindow":"Fenestro"},"font":{"fontSize":{"label":"Grado","voiceLabel":"Tipara grado","panelTitle":"Tipara grado"},"label":"Tiparo","panelTitle":"Tipara nomo","voiceLabel":"Tiparo"},"forms":{"button":{"title":"Butonaj atributoj","text":"Teksto (Valoro)","type":"Tipo","typeBtn":"Butono","typeSbm":"Validigi (submit)","typeRst":"Remeti en la originstaton (Reset)"},"checkboxAndRadio":{"checkboxTitle":"Markobutonaj Atributoj","radioTitle":"Radiobutonaj Atributoj","value":"Valoro","selected":"Selektita"},"form":{"title":"Formularaj Atributoj","menu":"Formularaj Atributoj","action":"Ago","method":"Metodo","encoding":"Kodoprezento"},"hidden":{"title":"Atributoj de Kaŝita Kampo","name":"Nomo","value":"Valoro"},"select":{"title":"Atributoj de Elekta Kampo","selectInfo":"Informoj pri la rulummenuo","opAvail":"Elektoj Disponeblaj","value":"Valoro","size":"Grando","lines":"Linioj","chkMulti":"Permesi Plurajn Elektojn","opText":"Teksto","opValue":"Valoro","btnAdd":"Aldoni","btnModify":"Modifi","btnUp":"Supren","btnDown":"Malsupren","btnSetValue":"Agordi kiel Elektitan Valoron","btnDelete":"Forigi"},"textarea":{"title":"Atributoj de Teksta Areo","cols":"Kolumnoj","rows":"Linioj"},"textfield":{"title":"Atributoj de Teksta Kampo","name":"Nomo","value":"Valoro","charWidth":"Signolarĝo","maxChars":"Maksimuma Nombro da Signoj","type":"Tipo","typeText":"Teksto","typePass":"Pasvorto","typeEmail":"retpoŝtadreso","typeSearch":"Serĉi","typeTel":"Telefonnumero","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"ParagrafFormato","tag_address":"Adreso","tag_div":"Normala (DIV)","tag_h1":"Titolo 1","tag_h2":"Titolo 2","tag_h3":"Titolo 3","tag_h4":"Titolo 4","tag_h5":"Titolo 5","tag_h6":"Titolo 6","tag_p":"Normala","tag_pre":"Formatita"},"horizontalrule":{"toolbar":"Enmeti Horizontalan Linion"},"iframe":{"border":"Montri borderon de kadro (frame)","noUrl":"Bonvolu entajpi la retadreson de la ligilo al la enlinia kadro (IFrame)","scrolling":"Ebligi rulumskalon","title":"Atributoj de la enlinia kadro (IFrame)","toolbar":"Enlinia kadro (IFrame)"},"image":{"alertUrl":"Bonvolu tajpi la retadreson de la bildo","alt":"Anstataŭiga Teksto","border":"Bordero","btnUpload":"Sendu al Servilo","button2Img":"Ĉu vi volas transformi la selektitan bildbutonon en simplan bildon?","hSpace":"Horizontala Spaco","img2Button":"Ĉu vi volas transformi la selektitan bildon en bildbutonon?","infoTab":"Informoj pri Bildo","linkTab":"Ligilo","lockRatio":"Konservi Proporcion","menu":"Atributoj de Bildo","resetSize":"Origina Grando","title":"Atributoj de Bildo","titleButton":"Bildbutonaj Atributoj","upload":"Alŝuti","urlMissing":"La fontretadreso de la bildo mankas.","vSpace":"Vertikala Spaco","validateBorder":"La bordero devas esti entjera nombro.","validateHSpace":"La horizontala spaco devas esti entjera nombro.","validateVSpace":"La vertikala spaco devas esti entjera nombro."},"indent":{"indent":"Pligrandigi Krommarĝenon","outdent":"Malpligrandigi Krommarĝenon"},"smiley":{"options":"Opcioj pri mienvinjetoj","title":"Enmeti Mienvinjeton","toolbar":"Mienvinjeto"},"justify":{"block":"Ĝisrandigi Ambaŭflanke","center":"Centrigi","left":"Ĝisrandigi maldekstren","right":"Ĝisrandigi dekstren"},"language":{"button":"Instali lingvon","remove":"Forigi lingvon"},"link":{"acccessKey":"Fulmoklavo","advanced":"Speciala","advisoryContentType":"Enhavotipo","advisoryTitle":"Priskriba Titolo","anchor":{"toolbar":"Ankro","menu":"Enmeti/Ŝanĝi Ankron","title":"Ankraj Atributoj","name":"Ankra Nomo","errorName":"Bv entajpi la ankran nomon","remove":"Forigi Ankron"},"anchorId":"Per Elementidentigilo","anchorName":"Per Ankronomo","charset":"Signaro de la Ligita Rimedo","cssClasses":"Klasoj de Stilfolioj","emailAddress":"Retpoŝto","emailBody":"Mesaĝa korpo","emailSubject":"Mesaĝa Temo","id":"Id","info":"Informoj pri la Ligilo","langCode":"Lingva Kodo","langDir":"Skribdirekto","langDirLTR":"De maldekstro dekstren (LTR)","langDirRTL":"De dekstro maldekstren (RTL)","menu":"Ŝanĝi Ligilon","name":"Nomo","noAnchors":"<Ne disponeblas ankroj en la dokumento>","noEmail":"Bonvolu entajpi la retpoŝtadreson","noUrl":"Bonvolu entajpi la URL-on","other":"<alia>","popupDependent":"Dependa (Netscape)","popupFeatures":"Atributoj de la Ŝprucfenestro","popupFullScreen":"Tutekrane (IE)","popupLeft":"Maldekstra Pozicio","popupLocationBar":"Adresobreto","popupMenuBar":"Menubreto","popupResizable":"Dimensiŝanĝebla","popupScrollBars":"Rulumskaloj","popupStatusBar":"Statobreto","popupToolbar":"Ilobreto","popupTop":"Supra Pozicio","rel":"Rilato","selectAnchor":"Elekti Ankron","styles":"Stilo","tabIndex":"Taba Indekso","target":"Celo","targetFrame":"<kadro>","targetFrameName":"Nomo de CelKadro","targetPopup":"<ŝprucfenestro>","targetPopupName":"Nomo de Ŝprucfenestro","title":"Ligilo","toAnchor":"Ankri en tiu ĉi paĝo","toEmail":"Retpoŝto","toUrl":"URL","toolbar":"Enmeti/Ŝanĝi Ligilon","type":"Tipo de Ligilo","unlink":"Forigi Ligilon","upload":"Alŝuti"},"list":{"bulletedlist":"Bula Listo","numberedlist":"Numera Listo"},"liststyle":{"armenian":"Armena nombrado","bulletedTitle":"Atributoj de Bula Listo","circle":"Cirklo","decimal":"Dekumaj Nombroj (1, 2, 3, ktp.)","decimalLeadingZero":"Dekumaj Nombroj malantaŭ nulo (01, 02, 03, ktp.)","disc":"Disko","georgian":"Gruza nombrado (an, ban, gan, ktp.)","lowerAlpha":"Minusklaj Literoj (a, b, c, d, e, ktp.)","lowerGreek":"Grekaj Minusklaj Literoj (alpha, beta, gamma, ktp.)","lowerRoman":"Minusklaj Romanaj Nombroj (i, ii, iii, iv, v, ktp.)","none":"Neniu","notset":"<Defaŭlta>","numberedTitle":"Atributoj de Numera Listo","square":"kvadrato","start":"Komenco","type":"Tipo","upperAlpha":"Majusklaj Literoj (A, B, C, D, E, ktp.)","upperRoman":"Majusklaj Romanaj Nombroj (I, II, III, IV, V, ktp.)","validateStartNumber":"La unua listero devas esti entjera nombro."},"magicline":{"title":"Enmeti paragrafon ĉi-tien"},"maximize":{"maximize":"Pligrandigi","minimize":"Malgrandigi"},"newpage":{"toolbar":"Nova Paĝo"},"pagebreak":{"alt":"Paĝavanco","toolbar":"Enmeti Paĝavancon por Presado"},"pastetext":{"button":"Interglui kiel platan tekston","title":"Interglui kiel platan tekston"},"pastefromword":{"confirmCleanup":"La teksto, kiun vi volas interglui, ŝajnas esti kopiita el Word. Ĉu vi deziras purigi ĝin antaŭ intergluo?","error":"Ne eblis purigi la intergluitajn datenojn pro interna eraro","title":"Interglui el Word","toolbar":"Interglui el Word"},"preview":{"preview":"Vidigi Aspekton"},"print":{"toolbar":"Presi"},"removeformat":{"toolbar":"Forigi Formaton"},"save":{"toolbar":"Konservi"},"selectall":{"toolbar":"Elekti ĉion"},"showblocks":{"toolbar":"Montri la blokojn"},"sourcearea":{"toolbar":"Fonto"},"specialchar":{"options":"Opcioj pri Specialaj Signoj","title":"Selekti Specialan Signon","toolbar":"Enmeti Specialan Signon"},"scayt":{"btn_about":"Pri OKDVT","btn_dictionaries":"Vortaroj","btn_disable":"Malebligi OKDVT","btn_enable":"Ebligi OKDVT","btn_langs":"Lingvoj","btn_options":"Opcioj","text_title":""},"stylescombo":{"label":"Stiloj","panelTitle":"Stiloj pri enpaĝigo","panelTitle1":"Stiloj de blokoj","panelTitle2":"Enliniaj Stiloj","panelTitle3":"Stiloj de objektoj"},"table":{"border":"Bordero","caption":"Tabeltitolo","cell":{"menu":"Ĉelo","insertBefore":"Enmeti Ĉelon Antaŭ","insertAfter":"Enmeti Ĉelon Post","deleteCell":"Forigi la Ĉelojn","merge":"Kunfandi la Ĉelojn","mergeRight":"Kunfandi dekstren","mergeDown":"Kunfandi malsupren ","splitHorizontal":"Horizontale dividi","splitVertical":"Vertikale dividi","title":"Ĉelatributoj","cellType":"Ĉeltipo","rowSpan":"Kunfando de linioj","colSpan":"Kunfando de kolumnoj","wordWrap":"Cezuro","hAlign":"Horizontala ĝisrandigo","vAlign":"Vertikala ĝisrandigo","alignBaseline":"Malsupro de la teksto","bgColor":"Fonkoloro","borderColor":"Borderkoloro","data":"Datenoj","header":"Supra paĝotitolo","yes":"Jes","no":"No","invalidWidth":"Ĉellarĝo devas esti nombro.","invalidHeight":"Ĉelalto devas esti nombro.","invalidRowSpan":"Kunfando de linioj devas esti entjera nombro.","invalidColSpan":"Kunfando de kolumnoj devas esti entjera nombro.","chooseColor":"Elektu"},"cellPad":"Interna Marĝeno de la ĉeloj","cellSpace":"Spaco inter la Ĉeloj","column":{"menu":"Kolumno","insertBefore":"Enmeti kolumnon antaŭ","insertAfter":"Enmeti kolumnon post","deleteColumn":"Forigi Kolumnojn"},"columns":"Kolumnoj","deleteTable":"Forigi Tabelon","headers":"Supraj Paĝotitoloj","headersBoth":"Ambaŭ","headersColumn":"Unua kolumno","headersNone":"Neniu","headersRow":"Unua linio","invalidBorder":"La bordergrando devas esti nombro.","invalidCellPadding":"La interna marĝeno en la ĉeloj devas esti pozitiva nombro.","invalidCellSpacing":"La spaco inter la ĉeloj devas esti pozitiva nombro.","invalidCols":"La nombro de la kolumnoj devas superi 0.","invalidHeight":"La tabelalto devas esti nombro.","invalidRows":"La nombro de la linioj devas superi 0.","invalidWidth":"La tabellarĝo devas esti nombro.","menu":"Atributoj de Tabelo","row":{"menu":"Linio","insertBefore":"Enmeti linion antaŭ","insertAfter":"Enmeti linion post","deleteRow":"Forigi Liniojn"},"rows":"Linioj","summary":"Resumo","title":"Atributoj de Tabelo","toolbar":"Tabelo","widthPc":"elcentoj","widthPx":"Rastrumeroj","widthUnit":"unuo de larĝo"},"undo":{"redo":"Refari","undo":"Malfari"},"wsc":{"btnIgnore":"Ignori","btnIgnoreAll":"Ignori Ĉion","btnReplace":"Anstataŭigi","btnReplaceAll":"Anstataŭigi Ĉion","btnUndo":"Malfari","changeTo":"Ŝanĝi al","errorLoading":"Eraro en la servoelŝuto el la gastiga komputiko: %s.","ieSpellDownload":"Ortografikontrolilo ne instalita. Ĉu vi volas elŝuti ĝin nun?","manyChanges":"Ortografikontrolado finita: %1 vortoj korektitaj","noChanges":"Ortografikontrolado finita: neniu vorto korektita","noMispell":"Ortografikontrolado finita: neniu eraro trovita","noSuggestions":"- Neniu propono -","notAvailable":"Bedaŭrinde la servo ne funkcias nuntempe.","notInDic":"Ne trovita en la vortaro","oneChange":"Ortografikontrolado finita: unu vorto korektita","progress":"La ortografio estas kontrolata...","title":"Kontroli la ortografion","toolbar":"Kontroli la ortografion"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/es.js b/wqflask/wqflask/static/packages/ckeditor/lang/es.js
deleted file mode 100644
index b1fd2dd1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/es.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['es']={"editor":"Editor de texto enriquecido","editorPanel":"Panel del Editor de Texto Enriquecido","common":{"editorHelp":"Pulse ALT 0 para ayuda","browseServer":"Ver Servidor","url":"URL","protocol":"Protocolo","upload":"Cargar","uploadSubmit":"Enviar al Servidor","image":"Imagen","flash":"Flash","form":"Formulario","checkbox":"Casilla de Verificación","radio":"Botones de Radio","textField":"Campo de Texto","textarea":"Area de Texto","hiddenField":"Campo Oculto","button":"Botón","select":"Campo de Selección","imageButton":"Botón Imagen","notSet":"<No definido>","id":"Id","name":"Nombre","langDir":"Orientación","langDirLtr":"Izquierda a Derecha (LTR)","langDirRtl":"Derecha a Izquierda (RTL)","langCode":"Cód. de idioma","longDescr":"Descripción larga URL","cssClass":"Clases de hojas de estilo","advisoryTitle":"Título","cssStyle":"Estilo","ok":"Aceptar","cancel":"Cancelar","close":"Cerrar","preview":"Previsualización","resize":"Arrastre para redimensionar","generalTab":"General","advancedTab":"Avanzado","validateNumberFailed":"El valor no es un número.","confirmNewPage":"Cualquier cambio que no se haya guardado se perderá.\r\n¿Está seguro de querer crear una nueva página?","confirmCancel":"Algunas de las opciones se han cambiado.\r\n¿Está seguro de querer cerrar el diálogo?","options":"Opciones","target":"Destino","targetNew":"Nueva ventana (_blank)","targetTop":"Ventana principal (_top)","targetSelf":"Misma ventana (_self)","targetParent":"Ventana padre (_parent)","langDirLTR":"Izquierda a derecha (LTR)","langDirRTL":"Derecha a izquierda (RTL)","styles":"Estilos","cssClasses":"Clase de la hoja de estilos","width":"Anchura","height":"Altura","align":"Alineación","alignLeft":"Izquierda","alignRight":"Derecha","alignCenter":"Centrado","alignJustify":"Justificado","alignTop":"Tope","alignMiddle":"Centro","alignBottom":"Pie","alignNone":"None","invalidValue":"Valor no válido","invalidHeight":"Altura debe ser un número.","invalidWidth":"Anchura debe ser un número.","invalidCssLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","invalidHtmlLength":"El valor especificado para el campo \"%1\" debe ser un número positivo, incluyendo optionalmente una unidad de medida HTML válida (px o %).","invalidInlineStyle":"El valor especificado para el estilo debe consistir en uno o más pares con el formato \"nombre: valor\", separados por punto y coma.","cssLengthTooltip":"Introduca un número para el valor en pixels o un número con una unidad de medida CSS válida (px, %, in, cm, mm, em, ex, pt, o pc).","unavailable":"%1<span class=\"cke_accessibility\">, no disponible</span>"},"about":{"copy":"Copyright &copy; $1. Todos los derechos reservados.","dlgTitle":"Acerca de CKEditor","help":"Lea la $1 para resolver sus dudas.","moreInfo":"Para información de licencia, por favor visite nuestro sitio web:","title":"Acerca de CKEditor","userGuide":"Guía de usuario de CKEditor"},"basicstyles":{"bold":"Negrita","italic":"Cursiva","strike":"Tachado","subscript":"Subíndice","superscript":"Superíndice","underline":"Subrayado"},"bidi":{"ltr":"Dirección del texto de izquierda a derecha","rtl":"Dirección del texto de derecha a izquierda"},"blockquote":{"toolbar":"Cita"},"clipboard":{"copy":"Copiar","copyError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de copiado.\r\nPor favor use el teclado (Ctrl/Cmd+C).","cut":"Cortar","cutError":"La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de cortado.\r\nPor favor use el teclado (Ctrl/Cmd+X).","paste":"Pegar","pasteArea":"Zona de pegado","pasteMsg":"Por favor pegue dentro del cuadro utilizando el teclado (<STRONG>Ctrl/Cmd+V</STRONG>);\r\nluego presione <STRONG>Aceptar</STRONG>.","securityMsg":"Debido a la configuración de seguridad de su navegador, el editor no tiene acceso al portapapeles.\r\nEs necesario que lo pegue de nuevo en esta ventana.","title":"Pegar"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Color de Fondo","colors":{"000":"Negro","800000":"Marrón oscuro","8B4513":"Marrón tierra","2F4F4F":"Pizarra Oscuro","008080":"Azul verdoso","000080":"Azul marino","4B0082":"Añil","696969":"Gris oscuro","B22222":"Ladrillo","A52A2A":"Marrón","DAA520":"Oro oscuro","006400":"Verde oscuro","40E0D0":"Turquesa","0000CD":"Azul medio-oscuro","800080":"Púrpura","808080":"Gris","F00":"Rojo","FF8C00":"Naranja oscuro","FFD700":"Oro","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris medio","FFA07A":"Salmón claro","FFA500":"Naranja","FFFF00":"Amarillo","00FF00":"Lima","AFEEEE":"Turquesa claro","ADD8E6":"Azul claro","DDA0DD":"Violeta claro","D3D3D3":"Gris claro","FFF0F5":"Lavanda rojizo","FAEBD7":"Blanco antiguo","FFFFE0":"Amarillo claro","F0FFF0":"Miel","F0FFFF":"Azul celeste","F0F8FF":"Azul pálido","E6E6FA":"Lavanda","FFF":"Blanco"},"more":"Más Colores...","panelTitle":"Colores","textColorTitle":"Color de Texto"},"colordialog":{"clear":"Borrar","highlight":"Muestra","options":"Opciones de colores","selected":"Elegido","title":"Elegir color"},"templates":{"button":"Plantillas","emptyListMsg":"(No hay plantillas definidas)","insertOption":"Reemplazar el contenido actual","options":"Opciones de plantillas","selectPromptMsg":"Por favor selecciona la plantilla a abrir en el editor<br>(el contenido actual se perderá):","title":"Contenido de Plantillas"},"contextmenu":{"options":"Opciones del menú contextual"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Título","cssClassInputLabel":"Clase de hoja de estilos","edit":"Editar Div","inlineStyleInputLabel":"Estilo","langDirLTRLabel":"Izquierda a Derecha (LTR)","langDirLabel":"Orientación","langDirRTLLabel":"Derecha a Izquierda (RTL)","languageCodeInputLabel":" Codigo de idioma","remove":"Quitar Div","styleSelectLabel":"Estilo","title":"Crear contenedor DIV","toolbar":"Crear contenedor DIV"},"toolbar":{"toolbarCollapse":"Contraer barra de herramientas","toolbarExpand":"Expandir barra de herramientas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeles/Deshacer","editing":"Edición","forms":"Formularios","basicstyles":"Estilos básicos","paragraph":"Párrafo","links":"Enlaces","insert":"Insertar","styles":"Estilos","colors":"Colores","tools":"Herramientas"},"toolbars":"Barras de herramientas del editor"},"elementspath":{"eleLabel":"Ruta de los elementos","eleTitle":"%1 elemento"},"find":{"find":"Buscar","findOptions":"Opciones de búsqueda","findWhat":"Texto a buscar:","matchCase":"Coincidir may/min","matchCyclic":"Buscar en todo el contenido","matchWord":"Coincidir toda la palabra","notFoundMsg":"El texto especificado no ha sido encontrado.","replace":"Reemplazar","replaceAll":"Reemplazar Todo","replaceSuccessMsg":"La expresión buscada ha sido reemplazada %1 veces.","replaceWith":"Reemplazar con:","title":"Buscar y Reemplazar"},"fakeobjects":{"anchor":"Ancla","flash":"Animación flash","hiddenfield":"Campo oculto","iframe":"IFrame","unknown":"Objeto desconocido"},"flash":{"access":"Acceso de scripts","accessAlways":"Siempre","accessNever":"Nunca","accessSameDomain":"Mismo dominio","alignAbsBottom":"Abs inferior","alignAbsMiddle":"Abs centro","alignBaseline":"Línea de base","alignTextTop":"Tope del texto","bgcolor":"Color de Fondo","chkFull":"Permitir pantalla completa","chkLoop":"Repetir","chkMenu":"Activar Menú Flash","chkPlay":"Autoejecución","flashvars":"Opciones","hSpace":"Esp.Horiz","properties":"Propiedades de Flash","propertiesTab":"Propiedades","quality":"Calidad","qualityAutoHigh":"Auto Alta","qualityAutoLow":"Auto Baja","qualityBest":"La mejor","qualityHigh":"Alta","qualityLow":"Baja","qualityMedium":"Media","scale":"Escala","scaleAll":"Mostrar todo","scaleFit":"Ajustado","scaleNoBorder":"Sin Borde","title":"Propiedades de Flash","vSpace":"Esp.Vert","validateHSpace":"Esp.Horiz debe ser un número.","validateSrc":"Por favor escriba el vínculo URL","validateVSpace":"Esp.Vert debe ser un número.","windowMode":"WindowMode","windowModeOpaque":"Opaco","windowModeTransparent":"Transparente","windowModeWindow":"Ventana"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño de fuente","panelTitle":"Tamaño"},"label":"Fuente","panelTitle":"Fuente","voiceLabel":"Fuente"},"forms":{"button":{"title":"Propiedades de Botón","text":"Texto (Valor)","type":"Tipo","typeBtn":"Boton","typeSbm":"Enviar","typeRst":"Reestablecer"},"checkboxAndRadio":{"checkboxTitle":"Propiedades de Casilla","radioTitle":"Propiedades de Botón de Radio","value":"Valor","selected":"Seleccionado"},"form":{"title":"Propiedades de Formulario","menu":"Propiedades de Formulario","action":"Acción","method":"Método","encoding":"Codificación"},"hidden":{"title":"Propiedades de Campo Oculto","name":"Nombre","value":"Valor"},"select":{"title":"Propiedades de Campo de Selección","selectInfo":"Información","opAvail":"Opciones disponibles","value":"Valor","size":"Tamaño","lines":"Lineas","chkMulti":"Permitir múltiple selección","opText":"Texto","opValue":"Valor","btnAdd":"Agregar","btnModify":"Modificar","btnUp":"Subir","btnDown":"Bajar","btnSetValue":"Establecer como predeterminado","btnDelete":"Eliminar"},"textarea":{"title":"Propiedades de Area de Texto","cols":"Columnas","rows":"Filas"},"textfield":{"title":"Propiedades de Campo de Texto","name":"Nombre","value":"Valor","charWidth":"Caracteres de ancho","maxChars":"Máximo caracteres","type":"Tipo","typeText":"Texto","typePass":"Contraseña","typeEmail":"Correo electrónico","typeSearch":"Buscar","typeTel":"Número de teléfono","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato","tag_address":"Dirección","tag_div":"Normal (DIV)","tag_h1":"Encabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Con formato"},"horizontalrule":{"toolbar":"Insertar Línea Horizontal"},"iframe":{"border":"Mostrar borde del marco","noUrl":"Por favor, escriba la dirección del iframe","scrolling":"Activar barras de desplazamiento","title":"Propiedades de iframe","toolbar":"IFrame"},"image":{"alertUrl":"Por favor escriba la URL de la imagen","alt":"Texto Alternativo","border":"Borde","btnUpload":"Enviar al Servidor","button2Img":"¿Desea convertir el botón de imagen en una simple imagen?","hSpace":"Esp.Horiz","img2Button":"¿Desea convertir la imagen en un botón de imagen?","infoTab":"Información de Imagen","linkTab":"Vínculo","lockRatio":"Proporcional","menu":"Propiedades de Imagen","resetSize":"Tamaño Original","title":"Propiedades de Imagen","titleButton":"Propiedades de Botón de Imagen","upload":"Cargar","urlMissing":"Debe indicar la URL de la imagen.","vSpace":"Esp.Vert","validateBorder":"El borde debe ser un número.","validateHSpace":"El espaciado horizontal debe ser un número.","validateVSpace":"El espaciado vertical debe ser un número."},"indent":{"indent":"Aumentar Sangría","outdent":"Disminuir Sangría"},"smiley":{"options":"Opciones de emoticonos","title":"Insertar un Emoticon","toolbar":"Emoticonos"},"justify":{"block":"Justificado","center":"Centrar","left":"Alinear a Izquierda","right":"Alinear a Derecha"},"language":{"button":"Fijar lenguaje","remove":"Quitar lenguaje"},"link":{"acccessKey":"Tecla de Acceso","advanced":"Avanzado","advisoryContentType":"Tipo de Contenido","advisoryTitle":"Título","anchor":{"toolbar":"Referencia","menu":"Propiedades de Referencia","title":"Propiedades de Referencia","name":"Nombre de la Referencia","errorName":"Por favor, complete el nombre de la Referencia","remove":"Quitar Referencia"},"anchorId":"Por ID de elemento","anchorName":"Por Nombre de Referencia","charset":"Fuente de caracteres vinculado","cssClasses":"Clases de hojas de estilo","emailAddress":"Dirección de E-Mail","emailBody":"Cuerpo del Mensaje","emailSubject":"Título del Mensaje","id":"Id","info":"Información de Vínculo","langCode":"Código idioma","langDir":"Orientación","langDirLTR":"Izquierda a Derecha (LTR)","langDirRTL":"Derecha a Izquierda (RTL)","menu":"Editar Vínculo","name":"Nombre","noAnchors":"(No hay referencias disponibles en el documento)","noEmail":"Por favor escriba la dirección de e-mail","noUrl":"Por favor escriba el vínculo URL","other":"<otro>","popupDependent":"Dependiente (Netscape)","popupFeatures":"Características de Ventana Emergente","popupFullScreen":"Pantalla Completa (IE)","popupLeft":"Posición Izquierda","popupLocationBar":"Barra de ubicación","popupMenuBar":"Barra de Menú","popupResizable":"Redimensionable","popupScrollBars":"Barras de desplazamiento","popupStatusBar":"Barra de Estado","popupToolbar":"Barra de Herramientas","popupTop":"Posición Derecha","rel":"Relación","selectAnchor":"Seleccionar una referencia","styles":"Estilo","tabIndex":"Indice de tabulación","target":"Destino","targetFrame":"<marco>","targetFrameName":"Nombre del Marco Destino","targetPopup":"<ventana emergente>","targetPopupName":"Nombre de Ventana Emergente","title":"Vínculo","toAnchor":"Referencia en esta página","toEmail":"E-Mail","toUrl":"URL","toolbar":"Insertar/Editar Vínculo","type":"Tipo de vínculo","unlink":"Eliminar Vínculo","upload":"Cargar"},"list":{"bulletedlist":"Viñetas","numberedlist":"Numeración"},"liststyle":{"armenian":"Numeración armenia","bulletedTitle":"Propiedades de viñetas","circle":"Círculo","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal con cero inicial (01, 02, 03, etc.)","disc":"Disco","georgian":"Numeración georgiana (an, ban, gan, etc.)","lowerAlpha":"Alfabeto en minúsculas (a, b, c, d, e, etc.)","lowerGreek":"Letras griegas (alpha, beta, gamma, etc.)","lowerRoman":"Números romanos en minúsculas (i, ii, iii, iv, v, etc.)","none":"Ninguno","notset":"<sin establecer>","numberedTitle":"Propiedades de lista numerada","square":"Cuadrado","start":"Inicio","type":"Tipo","upperAlpha":"Alfabeto en mayúsculas (A, B, C, D, E, etc.)","upperRoman":"Números romanos en mayúsculas (I, II, III, IV, V, etc.)","validateStartNumber":"El Inicio debe ser un número entero."},"magicline":{"title":"Insertar párrafo aquí"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Nueva Página"},"pagebreak":{"alt":"Salto de página","toolbar":"Insertar Salto de Página"},"pastetext":{"button":"Pegar como Texto Plano","title":"Pegar como Texto Plano"},"pastefromword":{"confirmCleanup":"El texto que desea parece provenir de Word.\r\n¿Desea depurarlo antes de pegarlo?","error":"No ha sido posible limpiar los datos debido a un error interno","title":"Pegar desde Word","toolbar":"Pegar desde Word"},"preview":{"preview":"Vista Previa"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Eliminar Formato"},"save":{"toolbar":"Guardar"},"selectall":{"toolbar":"Seleccionar Todo"},"showblocks":{"toolbar":"Mostrar bloques"},"sourcearea":{"toolbar":"Fuente HTML"},"specialchar":{"options":"Opciones de caracteres especiales","title":"Seleccione un caracter especial","toolbar":"Insertar Caracter Especial"},"scayt":{"btn_about":"Acerca de Corrector","btn_dictionaries":"Diccionarios","btn_disable":"Desactivar Corrector","btn_enable":"Activar Corrector","btn_langs":"Idiomas","btn_options":"Opciones","text_title":""},"stylescombo":{"label":"Estilo","panelTitle":"Estilos para formatear","panelTitle1":"Estilos de párrafo","panelTitle2":"Estilos de carácter","panelTitle3":"Estilos de objeto"},"table":{"border":"Tamaño de Borde","caption":"Título","cell":{"menu":"Celda","insertBefore":"Insertar celda a la izquierda","insertAfter":"Insertar celda a la derecha","deleteCell":"Eliminar Celdas","merge":"Combinar Celdas","mergeRight":"Combinar a la derecha","mergeDown":"Combinar hacia abajo","splitHorizontal":"Dividir la celda horizontalmente","splitVertical":"Dividir la celda verticalmente","title":"Propiedades de celda","cellType":"Tipo de Celda","rowSpan":"Expandir filas","colSpan":"Expandir columnas","wordWrap":"Ajustar al contenido","hAlign":"Alineación Horizontal","vAlign":"Alineación Vertical","alignBaseline":"Linea de base","bgColor":"Color de fondo","borderColor":"Color de borde","data":"Datos","header":"Encabezado","yes":"Sí","no":"No","invalidWidth":"La anchura de celda debe ser un número.","invalidHeight":"La altura de celda debe ser un número.","invalidRowSpan":"La expansión de filas debe ser un número entero.","invalidColSpan":"La expansión de columnas debe ser un número entero.","chooseColor":"Elegir"},"cellPad":"Esp. interior","cellSpace":"Esp. e/celdas","column":{"menu":"Columna","insertBefore":"Insertar columna a la izquierda","insertAfter":"Insertar columna a la derecha","deleteColumn":"Eliminar Columnas"},"columns":"Columnas","deleteTable":"Eliminar Tabla","headers":"Encabezados","headersBoth":"Ambas","headersColumn":"Primera columna","headersNone":"Ninguno","headersRow":"Primera fila","invalidBorder":"El tamaño del borde debe ser un número.","invalidCellPadding":"El espaciado interior debe ser un número.","invalidCellSpacing":"El espaciado entre celdas debe ser un número.","invalidCols":"El número de columnas debe ser un número mayor que 0.","invalidHeight":"La altura de tabla debe ser un número.","invalidRows":"El número de filas debe ser un número mayor que 0.","invalidWidth":"La anchura de tabla debe ser un número.","menu":"Propiedades de Tabla","row":{"menu":"Fila","insertBefore":"Insertar fila en la parte superior","insertAfter":"Insertar fila en la parte inferior","deleteRow":"Eliminar Filas"},"rows":"Filas","summary":"Síntesis","title":"Propiedades de Tabla","toolbar":"Tabla","widthPc":"porcentaje","widthPx":"pixeles","widthUnit":"unidad de la anchura"},"undo":{"redo":"Rehacer","undo":"Deshacer"},"wsc":{"btnIgnore":"Ignorar","btnIgnoreAll":"Ignorar Todo","btnReplace":"Reemplazar","btnReplaceAll":"Reemplazar Todo","btnUndo":"Deshacer","changeTo":"Cambiar a","errorLoading":"Error cargando la aplicación del servidor: %s.","ieSpellDownload":"Módulo de Control de Ortografía no instalado.\r\n¿Desea descargarlo ahora?","manyChanges":"Control finalizado: se ha cambiado %1 palabras","noChanges":"Control finalizado: no se ha cambiado ninguna palabra","noMispell":"Control finalizado: no se encontraron errores","noSuggestions":"- No hay sugerencias -","notAvailable":"Lo sentimos pero el servicio no está disponible.","notInDic":"No se encuentra en el Diccionario","oneChange":"Control finalizado: se ha cambiado una palabra","progress":"Control de Ortografía en progreso...","title":"Comprobar ortografía","toolbar":"Ortografía"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/et.js b/wqflask/wqflask/static/packages/ckeditor/lang/et.js
deleted file mode 100644
index fade92cc..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/et.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['et']={"editor":"Rikkalik tekstiredaktor","editorPanel":"Rikkaliku tekstiredaktori paneel","common":{"editorHelp":"Abi saamiseks vajuta ALT 0","browseServer":"Serveri sirvimine","url":"URL","protocol":"Protokoll","upload":"Laadi üles","uploadSubmit":"Saada serverisse","image":"Pilt","flash":"Flash","form":"Vorm","checkbox":"Märkeruut","radio":"Raadionupp","textField":"Tekstilahter","textarea":"Tekstiala","hiddenField":"Varjatud lahter","button":"Nupp","select":"Valiklahter","imageButton":"Piltnupp","notSet":"<määramata>","id":"ID","name":"Nimi","langDir":"Keele suund","langDirLtr":"Vasakult paremale (LTR)","langDirRtl":"Paremalt vasakule (RTL)","langCode":"Keele kood","longDescr":"Pikk kirjeldus URL","cssClass":"Stiilistiku klassid","advisoryTitle":"Soovituslik pealkiri","cssStyle":"Laad","ok":"Olgu","cancel":"Loobu","close":"Sulge","preview":"Eelvaade","resize":"Suuruse muutmiseks lohista","generalTab":"Üldine","advancedTab":"Täpsemalt","validateNumberFailed":"See väärtus pole number.","confirmNewPage":"Kõik salvestamata muudatused lähevad kaotsi. Kas oled kindel, et tahad laadida uue lehe?","confirmCancel":"Mõned valikud on muudetud. Kas oled kindel, et tahad dialoogi sulgeda?","options":"Valikud","target":"Sihtkoht","targetNew":"Uus aken (_blank)","targetTop":"Kõige ülemine aken (_top)","targetSelf":"Sama aken (_self)","targetParent":"Vanemaken (_parent)","langDirLTR":"Vasakult paremale (LTR)","langDirRTL":"Paremalt vasakule (RTL)","styles":"Stiili","cssClasses":"Stiililehe klassid","width":"Laius","height":"Kõrgus","align":"Joondus","alignLeft":"Vasak","alignRight":"Paremale","alignCenter":"Kesk","alignJustify":"Rööpjoondus","alignTop":"Üles","alignMiddle":"Keskele","alignBottom":"Alla","alignNone":"None","invalidValue":"Vigane väärtus.","invalidHeight":"Kõrgus peab olema number.","invalidWidth":"Laius peab olema number.","invalidCssLength":"\"%1\" välja jaoks määratud väärtus peab olema positiivne täisarv CSS ühikuga (px, %, in, cm, mm, em, ex, pt või pc) või ilma.","invalidHtmlLength":"\"%1\" välja jaoks määratud väärtus peab olema positiivne täisarv HTML ühikuga (px või %) või ilma.","invalidInlineStyle":"Reasisese stiili määrangud peavad koosnema paarisväärtustest (tuples), mis on semikoolonitega eraldatult järgnevas vormingus: \"nimi : väärtus\".","cssLengthTooltip":"Sisesta väärtus pikslites või number koos sobiva CSS-i ühikuga (px, %, in, cm, mm, em, ex, pt või pc).","unavailable":"%1<span class=\"cke_accessibility\">, pole saadaval</span>"},"about":{"copy":"Copyright &copy; $1. Kõik õigused kaitstud.","dlgTitle":"CKEditorist","help":"Abi jaoks vaata $1.","moreInfo":"Litsentsi andmed leiab meie veebilehelt:","title":"CKEditorist","userGuide":"CKEditori kasutusjuhendit"},"basicstyles":{"bold":"Paks","italic":"Kursiiv","strike":"Läbijoonitud","subscript":"Allindeks","superscript":"Ülaindeks","underline":"Allajoonitud"},"bidi":{"ltr":"Teksti suund vasakult paremale","rtl":"Teksti suund paremalt vasakule"},"blockquote":{"toolbar":"Blokktsitaat"},"clipboard":{"copy":"Kopeeri","copyError":"Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt kopeerida. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl/Cmd+C).","cut":"Lõika","cutError":"Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt lõigata. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl/Cmd+X).","paste":"Aseta","pasteArea":"Asetamise ala","pasteMsg":"Palun aseta tekst järgnevasse kasti kasutades klaviatuuri klahvikombinatsiooni (<STRONG>Ctrl/Cmd+V</STRONG>) ja vajuta seejärel <STRONG>OK</STRONG>.","securityMsg":"Sinu veebisirvija turvaseadete tõttu ei oma redaktor otsest ligipääsu lõikelaua andmetele. Sa pead asetama need uuesti siia aknasse.","title":"Asetamine"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automaatne","bgColorTitle":"Tausta värv","colors":{"000":"Must","800000":"Kastanpruun","8B4513":"Sadulapruun","2F4F4F":"Tume paehall","008080":"Sinakasroheline","000080":"Meresinine","4B0082":"Indigosinine","696969":"Tumehall","B22222":"Šamottkivi","A52A2A":"Pruun","DAA520":"Kuldkollane","006400":"Tumeroheline","40E0D0":"Türkiissinine","0000CD":"Keskmine sinine","800080":"Lilla","808080":"Hall","F00":"Punanae","FF8C00":"Tumeoranž","FFD700":"Kuldne","008000":"Roheline","0FF":"Tsüaniidsinine","00F":"Sinine","EE82EE":"Violetne","A9A9A9":"Tuhm hall","FFA07A":"Hele lõhe","FFA500":"Oranž","FFFF00":"Kollane","00FF00":"Lubja hall","AFEEEE":"Kahvatu türkiis","ADD8E6":"Helesinine","DDA0DD":"Ploomililla","D3D3D3":"Helehall","FFF0F5":"Lavendlipunane","FAEBD7":"Antiikvalge","FFFFE0":"Helekollane","F0FFF0":"Meloniroheline","F0FFFF":"Taevasinine","F0F8FF":"Beebisinine","E6E6FA":"Lavendel","FFF":"Valge"},"more":"Rohkem värve...","panelTitle":"Värvid","textColorTitle":"Teksti värv"},"colordialog":{"clear":"Eemalda","highlight":"Näidis","options":"Värvi valikud","selected":"Valitud värv","title":"Värvi valimine"},"templates":{"button":"Mall","emptyListMsg":"(Ühtegi malli ei ole defineeritud)","insertOption":"Praegune sisu asendatakse","options":"Malli valikud","selectPromptMsg":"Palun vali mall, mis avada redaktoris<br />(praegune sisu läheb kaotsi):","title":"Sisumallid"},"contextmenu":{"options":"Kontekstimenüü valikud"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Soovitatav pealkiri","cssClassInputLabel":"Stiililehe klassid","edit":"Muuda Div","inlineStyleInputLabel":"Reasisene stiil","langDirLTRLabel":"Vasakult paremale (LTR)","langDirLabel":"Keele suund","langDirRTLLabel":"Paremalt vasakule (RTL)","languageCodeInputLabel":" Keelekood","remove":"Eemalda Div","styleSelectLabel":"Stiil","title":"Div-konteineri loomine","toolbar":"Div-konteineri loomine"},"toolbar":{"toolbarCollapse":"Tööriistariba peitmine","toolbarExpand":"Tööriistariba näitamine","toolbarGroups":{"document":"Dokument","clipboard":"Lõikelaud/tagasivõtmine","editing":"Muutmine","forms":"Vormid","basicstyles":"Põhistiilid","paragraph":"Lõik","links":"Lingid","insert":"Sisesta","styles":"Stiilid","colors":"Värvid","tools":"Tööriistad"},"toolbars":"Redaktori tööriistaribad"},"elementspath":{"eleLabel":"Elementide asukoht","eleTitle":"%1 element"},"find":{"find":"Otsi","findOptions":"Otsingu valikud","findWhat":"Otsitav:","matchCase":"Suur- ja väiketähtede eristamine","matchCyclic":"Jätkatakse algusest","matchWord":"Ainult terved sõnad","notFoundMsg":"Otsitud teksti ei leitud.","replace":"Asenda","replaceAll":"Asenda kõik","replaceSuccessMsg":"%1 vastet asendati.","replaceWith":"Asendus:","title":"Otsimine ja asendamine"},"fakeobjects":{"anchor":"Ankur","flash":"Flashi animatsioon","hiddenfield":"Varjatud väli","iframe":"IFrame","unknown":"Tundmatu objekt"},"flash":{"access":"Skriptide ligipääs","accessAlways":"Kõigile","accessNever":"Mitte ühelegi","accessSameDomain":"Samalt domeenilt","alignAbsBottom":"Abs alla","alignAbsMiddle":"Abs keskele","alignBaseline":"Baasjoonele","alignTextTop":"Tekstist üles","bgcolor":"Tausta värv","chkFull":"Täisekraan lubatud","chkLoop":"Korduv","chkMenu":"Flashi menüü lubatud","chkPlay":"Automaatne start ","flashvars":"Flashi muutujad","hSpace":"H. vaheruum","properties":"Flashi omadused","propertiesTab":"Omadused","quality":"Kvaliteet","qualityAutoHigh":"Automaatne kõrge","qualityAutoLow":"Automaatne madal","qualityBest":"Parim","qualityHigh":"Kõrge","qualityLow":"Madal","qualityMedium":"Keskmine","scale":"Mastaap","scaleAll":"Näidatakse kõike","scaleFit":"Täpne sobivus","scaleNoBorder":"Äärist ei ole","title":"Flashi omadused","vSpace":"V. vaheruum","validateHSpace":"H. vaheruum peab olema number.","validateSrc":"Palun kirjuta lingi URL","validateVSpace":"V. vaheruum peab olema number.","windowMode":"Akna režiim","windowModeOpaque":"Läbipaistmatu","windowModeTransparent":"Läbipaistev","windowModeWindow":"Aken"},"font":{"fontSize":{"label":"Suurus","voiceLabel":"Kirja suurus","panelTitle":"Suurus"},"label":"Kiri","panelTitle":"Kiri","voiceLabel":"Kiri"},"forms":{"button":{"title":"Nupu omadused","text":"Tekst (väärtus)","type":"Liik","typeBtn":"Nupp","typeSbm":"Saada","typeRst":"Lähtesta"},"checkboxAndRadio":{"checkboxTitle":"Märkeruudu omadused","radioTitle":"Raadionupu omadused","value":"Väärtus","selected":"Märgitud"},"form":{"title":"Vormi omadused","menu":"Vormi omadused","action":"Toiming","method":"Meetod","encoding":"Kodeering"},"hidden":{"title":"Varjatud lahtri omadused","name":"Nimi","value":"Väärtus"},"select":{"title":"Valiklahtri omadused","selectInfo":"Info","opAvail":"Võimalikud valikud:","value":"Väärtus","size":"Suurus","lines":"ridu","chkMulti":"Võimalik mitu valikut","opText":"Tekst","opValue":"Väärtus","btnAdd":"Lisa","btnModify":"Muuda","btnUp":"Üles","btnDown":"Alla","btnSetValue":"Määra vaikimisi","btnDelete":"Kustuta"},"textarea":{"title":"Tekstiala omadused","cols":"Veerge","rows":"Ridu"},"textfield":{"title":"Tekstilahtri omadused","name":"Nimi","value":"Väärtus","charWidth":"Laius (tähemärkides)","maxChars":"Maksimaalselt tähemärke","type":"Liik","typeText":"Tekst","typePass":"Parool","typeEmail":"E-mail","typeSearch":"Otsi","typeTel":"Telefon","typeUrl":"URL"}},"format":{"label":"Vorming","panelTitle":"Vorming","tag_address":"Aadress","tag_div":"Tavaline (DIV)","tag_h1":"Pealkiri 1","tag_h2":"Pealkiri 2","tag_h3":"Pealkiri 3","tag_h4":"Pealkiri 4","tag_h5":"Pealkiri 5","tag_h6":"Pealkiri 6","tag_p":"Tavaline","tag_pre":"Vormindatud"},"horizontalrule":{"toolbar":"Horisontaaljoone sisestamine"},"iframe":{"border":"Raami äärise näitamine","noUrl":"Vali iframe URLi liik","scrolling":"Kerimisribade lubamine","title":"IFrame omadused","toolbar":"IFrame"},"image":{"alertUrl":"Palun kirjuta pildi URL","alt":"Alternatiivne tekst","border":"Joon","btnUpload":"Saada serverisse","button2Img":"Kas tahad teisendada valitud pildiga nupu tavaliseks pildiks?","hSpace":"H. vaheruum","img2Button":"Kas tahad teisendada valitud tavalise pildi pildiga nupuks?","infoTab":"Pildi info","linkTab":"Link","lockRatio":"Lukusta kuvasuhe","menu":"Pildi omadused","resetSize":"Lähtesta suurus","title":"Pildi omadused","titleButton":"Piltnupu omadused","upload":"Lae üles","urlMissing":"Pildi lähte-URL on puudu.","vSpace":"V. vaheruum","validateBorder":"Äärise laius peab olema täisarv.","validateHSpace":"Horisontaalne vaheruum peab olema täisarv.","validateVSpace":"Vertikaalne vaheruum peab olema täisarv."},"indent":{"indent":"Taande suurendamine","outdent":"Taande vähendamine"},"smiley":{"options":"Emotikonide valikud","title":"Sisesta emotikon","toolbar":"Emotikon"},"justify":{"block":"Rööpjoondus","center":"Keskjoondus","left":"Vasakjoondus","right":"Paremjoondus"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Juurdepääsu võti","advanced":"Täpsemalt","advisoryContentType":"Juhendava sisu tüüp","advisoryTitle":"Juhendav tiitel","anchor":{"toolbar":"Ankru sisestamine/muutmine","menu":"Ankru omadused","title":"Ankru omadused","name":"Ankru nimi","errorName":"Palun sisesta ankru nimi","remove":"Eemalda ankur"},"anchorId":"Elemendi id järgi","anchorName":"Ankru nime järgi","charset":"Lingitud ressursi märgistik","cssClasses":"Stiilistiku klassid","emailAddress":"E-posti aadress","emailBody":"Sõnumi tekst","emailSubject":"Sõnumi teema","id":"ID","info":"Lingi info","langCode":"Keele suund","langDir":"Keele suund","langDirLTR":"Vasakult paremale (LTR)","langDirRTL":"Paremalt vasakule (RTL)","menu":"Muuda linki","name":"Nimi","noAnchors":"(Selles dokumendis pole ankruid)","noEmail":"Palun kirjuta e-posti aadress","noUrl":"Palun kirjuta lingi URL","other":"<muu>","popupDependent":"Sõltuv (Netscape)","popupFeatures":"Hüpikakna omadused","popupFullScreen":"Täisekraan (IE)","popupLeft":"Vasak asukoht","popupLocationBar":"Aadressiriba","popupMenuBar":"Menüüriba","popupResizable":"Suurust saab muuta","popupScrollBars":"Kerimisribad","popupStatusBar":"Olekuriba","popupToolbar":"Tööriistariba","popupTop":"Ülemine asukoht","rel":"Suhe","selectAnchor":"Vali ankur","styles":"Laad","tabIndex":"Tab indeks","target":"Sihtkoht","targetFrame":"<raam>","targetFrameName":"Sihtmärk raami nimi","targetPopup":"<hüpikaken>","targetPopupName":"Hüpikakna nimi","title":"Link","toAnchor":"Ankur sellel lehel","toEmail":"E-post","toUrl":"URL","toolbar":"Lingi lisamine/muutmine","type":"Lingi liik","unlink":"Lingi eemaldamine","upload":"Lae üles"},"list":{"bulletedlist":"Punktloend","numberedlist":"Numberloend"},"liststyle":{"armenian":"Armeenia numbrid","bulletedTitle":"Punktloendi omadused","circle":"Ring","decimal":"Numbrid (1, 2, 3, jne)","decimalLeadingZero":"Numbrid algusnulliga (01, 02, 03, jne)","disc":"Täpp","georgian":"Gruusia numbrid (an, ban, gan, jne)","lowerAlpha":"Väiketähed (a, b, c, d, e, jne)","lowerGreek":"Kreeka väiketähed (alpha, beta, gamma, jne)","lowerRoman":"Väiksed rooma numbrid (i, ii, iii, iv, v, jne)","none":"Puudub","notset":"<pole määratud>","numberedTitle":"Numberloendi omadused","square":"Ruut","start":"Algus","type":"Liik","upperAlpha":"Suurtähed (A, B, C, D, E, jne)","upperRoman":"Suured rooma numbrid (I, II, III, IV, V, jne)","validateStartNumber":"Loendi algusnumber peab olema täisarv."},"magicline":{"title":"Sisesta siia lõigu tekst"},"maximize":{"maximize":"Maksimeerimine","minimize":"Minimeerimine"},"newpage":{"toolbar":"Uus leht"},"pagebreak":{"alt":"Lehevahetuskoht","toolbar":"Lehevahetuskoha sisestamine"},"pastetext":{"button":"Asetamine tavalise tekstina","title":"Asetamine tavalise tekstina"},"pastefromword":{"confirmCleanup":"Tekst, mida tahad asetada näib pärinevat Wordist. Kas tahad selle enne asetamist puhastada?","error":"Asetatud andmete puhastamine ei olnud sisemise vea tõttu võimalik","title":"Asetamine Wordist","toolbar":"Asetamine Wordist"},"preview":{"preview":"Eelvaade"},"print":{"toolbar":"Printimine"},"removeformat":{"toolbar":"Vormingu eemaldamine"},"save":{"toolbar":"Salvestamine"},"selectall":{"toolbar":"Kõige valimine"},"showblocks":{"toolbar":"Blokkide näitamine"},"sourcearea":{"toolbar":"Lähtekood"},"specialchar":{"options":"Erimärkide valikud","title":"Erimärgi valimine","toolbar":"Erimärgi sisestamine"},"scayt":{"btn_about":"SCAYT-ist lähemalt","btn_dictionaries":"Sõnaraamatud","btn_disable":"SCAYT keelatud","btn_enable":"SCAYT lubatud","btn_langs":"Keeled","btn_options":"Valikud","text_title":""},"stylescombo":{"label":"Stiil","panelTitle":"Vormindusstiilid","panelTitle1":"Blokkstiilid","panelTitle2":"Reasisesed stiilid","panelTitle3":"Objektistiilid"},"table":{"border":"Joone suurus","caption":"Tabeli tiitel","cell":{"menu":"Lahter","insertBefore":"Sisesta lahter enne","insertAfter":"Sisesta lahter peale","deleteCell":"Eemalda lahtrid","merge":"Ühenda lahtrid","mergeRight":"Ühenda paremale","mergeDown":"Ühenda alla","splitHorizontal":"Poolita lahter horisontaalselt","splitVertical":"Poolita lahter vertikaalselt","title":"Lahtri omadused","cellType":"Lahtri liik","rowSpan":"Ridade vahe","colSpan":"Tulpade vahe","wordWrap":"Sõnade murdmine","hAlign":"Horisontaalne joondus","vAlign":"Vertikaalne joondus","alignBaseline":"Baasjoon","bgColor":"Tausta värv","borderColor":"Äärise värv","data":"Andmed","header":"Päis","yes":"Jah","no":"Ei","invalidWidth":"Lahtri laius peab olema number.","invalidHeight":"Lahtri kõrgus peab olema number.","invalidRowSpan":"Ridade vahe peab olema täisarv.","invalidColSpan":"Tulpade vahe peab olema täisarv.","chooseColor":"Vali"},"cellPad":"Lahtri täidis","cellSpace":"Lahtri vahe","column":{"menu":"Veerg","insertBefore":"Sisesta veerg enne","insertAfter":"Sisesta veerg peale","deleteColumn":"Eemalda veerud"},"columns":"Veerud","deleteTable":"Kustuta tabel","headers":"Päised","headersBoth":"Mõlemad","headersColumn":"Esimene tulp","headersNone":"Puudub","headersRow":"Esimene rida","invalidBorder":"Äärise suurus peab olema number.","invalidCellPadding":"Lahtrite polsterdus (padding) peab olema positiivne arv.","invalidCellSpacing":"Lahtrite vahe peab olema positiivne arv.","invalidCols":"Tulpade arv peab olema nullist suurem.","invalidHeight":"Tabeli kõrgus peab olema number.","invalidRows":"Ridade arv peab olema nullist suurem.","invalidWidth":"Tabeli laius peab olema number.","menu":"Tabeli omadused","row":{"menu":"Rida","insertBefore":"Sisesta rida enne","insertAfter":"Sisesta rida peale","deleteRow":"Eemalda read"},"rows":"Read","summary":"Kokkuvõte","title":"Tabeli omadused","toolbar":"Tabel","widthPc":"protsenti","widthPx":"pikslit","widthUnit":"laiuse ühik"},"undo":{"redo":"Toimingu kordamine","undo":"Tagasivõtmine"},"wsc":{"btnIgnore":"Ignoreeri","btnIgnoreAll":"Ignoreeri kõiki","btnReplace":"Asenda","btnReplaceAll":"Asenda kõik","btnUndo":"Võta tagasi","changeTo":"Muuda","errorLoading":"Viga rakenduse teenushosti laadimisel: %s.","ieSpellDownload":"Õigekirja kontrollija ei ole paigaldatud. Soovid sa selle alla laadida?","manyChanges":"Õigekirja kontroll sooritatud: %1 sõna muudetud","noChanges":"Õigekirja kontroll sooritatud: ühtegi sõna ei muudetud","noMispell":"Õigekirja kontroll sooritatud: õigekirjuvigu ei leitud","noSuggestions":"- Soovitused puuduvad -","notAvailable":"Kahjuks ei ole teenus praegu saadaval.","notInDic":"Puudub sõnastikust","oneChange":"Õigekirja kontroll sooritatud: üks sõna muudeti","progress":"Toimub õigekirja kontroll...","title":"Õigekirjakontroll","toolbar":"Õigekirjakontroll"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/eu.js b/wqflask/wqflask/static/packages/ckeditor/lang/eu.js
deleted file mode 100644
index a5a75684..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/eu.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['eu']={"editor":"Testu Aberastuko Editorea","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"ALT 0 sakatu laguntza jasotzeko","browseServer":"Zerbitzaria arakatu","url":"URL","protocol":"Protokoloa","upload":"Gora kargatu","uploadSubmit":"Zerbitzarira bidali","image":"Irudia","flash":"Flasha","form":"Formularioa","checkbox":"Kontrol-laukia","radio":"Aukera-botoia","textField":"Testu Eremua","textarea":"Testu-area","hiddenField":"Ezkutuko Eremua","button":"Botoia","select":"Hautespen Eremua","imageButton":"Irudi Botoia","notSet":"<Ezarri gabe>","id":"Id","name":"Izena","langDir":"Hizkuntzaren Norabidea","langDirLtr":"Ezkerretik Eskumara(LTR)","langDirRtl":"Eskumatik Ezkerrera (RTL)","langCode":"Hizkuntza Kodea","longDescr":"URL Deskribapen Luzea","cssClass":"Estilo-orriko Klaseak","advisoryTitle":"Izenburua","cssStyle":"Estiloa","ok":"Ados","cancel":"Utzi","close":"Itxi","preview":"Aurrebista","resize":"Arrastatu tamaina aldatzeko","generalTab":"Orokorra","advancedTab":"Aurreratua","validateNumberFailed":"Balio hau ez da zenbaki bat.","confirmNewPage":"Eduki honetan gorde gabe dauden aldaketak galduko dira. Ziur zaude orri berri bat kargatu nahi duzula?","confirmCancel":"Aukera batzuk aldatu egin dira. Ziur zaude elkarrizketa-koadroa itxi nahi duzula?","options":"Aukerak","target":"Target (Helburua)","targetNew":"Leiho Berria (_blank)","targetTop":"Goieneko Leihoan (_top)","targetSelf":"Leiho Berdinean (_self)","targetParent":"Leiho Gurasoan (_parent)","langDirLTR":"Ezkerretik Eskumara(LTR)","langDirRTL":"Eskumatik Ezkerrera (RTL)","styles":"Estiloa","cssClasses":"Estilo-orriko Klaseak","width":"Zabalera","height":"Altuera","align":"Lerrokatu","alignLeft":"Ezkerrera","alignRight":"Eskuman","alignCenter":"Erdian","alignJustify":"Justifikatu","alignTop":"Goian","alignMiddle":"Erdian","alignBottom":"Behean","alignNone":"None","invalidValue":"Balio ezegokia.","invalidHeight":"Altuera zenbaki bat izan behar da.","invalidWidth":"Zabalera zenbaki bat izan behar da.","invalidCssLength":"\"%1\" eremurako zehaztutako balioa zenbaki positibo bat izan behar du, aukeran CSS neurri unitate batekin (px, %, in, cm, mm, em, ex, pt edo pc).","invalidHtmlLength":"\"%1\" eremurako zehaztutako balioa zenbaki positibo bat izan behar du, aukeran HTML neurri unitate batekin (px edo %).","invalidInlineStyle":"Lerroko estiloan zehazten dena tupla \"name : value\" formatuko eta puntu eta komaz bereiztutako tupla bat edo gehiago izan behar dira.","cssLengthTooltip":"Zenbakia bakarrik zehazten bada pixeletan egongo da. CSS neurri unitatea ere zehaztu ahal da (px, %, in, cm, mm, em, ex, pt, edo pc).","unavailable":"%1<span class=\"cke_accessibility\">, erabilezina</span>"},"about":{"copy":"Copyright &copy; $1. Eskubide guztiak erreserbaturik.","dlgTitle":"CKEditor(r)i buruz","help":"$1 aztertu laguntza jasotzeko.","moreInfo":"Lizentziari buruzko informazioa gure webgunean:","title":"CKEditor(r)i buruz","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Lodia","italic":"Etzana","strike":"Marratua","subscript":"Azpi-indize","superscript":"Goi-indize","underline":"Azpimarratu"},"bidi":{"ltr":"Testuaren norantza ezkerretik eskuinera","rtl":"Testuaren norantza eskuinetik ezkerrera"},"blockquote":{"toolbar":"Aipamen blokea"},"clipboard":{"copy":"Kopiatu","copyError":"Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki kopiatzea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl/Cmd+C).","cut":"Ebaki","cutError":"Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki moztea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl/Cmd+X).","paste":"Itsatsi","pasteArea":"Itsasteko Area","pasteMsg":"Mesedez teklatua erabilita (<STRONG>Ctrl/Cmd+V</STRONG>) ondorego eremuan testua itsatsi eta <STRONG>OK</STRONG> sakatu.","securityMsg":"Nabigatzailearen segurtasun ezarpenak direla eta, editoreak ezin du arbela zuzenean erabili. Leiho honetan berriro itsatsi behar duzu.","title":"Itsatsi"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatikoa","bgColorTitle":"Atzeko kolorea","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Kolore gehiago...","panelTitle":"Colors","textColorTitle":"Testu Kolorea"},"colordialog":{"clear":"Garbitu","highlight":"Nabarmendu","options":"Kolore Aukerak","selected":"Hautatutako Kolorea","title":"Kolorea Hautatu"},"templates":{"button":"Txantiloiak","emptyListMsg":"(Ez dago definitutako txantiloirik)","insertOption":"Ordeztu oraingo edukiak","options":"Txantiloi Aukerak","selectPromptMsg":"Mesedez txantiloia aukeratu editorean kargatzeko<br>(orain dauden edukiak galduko dira):","title":"Eduki Txantiloiak"},"contextmenu":{"options":"Testuingurko Menuaren Aukerak"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Izenburua","cssClassInputLabel":"Estilo-orriko Klaseak","edit":"Div-a editatu","inlineStyleInputLabel":"Inline Estiloa","langDirLTRLabel":"Ezkerretik Eskuinera (LTR)","langDirLabel":"Hizkuntzaren Norabidea","langDirRTLLabel":"Eskumatik Ezkerrera (RTL)","languageCodeInputLabel":"Hizkuntza Kodea","remove":"Div-a Kendu","styleSelectLabel":"Estiloa","title":"Div Edukiontzia Sortu","toolbar":"Div Edukiontzia Sortu"},"toolbar":{"toolbarCollapse":"Tresna-barra Txikitu","toolbarExpand":"Tresna-barra Luzatu","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editorearen Tresna-barra"},"elementspath":{"eleLabel":"Elementu bidea","eleTitle":"%1 elementua"},"find":{"find":"Bilatu","findOptions":"Find Options","findWhat":"Zer bilatu:","matchCase":"Maiuskula/minuskula","matchCyclic":"Bilaketa ziklikoa","matchWord":"Esaldi osoa bilatu","notFoundMsg":"Idatzitako testua ez da topatu.","replace":"Ordezkatu","replaceAll":"Ordeztu Guztiak","replaceSuccessMsg":"Zenbat aldiz ordeztua: %1","replaceWith":"Zerekin ordeztu:","title":"Bilatu eta Ordeztu"},"fakeobjects":{"anchor":"Aingura","flash":"Flash Animazioa","hiddenfield":"Ezkutuko Eremua","iframe":"IFrame","unknown":"Objektu ezezaguna"},"flash":{"access":"Scriptak baimendu","accessAlways":"Beti","accessNever":"Inoiz ere ez","accessSameDomain":"Domeinu berdinekoak","alignAbsBottom":"Abs Behean","alignAbsMiddle":"Abs Erdian","alignBaseline":"Oinan","alignTextTop":"Testua Goian","bgcolor":"Atzeko kolorea","chkFull":"Onartu Pantaila osoa","chkLoop":"Begizta","chkMenu":"Flasharen Menua Gaitu","chkPlay":"Automatikoki Erreproduzitu","flashvars":"Flash Aldagaiak","hSpace":"HSpace","properties":"Flasharen Ezaugarriak","propertiesTab":"Ezaugarriak","quality":"Kalitatea","qualityAutoHigh":"Auto Altua","qualityAutoLow":"Auto Baxua","qualityBest":"Hoberena","qualityHigh":"Altua","qualityLow":"Baxua","qualityMedium":"Ertaina","scale":"Eskalatu","scaleAll":"Dena erakutsi","scaleFit":"Doitu","scaleNoBorder":"Ertzik gabe","title":"Flasharen Ezaugarriak","vSpace":"VSpace","validateHSpace":"HSpace zenbaki bat izan behar da.","validateSrc":"Mesedez URL esteka idatzi","validateVSpace":"VSpace zenbaki bat izan behar da.","windowMode":"Leihoaren modua","windowModeOpaque":"Opakoa","windowModeTransparent":"Gardena","windowModeWindow":"Leihoa"},"font":{"fontSize":{"label":"Tamaina","voiceLabel":"Tamaina","panelTitle":"Tamaina"},"label":"Letra-tipoa","panelTitle":"Letra-tipoa","voiceLabel":"Letra-tipoa"},"forms":{"button":{"title":"Botoiaren Ezaugarriak","text":"Testua (Balorea)","type":"Mota","typeBtn":"Botoia","typeSbm":"Bidali","typeRst":"Garbitu"},"checkboxAndRadio":{"checkboxTitle":"Kontrol-laukiko Ezaugarriak","radioTitle":"Aukera-botoiaren Ezaugarriak","value":"Balorea","selected":"Hautatuta"},"form":{"title":"Formularioaren Ezaugarriak","menu":"Formularioaren Ezaugarriak","action":"Ekintza","method":"Metodoa","encoding":"Kodeketa"},"hidden":{"title":"Ezkutuko Eremuaren Ezaugarriak","name":"Izena","value":"Balorea"},"select":{"title":"Hautespen Eremuaren Ezaugarriak","selectInfo":"Informazioa","opAvail":"Aukera Eskuragarriak","value":"Balorea","size":"Tamaina","lines":"lerro kopurura","chkMulti":"Hautaketa anitzak baimendu","opText":"Testua","opValue":"Balorea","btnAdd":"Gehitu","btnModify":"Aldatu","btnUp":"Gora","btnDown":"Behera","btnSetValue":"Aukeratutako balorea ezarri","btnDelete":"Ezabatu"},"textarea":{"title":"Testu-arearen Ezaugarriak","cols":"Zutabeak","rows":"Lerroak"},"textfield":{"title":"Testu Eremuaren Ezaugarriak","name":"Izena","value":"Balorea","charWidth":"Zabalera","maxChars":"Zenbat karaktere gehienez","type":"Mota","typeText":"Testua","typePass":"Pasahitza","typeEmail":"E-posta","typeSearch":"Bilatu","typeTel":"Telefono Zenbakia","typeUrl":"URL"}},"format":{"label":"Formatua","panelTitle":"Formatua","tag_address":"Helbidea","tag_div":"Paragrafoa (DIV)","tag_h1":"Izenburua 1","tag_h2":"Izenburua 2","tag_h3":"Izenburua 3","tag_h4":"Izenburua 4","tag_h5":"Izenburua 5","tag_h6":"Izenburua 6","tag_p":"Arrunta","tag_pre":"Formateatua"},"horizontalrule":{"toolbar":"Txertatu Marra Horizontala"},"iframe":{"border":"Markoaren ertza ikusi","noUrl":"iframe-aren URLa idatzi, mesedez.","scrolling":"Korritze barrak gaitu","title":"IFrame-aren Propietateak","toolbar":"IFrame"},"image":{"alertUrl":"Mesedez Irudiaren URLa idatzi","alt":"Ordezko Testua","border":"Ertza","btnUpload":"Zerbitzarira bidalia","button2Img":"Aukeratutako irudi botoia, irudi normal batean eraldatu nahi duzu?","hSpace":"HSpace","img2Button":"Aukeratutako irudia, irudi botoi batean eraldatu nahi duzu?","infoTab":"Irudi informazioa","linkTab":"Esteka","lockRatio":"Erlazioa Blokeatu","menu":"Irudi Ezaugarriak","resetSize":"Tamaina Berrezarri","title":"Irudi Ezaugarriak","titleButton":"Irudi Botoiaren Ezaugarriak","upload":"Gora Kargatu","urlMissing":"Irudiaren iturburu URL-a falta da.","vSpace":"VSpace","validateBorder":"Ertza zenbaki oso bat izan behar da.","validateHSpace":"HSpace zenbaki oso bat izan behar da.","validateVSpace":"VSpace zenbaki oso bat izan behar da."},"indent":{"indent":"Handitu Koska","outdent":"Txikitu Koska"},"smiley":{"options":"Aurpegiera Aukerak","title":"Aurpegiera Sartu","toolbar":"Aurpegierak"},"justify":{"block":"Justifikatu","center":"Lerrokatu Erdian","left":"Lerrokatu Ezkerrean","right":"Lerrokatu Eskuman"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Sarbide-gakoa","advanced":"Aurreratua","advisoryContentType":"Eduki Mota (Content Type)","advisoryTitle":"Izenburua","anchor":{"toolbar":"Aingura","menu":"Ainguraren Ezaugarriak","title":"Ainguraren Ezaugarriak","name":"Ainguraren Izena","errorName":"Idatzi ainguraren izena","remove":"Remove Anchor"},"anchorId":"Elementuaren ID-gatik","anchorName":"Aingura izenagatik","charset":"Estekatutako Karaktere Multzoa","cssClasses":"Estilo-orriko Klaseak","emailAddress":"ePosta Helbidea","emailBody":"Mezuaren Gorputza","emailSubject":"Mezuaren Gaia","id":"Id","info":"Estekaren Informazioa","langCode":"Hizkuntzaren Norabidea","langDir":"Hizkuntzaren Norabidea","langDirLTR":"Ezkerretik Eskumara(LTR)","langDirRTL":"Eskumatik Ezkerrera (RTL)","menu":"Aldatu Esteka","name":"Izena","noAnchors":"(Ez daude aingurak eskuragarri dokumentuan)","noEmail":"Mesedez ePosta helbidea idatzi","noUrl":"Mesedez URL esteka idatzi","other":"<bestelakoa>","popupDependent":"Menpekoa (Netscape)","popupFeatures":"Popup Leihoaren Ezaugarriak","popupFullScreen":"Pantaila Osoa (IE)","popupLeft":"Ezkerreko Posizioa","popupLocationBar":"Kokaleku Barra","popupMenuBar":"Menu Barra","popupResizable":"Tamaina Aldakorra","popupScrollBars":"Korritze Barrak","popupStatusBar":"Egoera Barra","popupToolbar":"Tresna Barra","popupTop":"Goiko Posizioa","rel":"Erlazioa","selectAnchor":"Aingura bat hautatu","styles":"Estiloa","tabIndex":"Tabulazio Indizea","target":"Target (Helburua)","targetFrame":"<marko>","targetFrameName":"Marko Helburuaren Izena","targetPopup":"<popup leihoa>","targetPopupName":"Popup Leihoaren Izena","title":"Esteka","toAnchor":"Aingura orrialde honetan","toEmail":"ePosta","toUrl":"URL","toolbar":"Txertatu/Editatu Esteka","type":"Esteka Mota","unlink":"Kendu Esteka","upload":"Gora kargatu"},"list":{"bulletedlist":"Buletdun Zerrenda","numberedlist":"Zenbakidun Zerrenda"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Txertatu paragrafoa hemen"},"maximize":{"maximize":"Maximizatu","minimize":"Minimizatu"},"newpage":{"toolbar":"Orrialde Berria"},"pagebreak":{"alt":"Orrialde-jauzia","toolbar":"Txertatu Orrialde-jauzia Inprimatzean"},"pastetext":{"button":"Testu Arrunta bezala Itsatsi","title":"Testu Arrunta bezala Itsatsi"},"pastefromword":{"confirmCleanup":"Itsatsi nahi duzun testua Wordetik hartua dela dirudi. Itsatsi baino lehen garbitu nahi duzu?","error":"Barneko errore bat dela eta ezin izan da testua garbitu","title":"Itsatsi Word-etik","toolbar":"Itsatsi Word-etik"},"preview":{"preview":"Aurrebista"},"print":{"toolbar":"Inprimatu"},"removeformat":{"toolbar":"Kendu Formatua"},"save":{"toolbar":"Gorde"},"selectall":{"toolbar":"Hautatu dena"},"showblocks":{"toolbar":"Blokeak erakutsi"},"sourcearea":{"toolbar":"HTML Iturburua"},"specialchar":{"options":"Karaktere Berezien Aukerak","title":"Karaktere Berezia Aukeratu","toolbar":"Txertatu Karaktere Berezia"},"scayt":{"btn_about":"SCAYTi buruz","btn_dictionaries":"Hiztegiak","btn_disable":"Desgaitu SCAYT","btn_enable":"Gaitu SCAYT","btn_langs":"Hizkuntzak","btn_options":"Aukerak","text_title":""},"stylescombo":{"label":"Estiloa","panelTitle":"Formatu Estiloak","panelTitle1":"Bloke Estiloak","panelTitle2":"Inline Estiloak","panelTitle3":"Objektu Estiloak"},"table":{"border":"Ertzaren Zabalera","caption":"Epigrafea","cell":{"menu":"Gelaxka","insertBefore":"Txertatu Gelaxka Aurretik","insertAfter":"Txertatu Gelaxka Ostean","deleteCell":"Kendu Gelaxkak","merge":"Batu Gelaxkak","mergeRight":"Elkartu Eskumara","mergeDown":"Elkartu Behera","splitHorizontal":"Banatu Gelaxkak Horizontalki","splitVertical":"Banatu Gelaxkak Bertikalki","title":"Gelaxken Ezaugarriak","cellType":"Gelaxka Mota","rowSpan":"Hedatutako Lerroak","colSpan":"Hedatutako Zutabeak","wordWrap":"Itzulbira","hAlign":"Lerrokatze Horizontala","vAlign":"Lerrokatze Bertikala","alignBaseline":"Oinarri-lerroan","bgColor":"Fondoaren Kolorea","borderColor":"Ertzaren Kolorea","data":"Data","header":"Goiburua","yes":"Bai","no":"Ez","invalidWidth":"Gelaxkaren zabalera zenbaki bat izan behar da.","invalidHeight":"Gelaxkaren altuera zenbaki bat izan behar da.","invalidRowSpan":"Lerroen hedapena zenbaki osoa izan behar da.","invalidColSpan":"Zutabeen hedapena zenbaki osoa izan behar da.","chooseColor":"Choose"},"cellPad":"Gelaxken betegarria","cellSpace":"Gelaxka arteko tartea","column":{"menu":"Zutabea","insertBefore":"Txertatu Zutabea Aurretik","insertAfter":"Txertatu Zutabea Ostean","deleteColumn":"Ezabatu Zutabeak"},"columns":"Zutabeak","deleteTable":"Ezabatu Taula","headers":"Goiburuak","headersBoth":"Biak","headersColumn":"Lehen zutabea","headersNone":"Bat ere ez","headersRow":"Lehen lerroa","invalidBorder":"Ertzaren tamaina zenbaki bat izan behar da.","invalidCellPadding":"Gelaxken betegarria zenbaki bat izan behar da.","invalidCellSpacing":"Gelaxka arteko tartea zenbaki bat izan behar da.","invalidCols":"Zutabe kopurua 0 baino handiagoa den zenbakia izan behar da.","invalidHeight":"Taularen altuera zenbaki bat izan behar da.","invalidRows":"Lerro kopurua 0 baino handiagoa den zenbakia izan behar da.","invalidWidth":"Taularen zabalera zenbaki bat izan behar da.","menu":"Taularen Ezaugarriak","row":{"menu":"Lerroa","insertBefore":"Txertatu Lerroa Aurretik","insertAfter":"Txertatu Lerroa Ostean","deleteRow":"Ezabatu Lerroak"},"rows":"Lerroak","summary":"Laburpena","title":"Taularen Ezaugarriak","toolbar":"Taula","widthPc":"ehuneko","widthPx":"pixel","widthUnit":"zabalera unitatea"},"undo":{"redo":"Berregin","undo":"Desegin"},"wsc":{"btnIgnore":"Ezikusi","btnIgnoreAll":"Denak Ezikusi","btnReplace":"Ordezkatu","btnReplaceAll":"Denak Ordezkatu","btnUndo":"Desegin","changeTo":"Honekin ordezkatu","errorLoading":"Errorea gertatu da aplikazioa zerbitzaritik kargatzean: %s.","ieSpellDownload":"Zuzentzaile ortografikoa ez dago instalatuta. Deskargatu nahi duzu?","manyChanges":"Zuzenketa ortografikoa bukatuta: %1 hitz aldatu dira","noChanges":"Zuzenketa ortografikoa bukatuta: Ez da ezer aldatu","noMispell":"Zuzenketa ortografikoa bukatuta: Akatsik ez","noSuggestions":"- Iradokizunik ez -","notAvailable":"Barkatu baina momentu honetan zerbitzua ez dago erabilgarri.","notInDic":"Ez dago hiztegian","oneChange":"Zuzenketa ortografikoa bukatuta: Hitz bat aldatu da","progress":"Zuzenketa ortografikoa martxan...","title":"Ortografia zuzenketa","toolbar":"Ortografia"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/fa.js b/wqflask/wqflask/static/packages/ckeditor/lang/fa.js
deleted file mode 100644
index 04da919c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/fa.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['fa']={"editor":"ویرایش‌گر متن غنی","editorPanel":"پنل ویرایشگر متن غنی","common":{"editorHelp":"کلید Alt+0 را برای راهنمایی بفشارید","browseServer":"فهرست​نمایی سرور","url":"URL","protocol":"قرارداد","upload":"بالاگذاری","uploadSubmit":"به سرور بفرست","image":"تصویر","flash":"فلش","form":"فرم","checkbox":"چک‌باکس","radio":"دکمه‌ی رادیویی","textField":"فیلد متنی","textarea":"ناحیهٴ متنی","hiddenField":"فیلد پنهان","button":"دکمه","select":"فیلد انتخاب چند گزینه​ای","imageButton":"دکمه‌ی تصویری","notSet":"<تعیین‌نشده>","id":"شناسه","name":"نام","langDir":"جهت زبان","langDirLtr":"چپ به راست","langDirRtl":"راست به چپ","langCode":"کد زبان","longDescr":"URL توصیف طولانی","cssClass":"کلاس​های شیوه​نامه (Stylesheet)","advisoryTitle":"عنوان کمکی","cssStyle":"سبک","ok":"پذیرش","cancel":"انصراف","close":"بستن","preview":"پیش‌نمایش","resize":"تغییر اندازه","generalTab":"عمومی","advancedTab":"پیش‌رفته","validateNumberFailed":"این مقدار یک عدد نیست.","confirmNewPage":"هر تغییر ایجاد شده​ی ذخیره نشده از بین خواهد رفت. آیا اطمینان دارید که قصد بارگیری صفحه جدیدی را دارید؟","confirmCancel":"برخی از گزینه‌ها تغییر کرده‌اند. آیا واقعا قصد بستن این پنجره را دارید؟","options":"گزینه​ها","target":"مقصد","targetNew":"پنجره جدید","targetTop":"بالاترین پنجره","targetSelf":"همان پنجره","targetParent":"پنجره والد","langDirLTR":"چپ به راست","langDirRTL":"راست به چپ","styles":"سبک","cssClasses":"کلاس‌های سبک‌نامه","width":"عرض","height":"طول","align":"چینش","alignLeft":"چپ","alignRight":"راست","alignCenter":"وسط","alignJustify":"بلوک چین","alignTop":"بالا","alignMiddle":"میانه","alignBottom":"پائین","alignNone":"هیچ","invalidValue":"مقدار نامعتبر.","invalidHeight":"ارتفاع باید یک عدد باشد.","invalidWidth":"عرض باید یک عدد باشد.","invalidCssLength":"عدد تعیین شده برای فیلد \"%1\" باید یک عدد مثبت با یا بدون یک واحد اندازه گیری CSS معتبر باشد (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"عدد تعیین شده برای فیلد \"%1\" باید یک عدد مثبت با یا بدون یک واحد اندازه گیری HTML معتبر باشد (px or %).","invalidInlineStyle":"عدد تعیین شده برای سبک درون​خطی -Inline Style- باید دارای یک یا چند چندتایی با شکلی شبیه \"name : value\" که باید با یک \";\" از هم جدا شوند.","cssLengthTooltip":"یک عدد برای یک مقدار بر حسب پیکسل و یا یک عدد با یک واحد CSS معتبر وارد کنید (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">، غیر قابل دسترس</span>"},"about":{"copy":"حق نشر &copy; $1. کلیه حقوق محفوظ است.","dlgTitle":"درباره CKEditor","help":" برای راهنمایی $1 را ملاحظه کنید.","moreInfo":"برای کسب اطلاعات مجوز لطفا به وب سایت ما مراجعه کنید:","title":"درباره CKEditor","userGuide":"راهنمای کاربران CKEditor"},"basicstyles":{"bold":"درشت","italic":"خمیده","strike":"خط‌خورده","subscript":"زیرنویس","superscript":"بالانویس","underline":"زیرخط‌دار"},"bidi":{"ltr":"جهت متن از چپ به راست","rtl":"جهت متن از راست به چپ"},"blockquote":{"toolbar":"بلوک نقل قول"},"clipboard":{"copy":"رونوشت","copyError":"تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای کپی کردن را انجام دهد. لطفا با دکمههای صفحه کلید این کار را انجام دهید (Ctrl/Cmd+C).","cut":"برش","cutError":"تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای برش را انجام دهد. لطفا با دکمههای صفحه کلید این کار را انجام دهید (Ctrl/Cmd+X).","paste":"چسباندن","pasteArea":"محل چسباندن","pasteMsg":"لطفا متن را با کلیدهای (<STRONG>Ctrl/Cmd+V</STRONG>) در این جعبهٴ متنی بچسبانید و <STRONG>پذیرش</STRONG> را بزنید.","securityMsg":"به خاطر تنظیمات امنیتی مرورگر شما، ویرایشگر نمیتواند دسترسی مستقیم به دادههای clipboard داشته باشد. شما باید دوباره آنرا در این پنجره بچسبانید.","title":"چسباندن"},"button":{"selectedLabel":"%1 (انتخاب شده)"},"colorbutton":{"auto":"خودکار","bgColorTitle":"رنگ پس​زمینه","colors":{"000":"سیاه","800000":"خرمایی","8B4513":"قهوه​ای شکلاتی","2F4F4F":"ارغوانی مایل به خاکستری","008080":"آبی مایل به خاکستری","000080":"آبی سیر","4B0082":"نیلی","696969":"خاکستری تیره","B22222":"آتش آجری","A52A2A":"قهوه​ای","DAA520":"میله​ی طلایی","006400":"سبز تیره","40E0D0":"فیروزه​ای","0000CD":"آبی روشن","800080":"ارغوانی","808080":"خاکستری","F00":"قرمز","FF8C00":"نارنجی پررنگ","FFD700":"طلایی","008000":"سبز","0FF":"آبی مایل به سبز","00F":"آبی","EE82EE":"بنفش","A9A9A9":"خاکستری مات","FFA07A":"صورتی کدر روشن","FFA500":"نارنجی","FFFF00":"زرد","00FF00":"فسفری","AFEEEE":"فیروزه​ای رنگ پریده","ADD8E6":"آبی کمرنگ","DDA0DD":"آلویی","D3D3D3":"خاکستری روشن","FFF0F5":"بنفش کمرنگ","FAEBD7":"عتیقه سفید","FFFFE0":"زرد روشن","F0FFF0":"عسلی","F0FFFF":"لاجوردی","F0F8FF":"آبی براق","E6E6FA":"بنفش کمرنگ","FFF":"سفید"},"more":"رنگ​های بیشتر...","panelTitle":"رنگها","textColorTitle":"رنگ متن"},"colordialog":{"clear":"پاک کردن","highlight":"متمایز","options":"گزینه​های رنگ","selected":"رنگ انتخاب شده","title":"انتخاب رنگ"},"templates":{"button":"الگوها","emptyListMsg":"(الگوئی تعریف نشده است)","insertOption":"محتویات کنونی جایگزین شوند","options":"گزینه‌های الگو","selectPromptMsg":"لطفاً الگوی مورد نظر را برای بازکردن در ویرایشگر انتخاب کنید","title":"الگوهای محتویات"},"contextmenu":{"options":"گزینه​های منوی زمینه"},"div":{"IdInputLabel":"شناسه","advisoryTitleInputLabel":"عنوان مشاوره","cssClassInputLabel":"کلاس​های شیوه​نامه","edit":"ویرایش Div","inlineStyleInputLabel":"سبک درون​خطی(Inline Style)","langDirLTRLabel":"چپ به راست (LTR)","langDirLabel":"جهت نوشتاری زبان","langDirRTLLabel":"راست به چپ (RTL)","languageCodeInputLabel":" کد زبان","remove":"حذف Div","styleSelectLabel":"سبک","title":"ایجاد یک محل DIV","toolbar":"ایجاد یک محل DIV"},"toolbar":{"toolbarCollapse":"بستن نوار ابزار","toolbarExpand":"بازکردن نوار ابزار","toolbarGroups":{"document":"سند","clipboard":"حافظه موقت/برگشت","editing":"در حال ویرایش","forms":"فرم​ها","basicstyles":"سبک‌های پایه","paragraph":"بند","links":"پیوندها","insert":"ورود","styles":"سبک‌ها","colors":"رنگ​ها","tools":"ابزارها"},"toolbars":"نوار ابزارهای ویرایش‌گر"},"elementspath":{"eleLabel":"مسیر عناصر","eleTitle":"%1 عنصر"},"find":{"find":"جستجو","findOptions":"گزینه​های جستجو","findWhat":"چه چیز را مییابید:","matchCase":"همسانی در بزرگی و کوچکی نویسه​ها","matchCyclic":"همسانی با چرخه","matchWord":"همسانی با واژهٴ کامل","notFoundMsg":"متن موردنظر یافت نشد.","replace":"جایگزینی","replaceAll":"جایگزینی همهٴ یافته​ها","replaceSuccessMsg":"%1 رخداد جایگزین شد.","replaceWith":"جایگزینی با:","title":"جستجو و جایگزینی"},"fakeobjects":{"anchor":"لنگر","flash":"انیمشن فلش","hiddenfield":"فیلد پنهان","iframe":"IFrame","unknown":"شیء ناشناخته"},"flash":{"access":"دسترسی به اسکریپت","accessAlways":"همیشه","accessNever":"هرگز","accessSameDomain":"همان دامنه","alignAbsBottom":"پائین مطلق","alignAbsMiddle":"وسط مطلق","alignBaseline":"خط پایه","alignTextTop":"متن بالا","bgcolor":"رنگ پس​زمینه","chkFull":"اجازه تمام صفحه","chkLoop":"اجرای پیاپی","chkMenu":"در دسترس بودن منوی فلش","chkPlay":"آغاز خودکار","flashvars":"مقادیر برای فلش","hSpace":"فاصلهٴ افقی","properties":"ویژگی​های فلش","propertiesTab":"ویژگی​ها","quality":"کیفیت","qualityAutoHigh":"بالا - خودکار","qualityAutoLow":"پایین - خودکار","qualityBest":"بهترین","qualityHigh":"بالا","qualityLow":"پایین","qualityMedium":"متوسط","scale":"مقیاس","scaleAll":"نمایش همه","scaleFit":"جایگیری کامل","scaleNoBorder":"بدون کران","title":"ویژگی​های فلش","vSpace":"فاصلهٴ عمودی","validateHSpace":"مقدار فاصله گذاری افقی باید یک عدد باشد.","validateSrc":"لطفا URL پیوند را بنویسید","validateVSpace":"مقدار فاصله گذاری عمودی باید یک عدد باشد.","windowMode":"حالت پنجره","windowModeOpaque":"مات","windowModeTransparent":"شفاف","windowModeWindow":"پنجره"},"font":{"fontSize":{"label":"اندازه","voiceLabel":"اندازه قلم","panelTitle":"اندازه قلم"},"label":"قلم","panelTitle":"نام قلم","voiceLabel":"قلم"},"forms":{"button":{"title":"ویژگی​های دکمه","text":"متن (مقدار)","type":"نوع","typeBtn":"دکمه","typeSbm":"ثبت","typeRst":"بازنشانی (Reset)"},"checkboxAndRadio":{"checkboxTitle":"ویژگی​های خانهٴ گزینه​ای","radioTitle":"ویژگی​های دکمهٴ رادیویی","value":"مقدار","selected":"برگزیده"},"form":{"title":"ویژگی​های فرم","menu":"ویژگی​های فرم","action":"رویداد","method":"متد","encoding":"رمزنگاری"},"hidden":{"title":"ویژگی​های فیلد پنهان","name":"نام","value":"مقدار"},"select":{"title":"ویژگی​های فیلد چندگزینه​ای","selectInfo":"اطلاعات","opAvail":"گزینه​های دردسترس","value":"مقدار","size":"اندازه","lines":"خطوط","chkMulti":"گزینش چندگانه فراهم باشد","opText":"متن","opValue":"مقدار","btnAdd":"افزودن","btnModify":"ویرایش","btnUp":"بالا","btnDown":"پائین","btnSetValue":"تنظیم به عنوان مقدار برگزیده","btnDelete":"پاککردن"},"textarea":{"title":"ویژگی​های ناحیهٴ متنی","cols":"ستون​ها","rows":"سطرها"},"textfield":{"title":"ویژگی​های فیلد متنی","name":"نام","value":"مقدار","charWidth":"پهنای نویسه","maxChars":"بیشینهٴ نویسه​ها","type":"نوع","typeText":"متن","typePass":"گذرواژه","typeEmail":"ایمیل","typeSearch":"جستجو","typeTel":"شماره تلفن","typeUrl":"URL"}},"format":{"label":"قالب","panelTitle":"قالب بند","tag_address":"نشانی","tag_div":"بند","tag_h1":"سرنویس ۱","tag_h2":"سرنویس ۲","tag_h3":"سرنویس ۳","tag_h4":"سرنویس ۴","tag_h5":"سرنویس ۵","tag_h6":"سرنویس ۶","tag_p":"معمولی","tag_pre":"قالب‌دار"},"horizontalrule":{"toolbar":"گنجاندن خط افقی"},"iframe":{"border":"نمایش خطوط frame","noUrl":"لطفا مسیر URL iframe را درج کنید","scrolling":"نمایش خطکشها","title":"ویژگیهای IFrame","toolbar":"IFrame"},"image":{"alertUrl":"لطفا URL تصویر را بنویسید","alt":"متن جایگزین","border":"لبه","btnUpload":"به سرور بفرست","button2Img":"آیا مایلید از یک تصویر ساده روی دکمه تصویری انتخاب شده استفاده کنید؟","hSpace":"فاصلهٴ افقی","img2Button":"آیا مایلید از یک دکمه تصویری روی تصویر انتخاب شده استفاده کنید؟","infoTab":"اطلاعات تصویر","linkTab":"پیوند","lockRatio":"قفل کردن نسبت","menu":"ویژگی​های تصویر","resetSize":"بازنشانی اندازه","title":"ویژگی​های تصویر","titleButton":"ویژگی​های دکمهٴ تصویری","upload":"انتقال به سرور","urlMissing":"آدرس URL اصلی تصویر یافت نشد.","vSpace":"فاصلهٴ عمودی","validateBorder":"مقدار خطوط باید یک عدد باشد.","validateHSpace":"مقدار فاصله گذاری افقی باید یک عدد باشد.","validateVSpace":"مقدار فاصله گذاری عمودی باید یک عدد باشد."},"indent":{"indent":"افزایش تورفتگی","outdent":"کاهش تورفتگی"},"smiley":{"options":"گزینه​های خندانک","title":"گنجاندن خندانک","toolbar":"خندانک"},"justify":{"block":"بلوک چین","center":"میان چین","left":"چپ چین","right":"راست چین"},"language":{"button":"تعیین زبان","remove":"حذف زبان"},"link":{"acccessKey":"کلید دستیابی","advanced":"پیشرفته","advisoryContentType":"نوع محتوای کمکی","advisoryTitle":"عنوان کمکی","anchor":{"toolbar":"گنجاندن/ویرایش لنگر","menu":"ویژگی​های لنگر","title":"ویژگی​های لنگر","name":"نام لنگر","errorName":"لطفا نام لنگر را بنویسید","remove":"حذف لنگر"},"anchorId":"با شناسهٴ المان","anchorName":"با نام لنگر","charset":"نویسه​گان منبع پیوند شده","cssClasses":"کلاس​های شیوه​نامه(Stylesheet)","emailAddress":"نشانی پست الکترونیکی","emailBody":"متن پیام","emailSubject":"موضوع پیام","id":"شناسه","info":"اطلاعات پیوند","langCode":"جهت​نمای زبان","langDir":"جهت​نمای زبان","langDirLTR":"چپ به راست (LTR)","langDirRTL":"راست به چپ (RTL)","menu":"ویرایش پیوند","name":"نام","noAnchors":"(در این سند لنگری دردسترس نیست)","noEmail":"لطفا نشانی پست الکترونیکی را بنویسید","noUrl":"لطفا URL پیوند را بنویسید","other":"<سایر>","popupDependent":"وابسته (Netscape)","popupFeatures":"ویژگی​های پنجرهٴ پاپاپ","popupFullScreen":"تمام صفحه (IE)","popupLeft":"موقعیت چپ","popupLocationBar":"نوار موقعیت","popupMenuBar":"نوار منو","popupResizable":"قابل تغییر اندازه","popupScrollBars":"میله​های پیمایش","popupStatusBar":"نوار وضعیت","popupToolbar":"نوار ابزار","popupTop":"موقعیت بالا","rel":"وابستگی","selectAnchor":"یک لنگر برگزینید","styles":"شیوه (style)","tabIndex":"نمایهٴ دسترسی با برگه","target":"مقصد","targetFrame":"<فریم>","targetFrameName":"نام فریم مقصد","targetPopup":"<پنجرهٴ پاپاپ>","targetPopupName":"نام پنجرهٴ پاپاپ","title":"پیوند","toAnchor":"لنگر در همین صفحه","toEmail":"پست الکترونیکی","toUrl":"URL","toolbar":"گنجاندن/ویرایش پیوند","type":"نوع پیوند","unlink":"برداشتن پیوند","upload":"انتقال به سرور"},"list":{"bulletedlist":"فهرست نقطه​ای","numberedlist":"فهرست شماره​دار"},"liststyle":{"armenian":"شماره‌گذاری ارمنی","bulletedTitle":"خصوصیات فهرست نقطه‌ای","circle":"دایره","decimal":"ده‌دهی (۱، ۲، ۳، ...)","decimalLeadingZero":"دهدهی همراه با صفر (۰۱، ۰۲، ۰۳، ...)","disc":"صفحه گرد","georgian":"شمارهگذاری گریگورین (an, ban, gan, etc.)","lowerAlpha":"پانویس الفبایی (a, b, c, d, e, etc.)","lowerGreek":"پانویس یونانی (alpha, beta, gamma, etc.)","lowerRoman":"پانویس رومی (i, ii, iii, iv, v, etc.)","none":"هیچ","notset":"<تنظیم نشده>","numberedTitle":"ویژگیهای فهرست شمارهدار","square":"چهارگوش","start":"شروع","type":"نوع","upperAlpha":"بالانویس الفبایی (A, B, C, D, E, etc.)","upperRoman":"بالانویس رومی (I, II, III, IV, V, etc.)","validateStartNumber":"فهرست شماره شروع باید یک عدد صحیح باشد."},"magicline":{"title":"قرار دادن بند در اینجا"},"maximize":{"maximize":"بیشنه کردن","minimize":"کمینه کردن"},"newpage":{"toolbar":"برگهٴ تازه"},"pagebreak":{"alt":"شکستن صفحه","toolbar":"گنجاندن شکستگی پایان برگه"},"pastetext":{"button":"چسباندن به عنوان متن ساده","title":"چسباندن به عنوان متن ساده"},"pastefromword":{"confirmCleanup":"متنی که میخواهید بچسبانید به نظر میرسد که از Word کپی شده است. آیا میخواهید قبل از چسباندن آن را پاکسازی کنید؟","error":"به دلیل بروز خطای داخلی امکان پاکسازی اطلاعات بازنشانی شده وجود ندارد.","title":"چسباندن از Word","toolbar":"چسباندن از Word"},"preview":{"preview":"پیشنمایش"},"print":{"toolbar":"چاپ"},"removeformat":{"toolbar":"برداشتن فرمت"},"save":{"toolbar":"ذخیره"},"selectall":{"toolbar":"گزینش همه"},"showblocks":{"toolbar":"نمایش بلوک‌ها"},"sourcearea":{"toolbar":"منبع"},"specialchar":{"options":"گزینه‌های نویسه‌های ویژه","title":"گزینش نویسه‌ی ویژه","toolbar":"گنجاندن نویسه‌ی ویژه"},"scayt":{"btn_about":"درباره SCAYT","btn_dictionaries":"دیکشنریها","btn_disable":"غیرفعالسازی SCAYT","btn_enable":"فعالسازی SCAYT","btn_langs":"زبانها","btn_options":"گزینهها","text_title":""},"stylescombo":{"label":"سبک","panelTitle":"سبکهای قالببندی","panelTitle1":"سبکهای بلوک","panelTitle2":"سبکهای درونخطی","panelTitle3":"سبکهای شیء"},"table":{"border":"اندازهٴ لبه","caption":"عنوان","cell":{"menu":"سلول","insertBefore":"افزودن سلول قبل از","insertAfter":"افزودن سلول بعد از","deleteCell":"حذف سلولها","merge":"ادغام سلولها","mergeRight":"ادغام به راست","mergeDown":"ادغام به پایین","splitHorizontal":"جدا کردن افقی سلول","splitVertical":"جدا کردن عمودی سلول","title":"ویژگیهای سلول","cellType":"نوع سلول","rowSpan":"محدوده ردیفها","colSpan":"محدوده ستونها","wordWrap":"شکستن کلمه","hAlign":"چینش افقی","vAlign":"چینش عمودی","alignBaseline":"خط مبنا","bgColor":"رنگ زمینه","borderColor":"رنگ خطوط","data":"اطلاعات","header":"سرنویس","yes":"بله","no":"خیر","invalidWidth":"عرض سلول باید یک عدد باشد.","invalidHeight":"ارتفاع سلول باید عدد باشد.","invalidRowSpan":"مقدار محدوده ردیفها باید یک عدد باشد.","invalidColSpan":"مقدار محدوده ستونها باید یک عدد باشد.","chooseColor":"انتخاب"},"cellPad":"فاصلهٴ پرشده در سلول","cellSpace":"فاصلهٴ میان سلولها","column":{"menu":"ستون","insertBefore":"افزودن ستون قبل از","insertAfter":"افزودن ستون بعد از","deleteColumn":"حذف ستونها"},"columns":"ستونها","deleteTable":"پاک کردن جدول","headers":"سرنویسها","headersBoth":"هردو","headersColumn":"اولین ستون","headersNone":"هیچ","headersRow":"اولین ردیف","invalidBorder":"مقدار اندازه خطوط باید یک عدد باشد.","invalidCellPadding":"بالشتک سلول باید یک عدد باشد.","invalidCellSpacing":"مقدار فاصلهگذاری سلول باید یک عدد باشد.","invalidCols":"تعداد ستونها باید یک عدد بزرگتر از 0 باشد.","invalidHeight":"مقدار ارتفاع جدول باید یک عدد باشد.","invalidRows":"تعداد ردیفها باید یک عدد بزرگتر از 0 باشد.","invalidWidth":"مقدار پهنای جدول باید یک عدد باشد.","menu":"ویژگیهای جدول","row":{"menu":"سطر","insertBefore":"افزودن سطر قبل از","insertAfter":"افزودن سطر بعد از","deleteRow":"حذف سطرها"},"rows":"سطرها","summary":"خلاصه","title":"ویژگیهای جدول","toolbar":"جدول","widthPc":"درصد","widthPx":"پیکسل","widthUnit":"واحد پهنا"},"undo":{"redo":"بازچیدن","undo":"واچیدن"},"wsc":{"btnIgnore":"چشمپوشی","btnIgnoreAll":"چشمپوشی همه","btnReplace":"جایگزینی","btnReplaceAll":"جایگزینی همه","btnUndo":"واچینش","changeTo":"تغییر به","errorLoading":"خطا در بارگیری برنامه خدمات میزبان: %s.","ieSpellDownload":"بررسی کنندهٴ املا نصب نشده است. آیا میخواهید آن را هماکنون دریافت کنید؟","manyChanges":"بررسی املا انجام شد. %1 واژه تغییر یافت","noChanges":"بررسی املا انجام شد. هیچ واژهای تغییر نیافت","noMispell":"بررسی املا انجام شد. هیچ غلط املائی یافت نشد","noSuggestions":"- پیشنهادی نیست -","notAvailable":"با عرض پوزش خدمات الان در دسترس نیستند.","notInDic":"در واژه~نامه یافت نشد","oneChange":"بررسی املا انجام شد. یک واژه تغییر یافت","progress":"بررسی املا در حال انجام...","title":"بررسی املا","toolbar":"بررسی املا"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/fi.js b/wqflask/wqflask/static/packages/ckeditor/lang/fi.js
deleted file mode 100644
index afb97a14..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/fi.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['fi']={"editor":"Rikastekstieditori","editorPanel":"Rikastekstieditoripaneeli","common":{"editorHelp":"Paina ALT 0 nähdäksesi ohjeen","browseServer":"Selaa palvelinta","url":"Osoite","protocol":"Protokolla","upload":"Lisää tiedosto","uploadSubmit":"Lähetä palvelimelle","image":"Kuva","flash":"Flash-animaatio","form":"Lomake","checkbox":"Valintaruutu","radio":"Radiopainike","textField":"Tekstikenttä","textarea":"Tekstilaatikko","hiddenField":"Piilokenttä","button":"Painike","select":"Valintakenttä","imageButton":"Kuvapainike","notSet":"<ei asetettu>","id":"Tunniste","name":"Nimi","langDir":"Kielen suunta","langDirLtr":"Vasemmalta oikealle (LTR)","langDirRtl":"Oikealta vasemmalle (RTL)","langCode":"Kielikoodi","longDescr":"Pitkän kuvauksen URL","cssClass":"Tyyliluokat","advisoryTitle":"Avustava otsikko","cssStyle":"Tyyli","ok":"OK","cancel":"Peruuta","close":"Sulje","preview":"Esikatselu","resize":"Raahaa muuttaaksesi kokoa","generalTab":"Yleinen","advancedTab":"Lisäominaisuudet","validateNumberFailed":"Arvon pitää olla numero.","confirmNewPage":"Kaikki tallentamattomat muutokset tähän sisältöön menetetään. Oletko varma, että haluat ladata uuden sivun?","confirmCancel":"Jotkut asetuksista on muuttuneet. Oletko varma, että haluat sulkea valintaikkunan?","options":"Asetukset","target":"Kohde","targetNew":"Uusi ikkuna (_blank)","targetTop":"Päällimmäinen ikkuna (_top)","targetSelf":"Sama ikkuna (_self)","targetParent":"Ylemmän tason ikkuna (_parent)","langDirLTR":"Vasemmalta oikealle (LTR)","langDirRTL":"Oikealta vasemmalle (RTL)","styles":"Tyyli","cssClasses":"Tyylitiedoston luokat","width":"Leveys","height":"Korkeus","align":"Kohdistus","alignLeft":"Vasemmalle","alignRight":"Oikealle","alignCenter":"Keskelle","alignJustify":"Tasaa molemmat reunat","alignTop":"Ylös","alignMiddle":"Keskelle","alignBottom":"Alas","alignNone":"Ei asetettu","invalidValue":"Virheellinen arvo.","invalidHeight":"Korkeuden täytyy olla numero.","invalidWidth":"Leveyden täytyy olla numero.","invalidCssLength":"Kentän \"%1\" arvon täytyy olla positiivinen luku CSS mittayksikön (px, %, in, cm, mm, em, ex, pt tai pc) kanssa tai ilman.","invalidHtmlLength":"Kentän \"%1\" arvon täytyy olla positiivinen luku HTML mittayksikön (px tai %) kanssa tai ilman.","invalidInlineStyle":"Tyylille annetun arvon täytyy koostua yhdestä tai useammasta \"nimi : arvo\" parista, jotka ovat eroteltuna toisistaan puolipisteillä.","cssLengthTooltip":"Anna numeroarvo pikseleinä tai numeroarvo CSS mittayksikön kanssa (px, %, in, cm, mm, em, ex, pt, tai pc).","unavailable":"%1<span class=\"cke_accessibility\">, ei saatavissa</span>"},"about":{"copy":"Copyright &copy; $1. Kaikki oikeuden pidätetään.","dlgTitle":"Tietoa CKEditorista","help":"Katso ohjeet: $1.","moreInfo":"Lisenssitiedot löytyvät kotisivuiltamme:","title":"Tietoa CKEditorista","userGuide":"CKEditorin käyttäjäopas"},"basicstyles":{"bold":"Lihavoitu","italic":"Kursivoitu","strike":"Yliviivattu","subscript":"Alaindeksi","superscript":"Yläindeksi","underline":"Alleviivattu"},"bidi":{"ltr":"Tekstin suunta vasemmalta oikealle","rtl":"Tekstin suunta oikealta vasemmalle"},"blockquote":{"toolbar":"Lainaus"},"clipboard":{"copy":"Kopioi","copyError":"Selaimesi turva-asetukset eivät salli editorin toteuttaa kopioimista. Käytä näppäimistöä kopioimiseen (Ctrl+C).","cut":"Leikkaa","cutError":"Selaimesi turva-asetukset eivät salli editorin toteuttaa leikkaamista. Käytä näppäimistöä leikkaamiseen (Ctrl+X).","paste":"Liitä","pasteArea":"Leikealue","pasteMsg":"Liitä painamalla (<STRONG>Ctrl+V</STRONG>) ja painamalla <STRONG>OK</STRONG>.","securityMsg":"Selaimesi turva-asetukset eivät salli editorin käyttää leikepöytää suoraan. Sinun pitää suorittaa liittäminen tässä ikkunassa.","title":"Liitä"},"button":{"selectedLabel":"%1 (Valittu)"},"colorbutton":{"auto":"Automaattinen","bgColorTitle":"Taustaväri","colors":{"000":"Musta","800000":"Kastanjanruskea","8B4513":"Satulanruskea","2F4F4F":"Tumma liuskekivenharmaa","008080":"Sinivihreä","000080":"Laivastonsininen","4B0082":"Indigonsininen","696969":"Tummanharmaa","B22222":"Tiili","A52A2A":"Ruskea","DAA520":"Kultapiisku","006400":"Tummanvihreä","40E0D0":"Turkoosi","0000CD":"Keskisininen","800080":"Purppura","808080":"Harmaa","F00":"Punainen","FF8C00":"Tumma oranssi","FFD700":"Kulta","008000":"Vihreä","0FF":"Syaani","00F":"Sininen","EE82EE":"Violetti","A9A9A9":"Tummanharmaa","FFA07A":"Vaaleanlohenpunainen","FFA500":"Oranssi","FFFF00":"Keltainen","00FF00":"Limetin vihreä","AFEEEE":"Haalea turkoosi","ADD8E6":"Vaaleansininen","DDA0DD":"Luumu","D3D3D3":"Vaaleanharmaa","FFF0F5":"Laventelinpunainen","FAEBD7":"Antiikinvalkoinen","FFFFE0":"Vaaleankeltainen","F0FFF0":"Hunajameloni","F0FFFF":"Asurinsininen","F0F8FF":"Alice Blue -sininen","E6E6FA":"Lavanteli","FFF":"Valkoinen"},"more":"Lisää värejä...","panelTitle":"Värit","textColorTitle":"Tekstiväri"},"colordialog":{"clear":"Poista","highlight":"Korostus","options":"Värin ominaisuudet","selected":"Valittu","title":"Valitse väri"},"templates":{"button":"Pohjat","emptyListMsg":"(Ei määriteltyjä pohjia)","insertOption":"Korvaa koko sisältö","options":"Sisältöpohjan ominaisuudet","selectPromptMsg":"Valitse editoriin avattava pohja","title":"Sisältöpohjat"},"contextmenu":{"options":"Pikavalikon ominaisuudet"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Ohjeistava otsikko","cssClassInputLabel":"Tyylitiedoston luokat","edit":"Muokkaa Diviä","inlineStyleInputLabel":"Sisätyyli","langDirLTRLabel":"Vasemmalta oikealle (LTR)","langDirLabel":"Kielen suunta","langDirRTLLabel":"Oikealta vasemmalle (RTL)","languageCodeInputLabel":" Kielen koodi","remove":"Poista Div","styleSelectLabel":"Tyyli","title":"Luo div-kehikko","toolbar":"Luo div-kehikko"},"toolbar":{"toolbarCollapse":"Kutista työkalupalkki","toolbarExpand":"Laajenna työkalupalkki","toolbarGroups":{"document":"Dokumentti","clipboard":"Leikepöytä/Kumoa","editing":"Muokkaus","forms":"Lomakkeet","basicstyles":"Perustyylit","paragraph":"Kappale","links":"Linkit","insert":"Lisää","styles":"Tyylit","colors":"Värit","tools":"Työkalut"},"toolbars":"Editorin työkalupalkit"},"elementspath":{"eleLabel":"Elementin polku","eleTitle":"%1 elementti"},"find":{"find":"Etsi","findOptions":"Hakuasetukset","findWhat":"Etsi mitä:","matchCase":"Sama kirjainkoko","matchCyclic":"Kierrä ympäri","matchWord":"Koko sana","notFoundMsg":"Etsittyä tekstiä ei löytynyt.","replace":"Korvaa","replaceAll":"Korvaa kaikki","replaceSuccessMsg":"%1 esiintymä(ä) korvattu.","replaceWith":"Korvaa tällä:","title":"Etsi ja korvaa"},"fakeobjects":{"anchor":"Ankkuri","flash":"Flash animaatio","hiddenfield":"Piilokenttä","iframe":"IFrame-kehys","unknown":"Tuntematon objekti"},"flash":{"access":"Skriptien pääsy","accessAlways":"Aina","accessNever":"Ei koskaan","accessSameDomain":"Sama verkkotunnus","alignAbsBottom":"Aivan alas","alignAbsMiddle":"Aivan keskelle","alignBaseline":"Alas (teksti)","alignTextTop":"Ylös (teksti)","bgcolor":"Taustaväri","chkFull":"Salli kokoruututila","chkLoop":"Toisto","chkMenu":"Näytä Flash-valikko","chkPlay":"Automaattinen käynnistys","flashvars":"Muuttujat Flash:lle","hSpace":"Vaakatila","properties":"Flash-ominaisuudet","propertiesTab":"Ominaisuudet","quality":"Laatu","qualityAutoHigh":"Automaattinen korkea","qualityAutoLow":"Automaattinen matala","qualityBest":"Paras","qualityHigh":"Korkea","qualityLow":"Matala","qualityMedium":"Keskitaso","scale":"Levitä","scaleAll":"Näytä kaikki","scaleFit":"Tarkka koko","scaleNoBorder":"Ei rajaa","title":"Flash ominaisuudet","vSpace":"Pystytila","validateHSpace":"Vaakatilan täytyy olla numero.","validateSrc":"Linkille on kirjoitettava URL","validateVSpace":"Pystytilan täytyy olla numero.","windowMode":"Ikkuna tila","windowModeOpaque":"Läpinäkyvyys","windowModeTransparent":"Läpinäkyvä","windowModeWindow":"Ikkuna"},"font":{"fontSize":{"label":"Koko","voiceLabel":"Kirjaisimen koko","panelTitle":"Koko"},"label":"Kirjaisinlaji","panelTitle":"Kirjaisinlaji","voiceLabel":"Kirjaisinlaji"},"forms":{"button":{"title":"Painikkeen ominaisuudet","text":"Teksti (arvo)","type":"Tyyppi","typeBtn":"Painike","typeSbm":"Lähetä","typeRst":"Tyhjennä"},"checkboxAndRadio":{"checkboxTitle":"Valintaruudun ominaisuudet","radioTitle":"Radiopainikkeen ominaisuudet","value":"Arvo","selected":"Valittu"},"form":{"title":"Lomakkeen ominaisuudet","menu":"Lomakkeen ominaisuudet","action":"Toiminto","method":"Tapa","encoding":"Enkoodaus"},"hidden":{"title":"Piilokentän ominaisuudet","name":"Nimi","value":"Arvo"},"select":{"title":"Valintakentän ominaisuudet","selectInfo":"Info","opAvail":"Ominaisuudet","value":"Arvo","size":"Koko","lines":"Rivit","chkMulti":"Salli usea valinta","opText":"Teksti","opValue":"Arvo","btnAdd":"Lisää","btnModify":"Muuta","btnUp":"Ylös","btnDown":"Alas","btnSetValue":"Aseta valituksi","btnDelete":"Poista"},"textarea":{"title":"Tekstilaatikon ominaisuudet","cols":"Sarakkeita","rows":"Rivejä"},"textfield":{"title":"Tekstikentän ominaisuudet","name":"Nimi","value":"Arvo","charWidth":"Leveys","maxChars":"Maksimi merkkimäärä","type":"Tyyppi","typeText":"Teksti","typePass":"Salasana","typeEmail":"Sähköposti","typeSearch":"Haku","typeTel":"Puhelinnumero","typeUrl":"Osoite"}},"format":{"label":"Muotoilu","panelTitle":"Muotoilu","tag_address":"Osoite","tag_div":"Normaali (DIV)","tag_h1":"Otsikko 1","tag_h2":"Otsikko 2","tag_h3":"Otsikko 3","tag_h4":"Otsikko 4","tag_h5":"Otsikko 5","tag_h6":"Otsikko 6","tag_p":"Normaali","tag_pre":"Muotoiltu"},"horizontalrule":{"toolbar":"Lisää murtoviiva"},"iframe":{"border":"Näytä kehyksen reunat","noUrl":"Anna IFrame-kehykselle lähdeosoite (src)","scrolling":"Näytä vierityspalkit","title":"IFrame-kehyksen ominaisuudet","toolbar":"IFrame-kehys"},"image":{"alertUrl":"Kirjoita kuvan osoite (URL)","alt":"Vaihtoehtoinen teksti","border":"Kehys","btnUpload":"Lähetä palvelimelle","button2Img":"Haluatko muuntaa valitun kuvanäppäimen kuvaksi?","hSpace":"Vaakatila","img2Button":"Haluatko muuntaa valitun kuvan kuvanäppäimeksi?","infoTab":"Kuvan tiedot","linkTab":"Linkki","lockRatio":"Lukitse suhteet","menu":"Kuvan ominaisuudet","resetSize":"Alkuperäinen koko","title":"Kuvan ominaisuudet","titleButton":"Kuvapainikkeen ominaisuudet","upload":"Lisää kuva","urlMissing":"Kuvan lähdeosoite puuttuu.","vSpace":"Pystytila","validateBorder":"Kehyksen täytyy olla kokonaisluku.","validateHSpace":"HSpace-määrityksen täytyy olla kokonaisluku.","validateVSpace":"VSpace-määrityksen täytyy olla kokonaisluku."},"indent":{"indent":"Suurenna sisennystä","outdent":"Pienennä sisennystä"},"smiley":{"options":"Hymiön ominaisuudet","title":"Lisää hymiö","toolbar":"Hymiö"},"justify":{"block":"Tasaa molemmat reunat","center":"Keskitä","left":"Tasaa vasemmat reunat","right":"Tasaa oikeat reunat"},"language":{"button":"Aseta kieli","remove":"Poista kieli"},"link":{"acccessKey":"Pikanäppäin","advanced":"Lisäominaisuudet","advisoryContentType":"Avustava sisällön tyyppi","advisoryTitle":"Avustava otsikko","anchor":{"toolbar":"Lisää ankkuri/muokkaa ankkuria","menu":"Ankkurin ominaisuudet","title":"Ankkurin ominaisuudet","name":"Nimi","errorName":"Ankkurille on kirjoitettava nimi","remove":"Poista ankkuri"},"anchorId":"Ankkurin ID:n mukaan","anchorName":"Ankkurin nimen mukaan","charset":"Linkitetty kirjaimisto","cssClasses":"Tyyliluokat","emailAddress":"Sähköpostiosoite","emailBody":"Viesti","emailSubject":"Aihe","id":"Tunniste","info":"Linkin tiedot","langCode":"Kielen suunta","langDir":"Kielen suunta","langDirLTR":"Vasemmalta oikealle (LTR)","langDirRTL":"Oikealta vasemmalle (RTL)","menu":"Muokkaa linkkiä","name":"Nimi","noAnchors":"(Ei ankkureita tässä dokumentissa)","noEmail":"Kirjoita sähköpostiosoite","noUrl":"Linkille on kirjoitettava URL","other":"<muu>","popupDependent":"Riippuva (Netscape)","popupFeatures":"Popup ikkunan ominaisuudet","popupFullScreen":"Täysi ikkuna (IE)","popupLeft":"Vasemmalta (px)","popupLocationBar":"Osoiterivi","popupMenuBar":"Valikkorivi","popupResizable":"Venytettävä","popupScrollBars":"Vierityspalkit","popupStatusBar":"Tilarivi","popupToolbar":"Vakiopainikkeet","popupTop":"Ylhäältä (px)","rel":"Suhde","selectAnchor":"Valitse ankkuri","styles":"Tyyli","tabIndex":"Tabulaattori indeksi","target":"Kohde","targetFrame":"<kehys>","targetFrameName":"Kohdekehyksen nimi","targetPopup":"<popup ikkuna>","targetPopupName":"Popup ikkunan nimi","title":"Linkki","toAnchor":"Ankkuri tässä sivussa","toEmail":"Sähköposti","toUrl":"Osoite","toolbar":"Lisää linkki/muokkaa linkkiä","type":"Linkkityyppi","unlink":"Poista linkki","upload":"Lisää tiedosto"},"list":{"bulletedlist":"Luettelomerkit","numberedlist":"Numerointi"},"liststyle":{"armenian":"Armeenialainen numerointi","bulletedTitle":"Numeroimattoman listan ominaisuudet","circle":"Ympyrä","decimal":"Desimaalit (1, 2, 3, jne.)","decimalLeadingZero":"Desimaalit, alussa nolla (01, 02, 03, jne.)","disc":"Levy","georgian":"Georgialainen numerointi (an, ban, gan, etc.)","lowerAlpha":"Pienet aakkoset (a, b, c, d, e, jne.)","lowerGreek":"Pienet kreikkalaiset (alpha, beta, gamma, jne.)","lowerRoman":"Pienet roomalaiset (i, ii, iii, iv, v, jne.)","none":"Ei mikään","notset":"<ei asetettu>","numberedTitle":"Numeroidun listan ominaisuudet","square":"Neliö","start":"Alku","type":"Tyyppi","upperAlpha":"Isot aakkoset (A, B, C, D, E, jne.)","upperRoman":"Isot roomalaiset (I, II, III, IV, V, jne.)","validateStartNumber":"Listan ensimmäisen numeron tulee olla kokonaisluku."},"magicline":{"title":"Lisää kappale tähän."},"maximize":{"maximize":"Suurenna","minimize":"Pienennä"},"newpage":{"toolbar":"Tyhjennä"},"pagebreak":{"alt":"Sivunvaihto","toolbar":"Lisää sivunvaihto"},"pastetext":{"button":"Liitä tekstinä","title":"Liitä tekstinä"},"pastefromword":{"confirmCleanup":"Liittämäsi teksti näyttäisi olevan Word-dokumentista. Haluatko siivota sen ennen liittämistä? (Suositus: Kyllä)","error":"Liitetyn tiedon siivoaminen ei onnistunut sisäisen virheen takia","title":"Liitä Word-dokumentista","toolbar":"Liitä Word-dokumentista"},"preview":{"preview":"Esikatsele"},"print":{"toolbar":"Tulosta"},"removeformat":{"toolbar":"Poista muotoilu"},"save":{"toolbar":"Tallenna"},"selectall":{"toolbar":"Valitse kaikki"},"showblocks":{"toolbar":"Näytä elementit"},"sourcearea":{"toolbar":"Koodi"},"specialchar":{"options":"Erikoismerkin ominaisuudet","title":"Valitse erikoismerkki","toolbar":"Lisää erikoismerkki"},"scayt":{"btn_about":"Tietoja oikoluvusta kirjoitetaessa","btn_dictionaries":"Sanakirjat","btn_disable":"Poista käytöstä oikoluku kirjoitetaessa","btn_enable":"Ota käyttöön oikoluku kirjoitettaessa","btn_langs":"Kielet","btn_options":"Asetukset","text_title":""},"stylescombo":{"label":"Tyyli","panelTitle":"Muotoilujen tyylit","panelTitle1":"Lohkojen tyylit","panelTitle2":"Rivinsisäiset tyylit","panelTitle3":"Objektien tyylit"},"table":{"border":"Rajan paksuus","caption":"Otsikko","cell":{"menu":"Solu","insertBefore":"Lisää solu eteen","insertAfter":"Lisää solu perään","deleteCell":"Poista solut","merge":"Yhdistä solut","mergeRight":"Yhdistä oikealla olevan kanssa","mergeDown":"Yhdistä alla olevan kanssa","splitHorizontal":"Jaa solu vaakasuunnassa","splitVertical":"Jaa solu pystysuunnassa","title":"Solun ominaisuudet","cellType":"Solun tyyppi","rowSpan":"Rivin jatkuvuus","colSpan":"Solun jatkuvuus","wordWrap":"Rivitys","hAlign":"Horisontaali kohdistus","vAlign":"Vertikaali kohdistus","alignBaseline":"Alas (teksti)","bgColor":"Taustan väri","borderColor":"Reunan väri","data":"Data","header":"Ylätunniste","yes":"Kyllä","no":"Ei","invalidWidth":"Solun leveyden täytyy olla numero.","invalidHeight":"Solun korkeuden täytyy olla numero.","invalidRowSpan":"Rivin jatkuvuuden täytyy olla kokonaisluku.","invalidColSpan":"Solun jatkuvuuden täytyy olla kokonaisluku.","chooseColor":"Valitse"},"cellPad":"Solujen sisennys","cellSpace":"Solujen väli","column":{"menu":"Sarake","insertBefore":"Lisää sarake vasemmalle","insertAfter":"Lisää sarake oikealle","deleteColumn":"Poista sarakkeet"},"columns":"Sarakkeet","deleteTable":"Poista taulu","headers":"Ylätunnisteet","headersBoth":"Molemmat","headersColumn":"Ensimmäinen sarake","headersNone":"Ei","headersRow":"Ensimmäinen rivi","invalidBorder":"Reunan koon täytyy olla numero.","invalidCellPadding":"Solujen sisennyksen täytyy olla numero.","invalidCellSpacing":"Solujen välin täytyy olla numero.","invalidCols":"Sarakkeiden määrän täytyy olla suurempi kuin 0.","invalidHeight":"Taulun korkeuden täytyy olla numero.","invalidRows":"Rivien määrän täytyy olla suurempi kuin 0.","invalidWidth":"Taulun leveyden täytyy olla numero.","menu":"Taulun ominaisuudet","row":{"menu":"Rivi","insertBefore":"Lisää rivi yläpuolelle","insertAfter":"Lisää rivi alapuolelle","deleteRow":"Poista rivit"},"rows":"Rivit","summary":"Yhteenveto","title":"Taulun ominaisuudet","toolbar":"Taulu","widthPc":"prosenttia","widthPx":"pikseliä","widthUnit":"leveysyksikkö"},"undo":{"redo":"Toista","undo":"Kumoa"},"wsc":{"btnIgnore":"Jätä huomioimatta","btnIgnoreAll":"Jätä kaikki huomioimatta","btnReplace":"Korvaa","btnReplaceAll":"Korvaa kaikki","btnUndo":"Kumoa","changeTo":"Vaihda","errorLoading":"Virhe ladattaessa oikolukupalvelua isännältä: %s.","ieSpellDownload":"Oikeinkirjoituksen tarkistusta ei ole asennettu. Haluatko ladata sen nyt?","manyChanges":"Tarkistus valmis: %1 sanaa muutettiin","noChanges":"Tarkistus valmis: Yhtään sanaa ei muutettu","noMispell":"Tarkistus valmis: Ei virheitä","noSuggestions":"Ei ehdotuksia","notAvailable":"Valitettavasti oikoluku ei ole käytössä tällä hetkellä.","notInDic":"Ei sanakirjassa","oneChange":"Tarkistus valmis: Yksi sana muutettiin","progress":"Tarkistus käynnissä...","title":"Oikoluku","toolbar":"Tarkista oikeinkirjoitus"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/fo.js b/wqflask/wqflask/static/packages/ckeditor/lang/fo.js
deleted file mode 100644
index 482a8b18..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/fo.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['fo']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Trýst ALT og 0 fyri vegleiðing","browseServer":"Ambætarakagi","url":"URL","protocol":"Protokoll","upload":"Send til ambætaran","uploadSubmit":"Send til ambætaran","image":"Myndir","flash":"Flash","form":"Formur","checkbox":"Flugubein","radio":"Radioknøttur","textField":"Tekstteigur","textarea":"Tekstumráði","hiddenField":"Fjaldur teigur","button":"Knøttur","select":"Valskrá","imageButton":"Myndaknøttur","notSet":"<ikki sett>","id":"Id","name":"Navn","langDir":"Tekstkós","langDirLtr":"Frá vinstru til høgru (LTR)","langDirRtl":"Frá høgru til vinstru (RTL)","langCode":"Málkoda","longDescr":"Víðkað URL frágreiðing","cssClass":"Typografi klassar","advisoryTitle":"Vegleiðandi heiti","cssStyle":"Typografi","ok":"Góðkent","cancel":"Avlýst","close":"Lat aftur","preview":"Frumsýn","resize":"Drag fyri at broyta stødd","generalTab":"Generelt","advancedTab":"Fjølbroytt","validateNumberFailed":"Hetta er ikki eitt tal.","confirmNewPage":"Allar ikki goymdar broytingar í hesum innihaldið hvørva. Skal nýggj síða lesast kortini?","confirmCancel":"Nakrir valmøguleikar eru broyttir. Ert tú vísur í, at dialogurin skal latast aftur?","options":"Options","target":"Target","targetNew":"Nýtt vindeyga (_blank)","targetTop":"Vindeyga ovast (_top)","targetSelf":"Sama vindeyga (_self)","targetParent":"Upphavligt vindeyga (_parent)","langDirLTR":"Frá vinstru til høgru (LTR)","langDirRTL":"Frá høgru til vinstru (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Breidd","height":"Hædd","align":"Justering","alignLeft":"Vinstra","alignRight":"Høgra","alignCenter":"Miðsett","alignJustify":"Javnir tekstkantar","alignTop":"Ovast","alignMiddle":"Miðja","alignBottom":"Botnur","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Hædd má vera eitt tal.","invalidWidth":"Breidd má vera eitt tal.","invalidCssLength":"Virðið sett í \"%1\" feltið má vera eitt positivt tal, við ella uttan gyldugum CSS mátieind (px, %, in, cm, mm, em, ex, pt, ella pc).","invalidHtmlLength":"Virðið sett í \"%1\" feltiðield má vera eitt positivt tal, við ella uttan gyldugum CSS mátieind (px ella %).","invalidInlineStyle":"Virði specifiserað fyri inline style má hava eitt ella fleiri pør (tuples) skrivað sum \"name : value\", hvørt parið sundurskilt við semi-colon.","cssLengthTooltip":"Skriva eitt tal fyri eitt virði í pixels ella eitt tal við gyldigum CSS eind (px, %, in, cm, mm, em, ex, pt, ella pc).","unavailable":"%1<span class=\"cke_accessibility\">, ikki tøkt</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"Um CKEditor","help":"Kekka $1 fyri hjálp.","moreInfo":"Licens upplýsingar finnast á heimasíðu okkara:","title":"Um CKEditor","userGuide":"CKEditor Brúkaravegleiðing"},"basicstyles":{"bold":"Feit skrift","italic":"Skráskrift","strike":"Yvirstrikað","subscript":"Lækkað skrift","superscript":"Hækkað skrift","underline":"Undirstrikað"},"bidi":{"ltr":"Tekstkós frá vinstru til høgru","rtl":"Tekstkós frá høgru til vinstru"},"blockquote":{"toolbar":"Blockquote"},"clipboard":{"copy":"Avrita","copyError":"Trygdaruppseting alnótskagans forðar tekstviðgeranum í at avrita tekstin. Vinarliga nýt knappaborðið til at avrita tekstin (Ctrl/Cmd+C).","cut":"Kvett","cutError":"Trygdaruppseting alnótskagans forðar tekstviðgeranum í at kvetta tekstin. Vinarliga nýt knappaborðið til at kvetta tekstin (Ctrl/Cmd+X).","paste":"Innrita","pasteArea":"Avritingarumráði","pasteMsg":"Vinarliga koyr tekstin í hendan rútin við knappaborðinum (<strong>Ctrl/Cmd+V</strong>) og klikk á <strong>Góðtak</strong>.","securityMsg":"Trygdaruppseting alnótskagans forðar tekstviðgeranum í beinleiðis atgongd til avritingarminnið. Tygum mugu royna aftur í hesum rútinum.","title":"Innrita"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatiskt","bgColorTitle":"Bakgrundslitur","colors":{"000":"Svart","800000":"Maroon","8B4513":"Saðilsbrúnt","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Myrkagrátt","B22222":"Fire Brick","A52A2A":"Brúnt","DAA520":"Gullstavur","006400":"Myrkagrønt","40E0D0":"Turquoise","0000CD":"Meðal blátt","800080":"Purple","808080":"Grátt","F00":"Reytt","FF8C00":"Myrkt appelsingult","FFD700":"Gull","008000":"Grønt","0FF":"Cyan","00F":"Blátt","EE82EE":"Violet","A9A9A9":"Døkt grátt","FFA07A":"Ljósur laksur","FFA500":"Appelsingult","FFFF00":"Gult","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Ljósablátt","DDA0DD":"Plum","D3D3D3":"Ljósagrátt","FFF0F5":"Lavender Blush","FAEBD7":"Klassiskt hvítt","FFFFE0":"Ljósagult","F0FFF0":"Hunangsdøggur","F0FFFF":"Azure","F0F8FF":"Alice Blátt","E6E6FA":"Lavender","FFF":"Hvítt"},"more":"Fleiri litir...","panelTitle":"Litir","textColorTitle":"Tekstlitur"},"colordialog":{"clear":"Strika","highlight":"Framheva","options":"Litmøguleikar","selected":"Valdur litur","title":"Vel lit"},"templates":{"button":"Skabelónir","emptyListMsg":"(Ongar skabelónir tøkar)","insertOption":"Yvirskriva núverandi innihald","options":"Møguleikar fyri Template","selectPromptMsg":"Vinarliga vel ta skabelón, ið skal opnast í tekstviðgeranum<br>(Hetta yvirskrivar núverandi innihald):","title":"Innihaldsskabelónir"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Redigera Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Vinstru til høgru (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Høgru til vinstru (RTL)","languageCodeInputLabel":" Language Code","remove":"Strika Div","styleSelectLabel":"Style","title":"Ger Div Container","toolbar":"Ger Div Container"},"toolbar":{"toolbarCollapse":"Lat Toolbar aftur","toolbarExpand":"Vís Toolbar","toolbarGroups":{"document":"Dokument","clipboard":"Clipboard/Undo","editing":"Editering","forms":"Formar","basicstyles":"Grundleggjandi Styles","paragraph":"Reglubrot","links":"Leinkjur","insert":"Set inn","styles":"Styles","colors":"Litir","tools":"Tól"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Slóð til elementir","eleTitle":"%1 element"},"find":{"find":"Leita","findOptions":"Finn møguleikar","findWhat":"Finn:","matchCase":"Munur á stórum og smáum bókstavum","matchCyclic":"Match cyclic","matchWord":"Bert heil orð","notFoundMsg":"Leititeksturin varð ikki funnin","replace":"Yvirskriva","replaceAll":"Yvirskriva alt","replaceSuccessMsg":"%1 úrslit broytt.","replaceWith":"Yvirskriva við:","title":"Finn og broyt"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Fjaldur teigur","iframe":"IFrame","unknown":"Ókent Object"},"flash":{"access":"Script atgongd","accessAlways":"Altíð","accessNever":"Ongantíð","accessSameDomain":"Sama navnaøki","alignAbsBottom":"Abs botnur","alignAbsMiddle":"Abs miðja","alignBaseline":"Basislinja","alignTextTop":"Tekst toppur","bgcolor":"Bakgrundslitur","chkFull":"Loyv fullan skerm","chkLoop":"Endurspæl","chkMenu":"Ger Flash skrá virkna","chkPlay":"Avspælingin byrjar sjálv","flashvars":"Variablar fyri Flash","hSpace":"Høgri breddi","properties":"Flash eginleikar","propertiesTab":"Eginleikar","quality":"Góðska","qualityAutoHigh":"Auto høg","qualityAutoLow":"Auto Lág","qualityBest":"Besta","qualityHigh":"Høg","qualityLow":"Lág","qualityMedium":"Meðal","scale":"Skalering","scaleAll":"Vís alt","scaleFit":"Neyv skalering","scaleNoBorder":"Eingin bordi","title":"Flash eginleikar","vSpace":"Vinstri breddi","validateHSpace":"HSpace má vera eitt tal.","validateSrc":"Vinarliga skriva tilknýti (URL)","validateVSpace":"VSpace má vera eitt tal.","windowMode":"Slag av rúti","windowModeOpaque":"Ikki transparent","windowModeTransparent":"Transparent","windowModeWindow":"Rútur"},"font":{"fontSize":{"label":"Skriftstødd","voiceLabel":"Skriftstødd","panelTitle":"Skriftstødd"},"label":"Skrift","panelTitle":"Skrift","voiceLabel":"Skrift"},"forms":{"button":{"title":"Eginleikar fyri knøtt","text":"Tekstur","type":"Slag","typeBtn":"Knøttur","typeSbm":"Send","typeRst":"Nullstilla"},"checkboxAndRadio":{"checkboxTitle":"Eginleikar fyri flugubein","radioTitle":"Eginleikar fyri radioknøtt","value":"Virði","selected":"Valt"},"form":{"title":"Eginleikar fyri Form","menu":"Eginleikar fyri Form","action":"Hending","method":"Háttur","encoding":"Encoding"},"hidden":{"title":"Eginleikar fyri fjaldan teig","name":"Navn","value":"Virði"},"select":{"title":"Eginleikar fyri valskrá","selectInfo":"Upplýsingar","opAvail":"Tøkir møguleikar","value":"Virði","size":"Stødd","lines":"Linjur","chkMulti":"Loyv fleiri valmøguleikum samstundis","opText":"Tekstur","opValue":"Virði","btnAdd":"Legg afturat","btnModify":"Broyt","btnUp":"Upp","btnDown":"Niður","btnSetValue":"Set sum valt virði","btnDelete":"Strika"},"textarea":{"title":"Eginleikar fyri tekstumráði","cols":"kolonnur","rows":"røðir"},"textfield":{"title":"Eginleikar fyri tekstteig","name":"Navn","value":"Virði","charWidth":"Breidd (sjónlig tekn)","maxChars":"Mest loyvdu tekn","type":"Slag","typeText":"Tekstur","typePass":"Loyniorð","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Skriftsnið","panelTitle":"Skriftsnið","tag_address":"Adressa","tag_div":"Vanligt (DIV)","tag_h1":"Yvirskrift 1","tag_h2":"Yvirskrift 2","tag_h3":"Yvirskrift 3","tag_h4":"Yvirskrift 4","tag_h5":"Yvirskrift 5","tag_h6":"Yvirskrift 6","tag_p":"Vanligt","tag_pre":"Sniðgivið"},"horizontalrule":{"toolbar":"Ger vatnrætta linju"},"iframe":{"border":"Vís frame kant","noUrl":"Vinarliga skriva URL til iframe","scrolling":"Loyv scrollbars","title":"Møguleikar fyri IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Rita slóðina til myndina","alt":"Alternativur tekstur","border":"Bordi","btnUpload":"Send til ambætaran","button2Img":"Skal valdi myndaknøttur gerast til vanliga mynd?","hSpace":"Høgri breddi","img2Button":"Skal valda mynd gerast til myndaknøtt?","infoTab":"Myndaupplýsingar","linkTab":"Tilknýti","lockRatio":"Læs lutfallið","menu":"Myndaeginleikar","resetSize":"Upprunastødd","title":"Myndaeginleikar","titleButton":"Eginleikar fyri myndaknøtt","upload":"Send","urlMissing":"URL til mynd manglar.","vSpace":"Vinstri breddi","validateBorder":"Bordi má vera eitt heiltal.","validateHSpace":"HSpace má vera eitt heiltal.","validateVSpace":"VSpace má vera eitt heiltal."},"indent":{"indent":"Økja reglubrotarinntriv","outdent":"Minka reglubrotarinntriv"},"smiley":{"options":"Møguleikar fyri Smiley","title":"Vel Smiley","toolbar":"Smiley"},"justify":{"block":"Javnir tekstkantar","center":"Miðsett","left":"Vinstrasett","right":"Høgrasett"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Snarvegisknöttur","advanced":"Fjølbroytt","advisoryContentType":"Vegleiðandi innihaldsslag","advisoryTitle":"Vegleiðandi heiti","anchor":{"toolbar":"Ger/broyt marknastein","menu":"Eginleikar fyri marknastein","title":"Eginleikar fyri marknastein","name":"Heiti marknasteinsins","errorName":"Vinarliga rita marknasteinsins heiti","remove":"Strika marknastein"},"anchorId":"Eftir element Id","anchorName":"Eftir navni á marknasteini","charset":"Atknýtt teknsett","cssClasses":"Typografi klassar","emailAddress":"Teldupost-adressa","emailBody":"Breyðtekstur","emailSubject":"Evni","id":"Id","info":"Tilknýtis upplýsingar","langCode":"Tekstkós","langDir":"Tekstkós","langDirLTR":"Frá vinstru til høgru (LTR)","langDirRTL":"Frá høgru til vinstru (RTL)","menu":"Broyt tilknýti","name":"Navn","noAnchors":"(Eingir marknasteinar eru í hesum dokumentið)","noEmail":"Vinarliga skriva teldupost-adressu","noUrl":"Vinarliga skriva tilknýti (URL)","other":"<annað>","popupDependent":"Bundið (Netscape)","popupFeatures":"Popup vindeygans víðkaðu eginleikar","popupFullScreen":"Fullur skermur (IE)","popupLeft":"Frástøða frá vinstru","popupLocationBar":"Adressulinja","popupMenuBar":"Skrábjálki","popupResizable":"Stødd kann broytast","popupScrollBars":"Rullibjálki","popupStatusBar":"Støðufrágreiðingarbjálki","popupToolbar":"Amboðsbjálki","popupTop":"Frástøða frá íerva","rel":"Relatión","selectAnchor":"Vel ein marknastein","styles":"Typografi","tabIndex":"Tabulator indeks","target":"Target","targetFrame":"<ramma>","targetFrameName":"Vís navn vindeygans","targetPopup":"<popup vindeyga>","targetPopupName":"Popup vindeygans navn","title":"Tilknýti","toAnchor":"Tilknýti til marknastein í tekstinum","toEmail":"Teldupostur","toUrl":"URL","toolbar":"Ger/broyt tilknýti","type":"Tilknýtisslag","unlink":"Strika tilknýti","upload":"Send til ambætaran"},"list":{"bulletedlist":"Punktmerktur listi","numberedlist":"Talmerktur listi"},"liststyle":{"armenian":"Armensk talskipan","bulletedTitle":"Eginleikar fyri lista við prikkum","circle":"Sirkul","decimal":"Vanlig tøl (1, 2, 3, etc.)","decimalLeadingZero":"Tøl við null frammanfyri (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgisk talskipan (an, ban, gan, osv.)","lowerAlpha":"Lítlir bókstavir (a, b, c, d, e, etc.)","lowerGreek":"Grikskt við lítlum (alpha, beta, gamma, etc.)","lowerRoman":"Lítil rómaratøl (i, ii, iii, iv, v, etc.)","none":"Einki","notset":"<ikki sett>","numberedTitle":"Eginleikar fyri lista við tølum","square":"Fýrkantur","start":"Byrjan","type":"Slag","upperAlpha":"Stórir bókstavir (A, B, C, D, E, etc.)","upperRoman":"Stór rómaratøl (I, II, III, IV, V, etc.)","validateStartNumber":"Byrjunartalið fyri lista má vera eitt heiltal."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maksimera","minimize":"Minimera"},"newpage":{"toolbar":"Nýggj síða"},"pagebreak":{"alt":"Síðuskift","toolbar":"Ger síðuskift"},"pastetext":{"button":"Innrita som reinan tekst","title":"Innrita som reinan tekst"},"pastefromword":{"confirmCleanup":"Teksturin, tú roynir at seta inn, sýnist at stava frá Word. Skal teksturin reinsast fyrst?","error":"Tað eydnaðist ikki at reinsa tekstin vegna ein internan feil","title":"Innrita frá Word","toolbar":"Innrita frá Word"},"preview":{"preview":"Frumsýning"},"print":{"toolbar":"Prenta"},"removeformat":{"toolbar":"Strika sniðgeving"},"save":{"toolbar":"Goym"},"selectall":{"toolbar":"Markera alt"},"showblocks":{"toolbar":"Vís blokkar"},"sourcearea":{"toolbar":"Kelda"},"specialchar":{"options":"Møguleikar við serteknum","title":"Vel sertekn","toolbar":"Set inn sertekn"},"scayt":{"btn_about":"Um SCAYT","btn_dictionaries":"Orðabøkur","btn_disable":"Nokta SCAYT","btn_enable":"Loyv SCAYT","btn_langs":"Tungumál","btn_options":"Uppseting","text_title":""},"stylescombo":{"label":"Typografi","panelTitle":"Formatterings stílir","panelTitle1":"Blokk stílir","panelTitle2":"Inline stílir","panelTitle3":"Object stílir"},"table":{"border":"Bordabreidd","caption":"Tabellfrágreiðing","cell":{"menu":"Meski","insertBefore":"Set meska inn áðrenn","insertAfter":"Set meska inn aftaná","deleteCell":"Strika meskar","merge":"Flætta meskar","mergeRight":"Flætta meskar til høgru","mergeDown":"Flætta saman","splitHorizontal":"Kloyv meska vatnrætt","splitVertical":"Kloyv meska loddrætt","title":"Mesku eginleikar","cellType":"Mesku slag","rowSpan":"Ræð spenni","colSpan":"Kolonnu spenni","wordWrap":"Orðkloyving","hAlign":"Horisontal plasering","vAlign":"Loddrøtt plasering","alignBaseline":"Basislinja","bgColor":"Bakgrundslitur","borderColor":"Bordalitur","data":"Data","header":"Header","yes":"Ja","no":"Nei","invalidWidth":"Meskubreidd má vera eitt tal.","invalidHeight":"Meskuhædd má vera eitt tal.","invalidRowSpan":"Raðspennið má vera eitt heiltal.","invalidColSpan":"Kolonnuspennið má vera eitt heiltal.","chooseColor":"Vel"},"cellPad":"Meskubreddi","cellSpace":"Fjarstøða millum meskar","column":{"menu":"Kolonna","insertBefore":"Set kolonnu inn áðrenn","insertAfter":"Set kolonnu inn aftaná","deleteColumn":"Strika kolonnur"},"columns":"Kolonnur","deleteTable":"Strika tabell","headers":"Yvirskriftir","headersBoth":"Báðir","headersColumn":"Fyrsta kolonna","headersNone":"Eingin","headersRow":"Fyrsta rað","invalidBorder":"Borda-stødd má vera eitt tal.","invalidCellPadding":"Cell padding má vera eitt tal.","invalidCellSpacing":"Cell spacing má vera eitt tal.","invalidCols":"Talið av kolonnum má vera eitt tal størri enn 0.","invalidHeight":"Tabell-hædd má vera eitt tal.","invalidRows":"Talið av røðum má vera eitt tal størri enn 0.","invalidWidth":"Tabell-breidd má vera eitt tal.","menu":"Eginleikar fyri tabell","row":{"menu":"Rað","insertBefore":"Set rað inn áðrenn","insertAfter":"Set rað inn aftaná","deleteRow":"Strika røðir"},"rows":"Røðir","summary":"Samandráttur","title":"Eginleikar fyri tabell","toolbar":"Tabell","widthPc":"prosent","widthPx":"pixels","widthUnit":"breiddar unit"},"undo":{"redo":"Vend aftur","undo":"Angra"},"wsc":{"btnIgnore":"Forfjóna","btnIgnoreAll":"Forfjóna alt","btnReplace":"Yvirskriva","btnReplaceAll":"Yvirskriva alt","btnUndo":"Angra","changeTo":"Broyt til","errorLoading":"Feilur við innlesing av application service host: %s.","ieSpellDownload":"Rættstavarin er ikki tøkur í tekstviðgeranum. Vilt tú heinta hann nú?","manyChanges":"Rættstavarin liðugur: %1 orð broytt","noChanges":"Rættstavarin liðugur: Einki orð varð broytt","noMispell":"Rættstavarin liðugur: Eingin feilur funnin","noSuggestions":"- Einki uppskot -","notAvailable":"Tíverri, ikki tøkt í løtuni.","notInDic":"Finst ikki í orðabókini","oneChange":"Rættstavarin liðugur: Eitt orð er broytt","progress":"Rættstavarin arbeiðir...","title":"Kanna stavseting","toolbar":"Kanna stavseting"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/fr-ca.js b/wqflask/wqflask/static/packages/ckeditor/lang/fr-ca.js
deleted file mode 100644
index 29e18dc8..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/fr-ca.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['fr-ca']={"editor":"Éditeur de texte enrichi","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Appuyez sur 0 pour de l'aide","browseServer":"Parcourir le serveur","url":"URL","protocol":"Protocole","upload":"Envoyer","uploadSubmit":"Envoyer au serveur","image":"Image","flash":"Animation Flash","form":"Formulaire","checkbox":"Case à cocher","radio":"Bouton radio","textField":"Champ texte","textarea":"Zone de texte","hiddenField":"Champ caché","button":"Bouton","select":"Liste déroulante","imageButton":"Bouton image","notSet":"<Par défaut>","id":"Id","name":"Nom","langDir":"Sens d'écriture","langDirLtr":"De gauche à droite (LTR)","langDirRtl":"De droite à gauche (RTL)","langCode":"Code langue","longDescr":"URL de description longue","cssClass":"Classes CSS","advisoryTitle":"Titre","cssStyle":"Style","ok":"OK","cancel":"Annuler","close":"Fermer","preview":"Aperçu","resize":"Redimensionner","generalTab":"Général","advancedTab":"Avancé","validateNumberFailed":"Cette valeur n'est pas un nombre.","confirmNewPage":"Les changements non sauvegardés seront perdus. Êtes-vous certain de vouloir charger une nouvelle page?","confirmCancel":"Certaines options ont été modifiées. Êtes-vous certain de vouloir fermer?","options":"Options","target":"Cible","targetNew":"Nouvelle fenêtre (_blank)","targetTop":"Fenêtre supérieur (_top)","targetSelf":"Cette fenêtre (_self)","targetParent":"Fenêtre parent (_parent)","langDirLTR":"De gauche à droite (LTR)","langDirRTL":"De droite à gauche (RTL)","styles":"Style","cssClasses":"Classe CSS","width":"Largeur","height":"Hauteur","align":"Alignement","alignLeft":"Gauche","alignRight":"Droite","alignCenter":"Centré","alignJustify":"Justifié","alignTop":"Haut","alignMiddle":"Milieu","alignBottom":"Bas","alignNone":"None","invalidValue":"Valeur invalide.","invalidHeight":"La hauteur doit être un nombre.","invalidWidth":"La largeur doit être un nombre.","invalidCssLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure HTML valide (px ou %).","invalidInlineStyle":"La valeur spécifiée pour le style intégré doit être composée d'un ou plusieurs couples de valeur au format \"nom : valeur\", separés par des points-virgules.","cssLengthTooltip":"Entrer un nombre pour la valeur en pixel ou un nombre avec une unité CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponible</span>"},"about":{"copy":"Copyright &copy; $1. Tous droits réservés.","dlgTitle":"À propos de CKEditor","help":"Consulter $1 pour l'aide.","moreInfo":"Pour les informations de licence, consulter notre site internet:","title":"À propos de CKEditor","userGuide":"Guide utilisateur de CKEditor"},"basicstyles":{"bold":"Gras","italic":"Italique","strike":"Barré","subscript":"Indice","superscript":"Exposant","underline":"Souligné"},"bidi":{"ltr":"Direction du texte de gauche à droite","rtl":"Direction du texte de droite à gauche"},"blockquote":{"toolbar":"Citation"},"clipboard":{"copy":"Copier","copyError":"Les paramètres de sécurité de votre navigateur empêchent l'éditeur de copier automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl/Cmd+C).","cut":"Couper","cutError":"Les paramètres de sécurité de votre navigateur empêchent l'éditeur de couper automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl/Cmd+X).","paste":"Coller","pasteArea":"Coller la zone","pasteMsg":"Veuillez coller dans la zone ci-dessous en utilisant le clavier (<STRONG>Ctrl/Cmd+V</STRONG>) et appuyer sur <STRONG>OK</STRONG>.","securityMsg":"A cause des paramètres de sécurité de votre navigateur, l'éditeur ne peut accéder au presse-papier directement. Vous devez coller à nouveau le contenu dans cette fenêtre.","title":"Coller"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatique","bgColorTitle":"Couleur de fond","colors":{"000":"Noir","800000":"Marron","8B4513":"Brun foncé","2F4F4F":"Gris ardoise foncé","008080":"Sarcelle","000080":"Marine","4B0082":"Indigo","696969":"Gris foncé","B22222":"Rouge brique","A52A2A":"Brun","DAA520":"Doré","006400":"Vert foncé","40E0D0":"Turquoise","0000CD":"Bleu","800080":"Mauve","808080":"Gris","F00":"Rouge","FF8C00":"Orange foncé","FFD700":"Or","008000":"Vert","0FF":"Cyan","00F":"Bleu","EE82EE":"Violet","A9A9A9":"Gris pâle","FFA07A":"Saumon clair","FFA500":"Orange","FFFF00":"Jaune","00FF00":"Vert lime","AFEEEE":"Turquoise pâle","ADD8E6":"Bleu pâle","DDA0DD":"Prune","D3D3D3":"Gris pâle","FFF0F5":"Bleu lavande","FAEBD7":"Blanc antique","FFFFE0":"Jaune pâle","F0FFF0":"Miel doré","F0FFFF":"Azure","F0F8FF":"Bleu alice","E6E6FA":"Lavande","FFF":"Blanc"},"more":"Plus de couleurs...","panelTitle":"Couleurs","textColorTitle":"Couleur de texte"},"colordialog":{"clear":"Effacer","highlight":"Surligner","options":"Options de couleur","selected":"Couleur sélectionnée","title":"Choisir une couleur"},"templates":{"button":"Modèles","emptyListMsg":"(Aucun modèle disponible)","insertOption":"Remplacer tout le contenu actuel","options":"Options de modèles","selectPromptMsg":"Sélectionner le modèle à ouvrir dans l'éditeur","title":"Modèles de contenu"},"contextmenu":{"options":"Options du menu contextuel"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Titre","cssClassInputLabel":"Classes CSS","edit":"Modifier le DIV","inlineStyleInputLabel":"Style en ligne","langDirLTRLabel":"De gauche à droite (LTR)","langDirLabel":"Sens d'écriture","langDirRTLLabel":"De droite à gauche (RTL)","languageCodeInputLabel":"Code de langue","remove":"Supprimer le DIV","styleSelectLabel":"Style","title":"Créer un DIV","toolbar":"Créer un DIV"},"toolbar":{"toolbarCollapse":"Enrouler la barre d'outils","toolbarExpand":"Dérouler la barre d'outils","toolbarGroups":{"document":"Document","clipboard":"Presse papier/Annuler","editing":"Édition","forms":"Formulaires","basicstyles":"Styles de base","paragraph":"Paragraphe","links":"Liens","insert":"Insérer","styles":"Styles","colors":"Couleurs","tools":"Outils"},"toolbars":"Barre d'outils de l'éditeur"},"elementspath":{"eleLabel":"Chemin d'éléments","eleTitle":"element %1"},"find":{"find":"Rechercher","findOptions":"Options de recherche","findWhat":"Rechercher:","matchCase":"Respecter la casse","matchCyclic":"Recherche cyclique","matchWord":"Mot entier","notFoundMsg":"Le texte indiqué est introuvable.","replace":"Remplacer","replaceAll":"Tout remplacer","replaceSuccessMsg":"%1 remplacements.","replaceWith":"Remplacer par:","title":"Rechercher et remplacer"},"fakeobjects":{"anchor":"Ancre","flash":"Animation Flash","hiddenfield":"Champ caché","iframe":"IFrame","unknown":"Objet inconnu"},"flash":{"access":"Accès au script","accessAlways":"Toujours","accessNever":"Jamais","accessSameDomain":"Même domaine","alignAbsBottom":"Bas absolu","alignAbsMiddle":"Milieu absolu","alignBaseline":"Bas du texte","alignTextTop":"Haut du texte","bgcolor":"Couleur de fond","chkFull":"Permettre le plein-écran","chkLoop":"Boucle","chkMenu":"Activer le menu Flash","chkPlay":"Lecture automatique","flashvars":"Variables pour Flash","hSpace":"Espacement horizontal","properties":"Propriétés de l'animation Flash","propertiesTab":"Propriétés","quality":"Qualité","qualityAutoHigh":"Haute auto","qualityAutoLow":"Basse auto","qualityBest":"Meilleur","qualityHigh":"Haute","qualityLow":"Basse","qualityMedium":"Moyenne","scale":"Échelle","scaleAll":"Afficher tout","scaleFit":"Ajuster aux dimensions","scaleNoBorder":"Sans bordure","title":"Propriétés de l'animation Flash","vSpace":"Espacement vertical","validateHSpace":"L'espacement horizontal doit être un entier.","validateSrc":"Veuillez saisir l'URL","validateVSpace":"L'espacement vertical doit être un entier.","windowMode":"Mode de fenêtre","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Fenêtre"},"font":{"fontSize":{"label":"Taille","voiceLabel":"Taille","panelTitle":"Taille"},"label":"Police","panelTitle":"Police","voiceLabel":"Police"},"forms":{"button":{"title":"Propriétés du bouton","text":"Texte (Valeur)","type":"Type","typeBtn":"Bouton","typeSbm":"Soumettre","typeRst":"Réinitialiser"},"checkboxAndRadio":{"checkboxTitle":"Propriétés de la case à cocher","radioTitle":"Propriétés du bouton radio","value":"Valeur","selected":"Sélectionné"},"form":{"title":"Propriétés du formulaire","menu":"Propriétés du formulaire","action":"Action","method":"Méthode","encoding":"Encodage"},"hidden":{"title":"Propriétés du champ caché","name":"Nom","value":"Valeur"},"select":{"title":"Propriétés du champ de sélection","selectInfo":"Info","opAvail":"Options disponibles","value":"Valeur","size":"Taille","lines":"lignes","chkMulti":"Permettre les sélections multiples","opText":"Texte","opValue":"Valeur","btnAdd":"Ajouter","btnModify":"Modifier","btnUp":"Monter","btnDown":"Descendre","btnSetValue":"Valeur sélectionnée","btnDelete":"Supprimer"},"textarea":{"title":"Propriétés de la zone de texte","cols":"Colonnes","rows":"Lignes"},"textfield":{"title":"Propriétés du champ texte","name":"Nom","value":"Valeur","charWidth":"Largeur de caractères","maxChars":"Nombre maximum de caractères","type":"Type","typeText":"Texte","typePass":"Mot de passe","typeEmail":"Courriel","typeSearch":"Recherche","typeTel":"Numéro de téléphone","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format de paragraphe","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"En-tête 1","tag_h2":"En-tête 2","tag_h3":"En-tête 3","tag_h4":"En-tête 4","tag_h5":"En-tête 5","tag_h6":"En-tête 6","tag_p":"Normal","tag_pre":"Formaté"},"horizontalrule":{"toolbar":"Insérer un séparateur horizontale"},"iframe":{"border":"Afficher la bordure du cadre","noUrl":"Veuillez entre l'URL du IFrame","scrolling":"Activer les barres de défilement","title":"Propriétés du IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Veuillez saisir l'URL de l'image","alt":"Texte alternatif","border":"Bordure","btnUpload":"Envoyer sur le serveur","button2Img":"Désirez-vous transformer l'image sélectionnée en image simple?","hSpace":"Espacement horizontal","img2Button":"Désirez-vous transformer l'image sélectionnée en bouton image?","infoTab":"Informations sur l'image","linkTab":"Lien","lockRatio":"Verrouiller les proportions","menu":"Propriétés de l'image","resetSize":"Taille originale","title":"Propriétés de l'image","titleButton":"Propriétés du bouton image","upload":"Téléverser","urlMissing":"L'URL de la source de l'image est manquant.","vSpace":"Espacement vertical","validateBorder":"La bordure doit être un entier.","validateHSpace":"L'espacement horizontal doit être un entier.","validateVSpace":"L'espacement vertical doit être un entier."},"indent":{"indent":"Augmenter le retrait","outdent":"Diminuer le retrait"},"smiley":{"options":"Options d'émoticônes","title":"Insérer un émoticône","toolbar":"Émoticône"},"justify":{"block":"Justifié","center":"Centré","left":"Aligner à gauche","right":"Aligner à Droite"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Touche d'accessibilité","advanced":"Avancé","advisoryContentType":"Type de contenu","advisoryTitle":"Description","anchor":{"toolbar":"Ancre","menu":"Modifier l'ancre","title":"Propriétés de l'ancre","name":"Nom de l'ancre","errorName":"Veuillez saisir le nom de l'ancre","remove":"Supprimer l'ancre"},"anchorId":"Par ID","anchorName":"Par nom","charset":"Encodage de la cible","cssClasses":"Classes CSS","emailAddress":"Courriel","emailBody":"Corps du message","emailSubject":"Objet du message","id":"ID","info":"Informations sur le lien","langCode":"Code de langue","langDir":"Sens d'écriture","langDirLTR":"De gauche à droite (LTR)","langDirRTL":"De droite à gauche (RTL)","menu":"Modifier le lien","name":"Nom","noAnchors":"(Pas d'ancre disponible dans le document)","noEmail":"Veuillez saisir le courriel","noUrl":"Veuillez saisir l'URL","other":"<autre>","popupDependent":"Dépendante (Netscape)","popupFeatures":"Caractéristiques de la fenêtre popup","popupFullScreen":"Plein écran (IE)","popupLeft":"Position de la gauche","popupLocationBar":"Barre d'adresse","popupMenuBar":"Barre de menu","popupResizable":"Redimensionnable","popupScrollBars":"Barres de défilement","popupStatusBar":"Barre d'état","popupToolbar":"Barre d'outils","popupTop":"Position à partir du haut","rel":"Relation","selectAnchor":"Sélectionner une ancre","styles":"Style","tabIndex":"Ordre de tabulation","target":"Destination","targetFrame":"<Cadre>","targetFrameName":"Nom du cadre de destination","targetPopup":"<fenêtre popup>","targetPopupName":"Nom de la fenêtre popup","title":"Lien","toAnchor":"Ancre dans cette page","toEmail":"Courriel","toUrl":"URL","toolbar":"Lien","type":"Type de lien","unlink":"Supprimer le lien","upload":"Téléverser"},"list":{"bulletedlist":"Liste à puces","numberedlist":"Liste numérotée"},"liststyle":{"armenian":"Numération arménienne","bulletedTitle":"Propriété de liste à puce","circle":"Cercle","decimal":"Décimal (1, 2, 3, etc.)","decimalLeadingZero":"Décimal avec zéro (01, 02, 03, etc.)","disc":"Disque","georgian":"Numération géorgienne (an, ban, gan, etc.)","lowerAlpha":"Alphabétique minuscule (a, b, c, d, e, etc.)","lowerGreek":"Grecque minuscule (alpha, beta, gamma, etc.)","lowerRoman":"Romain minuscule (i, ii, iii, iv, v, etc.)","none":"Aucun","notset":"<non défini>","numberedTitle":"Propriété de la liste numérotée","square":"Carré","start":"Début","type":"Type","upperAlpha":"Alphabétique majuscule (A, B, C, D, E, etc.)","upperRoman":"Romain Majuscule (I, II, III, IV, V, etc.)","validateStartNumber":"Le numéro de début de liste doit être un entier."},"magicline":{"title":"Insérer le paragraphe ici"},"maximize":{"maximize":"Maximizer","minimize":"Minimizer"},"newpage":{"toolbar":"Nouvelle page"},"pagebreak":{"alt":"Saut de page","toolbar":"Insérer un saut de page à l'impression"},"pastetext":{"button":"Coller comme texte","title":"Coller comme texte"},"pastefromword":{"confirmCleanup":"Le texte que vous tentez de coller semble provenir de Word. Désirez vous le nettoyer avant de coller?","error":"Il n'a pas été possible de nettoyer les données collées du à une erreur interne","title":"Coller de Word","toolbar":"Coller de Word"},"preview":{"preview":"Prévisualiser"},"print":{"toolbar":"Imprimer"},"removeformat":{"toolbar":"Supprimer le formatage"},"save":{"toolbar":"Sauvegarder"},"selectall":{"toolbar":"Sélectionner tout"},"showblocks":{"toolbar":"Afficher les blocs"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Option des caractères spéciaux","title":"Sélectionner un caractère spécial","toolbar":"Insérer un caractère spécial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Styles de formattage","panelTitle1":"Styles de block","panelTitle2":"Styles en ligne","panelTitle3":"Styles d'objet"},"table":{"border":"Taille de la bordure","caption":"Titre","cell":{"menu":"Cellule","insertBefore":"Insérer une cellule avant","insertAfter":"Insérer une cellule après","deleteCell":"Supprimer des cellules","merge":"Fusionner les cellules","mergeRight":"Fusionner à droite","mergeDown":"Fusionner en bas","splitHorizontal":"Scinder la cellule horizontalement","splitVertical":"Scinder la cellule verticalement","title":"Propriétés de la cellule","cellType":"Type de cellule","rowSpan":"Fusion de lignes","colSpan":"Fusion de colonnes","wordWrap":"Retour à la ligne","hAlign":"Alignement horizontal","vAlign":"Alignement vertical","alignBaseline":"Bas du texte","bgColor":"Couleur d'arrière plan","borderColor":"Couleur de bordure","data":"Données","header":"En-tête","yes":"Oui","no":"Non","invalidWidth":"La largeur de cellule doit être un nombre.","invalidHeight":"La hauteur de cellule doit être un nombre.","invalidRowSpan":"La fusion de lignes doit être un nombre entier.","invalidColSpan":"La fusion de colonnes doit être un nombre entier.","chooseColor":"Sélectionner"},"cellPad":"Marge interne des cellules","cellSpace":"Espacement des cellules","column":{"menu":"Colonne","insertBefore":"Insérer une colonne avant","insertAfter":"Insérer une colonne après","deleteColumn":"Supprimer des colonnes"},"columns":"Colonnes","deleteTable":"Supprimer le tableau","headers":"En-têtes","headersBoth":"Les deux.","headersColumn":"Première colonne","headersNone":"Aucun","headersRow":"Première ligne","invalidBorder":"La taille de bordure doit être un nombre.","invalidCellPadding":"La marge interne des cellules doit être un nombre positif.","invalidCellSpacing":"L'espacement des cellules doit être un nombre positif.","invalidCols":"Le nombre de colonnes doit être supérieur à 0.","invalidHeight":"La hauteur du tableau doit être un nombre.","invalidRows":"Le nombre de lignes doit être supérieur à 0.","invalidWidth":"La largeur du tableau doit être un nombre.","menu":"Propriétés du tableau","row":{"menu":"Ligne","insertBefore":"Insérer une ligne avant","insertAfter":"Insérer une ligne après","deleteRow":"Supprimer des lignes"},"rows":"Lignes","summary":"Résumé","title":"Propriétés du tableau","toolbar":"Tableau","widthPc":"pourcentage","widthPx":"pixels","widthUnit":"unité de largeur"},"undo":{"redo":"Refaire","undo":"Annuler"},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer tout","btnReplace":"Remplacer","btnReplaceAll":"Remplacer tout","btnUndo":"Annuler","changeTo":"Changer en","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Le Correcteur d'orthographe n'est pas installé. Souhaitez-vous le télécharger maintenant?","manyChanges":"Vérification d'orthographe terminée: %1 mots modifiés","noChanges":"Vérification d'orthographe terminée: Pas de modifications","noMispell":"Vérification d'orthographe terminée: pas d'erreur trouvée","noSuggestions":"- Pas de suggestion -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Pas dans le dictionnaire","oneChange":"Vérification d'orthographe terminée: Un mot modifié","progress":"Vérification d'orthographe en cours...","title":"Spell Check","toolbar":"Orthographe"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/fr.js b/wqflask/wqflask/static/packages/ckeditor/lang/fr.js
deleted file mode 100644
index 3392b2e2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/fr.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['fr']={"editor":"Éditeur de Texte Enrichi","editorPanel":"Tableau de bord de l'éditeur de texte enrichi","common":{"editorHelp":"Appuyez sur ALT-0 pour l'aide","browseServer":"Explorer le serveur","url":"URL","protocol":"Protocole","upload":"Envoyer","uploadSubmit":"Envoyer sur le serveur","image":"Image","flash":"Flash","form":"Formulaire","checkbox":"Case à cocher","radio":"Bouton Radio","textField":"Champ texte","textarea":"Zone de texte","hiddenField":"Champ caché","button":"Bouton","select":"Liste déroulante","imageButton":"Bouton image","notSet":"<non défini>","id":"Id","name":"Nom","langDir":"Sens d'écriture","langDirLtr":"Gauche à droite (LTR)","langDirRtl":"Droite à gauche (RTL)","langCode":"Code de langue","longDescr":"URL de description longue (longdesc => malvoyant)","cssClass":"Classe CSS","advisoryTitle":"Description (title)","cssStyle":"Style","ok":"OK","cancel":"Annuler","close":"Fermer","preview":"Aperçu","resize":"Déplacer pour modifier la taille","generalTab":"Général","advancedTab":"Avancé","validateNumberFailed":"Cette valeur n'est pas un nombre.","confirmNewPage":"Les changements non sauvegardés seront perdus. Êtes-vous sûr de vouloir charger une nouvelle page?","confirmCancel":"Certaines options ont été modifiées. Êtes-vous sûr de vouloir fermer?","options":"Options","target":"Cible (Target)","targetNew":"Nouvelle fenêtre (_blank)","targetTop":"Fenêtre supérieure (_top)","targetSelf":"Même fenêtre (_self)","targetParent":"Fenêtre parent (_parent)","langDirLTR":"Gauche à Droite (LTR)","langDirRTL":"Droite à Gauche (RTL)","styles":"Style","cssClasses":"Classes de style","width":"Largeur","height":"Hauteur","align":"Alignement","alignLeft":"Gauche","alignRight":"Droite","alignCenter":"Centré","alignJustify":"Justifier","alignTop":"Haut","alignMiddle":"Milieu","alignBottom":"Bas","alignNone":"Aucun","invalidValue":"Valeur incorrecte.","invalidHeight":"La hauteur doit être un nombre.","invalidWidth":"La largeur doit être un nombre.","invalidCssLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"La valeur spécifiée pour le champ \"%1\" doit être un nombre positif avec ou sans unité de mesure HTML valide (px ou %).","invalidInlineStyle":"La valeur spécifiée pour le style inline doit être composée d'un ou plusieurs couples de valeur au format \"nom : valeur\", separés par des points-virgules.","cssLengthTooltip":"Entrer un nombre pour une valeur en pixels ou un nombre avec une unité de mesure CSS valide (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, Indisponible</span>"},"about":{"copy":"Copyright &copy; $1. Tous droits réservés.","dlgTitle":"À propos de CKEditor","help":"Consulter $1 pour l'aide.","moreInfo":"Pour les informations de licence, veuillez visiter notre site web:","title":"À propos de CKEditor","userGuide":"Guide de l'utilisateur CKEditor en anglais"},"basicstyles":{"bold":"Gras","italic":"Italique","strike":"Barré","subscript":"Indice","superscript":"Exposant","underline":"Souligné"},"bidi":{"ltr":"Direction du texte de la gauche vers la droite","rtl":"Direction du texte de la droite vers la gauche"},"blockquote":{"toolbar":"Citation"},"clipboard":{"copy":"Copier","copyError":"Les paramètres de sécurité de votre navigateur ne permettent pas à l'éditeur d'exécuter automatiquement des opérations de copie. Veuillez utiliser le raccourci clavier (Ctrl/Cmd+C).","cut":"Couper","cutError":"Les paramètres de sécurité de votre navigateur ne permettent pas à l'éditeur d'exécuter automatiquement l'opération \"couper\". Veuillez utiliser le raccourci clavier (Ctrl/Cmd+X).","paste":"Coller","pasteArea":"Coller la zone","pasteMsg":"Veuillez coller le texte dans la zone suivante en utilisant le raccourci clavier (<strong>Ctrl/Cmd+V</strong>) et cliquez sur OK.","securityMsg":"A cause des paramètres de sécurité de votre navigateur, l'éditeur n'est pas en mesure d'accéder directement à vos données contenues dans le presse-papier. Vous devriez réessayer de coller les données dans la fenêtre.","title":"Coller"},"button":{"selectedLabel":"%1 (Sélectionné)"},"colorbutton":{"auto":"Automatique","bgColorTitle":"Couleur d'arrière plan","colors":{"000":"Noir","800000":"Marron","8B4513":"Brun moyen","2F4F4F":"Vert sombre","008080":"Canard","000080":"Bleu marine","4B0082":"Indigo","696969":"Gris foncé","B22222":"Rouge brique","A52A2A":"Brun","DAA520":"Or terni","006400":"Vert foncé","40E0D0":"Turquoise","0000CD":"Bleu royal","800080":"Pourpre","808080":"Gris","F00":"Rouge","FF8C00":"Orange foncé","FFD700":"Or","008000":"Vert","0FF":"Cyan","00F":"Bleu","EE82EE":"Violet","A9A9A9":"Gris moyen","FFA07A":"Saumon","FFA500":"Orange","FFFF00":"Jaune","00FF00":"Lime","AFEEEE":"Turquoise clair","ADD8E6":"Bleu clair","DDA0DD":"Prune","D3D3D3":"Gris clair","FFF0F5":"Fard Lavande","FAEBD7":"Blanc antique","FFFFE0":"Jaune clair","F0FFF0":"Honeydew","F0FFFF":"Azur","F0F8FF":"Bleu Alice","E6E6FA":"Lavande","FFF":"Blanc"},"more":"Plus de couleurs...","panelTitle":"Couleurs","textColorTitle":"Couleur de texte"},"colordialog":{"clear":"Effacer","highlight":"Détails","options":"Option des couleurs","selected":"Couleur choisie","title":"Choisir une couleur"},"templates":{"button":"Modèles","emptyListMsg":"(Aucun modèle disponible)","insertOption":"Remplacer le contenu actuel","options":"Options des modèles","selectPromptMsg":"Veuillez sélectionner le modèle pour l'ouvrir dans l'éditeur","title":"Contenu des modèles"},"contextmenu":{"options":"Options du menu contextuel"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Classe CSS","edit":"Éditer la DIV","inlineStyleInputLabel":"Style en ligne","langDirLTRLabel":"Gauche à droite (LTR)","langDirLabel":"Sens d'écriture","langDirRTLLabel":"Droite à gauche (RTL)","languageCodeInputLabel":"Code de langue","remove":"Enlever la DIV","styleSelectLabel":"Style","title":"Créer un container DIV","toolbar":"Créer un container DIV"},"toolbar":{"toolbarCollapse":"Enrouler la barre d'outils","toolbarExpand":"Dérouler la barre d'outils","toolbarGroups":{"document":"Document","clipboard":"Presse-papier/Défaire","editing":"Editer","forms":"Formulaires","basicstyles":"Styles de base","paragraph":"Paragraphe","links":"Liens","insert":"Insérer","styles":"Styles","colors":"Couleurs","tools":"Outils"},"toolbars":"Barre d'outils de l'éditeur"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 éléments"},"find":{"find":"Trouver","findOptions":"Options de recherche","findWhat":"Expression à trouver: ","matchCase":"Respecter la casse","matchCyclic":"Boucler","matchWord":"Mot entier uniquement","notFoundMsg":"Le texte spécifié ne peut être trouvé.","replace":"Remplacer","replaceAll":"Remplacer tout","replaceSuccessMsg":"%1 occurrence(s) replacée(s).","replaceWith":"Remplacer par: ","title":"Trouver et remplacer"},"fakeobjects":{"anchor":"Ancre","flash":"Animation Flash","hiddenfield":"Champ caché","iframe":"IFrame","unknown":"Objet inconnu"},"flash":{"access":"Accès aux scripts","accessAlways":"Toujours","accessNever":"Jamais","accessSameDomain":"Même domaine","alignAbsBottom":"Bas absolu","alignAbsMiddle":"Milieu absolu","alignBaseline":"Bas du texte","alignTextTop":"Haut du texte","bgcolor":"Couleur d'arrière-plan","chkFull":"Permettre le plein écran","chkLoop":"Boucle","chkMenu":"Activer le menu Flash","chkPlay":"Jouer automatiquement","flashvars":"Variables du Flash","hSpace":"Espacement horizontal","properties":"Propriétés du Flash","propertiesTab":"Propriétés","quality":"Qualité","qualityAutoHigh":"Haute Auto","qualityAutoLow":"Basse Auto","qualityBest":"Meilleure","qualityHigh":"Haute","qualityLow":"Basse","qualityMedium":"Moyenne","scale":"Echelle","scaleAll":"Afficher tout","scaleFit":"Taille d'origine","scaleNoBorder":"Pas de bordure","title":"Propriétés du Flash","vSpace":"Espacement vertical","validateHSpace":"L'espacement horizontal doit être un nombre.","validateSrc":"L'adresse ne doit pas être vide.","validateVSpace":"L'espacement vertical doit être un nombre.","windowMode":"Mode fenêtre","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Fenêtre"},"font":{"fontSize":{"label":"Taille","voiceLabel":"Taille de police","panelTitle":"Taille de police"},"label":"Police","panelTitle":"Style de police","voiceLabel":"Police"},"forms":{"button":{"title":"Propriétés du bouton","text":"Texte (Value)","type":"Type","typeBtn":"Bouton","typeSbm":"Validation (submit)","typeRst":"Remise à zéro"},"checkboxAndRadio":{"checkboxTitle":"Propriétés de la case à cocher","radioTitle":"Propriétés du bouton Radio","value":"Valeur","selected":"Sélectionné"},"form":{"title":"Propriétés du formulaire","menu":"Propriétés du formulaire","action":"Action","method":"Méthode","encoding":"Encodage"},"hidden":{"title":"Propriétés du champ caché","name":"Nom","value":"Valeur"},"select":{"title":"Propriétés du menu déroulant","selectInfo":"Informations sur le menu déroulant","opAvail":"Options disponibles","value":"Valeur","size":"Taille","lines":"Lignes","chkMulti":"Permettre les sélections multiples","opText":"Texte","opValue":"Valeur","btnAdd":"Ajouter","btnModify":"Modifier","btnUp":"Haut","btnDown":"Bas","btnSetValue":"Définir comme valeur sélectionnée","btnDelete":"Supprimer"},"textarea":{"title":"Propriétés de la zone de texte","cols":"Colonnes","rows":"Lignes"},"textfield":{"title":"Propriétés du champ texte","name":"Nom","value":"Valeur","charWidth":"Taille des caractères","maxChars":"Nombre maximum de caractères","type":"Type","typeText":"Texte","typePass":"Mot de passe","typeEmail":"E-mail","typeSearch":"Rechercher","typeTel":"Numéro de téléphone","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format de paragraphe","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Titre 1","tag_h2":"Titre 2","tag_h3":"Titre 3","tag_h4":"Titre 4","tag_h5":"Titre 5","tag_h6":"Titre 6","tag_p":"Normal","tag_pre":"Formaté"},"horizontalrule":{"toolbar":"Ligne horizontale"},"iframe":{"border":"Afficher une bordure de la IFrame","noUrl":"Veuillez entrer l'adresse du lien de la IFrame","scrolling":"Permettre à la barre de défilement","title":"Propriétés de la IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Veuillez entrer l'adresse de l'image","alt":"Texte de remplacement","border":"Bordure","btnUpload":"Envoyer sur le serveur","button2Img":"Voulez-vous transformer le bouton image sélectionné en simple image?","hSpace":"Espacement horizontal","img2Button":"Voulez-vous transformer l'image en bouton image?","infoTab":"Informations sur l'image","linkTab":"Lien","lockRatio":"Conserver les proportions","menu":"Propriétés de l'image","resetSize":"Taille d'origine","title":"Propriétés de l'image","titleButton":"Propriétés du bouton image","upload":"Envoyer","urlMissing":"L'adresse source de l'image est manquante.","vSpace":"Espacement vertical","validateBorder":"Bordure doit être un entier.","validateHSpace":"HSpace doit être un entier.","validateVSpace":"VSpace doit être un entier."},"indent":{"indent":"Augmenter le retrait (tabulation)","outdent":"Diminuer le retrait (tabulation)"},"smiley":{"options":"Options des émoticones","title":"Insérer un émoticone","toolbar":"Émoticones"},"justify":{"block":"Justifier","center":"Centrer","left":"Aligner à gauche","right":"Aligner à droite"},"language":{"button":"Définir la langue","remove":"Supprimer la langue"},"link":{"acccessKey":"Touche d'accessibilité","advanced":"Avancé","advisoryContentType":"Type de contenu (ex: text/html)","advisoryTitle":"Description (title)","anchor":{"toolbar":"Ancre","menu":"Editer l'ancre","title":"Propriétés de l'ancre","name":"Nom de l'ancre","errorName":"Veuillez entrer le nom de l'ancre.","remove":"Supprimer l'ancre"},"anchorId":"Par ID d'élément","anchorName":"Par nom d'ancre","charset":"Charset de la cible","cssClasses":"Classe CSS","emailAddress":"Adresse E-Mail","emailBody":"Corps du message","emailSubject":"Sujet du message","id":"Id","info":"Infos sur le lien","langCode":"Code de langue","langDir":"Sens d'écriture","langDirLTR":"Gauche à droite","langDirRTL":"Droite à gauche","menu":"Editer le lien","name":"Nom","noAnchors":"(Aucune ancre disponible dans ce document)","noEmail":"Veuillez entrer l'adresse e-mail","noUrl":"Veuillez entrer l'adresse du lien","other":"<autre>","popupDependent":"Dépendante (Netscape)","popupFeatures":"Options de la fenêtre popup","popupFullScreen":"Plein écran (IE)","popupLeft":"Position gauche","popupLocationBar":"Barre d'adresse","popupMenuBar":"Barre de menu","popupResizable":"Redimensionnable","popupScrollBars":"Barres de défilement","popupStatusBar":"Barre de status","popupToolbar":"Barre d'outils","popupTop":"Position haute","rel":"Relation","selectAnchor":"Sélectionner l'ancre","styles":"Style","tabIndex":"Index de tabulation","target":"Cible","targetFrame":"<cadre>","targetFrameName":"Nom du Cadre destination","targetPopup":"<fenêtre popup>","targetPopupName":"Nom de la fenêtre popup","title":"Lien","toAnchor":"Transformer le lien en ancre dans le texte","toEmail":"E-mail","toUrl":"URL","toolbar":"Lien","type":"Type de lien","unlink":"Supprimer le lien","upload":"Envoyer"},"list":{"bulletedlist":"Insérer/Supprimer la liste à puces","numberedlist":"Insérer/Supprimer la liste numérotée"},"liststyle":{"armenian":"Numération arménienne","bulletedTitle":"Propriétés de la liste à puces","circle":"Cercle","decimal":"Décimal (1, 2, 3, etc.)","decimalLeadingZero":"Décimal précédé par un 0 (01, 02, 03, etc.)","disc":"Disque","georgian":"Numération géorgienne (an, ban, gan, etc.)","lowerAlpha":"Alphabétique minuscules (a, b, c, d, e, etc.)","lowerGreek":"Grec minuscule (alpha, beta, gamma, etc.)","lowerRoman":"Nombres romains minuscules (i, ii, iii, iv, v, etc.)","none":"Aucun","notset":"<Non défini>","numberedTitle":"Propriétés de la liste numérotée","square":"Carré","start":"Début","type":"Type","upperAlpha":"Alphabétique majuscules (A, B, C, D, E, etc.)","upperRoman":"Nombres romains majuscules (I, II, III, IV, V, etc.)","validateStartNumber":"Le premier élément de la liste doit être un nombre entier."},"magicline":{"title":"Insérez un paragraphe ici"},"maximize":{"maximize":"Agrandir","minimize":"Minimiser"},"newpage":{"toolbar":"Nouvelle page"},"pagebreak":{"alt":"Saut de page","toolbar":"Saut de page"},"pastetext":{"button":"Coller comme texte sans mise en forme","title":"Coller comme texte sans mise en forme"},"pastefromword":{"confirmCleanup":"Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller?","error":"Il n'a pas été possible de nettoyer les données collées à la suite d'une erreur interne.","title":"Coller depuis Word","toolbar":"Coller depuis Word"},"preview":{"preview":"Aperçu"},"print":{"toolbar":"Imprimer"},"removeformat":{"toolbar":"Supprimer la mise en forme"},"save":{"toolbar":"Enregistrer"},"selectall":{"toolbar":"Tout sélectionner"},"showblocks":{"toolbar":"Afficher les blocs"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Options des caractères spéciaux","title":"Sélectionnez un caractère","toolbar":"Insérer un caractère spécial"},"scayt":{"btn_about":"A propos de SCAYT","btn_dictionaries":"Dictionnaires","btn_disable":"Désactiver SCAYT","btn_enable":"Activer SCAYT","btn_langs":"Langues","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Styles de mise en page","panelTitle1":"Styles de blocs","panelTitle2":"Styles en ligne","panelTitle3":"Styles d'objet"},"table":{"border":"Taille de la bordure","caption":"Titre du tableau","cell":{"menu":"Cellule","insertBefore":"Insérer une cellule avant","insertAfter":"Insérer une cellule après","deleteCell":"Supprimer les cellules","merge":"Fusionner les cellules","mergeRight":"Fusionner à droite","mergeDown":"Fusionner en bas","splitHorizontal":"Fractionner horizontalement","splitVertical":"Fractionner verticalement","title":"Propriétés de la cellule","cellType":"Type de cellule","rowSpan":"Fusion de lignes","colSpan":"Fusion de colonnes","wordWrap":"Césure","hAlign":"Alignement Horizontal","vAlign":"Alignement Vertical","alignBaseline":"Bas du texte","bgColor":"Couleur d'arrière-plan","borderColor":"Couleur de Bordure","data":"Données","header":"Entête","yes":"Oui","no":"Non","invalidWidth":"La Largeur de Cellule doit être un nombre.","invalidHeight":"La Hauteur de Cellule doit être un nombre.","invalidRowSpan":"La fusion de lignes doit être un nombre entier.","invalidColSpan":"La fusion de colonnes doit être un nombre entier.","chooseColor":"Choisissez"},"cellPad":"Marge interne des cellules","cellSpace":"Espacement des cellules","column":{"menu":"Colonnes","insertBefore":"Insérer une colonne avant","insertAfter":"Insérer une colonne après","deleteColumn":"Supprimer les colonnes"},"columns":"Colonnes","deleteTable":"Supprimer le tableau","headers":"En-Têtes","headersBoth":"Les deux","headersColumn":"Première colonne","headersNone":"Aucunes","headersRow":"Première ligne","invalidBorder":"La taille de la bordure doit être un nombre.","invalidCellPadding":"La marge intérieure des cellules doit être un nombre positif.","invalidCellSpacing":"L'espacement des cellules doit être un nombre positif.","invalidCols":"Le nombre de colonnes doit être supérieur à 0.","invalidHeight":"La hauteur du tableau doit être un nombre.","invalidRows":"Le nombre de lignes doit être supérieur à 0.","invalidWidth":"La largeur du tableau doit être un nombre.","menu":"Propriétés du tableau","row":{"menu":"Ligne","insertBefore":"Insérer une ligne avant","insertAfter":"Insérer une ligne après","deleteRow":"Supprimer les lignes"},"rows":"Lignes","summary":"Résumé (description)","title":"Propriétés du tableau","toolbar":"Tableau","widthPc":"% pourcents","widthPx":"pixels","widthUnit":"unité de largeur"},"undo":{"redo":"Rétablir","undo":"Annuler"},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer tout","btnReplace":"Remplacer","btnReplaceAll":"Remplacer tout","btnUndo":"Annuler","changeTo":"Modifier pour","errorLoading":"Erreur du chargement du service depuis l'hôte : %s.","ieSpellDownload":"La vérification d'orthographe n'est pas installée. Voulez-vous la télécharger maintenant?","manyChanges":"Vérification de l'orthographe terminée : %1 mots corrigés.","noChanges":"Vérification de l'orthographe terminée : Aucun mot corrigé.","noMispell":"Vérification de l'orthographe terminée : aucune erreur trouvée.","noSuggestions":"- Aucune suggestion -","notAvailable":"Désolé, le service est indisponible actuellement.","notInDic":"N'existe pas dans le dictionnaire.","oneChange":"Vérification de l'orthographe terminée : Un seul mot corrigé.","progress":"Vérification de l'orthographe en cours...","title":"Vérifier l'orthographe","toolbar":"Vérifier l'orthographe"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/gl.js b/wqflask/wqflask/static/packages/ckeditor/lang/gl.js
deleted file mode 100644
index 3ce91007..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/gl.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['gl']={"editor":"Editor de texto mellorado","editorPanel":"Panel do editor de texto mellorado","common":{"editorHelp":"Prema ALT 0 para obter axuda","browseServer":"Examinar o servidor","url":"URL","protocol":"Protocolo","upload":"Enviar","uploadSubmit":"Enviar ao servidor","image":"Imaxe","flash":"Flash","form":"Formulario","checkbox":"Caixa de selección","radio":"Botón de opción","textField":"Campo de texto","textarea":"Área de texto","hiddenField":"Campo agochado","button":"Botón","select":"Campo de selección","imageButton":"Botón de imaxe","notSet":"<sen estabelecer>","id":"ID","name":"Nome","langDir":"Dirección de escritura do idioma","langDirLtr":"Esquerda a dereita (LTR)","langDirRtl":"Dereita a esquerda (RTL)","langCode":"Código do idioma","longDescr":"Descrición completa do URL","cssClass":"Clases da folla de estilos","advisoryTitle":"Título","cssStyle":"Estilo","ok":"Aceptar","cancel":"Cancelar","close":"Pechar","preview":"Vista previa","resize":"Redimensionar","generalTab":"Xeral","advancedTab":"Avanzado","validateNumberFailed":"Este valor non é un número.","confirmNewPage":"Calquera cambio que non gardara neste contido perderase.\r\nConfirma que quere cargar unha páxina nova?","confirmCancel":"Algunhas das opcións foron cambiadas.\r\nConfirma que quere pechar o diálogo?","options":"Opcións","target":"Destino","targetNew":"Nova xanela (_blank)","targetTop":"Xanela principal (_top)","targetSelf":"Mesma xanela (_self)","targetParent":"Xanela superior (_parent)","langDirLTR":"Esquerda a dereita (LTR)","langDirRTL":"Dereita a esquerda (RTL)","styles":"Estilo","cssClasses":"Clases da folla de estilos","width":"Largo","height":"Alto","align":"Aliñamento","alignLeft":"Esquerda","alignRight":"Dereita","alignCenter":"Centro","alignJustify":"Xustificado","alignTop":"Arriba","alignMiddle":"Centro","alignBottom":"Abaixo","alignNone":"None","invalidValue":"Valor incorrecto.","invalidHeight":"O alto debe ser un número.","invalidWidth":"O largo debe ser un número.","invalidCssLength":"O valor especificado para o campo «%1» debe ser un número positivo con ou sen unha unidade de medida CSS correcta (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"O valor especificado para o campo «%1» debe ser un número positivo con ou sen unha unidade de medida HTML correcta (px ou %).","invalidInlineStyle":"O valor especificado no estilo en liña debe consistir nunha ou máis tuplas co formato «nome : valor», separadas por punto e coma.","cssLengthTooltip":"Escriba un número para o valor en píxeles ou un número cunha unidade CSS correcta (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, non dispoñíbel</span>"},"about":{"copy":"Copyright &copy; $1. Todos os dereitos reservados.","dlgTitle":"Sobre o CKEditor","help":"Consulte $1 para obter axuda.","moreInfo":"Para obter información sobre a licenza, visite o noso sitio web:","title":"Sobre o CKEditor","userGuide":"Guía do usuario do CKEditor"},"basicstyles":{"bold":"Negra","italic":"Cursiva","strike":"Riscado","subscript":"Subíndice","superscript":"Superíndice","underline":"Subliñado"},"bidi":{"ltr":"Dirección do texto de esquerda a dereita","rtl":"Dirección do texto de dereita a esquerda"},"blockquote":{"toolbar":"Cita"},"clipboard":{"copy":"Copiar","copyError":"Os axustes de seguranza do seu navegador non permiten que o editor realice automaticamente as tarefas de copia. Use o teclado para iso (Ctrl/Cmd+C).","cut":"Cortar","cutError":"Os axustes de seguranza do seu navegador non permiten que o editor realice automaticamente as tarefas de corte. Use o teclado para iso (Ctrl/Cmd+X).","paste":"Pegar","pasteArea":"Zona de pegado","pasteMsg":"Pegue dentro do seguinte cadro usando o teclado (<STRONG>Ctrl/Cmd+V</STRONG>) e prema en Aceptar","securityMsg":"Por mor da configuración de seguranza do seu navegador, o editor non ten acceso ao portapapeis. É necesario pegalo novamente nesta xanela.","title":"Pegar"},"button":{"selectedLabel":"%1 (seleccionado)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Cor do fondo","colors":{"000":"Negro","800000":"Marrón escuro","8B4513":"Ocre","2F4F4F":"Pizarra escuro","008080":"Verde azulado","000080":"Azul mariño","4B0082":"Índigo","696969":"Gris escuro","B22222":"Ladrillo","A52A2A":"Marrón","DAA520":"Dourado escuro","006400":"Verde escuro","40E0D0":"Turquesa","0000CD":"Azul medio","800080":"Púrpura","808080":"Gris","F00":"Vermello","FF8C00":"Laranxa escuro","FFD700":"Dourado","008000":"Verde","0FF":"Cian","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Gris medio","FFA07A":"Salmón claro","FFA500":"Laranxa","FFFF00":"Amarelo","00FF00":"Lima","AFEEEE":"Turquesa pálido","ADD8E6":"Azul claro","DDA0DD":"Violeta pálido","D3D3D3":"Verde claro","FFF0F5":"Lavanda vermello","FAEBD7":"Branco antigo","FFFFE0":"Amarelo claro","F0FFF0":"Mel","F0FFFF":"Azul celeste","F0F8FF":"Azul pálido","E6E6FA":"Lavanda","FFF":"Branco"},"more":"Máis cores...","panelTitle":"Cores","textColorTitle":"Cor do texto"},"colordialog":{"clear":"Limpar","highlight":"Resaltar","options":"Opcións de cor","selected":"Cor seleccionado","title":"Seleccione unha cor"},"templates":{"button":"Modelos","emptyListMsg":"(Non hai modelos definidos)","insertOption":"Substituír o contido actual","options":"Opcións de modelos","selectPromptMsg":"Seleccione o modelo a abrir no editor","title":"Modelos de contido"},"contextmenu":{"options":"Opcións do menú contextual"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Título","cssClassInputLabel":"Clases da folla de estilos","edit":"Editar Div","inlineStyleInputLabel":"Estilo de liña","langDirLTRLabel":"Esquerda a dereita (LTR)","langDirLabel":"Dirección de escritura do idioma","langDirRTLLabel":"Dereita a esquerda (RTL)","languageCodeInputLabel":"Código do idioma","remove":"Retirar Div","styleSelectLabel":"Estilo","title":"Crear un contedor Div","toolbar":"Crear un contedor Div"},"toolbar":{"toolbarCollapse":"Contraer a barra de ferramentas","toolbarExpand":"Expandir a barra de ferramentas","toolbarGroups":{"document":"Documento","clipboard":"Portapapeis/desfacer","editing":"Edición","forms":"Formularios","basicstyles":"Estilos básicos","paragraph":"Paragrafo","links":"Ligazóns","insert":"Inserir","styles":"Estilos","colors":"Cores","tools":"Ferramentas"},"toolbars":"Barras de ferramentas do editor"},"elementspath":{"eleLabel":"Ruta dos elementos","eleTitle":"Elemento %1"},"find":{"find":"Buscar","findOptions":"Buscar opcións","findWhat":"Texto a buscar:","matchCase":"Coincidir Mai./min.","matchCyclic":"Coincidencia cíclica","matchWord":"Coincidencia coa palabra completa","notFoundMsg":"Non se atopou o texto indicado.","replace":"Substituir","replaceAll":"Substituír todo","replaceSuccessMsg":"%1 concorrencia(s) substituída(s).","replaceWith":"Substituír con:","title":"Buscar e substituír"},"fakeobjects":{"anchor":"Ancoraxe","flash":"Animación «Flash»","hiddenfield":"Campo agochado","iframe":"IFrame","unknown":"Obxecto descoñecido"},"flash":{"access":"Acceso de scripts","accessAlways":"Sempre","accessNever":"Nunca","accessSameDomain":"Mesmo dominio","alignAbsBottom":"Abs Inferior","alignAbsMiddle":"Abs centro","alignBaseline":"Liña de base","alignTextTop":"Tope do texto","bgcolor":"Cor do fondo","chkFull":"Permitir pantalla completa","chkLoop":"Repetir","chkMenu":"Activar o menú do «Flash»","chkPlay":"Reprodución auomática","flashvars":"Opcións do «Flash»","hSpace":"Esp. Horiz.","properties":"Propiedades do «Flash»","propertiesTab":"Propiedades","quality":"Calidade","qualityAutoHigh":"Alta, automática","qualityAutoLow":"Baixa, automática","qualityBest":"A mellor","qualityHigh":"Alta","qualityLow":"Baixa","qualityMedium":"Media","scale":"Escalar","scaleAll":"Amosar todo","scaleFit":"Encaixar axustando","scaleNoBorder":"Sen bordo","title":"Propiedades do «Flash»","vSpace":"Esp.Vert.","validateHSpace":"O espazado horizontal debe ser un número.","validateSrc":"O URL non pode estar baleiro.","validateVSpace":"O espazado vertical debe ser un número.","windowMode":"Modo da xanela","windowModeOpaque":"Opaca","windowModeTransparent":"Transparente","windowModeWindow":"Xanela"},"font":{"fontSize":{"label":"Tamaño","voiceLabel":"Tamaño da letra","panelTitle":"Tamaño da letra"},"label":"Tipo de letra","panelTitle":"Nome do tipo de letra","voiceLabel":"Tipo de letra"},"forms":{"button":{"title":"Propiedades do botón","text":"Texto (Valor)","type":"Tipo","typeBtn":"Botón","typeSbm":"Enviar","typeRst":"Restabelever"},"checkboxAndRadio":{"checkboxTitle":"Propiedades da caixa de selección","radioTitle":"Propiedades do botón de opción","value":"Valor","selected":"Seleccionado"},"form":{"title":"Propiedades do formulario","menu":"Propiedades do formulario","action":"Acción","method":"Método","encoding":"Codificación"},"hidden":{"title":"Propiedades do campo agochado","name":"Nome","value":"Valor"},"select":{"title":"Propiedades do campo de selección","selectInfo":"Información","opAvail":"Opcións dispoñíbeis","value":"Valor","size":"Tamaño","lines":"liñas","chkMulti":"Permitir múltiplas seleccións","opText":"Texto","opValue":"Valor","btnAdd":"Engadir","btnModify":"Modificar","btnUp":"Subir","btnDown":"Baixar","btnSetValue":"Estabelecer como valor seleccionado","btnDelete":"Eliminar"},"textarea":{"title":"Propiedades da área de texto","cols":"Columnas","rows":"Filas"},"textfield":{"title":"Propiedades do campo de texto","name":"Nome","value":"Valor","charWidth":"Largo do carácter","maxChars":"Núm. máximo de caracteres","type":"Tipo","typeText":"Texto","typePass":"Contrasinal","typeEmail":"Correo","typeSearch":"Buscar","typeTel":"Número de teléfono","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato do parágrafo","tag_address":"Enderezo","tag_div":"Normal (DIV)","tag_h1":"Enacabezado 1","tag_h2":"Encabezado 2","tag_h3":"Encabezado 3","tag_h4":"Encabezado 4","tag_h5":"Encabezado 5","tag_h6":"Encabezado 6","tag_p":"Normal","tag_pre":"Formatado"},"horizontalrule":{"toolbar":"Inserir unha liña horizontal"},"iframe":{"border":"Amosar o bordo do marco","noUrl":"Escriba o enderezo do iframe","scrolling":"Activar as barras de desprazamento","title":"Propiedades do iFrame","toolbar":"IFrame"},"image":{"alertUrl":"Escriba o URL da imaxe","alt":"Texto alternativo","border":"Bordo","btnUpload":"Enviar ao servidor","button2Img":"Quere converter o botón da imaxe seleccionada nunha imaxe sinxela?","hSpace":"Esp.Horiz.","img2Button":"Quere converter a imaxe seleccionada nun botón de imaxe?","infoTab":"Información da imaxe","linkTab":"Ligazón","lockRatio":"Proporcional","menu":"Propiedades da imaxe","resetSize":"Tamaño orixinal","title":"Propiedades da imaxe","titleButton":"Propiedades do botón de imaxe","upload":"Cargar","urlMissing":"Non se atopa o URL da imaxe.","vSpace":"Esp.Vert.","validateBorder":"O bordo debe ser un número.","validateHSpace":"O espazado horizontal debe ser un número.","validateVSpace":"O espazado vertical debe ser un número."},"indent":{"indent":"Aumentar a sangría","outdent":"Reducir a sangría"},"smiley":{"options":"Opcións de emoticonas","title":"Inserir unha emoticona","toolbar":"Emoticona"},"justify":{"block":"Xustificado","center":"Centrado","left":"Aliñar á esquerda","right":"Aliñar á dereita"},"language":{"button":"Estabelezer o idioma","remove":"Retirar o idioma"},"link":{"acccessKey":"Chave de acceso","advanced":"Avanzado","advisoryContentType":"Tipo de contido informativo","advisoryTitle":"Título","anchor":{"toolbar":"Ancoraxe","menu":"Editar a ancoraxe","title":"Propiedades da ancoraxe","name":"Nome da ancoraxe","errorName":"Escriba o nome da ancoraxe","remove":"Retirar a ancoraxe"},"anchorId":"Polo ID do elemento","anchorName":"Polo nome da ancoraxe","charset":"Codificación do recurso ligado","cssClasses":"Clases da folla de estilos","emailAddress":"Enderezo de correo","emailBody":"Corpo da mensaxe","emailSubject":"Asunto da mensaxe","id":"ID","info":"Información da ligazón","langCode":"Código do idioma","langDir":"Dirección de escritura do idioma","langDirLTR":"Esquerda a dereita (LTR)","langDirRTL":"Dereita a esquerda (RTL)","menu":"Editar a ligazón","name":"Nome","noAnchors":"(Non hai ancoraxes dispoñíbeis no documento)","noEmail":"Escriba o enderezo de correo","noUrl":"Escriba a ligazón URL","other":"<outro>","popupDependent":"Dependente (Netscape)","popupFeatures":"Características da xanela emerxente","popupFullScreen":"Pantalla completa (IE)","popupLeft":"Posición esquerda","popupLocationBar":"Barra de localización","popupMenuBar":"Barra do menú","popupResizable":"Redimensionábel","popupScrollBars":"Barras de desprazamento","popupStatusBar":"Barra de estado","popupToolbar":"Barra de ferramentas","popupTop":"Posición superior","rel":"Relación","selectAnchor":"Seleccionar unha ancoraxe","styles":"Estilo","tabIndex":"Índice de tabulación","target":"Destino","targetFrame":"<marco>","targetFrameName":"Nome do marco de destino","targetPopup":"<xanela emerxente>","targetPopupName":"Nome da xanela emerxente","title":"Ligazón","toAnchor":"Ligar coa ancoraxe no testo","toEmail":"Correo","toUrl":"URL","toolbar":"Ligazón","type":"Tipo de ligazón","unlink":"Eliminar a ligazón","upload":"Enviar"},"list":{"bulletedlist":"Inserir/retirar lista viñeteada","numberedlist":"Inserir/retirar lista numerada"},"liststyle":{"armenian":"Numeración armenia","bulletedTitle":"Propiedades da lista viñeteada","circle":"Circulo","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal con cero á esquerda (01, 02, 03, etc.)","disc":"Disc","georgian":"Numeración xeorxiana (an, ban, gan, etc.)","lowerAlpha":"Alfabeto en minúsculas (a, b, c, d, e, etc.)","lowerGreek":"Grego en minúsculas (alpha, beta, gamma, etc.)","lowerRoman":"Números romanos en minúsculas (i, ii, iii, iv, v, etc.)","none":"Ningún","notset":"<sen estabelecer>","numberedTitle":"Propiedades da lista numerada","square":"Cadrado","start":"Inicio","type":"Tipo","upperAlpha":"Alfabeto en maiúsculas (A, B, C, D, E, etc.)","upperRoman":"Números romanos en maiúsculas (I, II, III, IV, V, etc.)","validateStartNumber":"O número de inicio da lista debe ser un número enteiro."},"magicline":{"title":"Inserir aquí o parágrafo"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Páxina nova"},"pagebreak":{"alt":"Quebra de páxina","toolbar":"Inserir quebra de páxina"},"pastetext":{"button":"Pegar como texto simple","title":"Pegar como texto simple"},"pastefromword":{"confirmCleanup":"O texto que quere pegar semella ser copiado desde o Word. Quere depuralo antes de pegalo?","error":"Non foi posíbel depurar os datos pegados por mor dun erro interno","title":"Pegar desde Word","toolbar":"Pegar desde Word"},"preview":{"preview":"Vista previa"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Retirar o formato"},"save":{"toolbar":"Gardar"},"selectall":{"toolbar":"Seleccionar todo"},"showblocks":{"toolbar":"Amosar os bloques"},"sourcearea":{"toolbar":"Orixe"},"specialchar":{"options":"Opcións de caracteres especiais","title":"Seleccione un carácter especial","toolbar":"Inserir un carácter especial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Estilos","panelTitle":"Estilos de formatando","panelTitle1":"Estilos de bloque","panelTitle2":"Estilos de carácter","panelTitle3":"Estilos de obxecto"},"table":{"border":"Tamaño do bordo","caption":"Título","cell":{"menu":"Cela","insertBefore":"Inserir a cela á esquerda","insertAfter":"Inserir a cela á dereita","deleteCell":"Eliminar celas","merge":"Combinar celas","mergeRight":"Combinar á dereita","mergeDown":"Combinar cara abaixo","splitHorizontal":"Dividir a cela en horizontal","splitVertical":"Dividir a cela en vertical","title":"Propiedades da cela","cellType":"Tipo de cela","rowSpan":"Expandir filas","colSpan":"Expandir columnas","wordWrap":"Axustar ao contido","hAlign":"Aliñación horizontal","vAlign":"Aliñación vertical","alignBaseline":"Liña de base","bgColor":"Cor do fondo","borderColor":"Cor do bordo","data":"Datos","header":"Cabeceira","yes":"Si","no":"Non","invalidWidth":"O largo da cela debe ser un número.","invalidHeight":"O alto da cela debe ser un número.","invalidRowSpan":"A expansión de filas debe ser un número enteiro.","invalidColSpan":"A expansión de columnas debe ser un número enteiro.","chooseColor":"Escoller"},"cellPad":"Marxe interior da cela","cellSpace":"Marxe entre celas","column":{"menu":"Columna","insertBefore":"Inserir a columna á esquerda","insertAfter":"Inserir a columna á dereita","deleteColumn":"Borrar Columnas"},"columns":"Columnas","deleteTable":"Borrar Táboa","headers":"Cabeceiras","headersBoth":"Ambas","headersColumn":"Primeira columna","headersNone":"Ningún","headersRow":"Primeira fila","invalidBorder":"O tamaño do bordo debe ser un número.","invalidCellPadding":"A marxe interior debe ser un número positivo.","invalidCellSpacing":"A marxe entre celas debe ser un número positivo.","invalidCols":"O número de columnas debe ser un número maior que 0.","invalidHeight":"O alto da táboa debe ser un número.","invalidRows":"O número de filas debe ser un número maior que 0","invalidWidth":"O largo da táboa debe ser un número.","menu":"Propiedades da táboa","row":{"menu":"Fila","insertBefore":"Inserir a fila por riba","insertAfter":"Inserir a fila por baixo","deleteRow":"Eliminar filas"},"rows":"Filas","summary":"Resumo","title":"Propiedades da táboa","toolbar":"Taboa","widthPc":"porcentaxe","widthPx":"píxeles","widthUnit":"unidade do largo"},"undo":{"redo":"Refacer","undo":"Desfacer"},"wsc":{"btnIgnore":"Ignorar","btnIgnoreAll":"Ignorar Todas","btnReplace":"Substituir","btnReplaceAll":"Substituir Todas","btnUndo":"Desfacer","changeTo":"Cambiar a","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"O corrector ortográfico non está instalado. ¿Quere descargalo agora?","manyChanges":"Corrección ortográfica rematada: %1 verbas substituidas","noChanges":"Corrección ortográfica rematada: Non se substituiu nengunha verba","noMispell":"Corrección ortográfica rematada: Non se atoparon erros","noSuggestions":"- Sen candidatos -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Non está no diccionario","oneChange":"Corrección ortográfica rematada: Unha verba substituida","progress":"Corrección ortográfica en progreso...","title":"Spell Check","toolbar":"Corrección Ortográfica"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/gu.js b/wqflask/wqflask/static/packages/ckeditor/lang/gu.js
deleted file mode 100644
index 309ce06f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/gu.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['gu']={"editor":"રીચ ટેક્ષ્ત્ એડીટર","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"પ્રેસ ALT 0 મદદ માટ","browseServer":"સર્વર બ્રાઉઝ કરો","url":"URL","protocol":"પ્રોટોકૉલ","upload":"અપલોડ","uploadSubmit":"આ સર્વરને મોકલવું","image":"ચિત્ર","flash":"ફ્લૅશ","form":"ફૉર્મ/પત્રક","checkbox":"ચેક બોક્સ","radio":"રેડિઓ બટન","textField":"ટેક્સ્ટ ફીલ્ડ, શબ્દ ક્ષેત્ર","textarea":"ટેક્સ્ટ એરિઆ, શબ્દ વિસ્તાર","hiddenField":"ગુપ્ત ક્ષેત્ર","button":"બટન","select":"પસંદગી ક્ષેત્ર","imageButton":"ચિત્ર બટન","notSet":"<સેટ નથી>","id":"Id","name":"નામ","langDir":"ભાષા લેખવાની પદ્ધતિ","langDirLtr":"ડાબે થી જમણે (LTR)","langDirRtl":"જમણે થી ડાબે (RTL)","langCode":"ભાષા કોડ","longDescr":"વધારે માહિતી માટે URL","cssClass":"સ્ટાઇલ-શીટ ક્લાસ","advisoryTitle":"મુખ્ય મથાળું","cssStyle":"સ્ટાઇલ","ok":"ઠીક છે","cancel":"રદ કરવું","close":"બંધ કરવું","preview":"જોવું","resize":"ખેંચી ને યોગ્ય કરવું","generalTab":"જનરલ","advancedTab":"અડ્વાન્સડ","validateNumberFailed":"આ રકમ આકડો નથી.","confirmNewPage":"સવે કાર્ય વગરનું ફકરો ખોવાઈ જશે. તમને ખાતરી છે કે તમને નવું પાનું ખોલવું છે?","confirmCancel":"ઘણા વિકલ્પો બદલાયા છે. તમારે આ બોક્ષ્ બંધ કરવું છે?","options":"વિકલ્પો","target":"લક્ષ્ય","targetNew":"નવી વિન્ડો (_blank)","targetTop":"ઉપરની વિન્ડો (_top)","targetSelf":"એજ વિન્ડો (_self)","targetParent":"પેરનટ વિન્ડો (_parent)","langDirLTR":"ડાબે થી જમણે (LTR)","langDirRTL":"જમણે થી ડાબે (RTL)","styles":"શૈલી","cssClasses":"શૈલી કલાસીસ","width":"પહોળાઈ","height":"ઊંચાઈ","align":"લાઇનદોરીમાં ગોઠવવું","alignLeft":"ડાબી બાજુ ગોઠવવું","alignRight":"જમણી","alignCenter":"મધ્ય સેન્ટર","alignJustify":"બ્લૉક, અંતરાય જસ્ટિફાઇ","alignTop":"ઉપર","alignMiddle":"વચ્ચે","alignBottom":"નીચે","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"ઉંચાઈ એક આંકડો હોવો જોઈએ.","invalidWidth":"પોહળ ઈ એક આંકડો હોવો જોઈએ.","invalidCssLength":"\"%1\" ની વેલ્યુ એક પોસીટીવ આંકડો હોવો જોઈએ અથવા CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc) વગર.","invalidHtmlLength":"\"%1\" ની વેલ્યુ એક પોસીટીવ આંકડો હોવો જોઈએ અથવા HTML measurement unit (px or %) વગર.","invalidInlineStyle":"ઈનલાઈન સ્ટાઈલ ની વેલ્યુ \"name : value\" ના ફોર્મેટ માં હોવી જોઈએ, વચ્ચે સેમી-કોલોન જોઈએ.","cssLengthTooltip":"પિક્ષ્લ્ નો આંકડો CSS unit (px, %, in, cm, mm, em, ex, pt, or pc) માં નાખો.","unavailable":"%1<span class=\"cke_accessibility\">, નથી મળતું</span>"},"about":{"copy":"કોપીરાઈટ &copy; $1. ઓલ રાઈટ્સ ","dlgTitle":"CKEditor વિષે","help":"મદદ માટે $1 તપાસો","moreInfo":"લાયસનસની માહિતી માટે અમારી વેબ સાઈટ","title":"CKEditor વિષે","userGuide":"CKEditor યુઝર્સ ગાઈડ"},"basicstyles":{"bold":"બોલ્ડ/સ્પષ્ટ","italic":"ઇટેલિક, ત્રાંસા","strike":"છેકી નાખવું","subscript":"એક ચિહ્નની નીચે કરેલું બીજું ચિહ્ન","superscript":"એક ચિહ્ન ઉપર કરેલું બીજું ચિહ્ન.","underline":"અન્ડર્લાઇન, નીચે લીટી"},"bidi":{"ltr":"ટેક્ષ્ત્ ની દિશા ડાબે થી જમણે","rtl":"ટેક્ષ્ત્ ની દિશા જમણે થી ડાબે"},"blockquote":{"toolbar":"બ્લૉક-કોટ, અવતરણચિહ્નો"},"clipboard":{"copy":"નકલ","copyError":"તમારા બ્રાઉઝર ની સુરક્ષિત સેટિંગસ કોપી કરવાની પરવાનગી નથી આપતી. (Ctrl/Cmd+C) का प्रयोग करें।","cut":"કાપવું","cutError":"તમારા બ્રાઉઝર ની સુરક્ષિત સેટિંગસ કટ કરવાની પરવાનગી નથી આપતી. (Ctrl/Cmd+X) નો ઉપયોગ કરો.","paste":"પેસ્ટ","pasteArea":"પેસ્ટ કરવાની જગ્યા","pasteMsg":"Ctrl/Cmd+V નો પ્રયોગ કરી પેસ્ટ કરો","securityMsg":"તમારા બ્રાઉઝર ની સુરક્ષિત સેટિંગસના કારણે,એડિટર તમારા કિલ્પબોર્ડ ડેટા ને કોપી નથી કરી શકતો. તમારે આ વિન્ડોમાં ફરીથી પેસ્ટ કરવું પડશે.","title":"પેસ્ટ"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"સ્વચાલિત","bgColorTitle":"બૅકગ્રાઉન્ડ રંગ,","colors":{"000":"કાળો","800000":"મરુન","8B4513":"છીક","2F4F4F":"ડાર્ક સ્લેટ ગ્રે ","008080":"ટીલ","000080":"નેવી","4B0082":"જામલી","696969":"ડાર્ક ગ્રે","B22222":"ઈટ","A52A2A":"બ્રાઉન","DAA520":"ગોલ્ડન રોડ","006400":"ડાર્ક લીલો","40E0D0":"ટ્રકોઈસ","0000CD":"મધ્યમ વાદળી","800080":"પર્પલ","808080":"ગ્રે","F00":"લાલ","FF8C00":"ડાર્ક ઓરંજ","FFD700":"ગોલ્ડ","008000":"ગ્રીન","0FF":"સાયન","00F":"વાદળી","EE82EE":"વાયોલેટ","A9A9A9":"ડીમ ","FFA07A":"લાઈટ સાલમન","FFA500":"ઓરંજ","FFFF00":"પીળો","00FF00":"લાઈમ","AFEEEE":"પેલ કોઈસ","ADD8E6":"લાઈટ બ્લુ","DDA0DD":"પલ્મ","D3D3D3":"લાઈટ ગ્રે","FFF0F5":"લવંડર ","FAEBD7":"એન્ટીક સફેદ","FFFFE0":"લાઈટ પીળો","F0FFF0":"હનીડઉય","F0FFFF":"અઝુરે","F0F8FF":"એલીસ બ્લુ","E6E6FA":"લવંડર","FFF":"સફેદ"},"more":"ઔર રંગ...","panelTitle":"રંગ","textColorTitle":"શબ્દનો રંગ"},"colordialog":{"clear":"સાફ કરવું","highlight":"હાઈઈટ","options":"રંગના વિકલ્પ","selected":"પસંદ કરેલો રંગ","title":"રંગ પસંદ કરો"},"templates":{"button":"ટેમ્પ્લેટ","emptyListMsg":"(કોઈ ટેમ્પ્લેટ ડિફાઇન નથી)","insertOption":"મૂળ શબ્દને બદલો","options":"ટેમ્પ્લેટના વિકલ્પો","selectPromptMsg":"એડિટરમાં ઓપન કરવા ટેમ્પ્લેટ પસંદ કરો (વર્તમાન કન્ટેન્ટ સેવ નહીં થાય):","title":"કન્ટેન્ટ ટેમ્પ્લેટ"},"contextmenu":{"options":"કોન્તેક્ષ્ત્ મેનુના વિકલ્પો"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"એડવાઈઝર શીર્ષક","cssClassInputLabel":"સ્ટાઈલશીટ કલાસીસ","edit":"ડીવીમાં ફેરફાર કરવો","inlineStyleInputLabel":"ઈનલાઈન પદ્ધતિ","langDirLTRLabel":"ડાબે થી જમણે (LTR)","langDirLabel":"ભાષાની દિશા","langDirRTLLabel":"જમણે થી ડાબે (RTL)","languageCodeInputLabel":"ભાષાનો કોડ","remove":"ડીવી કાઢી કાઢવું","styleSelectLabel":"સ્ટાઈલ","title":"Div કન્ટેનર બનાવુંવું","toolbar":"Div કન્ટેનર બનાવુંવું"},"toolbar":{"toolbarCollapse":"ટૂલબાર નાનું કરવું","toolbarExpand":"ટૂલબાર મોટું કરવું","toolbarGroups":{"document":"દસ્તાવેજ","clipboard":"ક્લિપબોર્ડ/અન","editing":"એડીટ કરવું","forms":"ફોર્મ","basicstyles":"બેસિક્ સ્ટાઇલ","paragraph":"ફકરો","links":"લીંક","insert":"ઉમેરવું","styles":"સ્ટાઇલ","colors":"રંગ","tools":"ટૂલ્સ"},"toolbars":"એડીટર ટૂલ બાર"},"elementspath":{"eleLabel":"એલીમેન્ટ્સ નો ","eleTitle":"એલીમેન્ટ %1"},"find":{"find":"શોધવું","findOptions":"વીકલ્પ શોધો","findWhat":"આ શોધો","matchCase":"કેસ સરખા રાખો","matchCyclic":"સરખાવવા બધા","matchWord":"બઘા શબ્દ સરખા રાખો","notFoundMsg":"તમે શોધેલી ટેક્સ્ટ નથી મળી","replace":"રિપ્લેસ/બદલવું","replaceAll":"બઘા બદલી ","replaceSuccessMsg":"%1 ફેરફારો બાદલાયા છે.","replaceWith":"આનાથી બદલો","title":"શોધવું અને બદલવું"},"fakeobjects":{"anchor":"અનકર","flash":"ફ્લેશ ","hiddenfield":"હિડન ","iframe":"IFrame","unknown":"અનનોન ઓબ્જેક્ટ"},"flash":{"access":"સ્ક્રીપ્ટ એક્સેસ","accessAlways":"હમેશાં","accessNever":"નહી","accessSameDomain":"એજ ડોમેન","alignAbsBottom":"Abs નીચે","alignAbsMiddle":"Abs ઉપર","alignBaseline":"આધાર લીટી","alignTextTop":"ટેક્સ્ટ ઉપર","bgcolor":"બૅકગ્રાઉન્ડ રંગ,","chkFull":"ફૂલ સ્ક્રીન કરવું","chkLoop":"લૂપ","chkMenu":"ફ્લૅશ મેન્યૂ નો પ્રયોગ કરો","chkPlay":"ઑટો/સ્વયં પ્લે","flashvars":"ફલેશ ના વિકલ્પો","hSpace":"સમસ્તરીય જગ્યા","properties":"ફ્લૅશના ગુણ","propertiesTab":"ગુણ","quality":"ગુણધર્મ","qualityAutoHigh":"ઓટો ઊંચું","qualityAutoLow":"ઓટો નીચું","qualityBest":"શ્રેષ્ઠ","qualityHigh":"ઊંચું","qualityLow":"નીચું","qualityMedium":"મધ્યમ","scale":"સ્કેલ","scaleAll":"સ્કેલ ઓલ/બધુ બતાવો","scaleFit":"સ્કેલ એકદમ ફીટ","scaleNoBorder":"સ્કેલ બોર્ડર વગર","title":"ફ્લૅશ ગુણ","vSpace":"લંબરૂપ જગ્યા","validateHSpace":"HSpace આંકડો હોવો જોઈએ.","validateSrc":"લિંક URL ટાઇપ કરો","validateVSpace":"VSpace આંકડો હોવો જોઈએ.","windowMode":"વિન્ડો મોડ","windowModeOpaque":"અપારદર્શક","windowModeTransparent":"પારદર્શક","windowModeWindow":"વિન્ડો"},"font":{"fontSize":{"label":"ફૉન્ટ સાઇઝ/કદ","voiceLabel":"ફોન્ટ સાઈઝ","panelTitle":"ફૉન્ટ સાઇઝ/કદ"},"label":"ફૉન્ટ","panelTitle":"ફૉન્ટ","voiceLabel":"ફોન્ટ"},"forms":{"button":{"title":"બટનના ગુણ","text":"ટેક્સ્ટ (વૅલ્યૂ)","type":"પ્રકાર","typeBtn":"બટન","typeSbm":"સબ્મિટ","typeRst":"રિસેટ"},"checkboxAndRadio":{"checkboxTitle":"ચેક બોક્સ ગુણ","radioTitle":"રેડિઓ બટનના ગુણ","value":"વૅલ્યૂ","selected":"સિલેક્ટેડ"},"form":{"title":"ફૉર્મ/પત્રકના ગુણ","menu":"ફૉર્મ/પત્રકના ગુણ","action":"ક્રિયા","method":"પદ્ધતિ","encoding":"અન્કોડીન્ગ"},"hidden":{"title":"ગુપ્ત ક્ષેત્રના ગુણ","name":"નામ","value":"વૅલ્યૂ"},"select":{"title":"પસંદગી ક્ષેત્રના ગુણ","selectInfo":"સૂચના","opAvail":"ઉપલબ્ધ વિકલ્પ","value":"વૅલ્યૂ","size":"સાઇઝ","lines":"લીટીઓ","chkMulti":"એકથી વધારે પસંદ કરી શકો","opText":"ટેક્સ્ટ","opValue":"વૅલ્યૂ","btnAdd":"ઉમેરવું","btnModify":"બદલવું","btnUp":"ઉપર","btnDown":"નીચે","btnSetValue":"પસંદ કરલી વૅલ્યૂ સેટ કરો","btnDelete":"રદ કરવું"},"textarea":{"title":"ટેક્સ્ટ એઅરિઆ, શબ્દ વિસ્તારના ગુણ","cols":"કૉલમ/ઊભી કટાર","rows":"પંક્તિઓ"},"textfield":{"title":"ટેક્સ્ટ ફીલ્ડ, શબ્દ ક્ષેત્રના ગુણ","name":"નામ","value":"વૅલ્યૂ","charWidth":"કેરેક્ટરની પહોળાઈ","maxChars":"અધિકતમ કેરેક્ટર","type":"ટાઇપ","typeText":"ટેક્સ્ટ","typePass":"પાસવર્ડ","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"ફૉન્ટ ફૉર્મટ, રચનાની શૈલી","panelTitle":"ફૉન્ટ ફૉર્મટ, રચનાની શૈલી","tag_address":"સરનામું","tag_div":"શીર્ષક (DIV)","tag_h1":"શીર્ષક 1","tag_h2":"શીર્ષક 2","tag_h3":"શીર્ષક 3","tag_h4":"શીર્ષક 4","tag_h5":"શીર્ષક 5","tag_h6":"શીર્ષક 6","tag_p":"સામાન્ય","tag_pre":"ફૉર્મટેડ"},"horizontalrule":{"toolbar":"સમસ્તરીય રેખા ઇન્સર્ટ/દાખલ કરવી"},"iframe":{"border":"ફ્રેમ બોર્ડેર બતાવવી","noUrl":"iframe URL ટાઈપ્ કરો","scrolling":"સ્ક્રોલબાર ચાલુ કરવા","title":"IFrame વિકલ્પો","toolbar":"IFrame"},"image":{"alertUrl":"ચિત્રની URL ટાઇપ કરો","alt":"ઑલ્ટર્નટ ટેક્સ્ટ","border":"બોર્ડર","btnUpload":"આ સર્વરને મોકલવું","button2Img":"તમારે ઈમેજ બટનને સાદી ઈમેજમાં બદલવું છે.","hSpace":"સમસ્તરીય જગ્યા","img2Button":"તમારે સાદી ઈમેજને ઈમેજ બટનમાં બદલવું છે.","infoTab":"ચિત્ર ની જાણકારી","linkTab":"લિંક","lockRatio":"લૉક ગુણોત્તર","menu":"ચિત્રના ગુણ","resetSize":"રીસેટ સાઇઝ","title":"ચિત્રના ગુણ","titleButton":"ચિત્ર બટનના ગુણ","upload":"અપલોડ","urlMissing":"ઈમેજની મૂળ URL છે નહી.","vSpace":"લંબરૂપ જગ્યા","validateBorder":"બોર્ડેર આંકડો હોવો જોઈએ.","validateHSpace":"HSpaceઆંકડો હોવો જોઈએ.","validateVSpace":"VSpace આંકડો હોવો જોઈએ. "},"indent":{"indent":"ઇન્ડેન્ટ, લીટીના આરંભમાં જગ્યા વધારવી","outdent":"ઇન્ડેન્ટ લીટીના આરંભમાં જગ્યા ઘટાડવી"},"smiley":{"options":"સમ્ય્લી વિકલ્પો","title":"સ્માઇલી પસંદ કરો","toolbar":"સ્માઇલી"},"justify":{"block":"બ્લૉક, અંતરાય જસ્ટિફાઇ","center":"સંકેંદ્રણ/સેંટરિંગ","left":"ડાબી બાજુએ/બાજુ તરફ","right":"જમણી બાજુએ/બાજુ તરફ"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"ઍક્સેસ કી","advanced":"અડ્વાન્સડ","advisoryContentType":"મુખ્ય કન્ટેન્ટ પ્રકાર","advisoryTitle":"મુખ્ય મથાળું","anchor":{"toolbar":"ઍંકર ઇન્સર્ટ/દાખલ કરવી","menu":"ઍંકરના ગુણ","title":"ઍંકરના ગુણ","name":"ઍંકરનું નામ","errorName":"ઍંકરનું નામ ટાઈપ કરો","remove":"સ્થિર નકરવું"},"anchorId":"ઍંકર એલિમન્ટ Id થી પસંદ કરો","anchorName":"ઍંકર નામથી પસંદ કરો","charset":"લિંક રિસૉર્સ કૅરિક્ટર સેટ","cssClasses":"સ્ટાઇલ-શીટ ક્લાસ","emailAddress":"ઈ-મેલ સરનામું","emailBody":"સંદેશ","emailSubject":"ઈ-મેલ વિષય","id":"Id","info":"લિંક ઇન્ફૉ ટૅબ","langCode":"ભાષા લેખવાની પદ્ધતિ","langDir":"ભાષા લેખવાની પદ્ધતિ","langDirLTR":"ડાબે થી જમણે (LTR)","langDirRTL":"જમણે થી ડાબે (RTL)","menu":" લિંક એડિટ/માં ફેરફાર કરવો","name":"નામ","noAnchors":"(ડૉક્યુમન્ટમાં ઍંકરની સંખ્યા)","noEmail":"ઈ-મેલ સરનામું ટાઇપ કરો","noUrl":"લિંક URL ટાઇપ કરો","other":"<other> <અન્ય>","popupDependent":"ડિપેન્ડન્ટ (Netscape)","popupFeatures":"પૉપ-અપ વિન્ડો ફીચરસૅ","popupFullScreen":"ફુલ સ્ક્રીન (IE)","popupLeft":"ડાબી બાજુ","popupLocationBar":"લોકેશન બાર","popupMenuBar":"મેન્યૂ બાર","popupResizable":"રીસાઈઝએબલ","popupScrollBars":"સ્ક્રોલ બાર","popupStatusBar":"સ્ટૅટસ બાર","popupToolbar":"ટૂલ બાર","popupTop":"જમણી બાજુ","rel":"સંબંધની સ્થિતિ","selectAnchor":"ઍંકર પસંદ કરો","styles":"સ્ટાઇલ","tabIndex":"ટૅબ ઇન્ડેક્સ","target":"ટાર્ગેટ/લક્ષ્ય","targetFrame":"<ફ્રેમ>","targetFrameName":"ટાર્ગેટ ફ્રેમ નું નામ","targetPopup":"<પૉપ-અપ વિન્ડો>","targetPopupName":"પૉપ-અપ વિન્ડો નું નામ","title":"લિંક","toAnchor":"આ પેજનો ઍંકર","toEmail":"ઈ-મેલ","toUrl":"URL","toolbar":"લિંક ઇન્સર્ટ/દાખલ કરવી","type":"લિંક પ્રકાર","unlink":"લિંક કાઢવી","upload":"અપલોડ"},"list":{"bulletedlist":"બુલેટ સૂચિ","numberedlist":"સંખ્યાંકન સૂચિ"},"liststyle":{"armenian":"અરમેનિયન આંકડા પદ્ધતિ","bulletedTitle":"બુલેટેડ લીસ્ટના ગુણ","circle":"વર્તુળ","decimal":"આંકડા (1, 2, 3, etc.)","decimalLeadingZero":"સુન્ય આગળ આંકડા (01, 02, 03, etc.)","disc":"ડિસ્ક","georgian":"ગેઓર્ગિયન આંકડા પદ્ધતિ (an, ban, gan, etc.)","lowerAlpha":"આલ્ફા નાના (a, b, c, d, e, etc.)","lowerGreek":"ગ્રીક નાના (alpha, beta, gamma, etc.)","lowerRoman":"રોમન નાના (i, ii, iii, iv, v, etc.)","none":"કસુ ","notset":"<સેટ નથી>","numberedTitle":"આંકડાના લીસ્ટના ગુણ","square":"ચોરસ","start":"શરુ કરવું","type":"પ્રકાર","upperAlpha":"આલ્ફા મોટા (A, B, C, D, E, etc.)","upperRoman":"રોમન મોટા (I, II, III, IV, V, etc.)","validateStartNumber":"લીસ્ટના સરુઆતનો આંકડો પુરો હોવો જોઈએ."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"મોટું કરવું","minimize":"નાનું કરવું"},"newpage":{"toolbar":"નવુ પાનું"},"pagebreak":{"alt":"નવું પાનું","toolbar":"ઇન્સર્ટ પેજબ્રેક/પાનાને અલગ કરવું/દાખલ કરવું"},"pastetext":{"button":"પેસ્ટ (ટેક્સ્ટ)","title":"પેસ્ટ (ટેક્સ્ટ)"},"pastefromword":{"confirmCleanup":"તમે જે ટેક્ષ્ત્ કોપી કરી રહ્યા છો ટે વર્ડ ની છે. કોપી કરતા પેહલા સાફ કરવી છે?","error":"પેસ્ટ કરેલો ડેટા ઇન્ટરનલ એરર ના લીથે સાફ કરી શકાયો નથી.","title":"પેસ્ટ (વડૅ ટેક્સ્ટ)","toolbar":"પેસ્ટ (વડૅ ટેક્સ્ટ)"},"preview":{"preview":"પૂર્વદર્શન"},"print":{"toolbar":"પ્રિન્ટ"},"removeformat":{"toolbar":"ફૉર્મટ કાઢવું"},"save":{"toolbar":"સેવ"},"selectall":{"toolbar":"બઘું પસંદ કરવું"},"showblocks":{"toolbar":"બ્લૉક બતાવવું"},"sourcearea":{"toolbar":"મૂળ કે પ્રાથમિક દસ્તાવેજ"},"specialchar":{"options":"સ્પેશિઅલ કરેક્ટરના વિકલ્પો","title":"સ્પેશિઅલ વિશિષ્ટ અક્ષર પસંદ કરો","toolbar":"વિશિષ્ટ અક્ષર ઇન્સર્ટ/દાખલ કરવું"},"scayt":{"btn_about":"SCAYT વિષે","btn_dictionaries":"શબ્દકોશ","btn_disable":"SCAYT ડિસેબલ કરવું","btn_enable":"SCAYT એનેબલ કરવું","btn_langs":"ભાષાઓ","btn_options":"વિકલ્પો","text_title":""},"stylescombo":{"label":"શૈલી/રીત","panelTitle":"ફોર્મેટ ","panelTitle1":"બ્લોક ","panelTitle2":"ઈનલાઈન ","panelTitle3":"ઓબ્જેક્ટ પદ્ધતિ"},"table":{"border":"કોઠાની બાજુ(બોર્ડર) સાઇઝ","caption":"મથાળું/કૅપ્શન ","cell":{"menu":"કોષના ખાના","insertBefore":"પહેલાં કોષ ઉમેરવો","insertAfter":"પછી કોષ ઉમેરવો","deleteCell":"કોષ ડિલીટ/કાઢી નાખવો","merge":"કોષ ભેગા કરવા","mergeRight":"જમણી બાજુ ભેગા કરવા","mergeDown":"નીચે ભેગા કરવા","splitHorizontal":"કોષને સમસ્તરીય વિભાજન કરવું","splitVertical":"કોષને સીધું ને ઊભું વિભાજન કરવું","title":"સેલના ગુણ","cellType":"સેલનો પ્રકાર","rowSpan":"આડી કટારની જગ્યા","colSpan":"ઊભી કતારની જગ્યા","wordWrap":"વર્ડ રેપ","hAlign":"સપાટ લાઈનદોરી","vAlign":"ઊભી લાઈનદોરી","alignBaseline":"બસે લાઈન","bgColor":"પાછાળનો રંગ","borderColor":"બોર્ડેર રંગ","data":"સ્વીકૃત માહિતી","header":"મથાળું","yes":"હા","no":"ના","invalidWidth":"સેલની પોહલાઈ આંકડો હોવો જોઈએ.","invalidHeight":"સેલની ઊંચાઈ આંકડો હોવો જોઈએ.","invalidRowSpan":"રો સ્પાન આંકડો હોવો જોઈએ.","invalidColSpan":"કોલમ સ્પાન આંકડો હોવો જોઈએ.","chooseColor":"પસંદ કરવું"},"cellPad":"સેલ પૅડિંગ","cellSpace":"સેલ અંતર","column":{"menu":"કૉલમ/ઊભી કટાર","insertBefore":"પહેલાં કૉલમ/ઊભી કટાર ઉમેરવી","insertAfter":"પછી કૉલમ/ઊભી કટાર ઉમેરવી","deleteColumn":"કૉલમ/ઊભી કટાર ડિલીટ/કાઢી નાખવી"},"columns":"કૉલમ/ઊભી કટાર","deleteTable":"કોઠો ડિલીટ/કાઢી નાખવું","headers":"મથાળા","headersBoth":"બેવું","headersColumn":"પહેલી ઊભી કટાર","headersNone":"નથી ","headersRow":"પહેલી કટાર","invalidBorder":"બોર્ડર એક આંકડો હોવો જોઈએ","invalidCellPadding":"સેલની અંદરની જગ્યા સુન્ય કરતા વધારે હોવી જોઈએ.","invalidCellSpacing":"સેલ વચ્ચેની જગ્યા સુન્ય કરતા વધારે હોવી જોઈએ.","invalidCols":"ઉભી કટાર, 0 કરતા વધારે હોવી જોઈએ.","invalidHeight":"ટેબલની ઊંચાઈ આંકડો હોવો જોઈએ.","invalidRows":"આડી કટાર, 0 કરતા વધારે હોવી જોઈએ.","invalidWidth":"ટેબલની પોહલાઈ આંકડો હોવો જોઈએ.","menu":"ટેબલ, કોઠાનું મથાળું","row":{"menu":"પંક્તિના ખાના","insertBefore":"પહેલાં પંક્તિ ઉમેરવી","insertAfter":"પછી પંક્તિ ઉમેરવી","deleteRow":"પંક્તિઓ ડિલીટ/કાઢી નાખવી"},"rows":"પંક્તિના ખાના","summary":"ટૂંકો એહેવાલ","title":"ટેબલ, કોઠાનું મથાળું","toolbar":"ટેબલ, કોઠો","widthPc":"પ્રતિશત","widthPx":"પિકસલ","widthUnit":"પોહાલાઈ એકમ"},"undo":{"redo":"રિડૂ; પછી હતી એવી સ્થિતિ પાછી લાવવી","undo":"રદ કરવું; પહેલાં હતી એવી સ્થિતિ પાછી લાવવી"},"wsc":{"btnIgnore":"ઇગ્નોર/અવગણના કરવી","btnIgnoreAll":"બધાની ઇગ્નોર/અવગણના કરવી","btnReplace":"બદલવું","btnReplaceAll":"બધા બદલી કરો","btnUndo":"અન્ડૂ","changeTo":"આનાથી બદલવું","errorLoading":"સર્વિસ એપ્લીકેશન લોડ નથી થ: %s.","ieSpellDownload":"સ્પેલ-ચેકર ઇન્સ્ટોલ નથી. શું તમે ડાઉનલોડ કરવા માંગો છો?","manyChanges":"શબ્દની જોડણી/સ્પેલ ચેક પૂર્ણ: %1 શબ્દ બદલયા છે","noChanges":"શબ્દની જોડણી/સ્પેલ ચેક પૂર્ણ: એકપણ શબ્દ બદલયો નથી","noMispell":"શબ્દની જોડણી/સ્પેલ ચેક પૂર્ણ: ખોટી જોડણી મળી નથી","noSuggestions":"- કઇ સજેશન નથી -","notAvailable":"માફ કરશો, આ સુવિધા ઉપલબ્ધ નથી","notInDic":"શબ્દકોશમાં નથી","oneChange":"શબ્દની જોડણી/સ્પેલ ચેક પૂર્ણ: એક શબ્દ બદલયો છે","progress":"શબ્દની જોડણી/સ્પેલ ચેક ચાલુ છે...","title":"સ્પેલ ","toolbar":"જોડણી (સ્પેલિંગ) તપાસવી"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/he.js b/wqflask/wqflask/static/packages/ckeditor/lang/he.js
deleted file mode 100644
index 3223f88e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/he.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['he']={"editor":"עורך טקסט עשיר","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"לחץ אלט ALT + 0 לעזרה","browseServer":"סייר השרת","url":"כתובת (URL)","protocol":"פרוטוקול","upload":"העלאה","uploadSubmit":"שליחה לשרת","image":"תמונה","flash":"פלאש","form":"טופס","checkbox":"תיבת סימון","radio":"לחצן אפשרויות","textField":"שדה טקסט","textarea":"איזור טקסט","hiddenField":"שדה חבוי","button":"כפתור","select":"שדה בחירה","imageButton":"כפתור תמונה","notSet":"<לא נקבע>","id":"זיהוי (ID)","name":"שם","langDir":"כיוון שפה","langDirLtr":"שמאל לימין (LTR)","langDirRtl":"ימין לשמאל (RTL)","langCode":"קוד שפה","longDescr":"קישור לתיאור מפורט","cssClass":"מחלקת עיצוב (CSS Class)","advisoryTitle":"כותרת מוצעת","cssStyle":"סגנון","ok":"אישור","cancel":"ביטול","close":"סגירה","preview":"תצוגה מקדימה","resize":"יש לגרור בכדי לשנות את הגודל","generalTab":"כללי","advancedTab":"אפשרויות מתקדמות","validateNumberFailed":"הערך חייב להיות מספרי.","confirmNewPage":"כל השינויים שלא נשמרו יאבדו. האם להעלות דף חדש?","confirmCancel":"חלק מהאפשרויות שונו, האם לסגור את הדיאלוג?","options":"אפשרויות","target":"מטרה","targetNew":"חלון חדש (_blank)","targetTop":"החלון העליון ביותר (_top)","targetSelf":"אותו חלון (_self)","targetParent":"חלון האב (_parent)","langDirLTR":"שמאל לימין (LTR)","langDirRTL":"ימין לשמאל (RTL)","styles":"סגנון","cssClasses":"מחלקות גליונות סגנון","width":"רוחב","height":"גובה","align":"יישור","alignLeft":"לשמאל","alignRight":"לימין","alignCenter":"מרכז","alignJustify":"יישור לשוליים","alignTop":"למעלה","alignMiddle":"לאמצע","alignBottom":"לתחתית","alignNone":"None","invalidValue":"ערך לא חוקי.","invalidHeight":"הגובה חייב להיות מספר.","invalidWidth":"הרוחב חייב להיות מספר.","invalidCssLength":"הערך שצוין לשדה \"%1\" חייב להיות מספר חיובי עם או ללא יחידת מידה חוקית של CSS (px, %, in, cm, mm, em, ex, pt, או pc).","invalidHtmlLength":"הערך שצוין לשדה \"%1\" חייב להיות מספר חיובי עם או ללא יחידת מידה חוקית של HTML (px או %).","invalidInlineStyle":"הערך שצויין לשדה הסגנון חייב להכיל זוג ערכים אחד או יותר בפורמט \"שם : ערך\", מופרדים על ידי נקודה-פסיק.","cssLengthTooltip":"יש להכניס מספר המייצג פיקסלים או מספר עם יחידת גליונות סגנון תקינה (px, %, in, cm, mm, em, ex, pt, או pc).","unavailable":"%1<span class=\"cke_accessibility\">, לא זמין</span>"},"about":{"copy":"Copyright &copy; $1. כל הזכויות שמורות.","dlgTitle":"אודות CKEditor","help":"היכנסו ל$1 לעזרה.","moreInfo":"למידע נוסף בקרו באתרנו:","title":"אודות CKEditor","userGuide":"מדריך המשתמש של CKEditor"},"basicstyles":{"bold":"מודגש","italic":"נטוי","strike":"כתיב מחוק","subscript":"כתיב תחתון","superscript":"כתיב עליון","underline":"קו תחתון"},"bidi":{"ltr":"כיוון טקסט משמאל לימין (LTR)","rtl":"כיוון טקסט מימין לשמאל (RTL)"},"blockquote":{"toolbar":"בלוק ציטוט"},"clipboard":{"copy":"העתקה","copyError":"הגדרות האבטחה בדפדפן שלך לא מאפשרות לעורך לבצע פעולות העתקה אוטומטיות. יש להשתמש במקלדת לשם כך (Ctrl/Cmd+C).","cut":"גזירה","cutError":"הגדרות האבטחה בדפדפן שלך לא מאפשרות לעורך לבצע פעולות גזירה אוטומטיות. יש להשתמש במקלדת לשם כך (Ctrl/Cmd+X).","paste":"הדבקה","pasteArea":"איזור הדבקה","pasteMsg":"נא להדביק בתוך הקופסה באמצעות (<b>Ctrl/Cmd+V</b>) וללחוץ על <b>אישור</b>.","securityMsg":"עקב הגדרות אבטחה בדפדפן, לא ניתן לגשת אל לוח הגזירים (Clipboard) בצורה ישירה. נא להדביק שוב בחלון זה.","title":"הדבקה"},"button":{"selectedLabel":"1% (סומן)"},"colorbutton":{"auto":"אוטומטי","bgColorTitle":"צבע רקע","colors":{"000":"שחור","800000":"סגול כהה","8B4513":"חום בהיר","2F4F4F":"אפור צפחה","008080":"כחול-ירוק","000080":"כחול-סגול","4B0082":"אינדיגו","696969":"אפור מעומעם","B22222":"אדום-חום","A52A2A":"חום","DAA520":"כתום זהב","006400":"ירוק כהה","40E0D0":"טורקיז","0000CD":"כחול בינוני","800080":"סגול","808080":"אפור","F00":"אדום","FF8C00":"כתום כהה","FFD700":"זהב","008000":"ירוק","0FF":"ציאן","00F":"כחול","EE82EE":"סגלגל","A9A9A9":"אפור כהה","FFA07A":"כתום-וורוד","FFA500":"כתום","FFFF00":"צהוב","00FF00":"ליים","AFEEEE":"טורקיז בהיר","ADD8E6":"כחול בהיר","DDA0DD":"שזיף","D3D3D3":"אפור בהיר","FFF0F5":"לבנדר מסמיק","FAEBD7":"לבן עתיק","FFFFE0":"צהוב בהיר","F0FFF0":"טל דבש","F0FFFF":"תכלת","F0F8FF":"כחול טיפת מים","E6E6FA":"לבנדר","FFF":"לבן"},"more":"צבעים נוספים...","panelTitle":"צבעים","textColorTitle":"צבע טקסט"},"colordialog":{"clear":"ניקוי","highlight":"סימון","options":"אפשרויות צבע","selected":"בחירה","title":"בחירת צבע"},"templates":{"button":"תבניות","emptyListMsg":"(לא הוגדרו תבניות)","insertOption":"החלפת תוכן ממשי","options":"אפשרויות התבניות","selectPromptMsg":"יש לבחור תבנית לפתיחה בעורך.<br />התוכן המקורי ימחק:","title":"תביות תוכן"},"contextmenu":{"options":"אפשרויות תפריט ההקשר"},"div":{"IdInputLabel":"מזהה (ID)","advisoryTitleInputLabel":"כותרת מוצעת","cssClassInputLabel":"מחלקת עיצוב","edit":"עריכת מיכל (Div)","inlineStyleInputLabel":"סגנון פנימי","langDirLTRLabel":"שמאל לימין (LTR)","langDirLabel":"כיוון שפה","langDirRTLLabel":"ימין לשמאל (RTL)","languageCodeInputLabel":"קוד שפה","remove":"הסרת מיכל (Div)","styleSelectLabel":"סגנון","title":"יצירת מיכל (Div)","toolbar":"יצירת מיכל (Div)"},"toolbar":{"toolbarCollapse":"מזעור סרגל כלים","toolbarExpand":"הרחבת סרגל כלים","toolbarGroups":{"document":"מסמך","clipboard":"לוח הגזירים (Clipboard)/צעד אחרון","editing":"עריכה","forms":"טפסים","basicstyles":"עיצוב בסיסי","paragraph":"פסקה","links":"קישורים","insert":"הכנסה","styles":"עיצוב","colors":"צבעים","tools":"כלים"},"toolbars":"סרגלי כלים של העורך"},"elementspath":{"eleLabel":"עץ האלמנטים","eleTitle":"%1 אלמנט"},"find":{"find":"חיפוש","findOptions":"אפשרויות חיפוש","findWhat":"חיפוש מחרוזת:","matchCase":"הבחנה בין אותיות רשיות לקטנות (Case)","matchCyclic":"התאמה מחזורית","matchWord":"התאמה למילה המלאה","notFoundMsg":"הטקסט המבוקש לא נמצא.","replace":"החלפה","replaceAll":"החלפה בכל העמוד","replaceSuccessMsg":"%1 טקסטים הוחלפו.","replaceWith":"החלפה במחרוזת:","title":"חיפוש והחלפה"},"fakeobjects":{"anchor":"עוגן","flash":"סרטון פלאש","hiddenfield":"שדה חבוי","iframe":"חלון פנימי (iframe)","unknown":"אובייקט לא ידוע"},"flash":{"access":"גישת סקריפט","accessAlways":"תמיד","accessNever":"אף פעם","accessSameDomain":"דומיין זהה","alignAbsBottom":"לתחתית האבסולוטית","alignAbsMiddle":"מרכוז אבסולוטי","alignBaseline":"לקו התחתית","alignTextTop":"לראש הטקסט","bgcolor":"צבע רקע","chkFull":"אפשר חלון מלא","chkLoop":"לולאה","chkMenu":"אפשר תפריט פלאש","chkPlay":"ניגון אוטומטי","flashvars":"משתנים לפלאש","hSpace":"מרווח אופקי","properties":"מאפייני פלאש","propertiesTab":"מאפיינים","quality":"איכות","qualityAutoHigh":"גבוהה אוטומטית","qualityAutoLow":"נמוכה אוטומטית","qualityBest":"מעולה","qualityHigh":"גבוהה","qualityLow":"נמוכה","qualityMedium":"ממוצעת","scale":"גודל","scaleAll":"הצג הכל","scaleFit":"התאמה מושלמת","scaleNoBorder":"ללא גבולות","title":"מאפיני פלאש","vSpace":"מרווח אנכי","validateHSpace":"המרווח האופקי חייב להיות מספר.","validateSrc":"יש להקליד את כתובת סרטון הפלאש (URL)","validateVSpace":"המרווח האנכי חייב להיות מספר.","windowMode":"מצב חלון","windowModeOpaque":"אטום","windowModeTransparent":"שקוף","windowModeWindow":"חלון"},"font":{"fontSize":{"label":"גודל","voiceLabel":"גודל","panelTitle":"גודל"},"label":"גופן","panelTitle":"גופן","voiceLabel":"גופן"},"forms":{"button":{"title":"מאפייני כפתור","text":"טקסט (ערך)","type":"סוג","typeBtn":"כפתור","typeSbm":"שליחה","typeRst":"איפוס"},"checkboxAndRadio":{"checkboxTitle":"מאפייני תיבת סימון","radioTitle":"מאפייני לחצן אפשרויות","value":"ערך","selected":"מסומן"},"form":{"title":"מאפיני טופס","menu":"מאפיני טופס","action":"שלח אל","method":"סוג שליחה","encoding":"קידוד"},"hidden":{"title":"מאפיני שדה חבוי","name":"שם","value":"ערך"},"select":{"title":"מאפייני שדה בחירה","selectInfo":"מידע","opAvail":"אפשרויות זמינות","value":"ערך","size":"גודל","lines":"שורות","chkMulti":"איפשור בחירות מרובות","opText":"טקסט","opValue":"ערך","btnAdd":"הוספה","btnModify":"שינוי","btnUp":"למעלה","btnDown":"למטה","btnSetValue":"קביעה כברירת מחדל","btnDelete":"מחיקה"},"textarea":{"title":"מאפייני איזור טקסט","cols":"עמודות","rows":"שורות"},"textfield":{"title":"מאפייני שדה טקסט","name":"שם","value":"ערך","charWidth":"רוחב לפי תווים","maxChars":"מקסימום תווים","type":"סוג","typeText":"טקסט","typePass":"סיסמה","typeEmail":"דוא\"ל","typeSearch":"חיפוש","typeTel":"מספר טלפון","typeUrl":"כתובת (URL)"}},"format":{"label":"עיצוב","panelTitle":"עיצוב","tag_address":"כתובת","tag_div":"נורמלי (DIV)","tag_h1":"כותרת","tag_h2":"כותרת 2","tag_h3":"כותרת 3","tag_h4":"כותרת 4","tag_h5":"כותרת 5","tag_h6":"כותרת 6","tag_p":"נורמלי","tag_pre":"קוד"},"horizontalrule":{"toolbar":"הוספת קו אופקי"},"iframe":{"border":"הראה מסגרת לחלון","noUrl":"יש להכניס כתובת לחלון.","scrolling":"אפשר פסי גלילה","title":"מאפייני חלון פנימי (iframe)","toolbar":"חלון פנימי (iframe)"},"image":{"alertUrl":"יש להקליד את כתובת התמונה","alt":"טקסט חלופי","border":"מסגרת","btnUpload":"שליחה לשרת","button2Img":"האם להפוך את תמונת הכפתור לתמונה פשוטה?","hSpace":"מרווח אופקי","img2Button":"האם להפוך את התמונה לכפתור תמונה?","infoTab":"מידע על התמונה","linkTab":"קישור","lockRatio":"נעילת היחס","menu":"תכונות התמונה","resetSize":"איפוס הגודל","title":"מאפייני התמונה","titleButton":"מאפיני כפתור תמונה","upload":"העלאה","urlMissing":"כתובת התמונה חסרה.","vSpace":"מרווח אנכי","validateBorder":"שדה המסגרת חייב להיות מספר שלם.","validateHSpace":"שדה המרווח האופקי חייב להיות מספר שלם.","validateVSpace":"שדה המרווח האנכי חייב להיות מספר שלם."},"indent":{"indent":"הגדלת הזחה","outdent":"הקטנת הזחה"},"smiley":{"options":"אפשרויות סמיילים","title":"הוספת סמיילי","toolbar":"סמיילי"},"justify":{"block":"יישור לשוליים","center":"מרכוז","left":"יישור לשמאל","right":"יישור לימין"},"language":{"button":"צור שפה","remove":"הסר שפה"},"link":{"acccessKey":"מקש גישה","advanced":"אפשרויות מתקדמות","advisoryContentType":"Content Type מוצע","advisoryTitle":"כותרת מוצעת","anchor":{"toolbar":"הוספת/עריכת נקודת עיגון","menu":"מאפייני נקודת עיגון","title":"מאפייני נקודת עיגון","name":"שם לנקודת עיגון","errorName":"יש להקליד שם לנקודת עיגון","remove":"מחיקת נקודת עיגון"},"anchorId":"עפ\"י זיהוי (ID) האלמנט","anchorName":"עפ\"י שם העוגן","charset":"קידוד המשאב המקושר","cssClasses":"גיליונות עיצוב קבוצות","emailAddress":"כתובת הדוא\"ל","emailBody":"גוף ההודעה","emailSubject":"נושא ההודעה","id":"זיהוי (ID)","info":"מידע על הקישור","langCode":"קוד שפה","langDir":"כיוון שפה","langDirLTR":"שמאל לימין (LTR)","langDirRTL":"ימין לשמאל (RTL)","menu":"מאפייני קישור","name":"שם","noAnchors":"(אין עוגנים זמינים בדף)","noEmail":"יש להקליד את כתובת הדוא\"ל","noUrl":"יש להקליד את כתובת הקישור (URL)","other":"<אחר>","popupDependent":"תלוי (Netscape)","popupFeatures":"תכונות החלון הקופץ","popupFullScreen":"מסך מלא (IE)","popupLeft":"מיקום צד שמאל","popupLocationBar":"סרגל כתובת","popupMenuBar":"סרגל תפריט","popupResizable":"שינוי גודל","popupScrollBars":"ניתן לגלילה","popupStatusBar":"סרגל חיווי","popupToolbar":"סרגל הכלים","popupTop":"מיקום צד עליון","rel":"קשר גומלין","selectAnchor":"בחירת עוגן","styles":"סגנון","tabIndex":"מספר טאב","target":"מטרה","targetFrame":"<מסגרת>","targetFrameName":"שם מסגרת היעד","targetPopup":"<חלון קופץ>","targetPopupName":"שם החלון הקופץ","title":"קישור","toAnchor":"עוגן בעמוד זה","toEmail":"דוא\"ל","toUrl":"כתובת (URL)","toolbar":"הוספת/עריכת קישור","type":"סוג קישור","unlink":"הסרת הקישור","upload":"העלאה"},"list":{"bulletedlist":"רשימת נקודות","numberedlist":"רשימה ממוספרת"},"liststyle":{"armenian":"ספרות ארמניות","bulletedTitle":"תכונות רשימת תבליטים","circle":"עיגול ריק","decimal":"ספרות (1, 2, 3 וכו')","decimalLeadingZero":"ספרות עם 0 בהתחלה (01, 02, 03 וכו')","disc":"עיגול מלא","georgian":"ספרות גיאורגיות (an, ban, gan וכו')","lowerAlpha":"אותיות אנגליות קטנות (a, b, c, d, e וכו')","lowerGreek":"אותיות יווניות קטנות (alpha, beta, gamma וכו')","lowerRoman":"ספירה רומית באותיות קטנות (i, ii, iii, iv, v וכו')","none":"ללא","notset":"<לא נקבע>","numberedTitle":"תכונות רשימה ממוספרת","square":"ריבוע","start":"תחילת מספור","type":"סוג","upperAlpha":"אותיות אנגליות גדולות (A, B, C, D, E וכו')","upperRoman":"ספירה רומיות באותיות גדולות (I, II, III, IV, V וכו')","validateStartNumber":"שדה תחילת המספור חייב להכיל מספר שלם."},"magicline":{"title":"הכנס פסקה כאן"},"maximize":{"maximize":"הגדלה למקסימום","minimize":"הקטנה למינימום"},"newpage":{"toolbar":"דף חדש"},"pagebreak":{"alt":"שבירת דף","toolbar":"הוספת שבירת דף"},"pastetext":{"button":"הדבקה כטקסט פשוט","title":"הדבקה כטקסט פשוט"},"pastefromword":{"confirmCleanup":"נראה הטקסט שבכוונתך להדביק מקורו בקובץ וורד. האם ברצונך לנקות אותו טרם ההדבקה?","error":"לא ניתן היה לנקות את המידע בשל תקלה פנימית.","title":"הדבקה מ-Word","toolbar":"הדבקה מ-Word"},"preview":{"preview":"תצוגה מקדימה"},"print":{"toolbar":"הדפסה"},"removeformat":{"toolbar":"הסרת העיצוב"},"save":{"toolbar":"שמירה"},"selectall":{"toolbar":"בחירת הכל"},"showblocks":{"toolbar":"הצגת בלוקים"},"sourcearea":{"toolbar":"מקור"},"specialchar":{"options":"אפשרויות תווים מיוחדים","title":"בחירת תו מיוחד","toolbar":"הוספת תו מיוחד"},"scayt":{"btn_about":"אודות SCAYT","btn_dictionaries":"מילון","btn_disable":"בטל SCAYT","btn_enable":"אפשר SCAYT","btn_langs":"שפות","btn_options":"אפשרויות","text_title":""},"stylescombo":{"label":"סגנון","panelTitle":"סגנונות פורמט","panelTitle1":"סגנונות בלוק","panelTitle2":"סגנונות רצף","panelTitle3":"סגנונות אובייקט"},"table":{"border":"גודל מסגרת","caption":"כיתוב","cell":{"menu":"מאפייני תא","insertBefore":"הוספת תא לפני","insertAfter":"הוספת תא אחרי","deleteCell":"מחיקת תאים","merge":"מיזוג תאים","mergeRight":"מזג ימינה","mergeDown":"מזג למטה","splitHorizontal":"פיצול תא אופקית","splitVertical":"פיצול תא אנכית","title":"תכונות התא","cellType":"סוג התא","rowSpan":"מתיחת השורות","colSpan":"מתיחת התאים","wordWrap":"מניעת גלישת שורות","hAlign":"יישור אופקי","vAlign":"יישור אנכי","alignBaseline":"שורת בסיס","bgColor":"צבע רקע","borderColor":"צבע מסגרת","data":"מידע","header":"כותרת","yes":"כן","no":"לא","invalidWidth":"שדה רוחב התא חייב להיות מספר.","invalidHeight":"שדה גובה התא חייב להיות מספר.","invalidRowSpan":"שדה מתיחת השורות חייב להיות מספר שלם.","invalidColSpan":"שדה מתיחת העמודות חייב להיות מספר שלם.","chooseColor":"בחר"},"cellPad":"ריפוד תא","cellSpace":"מרווח תא","column":{"menu":"עמודה","insertBefore":"הוספת עמודה לפני","insertAfter":"הוספת עמודה אחרי","deleteColumn":"מחיקת עמודות"},"columns":"עמודות","deleteTable":"מחק טבלה","headers":"כותרות","headersBoth":"שניהם","headersColumn":"עמודה ראשונה","headersNone":"אין","headersRow":"שורה ראשונה","invalidBorder":"שדה גודל המסגרת חייב להיות מספר.","invalidCellPadding":"שדה ריפוד התאים חייב להיות מספר חיובי.","invalidCellSpacing":"שדה ריווח התאים חייב להיות מספר חיובי.","invalidCols":"שדה מספר העמודות חייב להיות מספר גדול מ 0.","invalidHeight":"שדה גובה הטבלה חייב להיות מספר.","invalidRows":"שדה מספר השורות חייב להיות מספר גדול מ 0.","invalidWidth":"שדה רוחב הטבלה חייב להיות מספר.","menu":"מאפייני טבלה","row":{"menu":"שורה","insertBefore":"הוספת שורה לפני","insertAfter":"הוספת שורה אחרי","deleteRow":"מחיקת שורות"},"rows":"שורות","summary":"תקציר","title":"מאפייני טבלה","toolbar":"טבלה","widthPc":"אחוז","widthPx":"פיקסלים","widthUnit":"יחידת רוחב"},"undo":{"redo":"חזרה על צעד אחרון","undo":"ביטול צעד אחרון"},"wsc":{"btnIgnore":"התעלמות","btnIgnoreAll":"התעלמות מהכל","btnReplace":"החלפה","btnReplaceAll":"החלפת הכל","btnUndo":"החזרה","changeTo":"שינוי ל","errorLoading":"שגיאה בהעלאת השירות: %s.","ieSpellDownload":"בודק האיות לא מותקן, האם להורידו?","manyChanges":"בדיקות איות הסתיימה: %1 מילים שונו","noChanges":"בדיקות איות הסתיימה: לא שונתה אף מילה","noMispell":"בדיקות איות הסתיימה: לא נמצאו שגיאות כתיב","noSuggestions":"- אין הצעות -","notAvailable":"לא נמצא שירות זמין.","notInDic":"לא נמצא במילון","oneChange":"בדיקות איות הסתיימה: שונתה מילה אחת","progress":"בודק האיות בתהליך בדיקה....","title":"בדיקת איות","toolbar":"בדיקת איות"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/hi.js b/wqflask/wqflask/static/packages/ckeditor/lang/hi.js
deleted file mode 100644
index d95a7d05..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/hi.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['hi']={"editor":"रिच टेक्स्ट एडिटर","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"मदद के लिये ALT 0 दबाए","browseServer":"सर्वर ब्राउज़ करें","url":"URL","protocol":"प्रोटोकॉल","upload":"अपलोड","uploadSubmit":"इसे सर्वर को भेजें","image":"तस्वीर","flash":"फ़्लैश","form":"फ़ॉर्म","checkbox":"चॅक बॉक्स","radio":"रेडिओ बटन","textField":"टेक्स्ट फ़ील्ड","textarea":"टेक्स्ट एरिया","hiddenField":"गुप्त फ़ील्ड","button":"बटन","select":"चुनाव फ़ील्ड","imageButton":"तस्वीर बटन","notSet":"<सॅट नहीं>","id":"Id","name":"नाम","langDir":"भाषा लिखने की दिशा","langDirLtr":"बायें से दायें (LTR)","langDirRtl":"दायें से बायें (RTL)","langCode":"भाषा कोड","longDescr":"अधिक विवरण के लिए URL","cssClass":"स्टाइल-शीट क्लास","advisoryTitle":"परामर्श शीर्शक","cssStyle":"स्टाइल","ok":"ठीक है","cancel":"रद्द करें","close":"Close","preview":"प्रीव्यू","resize":"Resize","generalTab":"सामान्य","advancedTab":"ऍड्वान्स्ड","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"टार्गेट","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"बायें से दायें (LTR)","langDirRTL":"दायें से बायें (RTL)","styles":"स्टाइल","cssClasses":"स्टाइल-शीट क्लास","width":"चौड़ाई","height":"ऊँचाई","align":"ऍलाइन","alignLeft":"दायें","alignRight":"दायें","alignCenter":"बीच में","alignJustify":"ब्लॉक जस्टीफ़ाई","alignTop":"ऊपर","alignMiddle":"मध्य","alignBottom":"नीचे","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"बोल्ड","italic":"इटैलिक","strike":"स्ट्राइक थ्रू","subscript":"अधोलेख","superscript":"अभिलेख","underline":"रेखांकण"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"ब्लॉक-कोट"},"clipboard":{"copy":"कॉपी","copyError":"आपके ब्राआउज़र की सुरक्षा सॅटिन्ग्स ने कॉपी करने की अनुमति नहीं प्रदान की है। (Ctrl/Cmd+C) का प्रयोग करें।","cut":"कट","cutError":"आपके ब्राउज़र की सुरक्षा सॅटिन्ग्स ने कट करने की अनुमति नहीं प्रदान की है। (Ctrl/Cmd+X) का प्रयोग करें।","paste":"पेस्ट","pasteArea":"Paste Area","pasteMsg":"Ctrl/Cmd+V का प्रयोग करके पेस्ट करें और ठीक है करें.","securityMsg":"आपके ब्राउज़र की सुरक्षा आपके ब्राउज़र की सुरKश सैटिंग के कारण, एडिटर आपके क्लिपबोर्ड डेटा को नहीं पा सकता है. आपको उसे इस विन्डो में दोबारा पेस्ट करना होगा.","title":"पेस्ट"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"स्वचालित","bgColorTitle":"बैक्ग्राउन्ड रंग","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"और रंग...","panelTitle":"Colors","textColorTitle":"टेक्स्ट रंग"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"टॅम्प्लेट","emptyListMsg":"(कोई टॅम्प्लेट डिफ़ाइन नहीं किया गया है)","insertOption":"मूल शब्दों को बदलें","options":"Template Options","selectPromptMsg":"ऍडिटर में ओपन करने हेतु टॅम्प्लेट चुनें(वर्तमान कन्टॅन्ट सेव नहीं होंगे):","title":"कन्टेन्ट टॅम्प्लेट"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"परामर्श शीर्शक","cssClassInputLabel":"स्टाइल-शीट क्लास","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"बायें से दायें (LTR)","langDirLabel":"भाषा लिखने की दिशा","langDirRTLLabel":"दायें से बायें (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"स्टाइल","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"एडिटर टूलबार"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"खोजें","findOptions":"Find Options","findWhat":"यह खोजें:","matchCase":"केस मिलायें","matchCyclic":"Match cyclic","matchWord":"पूरा शब्द मिलायें","notFoundMsg":"आपके द्वारा दिया गया टेक्स्ट नहीं मिला","replace":"रीप्लेस","replaceAll":"सभी रिप्लेस करें","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"इससे रिप्लेस करें:","title":"खोजें और बदलें"},"fakeobjects":{"anchor":"ऐंकर इन्सर्ट/संपादन","flash":"Flash Animation","hiddenfield":"गुप्त फ़ील्ड","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs नीचे","alignAbsMiddle":"Abs ऊपर","alignBaseline":"मूल रेखा","alignTextTop":"टेक्स्ट ऊपर","bgcolor":"बैक्ग्राउन्ड रंग","chkFull":"Allow Fullscreen","chkLoop":"लूप","chkMenu":"फ़्लैश मॅन्यू का प्रयोग करें","chkPlay":"ऑटो प्ले","flashvars":"Variables for Flash","hSpace":"हॉरिज़ॉन्टल स्पेस","properties":"फ़्लैश प्रॉपर्टीज़","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"स्केल","scaleAll":"सभी दिखायें","scaleFit":"बिल्कुल फ़िट","scaleNoBorder":"कोई बॉर्डर नहीं","title":"फ़्लैश प्रॉपर्टीज़","vSpace":"वर्टिकल स्पेस","validateHSpace":"HSpace must be a number.","validateSrc":"लिंक URL टाइप करें","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"साइज़","voiceLabel":"Font Size","panelTitle":"साइज़"},"label":"फ़ॉन्ट","panelTitle":"फ़ॉन्ट","voiceLabel":"फ़ॉन्ट"},"forms":{"button":{"title":"बटन प्रॉपर्टीज़","text":"टेक्स्ट (वैल्यू)","type":"प्रकार","typeBtn":"बटन","typeSbm":"सब्मिट","typeRst":"रिसेट"},"checkboxAndRadio":{"checkboxTitle":"चॅक बॉक्स प्रॉपर्टीज़","radioTitle":"रेडिओ बटन प्रॉपर्टीज़","value":"वैल्यू","selected":"सॅलॅक्टॅड"},"form":{"title":"फ़ॉर्म प्रॉपर्टीज़","menu":"फ़ॉर्म प्रॉपर्टीज़","action":"क्रिया","method":"तरीका","encoding":"Encoding"},"hidden":{"title":"गुप्त फ़ील्ड प्रॉपर्टीज़","name":"नाम","value":"वैल्यू"},"select":{"title":"चुनाव फ़ील्ड प्रॉपर्टीज़","selectInfo":"सूचना","opAvail":"उपलब्ध विकल्प","value":"वैल्यू","size":"साइज़","lines":"पंक्तियाँ","chkMulti":"एक से ज्यादा विकल्प चुनने दें","opText":"टेक्स्ट","opValue":"वैल्यू","btnAdd":"जोड़ें","btnModify":"बदलें","btnUp":"ऊपर","btnDown":"नीचे","btnSetValue":"चुनी गई वैल्यू सॅट करें","btnDelete":"डिलीट"},"textarea":{"title":"टेक्स्त एरिया प्रॉपर्टीज़","cols":"कालम","rows":"पंक्तियां"},"textfield":{"title":"टेक्स्ट फ़ील्ड प्रॉपर्टीज़","name":"नाम","value":"वैल्यू","charWidth":"करॅक्टर की चौढ़ाई","maxChars":"अधिकतम करॅक्टर","type":"टाइप","typeText":"टेक्स्ट","typePass":"पास्वर्ड","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"फ़ॉर्मैट","panelTitle":"फ़ॉर्मैट","tag_address":"पता","tag_div":"शीर्षक (DIV)","tag_h1":"शीर्षक 1","tag_h2":"शीर्षक 2","tag_h3":"शीर्षक 3","tag_h4":"शीर्षक 4","tag_h5":"शीर्षक 5","tag_h6":"शीर्षक 6","tag_p":"साधारण","tag_pre":"फ़ॉर्मैटॅड"},"horizontalrule":{"toolbar":"हॉरिज़ॉन्टल रेखा इन्सर्ट करें"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"तस्वीर का URL टाइप करें ","alt":"वैकल्पिक टेक्स्ट","border":"बॉर्डर","btnUpload":"इसे सर्वर को भेजें","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"हॉरिज़ॉन्टल स्पेस","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"तस्वीर की जानकारी","linkTab":"लिंक","lockRatio":"लॉक अनुपात","menu":"तस्वीर प्रॉपर्टीज़","resetSize":"रीसॅट साइज़","title":"तस्वीर प्रॉपर्टीज़","titleButton":"तस्वीर बटन प्रॉपर्टीज़","upload":"अपलोड","urlMissing":"Image source URL is missing.","vSpace":"वर्टिकल स्पेस","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"इन्डॅन्ट बढ़ायें","outdent":"इन्डॅन्ट कम करें"},"smiley":{"options":"Smiley Options","title":"स्माइली इन्सर्ट करें","toolbar":"स्माइली"},"justify":{"block":"ब्लॉक जस्टीफ़ाई","center":"बीच में","left":"बायीं तरफ","right":"दायीं तरफ"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"ऍक्सॅस की","advanced":"ऍड्वान्स्ड","advisoryContentType":"परामर्श कन्टॅन्ट प्रकार","advisoryTitle":"परामर्श शीर्शक","anchor":{"toolbar":"ऐंकर इन्सर्ट/संपादन","menu":"ऐंकर प्रॉपर्टीज़","title":"ऐंकर प्रॉपर्टीज़","name":"ऐंकर का नाम","errorName":"ऐंकर का नाम टाइप करें","remove":"Remove Anchor"},"anchorId":"ऍलीमॅन्ट Id से","anchorName":"ऐंकर नाम से","charset":"लिंक रिसोर्स करॅक्टर सॅट","cssClasses":"स्टाइल-शीट क्लास","emailAddress":"ई-मेल पता","emailBody":"संदेश","emailSubject":"संदेश विषय","id":"Id","info":"लिंक ","langCode":"भाषा लिखने की दिशा","langDir":"भाषा लिखने की दिशा","langDirLTR":"बायें से दायें (LTR)","langDirRTL":"दायें से बायें (RTL)","menu":"लिंक संपादन","name":"नाम","noAnchors":"(डॉक्यूमॅन्ट में ऐंकर्स की संख्या)","noEmail":"ई-मेल पता टाइप करें","noUrl":"लिंक URL टाइप करें","other":"<अन्य>","popupDependent":"डिपेन्डॅन्ट (Netscape)","popupFeatures":"पॉप-अप विन्डो फ़ीचर्स","popupFullScreen":"फ़ुल स्क्रीन (IE)","popupLeft":"बायीं तरफ","popupLocationBar":"लोकेशन बार","popupMenuBar":"मॅन्यू बार","popupResizable":"Resizable","popupScrollBars":"स्क्रॉल बार","popupStatusBar":"स्टेटस बार","popupToolbar":"टूल बार","popupTop":"दायीं तरफ","rel":"Relationship","selectAnchor":"ऐंकर चुनें","styles":"स्टाइल","tabIndex":"टैब इन्डॅक्स","target":"टार्गेट","targetFrame":"<फ़्रेम>","targetFrameName":"टार्गेट फ़्रेम का नाम","targetPopup":"<पॉप-अप विन्डो>","targetPopupName":"पॉप-अप विन्डो का नाम","title":"लिंक","toAnchor":"इस पेज का ऐंकर","toEmail":"ई-मेल","toUrl":"URL","toolbar":"लिंक इन्सर्ट/संपादन","type":"लिंक प्रकार","unlink":"लिंक हटायें","upload":"अपलोड"},"list":{"bulletedlist":"बुलॅट सूची","numberedlist":"अंकीय सूची"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"मेक्सिमाईज़","minimize":"मिनिमाईज़"},"newpage":{"toolbar":"नया पेज"},"pagebreak":{"alt":"पेज ब्रेक","toolbar":"पेज ब्रेक इन्सर्ट् करें"},"pastetext":{"button":"पेस्ट (सादा टॅक्स्ट)","title":"पेस्ट (सादा टॅक्स्ट)"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"पेस्ट (वर्ड से)","toolbar":"पेस्ट (वर्ड से)"},"preview":{"preview":"प्रीव्यू"},"print":{"toolbar":"प्रिन्ट"},"removeformat":{"toolbar":"फ़ॉर्मैट हटायें"},"save":{"toolbar":"सेव"},"selectall":{"toolbar":"सब सॅलॅक्ट करें"},"showblocks":{"toolbar":"ब्लॉक दिखायें"},"sourcearea":{"toolbar":"सोर्स"},"specialchar":{"options":"Special Character Options","title":"विशेष करॅक्टर चुनें","toolbar":"विशेष करॅक्टर इन्सर्ट करें"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"स्टाइल","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"बॉर्डर साइज़","caption":"शीर्षक","cell":{"menu":"खाना","insertBefore":"पहले सैल डालें","insertAfter":"बाद में सैल डालें","deleteCell":"सैल डिलीट करें","merge":"सैल मिलायें","mergeRight":"बाँया विलय","mergeDown":"नीचे विलय करें","splitHorizontal":"सैल को क्षैतिज स्थिति में विभाजित करें","splitVertical":"सैल को लम्बाकार में विभाजित करें","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"सैल पैडिंग","cellSpace":"सैल अंतर","column":{"menu":"कालम","insertBefore":"पहले कालम डालें","insertAfter":"बाद में कालम डालें","deleteColumn":"कालम डिलीट करें"},"columns":"कालम","deleteTable":"टेबल डिलीट करें","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"टेबल प्रॉपर्टीज़","row":{"menu":"पंक्ति","insertBefore":"पहले पंक्ति डालें","insertAfter":"बाद में पंक्ति डालें","deleteRow":"पंक्तियाँ डिलीट करें"},"rows":"पंक्तियाँ","summary":"सारांश","title":"टेबल प्रॉपर्टीज़","toolbar":"टेबल","widthPc":"प्रतिशत","widthPx":"पिक्सैल","widthUnit":"width unit"},"undo":{"redo":"रीडू","undo":"अन्डू"},"wsc":{"btnIgnore":"इग्नोर","btnIgnoreAll":"सभी इग्नोर करें","btnReplace":"रिप्लेस","btnReplaceAll":"सभी रिप्लेस करें","btnUndo":"अन्डू","changeTo":"इसमें बदलें","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"स्पॅल-चॅकर इन्स्टाल नहीं किया गया है। क्या आप इसे डाउनलोड करना चाहेंगे?","manyChanges":"वर्तनी की जाँच : %1 शब्द बदले गये","noChanges":"वर्तनी की जाँच :कोई शब्द नहीं बदला गया","noMispell":"वर्तनी की जाँच : कोई गलत वर्तनी (स्पॅलिंग) नहीं पाई गई","noSuggestions":"- कोई सुझाव नहीं -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"शब्दकोश में नहीं","oneChange":"वर्तनी की जाँच : एक शब्द बदला गया","progress":"वर्तनी की जाँच (स्पॅल-चॅक) जारी है...","title":"Spell Check","toolbar":"वर्तनी (स्पेलिंग) जाँच"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/hr.js b/wqflask/wqflask/static/packages/ckeditor/lang/hr.js
deleted file mode 100644
index 5a001bab..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/hr.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['hr']={"editor":"Bogati uređivač teksta, %1","editorPanel":"Ploča Bogatog Uređivača Teksta","common":{"editorHelp":"Pritisni ALT 0 za pomoć","browseServer":"Pretraži server","url":"URL","protocol":"Protokol","upload":"Pošalji","uploadSubmit":"Pošalji na server","image":"Slika","flash":"Flash","form":"Forma","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<nije postavljeno>","id":"Id","name":"Naziv","langDir":"Smjer jezika","langDirLtr":"S lijeva na desno (LTR)","langDirRtl":"S desna na lijevo (RTL)","langCode":"Kôd jezika","longDescr":"Dugački opis URL","cssClass":"Klase stilova","advisoryTitle":"Advisory naslov","cssStyle":"Stil","ok":"OK","cancel":"Poništi","close":"Zatvori","preview":"Pregledaj","resize":"Povuci za promjenu veličine","generalTab":"Općenito","advancedTab":"Napredno","validateNumberFailed":"Ova vrijednost nije broj.","confirmNewPage":"Sve napravljene promjene će biti izgubljene ukoliko ih niste snimili. Sigurno želite učitati novu stranicu?","confirmCancel":"Neke od opcija su promjenjene. Sigurno želite zatvoriti ovaj prozor?","options":"Opcije","target":"Odredište","targetNew":"Novi prozor (_blank)","targetTop":"Vršni prozor (_top)","targetSelf":"Isti prozor (_self)","targetParent":"Roditeljski prozor (_parent)","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","styles":"Stil","cssClasses":"Klase stilova","width":"Širina","height":"Visina","align":"Poravnanje","alignLeft":"Lijevo","alignRight":"Desno","alignCenter":"Središnje","alignJustify":"Blok poravnanje","alignTop":"Vrh","alignMiddle":"Sredina","alignBottom":"Dolje","alignNone":"None","invalidValue":"Neispravna vrijednost.","invalidHeight":"Visina mora biti broj.","invalidWidth":"Širina mora biti broj.","invalidCssLength":"Vrijednost određena za \"%1\" polje mora biti pozitivni broj sa ili bez važećih CSS mjernih jedinica (px, %, in, cm, mm, em, ex, pt ili pc).","invalidHtmlLength":"Vrijednost određena za \"%1\" polje mora biti pozitivni broj sa ili bez važećih HTML mjernih jedinica (px ili %).","invalidInlineStyle":"Vrijednost za linijski stil mora sadržavati jednu ili više definicija s formatom \"naziv:vrijednost\", odvojenih točka-zarezom.","cssLengthTooltip":"Unesite broj za vrijednost u pikselima ili broj s važećim CSS mjernim jedinicama (px, %, in, cm, mm, em, ex, pt ili pc).","unavailable":"%1<span class=\"cke_accessibility\">, nedostupno</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"O CKEditoru","help":"Provjeri $1 za pomoć.","moreInfo":"Za informacije o licencama posjetite našu web stranicu:","title":"O CKEditoru","userGuide":"Vodič za CKEditor korisnike"},"basicstyles":{"bold":"Podebljaj","italic":"Ukosi","strike":"Precrtano","subscript":"Subscript","superscript":"Superscript","underline":"Potcrtano"},"bidi":{"ltr":"Smjer teksta s lijeva na desno","rtl":"Smjer teksta s desna na lijevo"},"blockquote":{"toolbar":"Blockquote"},"clipboard":{"copy":"Kopiraj","copyError":"Sigurnosne postavke Vašeg pretraživača ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tipkovnici (Ctrl/Cmd+C).","cut":"Izreži","cutError":"Sigurnosne postavke Vašeg pretraživača ne dozvoljavaju operacije automatskog izrezivanja. Molimo koristite kraticu na tipkovnici (Ctrl/Cmd+X).","paste":"Zalijepi","pasteArea":"Prostor za ljepljenje","pasteMsg":"Molimo zaljepite unutar doljnjeg okvira koristeći tipkovnicu (<STRONG>Ctrl/Cmd+V</STRONG>) i kliknite <STRONG>OK</STRONG>.","securityMsg":"Zbog sigurnosnih postavki Vašeg pretraživača, editor nema direktan pristup Vašem međuspremniku. Potrebno je ponovno zalijepiti tekst u ovaj prozor.","title":"Zalijepi"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatski","bgColorTitle":"Boja pozadine","colors":{"000":"Crna","800000":"Kesten","8B4513":"Smeđa","2F4F4F":"Tamno siva","008080":"Teal","000080":"Mornarska","4B0082":"Indigo","696969":"Tamno siva","B22222":"Vatrena cigla","A52A2A":"Smeđa","DAA520":"Zlatna","006400":"Tamno zelena","40E0D0":"Tirkizna","0000CD":"Srednje plava","800080":"Ljubičasta","808080":"Siva","F00":"Crvena","FF8C00":"Tamno naranđasta","FFD700":"Zlatna","008000":"Zelena","0FF":"Cijan","00F":"Plava","EE82EE":"Ljubičasta","A9A9A9":"Mutno siva","FFA07A":"Svijetli losos","FFA500":"Naranđasto","FFFF00":"Žuto","00FF00":"Limun","AFEEEE":"Blijedo tirkizna","ADD8E6":"Svijetlo plava","DDA0DD":"Šljiva","D3D3D3":"Svijetlo siva","FFF0F5":"Lavanda rumeno","FAEBD7":"Antikno bijela","FFFFE0":"Svijetlo žuta","F0FFF0":"Med","F0FFFF":"Azurna","F0F8FF":"Alice plava","E6E6FA":"Lavanda","FFF":"Bijela"},"more":"Više boja...","panelTitle":"Boje","textColorTitle":"Boja teksta"},"colordialog":{"clear":"Očisti","highlight":"Istaknuto","options":"Opcije boje","selected":"Odabrana boja","title":"Odaberi boju"},"templates":{"button":"Predlošci","emptyListMsg":"(Nema definiranih predložaka)","insertOption":"Zamijeni trenutne sadržaje","options":"Opcije predložaka","selectPromptMsg":"Molimo odaberite predložak koji želite otvoriti<br>(stvarni sadržaj će biti izgubljen):","title":"Predlošci sadržaja"},"contextmenu":{"options":"Opcije izbornika"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Savjetodavni naslov","cssClassInputLabel":"Klase stilova","edit":"Uredi DIV","inlineStyleInputLabel":"Stil u liniji","langDirLTRLabel":"S lijeva na desno (LTR)","langDirLabel":"Smjer jezika","langDirRTLLabel":"S desna na lijevo (RTL)","languageCodeInputLabel":"Jezični kod","remove":"Ukloni DIV","styleSelectLabel":"Stil","title":"Napravi DIV kontejner","toolbar":"Napravi DIV kontejner"},"toolbar":{"toolbarCollapse":"Smanji alatnu traku","toolbarExpand":"Proširi alatnu traku","toolbarGroups":{"document":"Dokument","clipboard":"Međuspremnik/Poništi","editing":"Uređivanje","forms":"Forme","basicstyles":"Osnovni stilovi","paragraph":"Paragraf","links":"Veze","insert":"Umetni","styles":"Stilovi","colors":"Boje","tools":"Alatke"},"toolbars":"Alatne trake uređivača teksta"},"elementspath":{"eleLabel":"Putanja elemenata","eleTitle":"%1 element"},"find":{"find":"Pronađi","findOptions":"Opcije traženja","findWhat":"Pronađi:","matchCase":"Usporedi mala/velika slova","matchCyclic":"Usporedi kružno","matchWord":"Usporedi cijele riječi","notFoundMsg":"Traženi tekst nije pronađen.","replace":"Zamijeni","replaceAll":"Zamijeni sve","replaceSuccessMsg":"Zamijenjeno %1 pojmova.","replaceWith":"Zamijeni s:","title":"Pronađi i zamijeni"},"fakeobjects":{"anchor":"Sidro","flash":"Flash animacija","hiddenfield":"Sakriveno polje","iframe":"IFrame","unknown":"Nepoznati objekt"},"flash":{"access":"Script Access","accessAlways":"Uvijek","accessNever":"Nikad","accessSameDomain":"Ista domena","alignAbsBottom":"Abs dolje","alignAbsMiddle":"Abs sredina","alignBaseline":"Bazno","alignTextTop":"Vrh teksta","bgcolor":"Boja pozadine","chkFull":"Omogući Fullscreen","chkLoop":"Ponavljaj","chkMenu":"Omogući Flash izbornik","chkPlay":"Auto Play","flashvars":"Varijable za Flash","hSpace":"HSpace","properties":"Flash svojstva","propertiesTab":"Svojstva","quality":"Kvaliteta","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Omjer","scaleAll":"Prikaži sve","scaleFit":"Točna veličina","scaleNoBorder":"Bez okvira","title":"Flash svojstva","vSpace":"VSpace","validateHSpace":"HSpace mora biti broj.","validateSrc":"Molimo upišite URL link","validateVSpace":"VSpace mora biti broj.","windowMode":"Vrsta prozora","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Veličina","voiceLabel":"Veličina slova","panelTitle":"Veličina"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Button svojstva","text":"Tekst (vrijednost)","type":"Vrsta","typeBtn":"Gumb","typeSbm":"Pošalji","typeRst":"Poništi"},"checkboxAndRadio":{"checkboxTitle":"Checkbox svojstva","radioTitle":"Radio Button svojstva","value":"Vrijednost","selected":"Odabrano"},"form":{"title":"Form svojstva","menu":"Form svojstva","action":"Akcija","method":"Metoda","encoding":"Encoding"},"hidden":{"title":"Hidden Field svojstva","name":"Ime","value":"Vrijednost"},"select":{"title":"Selection svojstva","selectInfo":"Info","opAvail":"Dostupne opcije","value":"Vrijednost","size":"Veličina","lines":"linija","chkMulti":"Dozvoli višestruki odabir","opText":"Tekst","opValue":"Vrijednost","btnAdd":"Dodaj","btnModify":"Promijeni","btnUp":"Gore","btnDown":"Dolje","btnSetValue":"Postavi kao odabranu vrijednost","btnDelete":"Obriši"},"textarea":{"title":"Textarea svojstva","cols":"Kolona","rows":"Redova"},"textfield":{"title":"Text Field svojstva","name":"Ime","value":"Vrijednost","charWidth":"Širina","maxChars":"Najviše karaktera","type":"Vrsta","typeText":"Tekst","typePass":"Šifra","typeEmail":"Email","typeSearch":"Traži","typeTel":"Broj telefona","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatirano"},"horizontalrule":{"toolbar":"Ubaci vodoravnu liniju"},"iframe":{"border":"Prikaži okvir IFrame-a","noUrl":"Unesite URL iframe-a","scrolling":"Omogući trake za skrolanje","title":"IFrame svojstva","toolbar":"IFrame"},"image":{"alertUrl":"Unesite URL slike","alt":"Alternativni tekst","border":"Okvir","btnUpload":"Pošalji na server","button2Img":"Želite li promijeniti odabrani gumb u jednostavnu sliku?","hSpace":"HSpace","img2Button":"Želite li promijeniti odabranu sliku u gumb?","infoTab":"Info slike","linkTab":"Link","lockRatio":"Zaključaj odnos","menu":"Svojstva slika","resetSize":"Obriši veličinu","title":"Svojstva slika","titleButton":"Image Button svojstva","upload":"Pošalji","urlMissing":"Nedostaje URL slike.","vSpace":"VSpace","validateBorder":"Okvir mora biti cijeli broj.","validateHSpace":"HSpace mora biti cijeli broj","validateVSpace":"VSpace mora biti cijeli broj."},"indent":{"indent":"Pomakni udesno","outdent":"Pomakni ulijevo"},"smiley":{"options":"Opcije smješka","title":"Ubaci smješka","toolbar":"Smješko"},"justify":{"block":"Blok poravnanje","center":"Središnje poravnanje","left":"Lijevo poravnanje","right":"Desno poravnanje"},"language":{"button":"Namjesti jezik","remove":"Makni jezik"},"link":{"acccessKey":"Pristupna tipka","advanced":"Napredno","advisoryContentType":"Advisory vrsta sadržaja","advisoryTitle":"Advisory naslov","anchor":{"toolbar":"Ubaci/promijeni sidro","menu":"Svojstva sidra","title":"Svojstva sidra","name":"Ime sidra","errorName":"Molimo unesite ime sidra","remove":"Ukloni sidro"},"anchorId":"Po Id elementa","anchorName":"Po nazivu sidra","charset":"Kodna stranica povezanih resursa","cssClasses":"Stylesheet klase","emailAddress":"E-Mail adresa","emailBody":"Sadržaj poruke","emailSubject":"Naslov","id":"Id","info":"Link Info","langCode":"Smjer jezika","langDir":"Smjer jezika","langDirLTR":"S lijeva na desno (LTR)","langDirRTL":"S desna na lijevo (RTL)","menu":"Promijeni link","name":"Naziv","noAnchors":"(Nema dostupnih sidra)","noEmail":"Molimo upišite e-mail adresu","noUrl":"Molimo upišite URL link","other":"<drugi>","popupDependent":"Ovisno (Netscape)","popupFeatures":"Mogućnosti popup prozora","popupFullScreen":"Cijeli ekran (IE)","popupLeft":"Lijeva pozicija","popupLocationBar":"Traka za lokaciju","popupMenuBar":"Izborna traka","popupResizable":"Promjenjiva veličina","popupScrollBars":"Scroll traka","popupStatusBar":"Statusna traka","popupToolbar":"Traka s alatima","popupTop":"Gornja pozicija","rel":"Veza","selectAnchor":"Odaberi sidro","styles":"Stil","tabIndex":"Tab Indeks","target":"Meta","targetFrame":"<okvir>","targetFrameName":"Ime ciljnog okvira","targetPopup":"<popup prozor>","targetPopupName":"Naziv popup prozora","title":"Link","toAnchor":"Sidro na ovoj stranici","toEmail":"E-Mail","toUrl":"URL","toolbar":"Ubaci/promijeni link","type":"Link vrsta","unlink":"Ukloni link","upload":"Pošalji"},"list":{"bulletedlist":"Obična lista","numberedlist":"Brojčana lista"},"liststyle":{"armenian":"Armenijska numeracija","bulletedTitle":"Svojstva liste","circle":"Krug","decimal":"Decimalna numeracija (1, 2, 3, itd.)","decimalLeadingZero":"Decimalna s vodećom nulom (01, 02, 03, itd)","disc":"Disk","georgian":"Gruzijska numeracija(an, ban, gan, etc.)","lowerAlpha":"Znakovi mala slova (a, b, c, d, e, itd.)","lowerGreek":"Grčka numeracija mala slova (alfa, beta, gama, itd).","lowerRoman":"Romanska numeracija mala slova (i, ii, iii, iv, v, itd.)","none":"Bez","notset":"<nije određen>","numberedTitle":"Svojstva brojčane liste","square":"Kvadrat","start":"Početak","type":"Vrsta","upperAlpha":"Znakovi velika slova (A, B, C, D, E, itd.)","upperRoman":"Romanska numeracija velika slova (I, II, III, IV, V, itd.)","validateStartNumber":"Početak brojčane liste mora biti cijeli broj."},"magicline":{"title":"Ubaci paragraf ovdje"},"maximize":{"maximize":"Povećaj","minimize":"Smanji"},"newpage":{"toolbar":"Nova stranica"},"pagebreak":{"alt":"Prijelom stranice","toolbar":"Ubaci prijelom stranice"},"pastetext":{"button":"Zalijepi kao čisti tekst","title":"Zalijepi kao čisti tekst"},"pastefromword":{"confirmCleanup":"Tekst koji želite zalijepiti čini se da je kopiran iz Worda. Želite li prije očistiti tekst?","error":"Nije moguće očistiti podatke za ljepljenje zbog interne greške","title":"Zalijepi iz Worda","toolbar":"Zalijepi iz Worda"},"preview":{"preview":"Pregledaj"},"print":{"toolbar":"Ispiši"},"removeformat":{"toolbar":"Ukloni formatiranje"},"save":{"toolbar":"Snimi"},"selectall":{"toolbar":"Odaberi sve"},"showblocks":{"toolbar":"Prikaži blokove"},"sourcearea":{"toolbar":"Kôd"},"specialchar":{"options":"Opcije specijalnih znakova","title":"Odaberite posebni karakter","toolbar":"Ubaci posebne znakove"},"scayt":{"btn_about":"O SCAYT","btn_dictionaries":"Rječnici","btn_disable":"Onemogući SCAYT","btn_enable":"Omogući SCAYT","btn_langs":"Jezici","btn_options":"Opcije","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Stilovi formatiranja","panelTitle1":"Block stilovi","panelTitle2":"Inline stilovi","panelTitle3":"Object stilovi"},"table":{"border":"Veličina okvira","caption":"Naslov","cell":{"menu":"Ćelija","insertBefore":"Ubaci ćeliju prije","insertAfter":"Ubaci ćeliju poslije","deleteCell":"Izbriši ćelije","merge":"Spoji ćelije","mergeRight":"Spoji desno","mergeDown":"Spoji dolje","splitHorizontal":"Podijeli ćeliju vodoravno","splitVertical":"Podijeli ćeliju okomito","title":"Svojstva ćelije","cellType":"Vrsta ćelije","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Prelazak u novi red","hAlign":"Vodoravno poravnanje","vAlign":"Okomito poravnanje","alignBaseline":"Osnovna linija","bgColor":"Boja pozadine","borderColor":"Boja ruba","data":"Podatak","header":"Zaglavlje","yes":"Da","no":"ne","invalidWidth":"Širina ćelije mora biti broj.","invalidHeight":"Visina ćelije mora biti broj.","invalidRowSpan":"Rows span mora biti cijeli broj.","invalidColSpan":"Columns span mora biti cijeli broj.","chooseColor":"Odaberi"},"cellPad":"Razmak ćelija","cellSpace":"Prostornost ćelija","column":{"menu":"Kolona","insertBefore":"Ubaci kolonu prije","insertAfter":"Ubaci kolonu poslije","deleteColumn":"Izbriši kolone"},"columns":"Kolona","deleteTable":"Izbriši tablicu","headers":"Zaglavlje","headersBoth":"Oba","headersColumn":"Prva kolona","headersNone":"Ništa","headersRow":"Prvi red","invalidBorder":"Debljina ruba mora biti broj.","invalidCellPadding":"Razmak ćelija mora biti broj.","invalidCellSpacing":"Prostornost ćelija mora biti broj.","invalidCols":"Broj kolona mora biti broj veći od 0.","invalidHeight":"Visina tablice mora biti broj.","invalidRows":"Broj redova mora biti broj veći od 0.","invalidWidth":"Širina tablice mora biti broj.","menu":"Svojstva tablice","row":{"menu":"Red","insertBefore":"Ubaci red prije","insertAfter":"Ubaci red poslije","deleteRow":"Izbriši redove"},"rows":"Redova","summary":"Sažetak","title":"Svojstva tablice","toolbar":"Tablica","widthPc":"postotaka","widthPx":"piksela","widthUnit":"jedinica širine"},"undo":{"redo":"Ponovi","undo":"Poništi"},"wsc":{"btnIgnore":"Zanemari","btnIgnoreAll":"Zanemari sve","btnReplace":"Zamijeni","btnReplaceAll":"Zamijeni sve","btnUndo":"Vrati","changeTo":"Promijeni u","errorLoading":"Greška učitavanja aplikacije: %s.","ieSpellDownload":"Provjera pravopisa nije instalirana. Želite li skinuti provjeru pravopisa?","manyChanges":"Provjera završena: Promijenjeno %1 riječi","noChanges":"Provjera završena: Nije napravljena promjena","noMispell":"Provjera završena: Nema grešaka","noSuggestions":"-Nema preporuke-","notAvailable":"Žao nam je, ali usluga trenutno nije dostupna.","notInDic":"Nije u rječniku","oneChange":"Provjera završena: Jedna riječ promjenjena","progress":"Provjera u tijeku...","title":"Provjera pravopisa","toolbar":"Provjeri pravopis"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/hu.js b/wqflask/wqflask/static/packages/ckeditor/lang/hu.js
deleted file mode 100644
index 42347bf4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/hu.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['hu']={"editor":"HTML szerkesztő","editorPanel":"Rich Text szerkesztő panel","common":{"editorHelp":"Segítségért nyomjon ALT 0","browseServer":"Böngészés a szerveren","url":"Hivatkozás","protocol":"Protokoll","upload":"Feltöltés","uploadSubmit":"Küldés a szerverre","image":"Kép","flash":"Flash","form":"Űrlap","checkbox":"Jelölőnégyzet","radio":"Választógomb","textField":"Szövegmező","textarea":"Szövegterület","hiddenField":"Rejtettmező","button":"Gomb","select":"Legördülő lista","imageButton":"Képgomb","notSet":"<nincs beállítva>","id":"Azonosító","name":"Név","langDir":"Írás iránya","langDirLtr":"Balról jobbra","langDirRtl":"Jobbról balra","langCode":"Nyelv kódja","longDescr":"Részletes leírás webcíme","cssClass":"Stíluskészlet","advisoryTitle":"Súgócimke","cssStyle":"Stílus","ok":"Rendben","cancel":"Mégsem","close":"Bezárás","preview":"Előnézet","resize":"Húzza az átméretezéshez","generalTab":"Általános","advancedTab":"További opciók","validateNumberFailed":"A mezőbe csak számokat írhat.","confirmNewPage":"Minden nem mentett változás el fog veszni! Biztosan be szeretné tölteni az oldalt?","confirmCancel":"Az űrlap tartalma megváltozott, ám a változásokat nem rögzítette. Biztosan be szeretné zárni az űrlapot?","options":"Beállítások","target":"Cél","targetNew":"Új ablak (_blank)","targetTop":"Legfelső ablak (_top)","targetSelf":"Aktuális ablakban (_self)","targetParent":"Szülő ablak (_parent)","langDirLTR":"Balról jobbra (LTR)","langDirRTL":"Jobbról balra (RTL)","styles":"Stílus","cssClasses":"Stíluslap osztály","width":"Szélesség","height":"Magasság","align":"Igazítás","alignLeft":"Bal","alignRight":"Jobbra","alignCenter":"Középre","alignJustify":"Sorkizárt","alignTop":"Tetejére","alignMiddle":"Középre","alignBottom":"Aljára","alignNone":"None","invalidValue":"Érvénytelen érték.","invalidHeight":"A magasság mezőbe csak számokat írhat.","invalidWidth":"A szélesség mezőbe csak számokat írhat.","invalidCssLength":"\"%1\"-hez megadott érték csakis egy pozitív szám lehet, esetleg egy érvényes CSS egységgel megjelölve(px, %, in, cm, mm, em, ex, pt vagy pc).","invalidHtmlLength":"\"%1\"-hez megadott érték csakis egy pozitív szám lehet, esetleg egy érvényes HTML egységgel megjelölve(px vagy %).","invalidInlineStyle":"Az inline stílusnak megadott értéknek tartalmaznia kell egy vagy több rekordot a \"name : value\" formátumban, pontosvesszővel elválasztva.","cssLengthTooltip":"Adjon meg egy számot értéknek pixelekben vagy egy számot érvényes CSS mértékegységben (px, %, in, cm, mm, em, ex, pt, vagy pc).","unavailable":"%1<span class=\"cke_accessibility\">, nem elérhető</span>"},"about":{"copy":"Copyright &copy; $1. Minden jog fenntartva.","dlgTitle":"CKEditor névjegy","help":"Itt találsz segítséget: $1","moreInfo":"Licenszelési információkért kérjük látogassa meg weboldalunkat:","title":"CKEditor névjegy","userGuide":"CKEditor Felhasználói útmutató"},"basicstyles":{"bold":"Félkövér","italic":"Dőlt","strike":"Áthúzott","subscript":"Alsó index","superscript":"Felső index","underline":"Aláhúzott"},"bidi":{"ltr":"Szöveg iránya balról jobbra","rtl":"Szöveg iránya jobbról balra"},"blockquote":{"toolbar":"Idézet blokk"},"clipboard":{"copy":"Másolás","copyError":"A böngésző biztonsági beállításai nem engedélyezik a szerkesztőnek, hogy végrehajtsa a másolás műveletet. Használja az alábbi billentyűkombinációt (Ctrl/Cmd+X).","cut":"Kivágás","cutError":"A böngésző biztonsági beállításai nem engedélyezik a szerkesztőnek, hogy végrehajtsa a kivágás műveletet. Használja az alábbi billentyűkombinációt (Ctrl/Cmd+X).","paste":"Beillesztés","pasteArea":"Beszúrás mező","pasteMsg":"Másolja be az alábbi mezőbe a <STRONG>Ctrl/Cmd+V</STRONG> billentyűk lenyomásával, majd nyomjon <STRONG>Rendben</STRONG>-t.","securityMsg":"A böngésző biztonsági beállításai miatt a szerkesztő nem képes hozzáférni a vágólap adataihoz. Illeszd be újra ebben az ablakban.","title":"Beillesztés"},"button":{"selectedLabel":"%1 (Kiválasztva)"},"colorbutton":{"auto":"Automatikus","bgColorTitle":"Háttérszín","colors":{"000":"Fekete","800000":"Bordó","8B4513":"Barna","2F4F4F":"Sötét türkiz","008080":"Türkiz","000080":"Király kék","4B0082":"Indigó kék","696969":"Szürke","B22222":"Tégla vörös","A52A2A":"Vörös","DAA520":"Arany sárga","006400":"Sötét zöld","40E0D0":"Türkiz","0000CD":"Kék","800080":"Lila","808080":"Szürke","F00":"Piros","FF8C00":"Sötét narancs","FFD700":"Arany","008000":"Zöld","0FF":"Türkiz","00F":"Kék","EE82EE":"Rózsaszín","A9A9A9":"Sötét szürke","FFA07A":"Lazac","FFA500":"Narancs","FFFF00":"Citromsárga","00FF00":"Neon zöld","AFEEEE":"Világos türkiz","ADD8E6":"Világos kék","DDA0DD":"Világos lila","D3D3D3":"Világos szürke","FFF0F5":"Lavender Blush","FAEBD7":"Törtfehér","FFFFE0":"Világos sárga","F0FFF0":"Menta","F0FFFF":"Azúr kék","F0F8FF":"Halvány kék","E6E6FA":"Lavender","FFF":"Fehér"},"more":"További színek...","panelTitle":"Színek","textColorTitle":"Betűszín"},"colordialog":{"clear":"Ürítés","highlight":"Nagyítás","options":"Szín opciók","selected":"Kiválasztott","title":"Válasszon színt"},"templates":{"button":"Sablonok","emptyListMsg":"(Nincs sablon megadva)","insertOption":"Kicseréli a jelenlegi tartalmat","options":"Sablon opciók","selectPromptMsg":"Válassza ki melyik sablon nyíljon meg a szerkesztőben<br>(a jelenlegi tartalom elveszik):","title":"Elérhető sablonok"},"contextmenu":{"options":"Helyi menü opciók"},"div":{"IdInputLabel":"Azonosító","advisoryTitleInputLabel":"Tipp szöveg","cssClassInputLabel":"Stíluslap osztály","edit":"DIV szerkesztése","inlineStyleInputLabel":"Inline stílus","langDirLTRLabel":"Balról jobbra (LTR)","langDirLabel":"Nyelvi irány","langDirRTLLabel":"Jobbról balra (RTL)","languageCodeInputLabel":" Nyelv kódja","remove":"DIV eltávolítása","styleSelectLabel":"Stílus","title":"DIV tároló létrehozása","toolbar":"DIV tároló létrehozása"},"toolbar":{"toolbarCollapse":"Eszköztár összecsukása","toolbarExpand":"Eszköztár szétnyitása","toolbarGroups":{"document":"Dokumentum","clipboard":"Vágólap/Visszavonás","editing":"Szerkesztés","forms":"Űrlapok","basicstyles":"Alapstílusok","paragraph":"Bekezdés","links":"Hivatkozások","insert":"Beszúrás","styles":"Stílusok","colors":"Színek","tools":"Eszközök"},"toolbars":"Szerkesztő Eszköztár"},"elementspath":{"eleLabel":"Elem utak","eleTitle":"%1 elem"},"find":{"find":"Keresés","findOptions":"Find Options","findWhat":"Keresett szöveg:","matchCase":"kis- és nagybetű megkülönböztetése","matchCyclic":"Ciklikus keresés","matchWord":"csak ha ez a teljes szó","notFoundMsg":"A keresett szöveg nem található.","replace":"Csere","replaceAll":"Az összes cseréje","replaceSuccessMsg":"%1 egyezőség cserélve.","replaceWith":"Csere erre:","title":"Keresés és csere"},"fakeobjects":{"anchor":"Horgony","flash":"Flash animáció","hiddenfield":"Rejtett mezõ","iframe":"IFrame","unknown":"Ismeretlen objektum"},"flash":{"access":"Szkript hozzáférés","accessAlways":"Mindig","accessNever":"Soha","accessSameDomain":"Azonos domainről","alignAbsBottom":"Legaljára","alignAbsMiddle":"Közepére","alignBaseline":"Alapvonalhoz","alignTextTop":"Szöveg tetejére","bgcolor":"Háttérszín","chkFull":"Teljes képernyő engedélyezése","chkLoop":"Folyamatosan","chkMenu":"Flash menü engedélyezése","chkPlay":"Automata lejátszás","flashvars":"Flash változók","hSpace":"Vízsz. táv","properties":"Flash tulajdonságai","propertiesTab":"Tulajdonságok","quality":"Minőség","qualityAutoHigh":"Automata jó","qualityAutoLow":"Automata gyenge","qualityBest":"Legjobb","qualityHigh":"Jó","qualityLow":"Gyenge","qualityMedium":"Közepes","scale":"Méretezés","scaleAll":"Mindent mutat","scaleFit":"Teljes kitöltés","scaleNoBorder":"Keret nélkül","title":"Flash tulajdonságai","vSpace":"Függ. táv","validateHSpace":"A vízszintes távolsűág mezőbe csak számokat írhat.","validateSrc":"Adja meg a hivatkozás webcímét","validateVSpace":"A függőleges távolsűág mezőbe csak számokat írhat.","windowMode":"Ablak mód","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Méret","voiceLabel":"Betűméret","panelTitle":"Méret"},"label":"Betűtípus","panelTitle":"Betűtípus","voiceLabel":"Betűtípus"},"forms":{"button":{"title":"Gomb tulajdonságai","text":"Szöveg (Érték)","type":"Típus","typeBtn":"Gomb","typeSbm":"Küldés","typeRst":"Alaphelyzet"},"checkboxAndRadio":{"checkboxTitle":"Jelölőnégyzet tulajdonságai","radioTitle":"Választógomb tulajdonságai","value":"Érték","selected":"Kiválasztott"},"form":{"title":"Űrlap tulajdonságai","menu":"Űrlap tulajdonságai","action":"Adatfeldolgozást végző hivatkozás","method":"Adatküldés módja","encoding":"Kódolás"},"hidden":{"title":"Rejtett mező tulajdonságai","name":"Név","value":"Érték"},"select":{"title":"Legördülő lista tulajdonságai","selectInfo":"Alaptulajdonságok","opAvail":"Elérhető opciók","value":"Érték","size":"Méret","lines":"sor","chkMulti":"több sor is kiválasztható","opText":"Szöveg","opValue":"Érték","btnAdd":"Hozzáad","btnModify":"Módosít","btnUp":"Fel","btnDown":"Le","btnSetValue":"Legyen az alapértelmezett érték","btnDelete":"Töröl"},"textarea":{"title":"Szövegterület tulajdonságai","cols":"Karakterek száma egy sorban","rows":"Sorok száma"},"textfield":{"title":"Szövegmező tulajdonságai","name":"Név","value":"Érték","charWidth":"Megjelenített karakterek száma","maxChars":"Maximális karakterszám","type":"Típus","typeText":"Szöveg","typePass":"Jelszó","typeEmail":"Ímél","typeSearch":"Keresés","typeTel":"Telefonszám","typeUrl":"URL"}},"format":{"label":"Formátum","panelTitle":"Formátum","tag_address":"Címsor","tag_div":"Bekezdés (DIV)","tag_h1":"Fejléc 1","tag_h2":"Fejléc 2","tag_h3":"Fejléc 3","tag_h4":"Fejléc 4","tag_h5":"Fejléc 5","tag_h6":"Fejléc 6","tag_p":"Normál","tag_pre":"Formázott"},"horizontalrule":{"toolbar":"Elválasztóvonal beillesztése"},"iframe":{"border":"Legyen keret","noUrl":"Kérem írja be a iframe URL-t","scrolling":"Gördítősáv bekapcsolása","title":"IFrame Tulajdonságok","toolbar":"IFrame"},"image":{"alertUrl":"Töltse ki a kép webcímét","alt":"Buborék szöveg","border":"Keret","btnUpload":"Küldés a szerverre","button2Img":"A kiválasztott képgombból sima képet szeretne csinálni?","hSpace":"Vízsz. táv","img2Button":"A kiválasztott képből képgombot szeretne csinálni?","infoTab":"Alaptulajdonságok","linkTab":"Hivatkozás","lockRatio":"Arány megtartása","menu":"Kép tulajdonságai","resetSize":"Eredeti méret","title":"Kép tulajdonságai","titleButton":"Képgomb tulajdonságai","upload":"Feltöltés","urlMissing":"Hiányzik a kép URL-je","vSpace":"Függ. táv","validateBorder":"A keret méretének egész számot kell beírni!","validateHSpace":"Vízszintes távolságnak egész számot kell beírni!","validateVSpace":"Függőleges távolságnak egész számot kell beírni!"},"indent":{"indent":"Behúzás növelése","outdent":"Behúzás csökkentése"},"smiley":{"options":"Hangulatjel opciók","title":"Hangulatjel beszúrása","toolbar":"Hangulatjelek"},"justify":{"block":"Sorkizárt","center":"Középre","left":"Balra","right":"Jobbra"},"language":{"button":"Nyelv beállítása","remove":"Nyelv eltávolítása"},"link":{"acccessKey":"Billentyűkombináció","advanced":"További opciók","advisoryContentType":"Súgó tartalomtípusa","advisoryTitle":"Súgócimke","anchor":{"toolbar":"Horgony beillesztése/szerkesztése","menu":"Horgony tulajdonságai","title":"Horgony tulajdonságai","name":"Horgony neve","errorName":"Kérem adja meg a horgony nevét","remove":"Horgony eltávolítása"},"anchorId":"Azonosító szerint","anchorName":"Horgony név szerint","charset":"Hivatkozott tartalom kódlapja","cssClasses":"Stíluskészlet","emailAddress":"E-Mail cím","emailBody":"Üzenet","emailSubject":"Üzenet tárgya","id":"Id","info":"Alaptulajdonságok","langCode":"Írás iránya","langDir":"Írás iránya","langDirLTR":"Balról jobbra","langDirRTL":"Jobbról balra","menu":"Hivatkozás módosítása","name":"Név","noAnchors":"(Nincs horgony a dokumentumban)","noEmail":"Adja meg az E-Mail címet","noUrl":"Adja meg a hivatkozás webcímét","other":"<más>","popupDependent":"Szülőhöz kapcsolt (csak Netscape)","popupFeatures":"Felugró ablak jellemzői","popupFullScreen":"Teljes képernyő (csak IE)","popupLeft":"Bal pozíció","popupLocationBar":"Címsor","popupMenuBar":"Menü sor","popupResizable":"Átméretezés","popupScrollBars":"Gördítősáv","popupStatusBar":"Állapotsor","popupToolbar":"Eszköztár","popupTop":"Felső pozíció","rel":"Kapcsolat típusa","selectAnchor":"Horgony választása","styles":"Stílus","tabIndex":"Tabulátor index","target":"Tartalom megjelenítése","targetFrame":"<keretben>","targetFrameName":"Keret neve","targetPopup":"<felugró ablakban>","targetPopupName":"Felugró ablak neve","title":"Hivatkozás tulajdonságai","toAnchor":"Horgony az oldalon","toEmail":"E-Mail","toUrl":"URL","toolbar":"Hivatkozás beillesztése/módosítása","type":"Hivatkozás típusa","unlink":"Hivatkozás törlése","upload":"Feltöltés"},"list":{"bulletedlist":"Felsorolás","numberedlist":"Számozás"},"liststyle":{"armenian":"Örmény számozás","bulletedTitle":"Pontozott lista tulajdonságai","circle":"Kör","decimal":"Arab számozás (1, 2, 3, stb.)","decimalLeadingZero":"Számozás bevezető nullákkal (01, 02, 03, stb.)","disc":"Korong","georgian":"Grúz számozás (an, ban, gan, stb.)","lowerAlpha":"Kisbetűs (a, b, c, d, e, stb.)","lowerGreek":"Görög (alpha, beta, gamma, stb.)","lowerRoman":"Római kisbetűs (i, ii, iii, iv, v, stb.)","none":"Nincs","notset":"<Nincs beállítva>","numberedTitle":"Sorszámozott lista tulajdonságai","square":"Négyzet","start":"Kezdőszám","type":"Típus","upperAlpha":"Nagybetűs (A, B, C, D, E, stb.)","upperRoman":"Római nagybetűs (I, II, III, IV, V, stb.)","validateStartNumber":"A kezdőszám nem lehet tört érték."},"magicline":{"title":"Szúrja be a bekezdést ide"},"maximize":{"maximize":"Teljes méret","minimize":"Kis méret"},"newpage":{"toolbar":"Új oldal"},"pagebreak":{"alt":"Oldaltörés","toolbar":"Oldaltörés beillesztése"},"pastetext":{"button":"Beillesztés formázatlan szövegként","title":"Beillesztés formázatlan szövegként"},"pastefromword":{"confirmCleanup":"Úgy tűnik a beillesztett szöveget Word-ből másolt át. Meg szeretné tisztítani a szöveget? (ajánlott)","error":"Egy belső hiba miatt nem sikerült megtisztítani a szöveget","title":"Beillesztés Word-ből","toolbar":"Beillesztés Word-ből"},"preview":{"preview":"Előnézet"},"print":{"toolbar":"Nyomtatás"},"removeformat":{"toolbar":"Formázás eltávolítása"},"save":{"toolbar":"Mentés"},"selectall":{"toolbar":"Mindent kijelöl"},"showblocks":{"toolbar":"Blokkok megjelenítése"},"sourcearea":{"toolbar":"Forráskód"},"specialchar":{"options":"Speciális karakter opciók","title":"Speciális karakter választása","toolbar":"Speciális karakter beillesztése"},"scayt":{"btn_about":"SCAYT névjegy","btn_dictionaries":"Szótár","btn_disable":"SCAYT letiltása","btn_enable":"SCAYT engedélyezése","btn_langs":"Nyelvek","btn_options":"Beállítások","text_title":""},"stylescombo":{"label":"Stílus","panelTitle":"Formázási stílusok","panelTitle1":"Blokk stílusok","panelTitle2":"Inline stílusok","panelTitle3":"Objektum stílusok"},"table":{"border":"Szegélyméret","caption":"Felirat","cell":{"menu":"Cella","insertBefore":"Beszúrás balra","insertAfter":"Beszúrás jobbra","deleteCell":"Cellák törlése","merge":"Cellák egyesítése","mergeRight":"Cellák egyesítése jobbra","mergeDown":"Cellák egyesítése lefelé","splitHorizontal":"Cellák szétválasztása vízszintesen","splitVertical":"Cellák szétválasztása függőlegesen","title":"Cella tulajdonságai","cellType":"Cella típusa","rowSpan":"Függőleges egyesítés","colSpan":"Vízszintes egyesítés","wordWrap":"Hosszú sorok törése","hAlign":"Vízszintes igazítás","vAlign":"Függőleges igazítás","alignBaseline":"Alapvonalra","bgColor":"Háttér színe","borderColor":"Keret színe","data":"Adat","header":"Fejléc","yes":"Igen","no":"Nem","invalidWidth":"A szélesség mezőbe csak számokat írhat.","invalidHeight":"A magasság mezőbe csak számokat írhat.","invalidRowSpan":"A függőleges egyesítés mezőbe csak számokat írhat.","invalidColSpan":"A vízszintes egyesítés mezőbe csak számokat írhat.","chooseColor":"Válasszon"},"cellPad":"Cella belső margó","cellSpace":"Cella térköz","column":{"menu":"Oszlop","insertBefore":"Beszúrás balra","insertAfter":"Beszúrás jobbra","deleteColumn":"Oszlopok törlése"},"columns":"Oszlopok","deleteTable":"Táblázat törlése","headers":"Fejlécek","headersBoth":"Mindkettő","headersColumn":"Első oszlop","headersNone":"Nincsenek","headersRow":"Első sor","invalidBorder":"A szegélyméret mezőbe csak számokat írhat.","invalidCellPadding":"A cella belső margó mezőbe csak számokat írhat.","invalidCellSpacing":"A cella térköz mezőbe csak számokat írhat.","invalidCols":"Az oszlopok számának nagyobbnak kell lenni mint 0.","invalidHeight":"A magasság mezőbe csak számokat írhat.","invalidRows":"A sorok számának nagyobbnak kell lenni mint 0.","invalidWidth":"A szélesség mezőbe csak számokat írhat.","menu":"Táblázat tulajdonságai","row":{"menu":"Sor","insertBefore":"Beszúrás fölé","insertAfter":"Beszúrás alá","deleteRow":"Sorok törlése"},"rows":"Sorok","summary":"Leírás","title":"Táblázat tulajdonságai","toolbar":"Táblázat","widthPc":"százalék","widthPx":"képpont","widthUnit":"Szélesség egység"},"undo":{"redo":"Ismétlés","undo":"Visszavonás"},"wsc":{"btnIgnore":"Kihagyja","btnIgnoreAll":"Mindet kihagyja","btnReplace":"Csere","btnReplaceAll":"Összes cseréje","btnUndo":"Visszavonás","changeTo":"Módosítás","errorLoading":"Hiba a szolgáltatás host betöltése közben: %s.","ieSpellDownload":"A helyesírás-ellenőrző nincs telepítve. Szeretné letölteni most?","manyChanges":"Helyesírás-ellenőrzés kész: %1 szó cserélve","noChanges":"Helyesírás-ellenőrzés kész: Nincs változtatott szó","noMispell":"Helyesírás-ellenőrzés kész: Nem találtam hibát","noSuggestions":"Nincs javaslat","notAvailable":"Sajnálom, de a szolgáltatás jelenleg nem elérhető.","notInDic":"Nincs a szótárban","oneChange":"Helyesírás-ellenőrzés kész: Egy szó cserélve","progress":"Helyesírás-ellenőrzés folyamatban...","title":"Helyesírás ellenörző","toolbar":"Helyesírás-ellenőrzés"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/id.js b/wqflask/wqflask/static/packages/ckeditor/lang/id.js
deleted file mode 100644
index 15c23427..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/id.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['id']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Tekan ALT 0 untuk bantuan.","browseServer":"Jelajah Server","url":"URL","protocol":"Protokol","upload":"Unggah","uploadSubmit":"Kirim ke Server","image":"Gambar","flash":"Flash","form":"Formulir","checkbox":"Kotak Cek","radio":"Tombol Radio","textField":"Kolom Teks","textarea":"Area Teks","hiddenField":"Kolom Tersembunyi","button":"Tombol","select":"Kolom Seleksi","imageButton":"Tombol Gambar","notSet":"<tidak diatur>","id":"Id","name":"Nama","langDir":"Arah Bahasa","langDirLtr":"Kiri ke Kanan (LTR)","langDirRtl":"Kanan ke Kiri","langCode":"Kode Bahasa","longDescr":"Deskripsi URL Panjang","cssClass":"Kelas Stylesheet","advisoryTitle":"Penasehat Judul","cssStyle":"Gaya","ok":"OK","cancel":"Batal","close":"Tutup","preview":"Pratinjau","resize":"Ubah ukuran","generalTab":"Umum","advancedTab":"Advanced","validateNumberFailed":"Nilai ini tidak sebuah angka","confirmNewPage":"Semua perubahan yang tidak disimpan di konten ini akan hilang. Apakah anda yakin ingin memuat halaman baru?","confirmCancel":"Beberapa opsi telah berubah. Apakah anda yakin ingin menutup dialog?","options":"Opsi","target":"Sasaran","targetNew":"Jendela Baru (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Jendela yang Sama (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Kiri ke Kanan (LTR)","langDirRTL":"Kanan ke Kiri (RTL)","styles":"Gaya","cssClasses":"Kelas Stylesheet","width":"Lebar","height":"Tinggi","align":"Penjajaran","alignLeft":"Kiri","alignRight":"Kanan","alignCenter":"Tengah","alignJustify":"Rata kiri-kanan","alignTop":"Atas","alignMiddle":"Tengah","alignBottom":"Bawah","alignNone":"None","invalidValue":"Nilai tidak sah.","invalidHeight":"Tinggi harus sebuah angka.","invalidWidth":"Lebar harus sebuah angka.","invalidCssLength":"Nilai untuk \"%1\" harus sebuah angkat positif dengan atau tanpa pengukuran unit CSS yang sah (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Nilai yang dispesifikasian untuk kolom \"%1\" harus sebuah angka positif dengan atau tanpa sebuah unit pengukuran HTML (px atau %) yang valid.","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Masukkan sebuah angka untuk sebuah nilai dalam pixel atau sebuah angka dengan unit CSS yang sah (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, tidak tersedia</span>"},"about":{"copy":"Hak cipta &copy; $1. All rights reserved.","dlgTitle":"Tentang CKEditor","help":"Cel $1 untuk bantuan.","moreInfo":"Untuk informasi lisensi silahkan kunjungi web site kami:","title":"Tentang CKEditor","userGuide":"Petunjuk Pengguna CKEditor"},"basicstyles":{"bold":"Huruf Tebal","italic":"Huruf Miring","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Garis Bawah"},"bidi":{"ltr":"Arah penulisan dari kiri ke kanan.","rtl":"Arah penulisan dari kanan ke kiri."},"blockquote":{"toolbar":"Kutipan Blok"},"clipboard":{"copy":"Salin","copyError":"Pengaturan keamanan peramban anda tidak mengizinkan editor untuk mengeksekusi operasi menyalin secara otomatis. Mohon gunakan papan tuts (Ctrl/Cmd+C)","cut":"Potong","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Tempel","pasteArea":"Area Tempel","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Tempel"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Warna Latar Belakang","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Warna","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Contoh","emptyListMsg":"(Tidak ada contoh didefinisikan)","insertOption":"Ganti konten sebenarnya","options":"Opsi Contoh","selectPromptMsg":"Mohon pilih contoh untuk dibuka di editor","title":"Contoh Konten"},"contextmenu":{"options":"Opsi Konteks Pilihan"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Penasehat Judul","cssClassInputLabel":"Kelas Stylesheet","edit":"Sunting Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Kiri ke Kanan (LTR)","langDirLabel":"Arah Bahasa","langDirRTLLabel":"Kanan ke Kiri (RTL)","languageCodeInputLabel":"Kode Bahasa","remove":"Hapus Div","styleSelectLabel":"Gaya","title":"Ciptakan Wadah Div","toolbar":"Cipatakan Wadah Div"},"toolbar":{"toolbarCollapse":"Ciutkan Toolbar","toolbarExpand":"Bentangkan Toolbar","toolbarGroups":{"document":"Dokumen","clipboard":"Papan klip / Kembalikan perlakuan","editing":"Sunting","forms":"Formulir","basicstyles":"Gaya Dasar","paragraph":"Paragraf","links":"Tautan","insert":"Sisip","styles":"Gaya","colors":"Warna","tools":"Alat"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Temukan","findOptions":"Opsi menemukan","findWhat":"Temukan apa:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Ganti","replaceAll":"Ganti Semua","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Ganti dengan:","title":"Temukan dan Ganti"},"fakeobjects":{"anchor":"Anchor","flash":"Animasi Flash","hiddenfield":"Kolom Tersembunyi","iframe":"IFrame","unknown":"Obyek Tak Dikenal"},"flash":{"access":"Script Access","accessAlways":"Selalu","accessNever":"Tidak Pernah","accessSameDomain":"Domain yang sama","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Dasar","alignTextTop":"Text Top","bgcolor":"Warna Latar Belakang","chkFull":"Izinkan Layar Penuh","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Mainkan Otomatis","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properti","quality":"Kualitas","qualityAutoHigh":"Tinggi Otomatis","qualityAutoLow":"Rendah Otomatis","qualityBest":"Terbaik","qualityHigh":"Tinggi","qualityLow":"Rendah","qualityMedium":"Sedang","scale":"Scale","scaleAll":"Perlihatkan semua","scaleFit":"Exact Fit","scaleNoBorder":"Tanpa Batas","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace harus sebuah angka","validateSrc":"URL tidak boleh kosong","validateVSpace":"VSpace harus sebuah angka","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparan","windowModeWindow":"Jendela"},"font":{"fontSize":{"label":"Ukuran","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Teks (Nilai)","type":"Tipe","typeBtn":"Tombol","typeSbm":"Menyerahkan","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Nilai","selected":"Terpilih"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Aksi","method":"Metode","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Nama","value":"Nilai"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Nilai","size":"Ukuran","lines":"garis","chkMulti":"Izinkan pemilihan ganda","opText":"Teks","opValue":"Nilai","btnAdd":"Tambah","btnModify":"Modifikasi","btnUp":"Atas","btnDown":"Bawah","btnSetValue":"Set as selected value","btnDelete":"Hapus"},"textarea":{"title":"Textarea Properties","cols":"Kolom","rows":"Baris"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Nilai","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Tipe","typeText":"Teks","typePass":"Kata kunci","typeEmail":"Surel","typeSearch":"Cari","typeTel":"Nomor Telepon","typeUrl":"URL"}},"format":{"label":"Bentuk","panelTitle":"Bentuk Paragraf","tag_address":"Alamat","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Membentuk"},"horizontalrule":{"toolbar":"Sisip Garis Horisontal"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Mohon tulis URL gambar","alt":"Teks alternatif","border":"Batas","btnUpload":"Kirim ke Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Info Gambar","linkTab":"Tautan","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Unggah","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Tingkatkan Lekuk","outdent":"Kurangi Lekuk"},"smiley":{"options":"Opsi Smiley","title":"Sisip sebuah Smiley","toolbar":"Smiley"},"justify":{"block":"Rata kiri-kanan","center":"Pusat","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Penasehat Judul","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Kelas Stylesheet","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Kode Bahasa","langDir":"Arah Bahasa","langDirLTR":"Kiri ke Kanan (LTR)","langDirRTL":"Kanan ke Kiri (RTL)","menu":"Edit Link","name":"Nama","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Gaya","tabIndex":"Tab Index","target":"Sasaran","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Tautan","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Tautan","type":"Link Type","unlink":"Unlink","upload":"Unggah"},"list":{"bulletedlist":"Sisip/Hapus Daftar Bullet","numberedlist":"Sisip/Hapus Daftar Bernomor"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Lingkaran","decimal":"Desimal (1, 2, 3, dst.)","decimalLeadingZero":"Desimal diawali angka nol (01, 02, 03, dst.)","disc":"Cakram","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Huruf Kecil (a, b, c, d, e, dst.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Angka Romawi (i, ii, iii, iv, v, dst.)","none":"Tidak ada","notset":"<tidak diatur>","numberedTitle":"Numbered List Properties","square":"Persegi","start":"Mulai","type":"Tipe","upperAlpha":"Huruf Besar (A, B, C, D, E, dst.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Masukkan paragraf disini"},"maximize":{"maximize":"Memperbesar","minimize":"Memperkecil"},"newpage":{"toolbar":"Halaman Baru"},"pagebreak":{"alt":"Halaman Istirahat","toolbar":"Sisip Halaman Istirahat untuk Pencetakan "},"pastetext":{"button":"Tempel sebagai teks polos","title":"Tempel sebagai Teks Polos"},"pastefromword":{"confirmCleanup":"Teks yang ingin anda tempel sepertinya di salin dari Word. Apakah anda mau membersihkannya sebelum menempel?","error":"Tidak mungkin membersihkan data yang ditempel dikerenakan kesalahan internal","title":"Tempel dari Word","toolbar":"Tempel dari Word"},"preview":{"preview":"Pratinjau"},"print":{"toolbar":"Cetak"},"removeformat":{"toolbar":"Hapus Format"},"save":{"toolbar":"Simpan"},"selectall":{"toolbar":"Pilih Semua"},"showblocks":{"toolbar":"Perlihatkan Blok"},"sourcearea":{"toolbar":"Sumber"},"specialchar":{"options":"Opsi spesial karakter","title":"Pilih spesial karakter","toolbar":"Sisipkan spesial karakter"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Gaya","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Ukuran batas","caption":"Judul halaman","cell":{"menu":"Sel","insertBefore":"Sisip Sel Sebelum","insertAfter":"Sisip Sel Setelah","deleteCell":"Hapus Sel","merge":"Gabungkan Sel","mergeRight":"Gabungkan ke Kanan","mergeDown":"Gabungkan ke Bawah","splitHorizontal":"Pisahkan Sel Secara Horisontal","splitVertical":"Pisahkan Sel Secara Vertikal","title":"Properti Sel","cellType":"Tipe Sel","rowSpan":"Rentang antar baris","colSpan":"Rentang antar kolom","wordWrap":"Word Wrap","hAlign":"Jajaran Horisontal","vAlign":"Jajaran Vertikal","alignBaseline":"Dasar","bgColor":"Warna Latar Belakang","borderColor":"Warna Batasan","data":"Data","header":"Header","yes":"Ya","no":"Tidak","invalidWidth":"Lebar sel harus sebuah angka.","invalidHeight":"Tinggi sel harus sebuah angka","invalidRowSpan":"Rentang antar baris harus angka seluruhnya.","invalidColSpan":"Rentang antar kolom harus angka seluruhnya","chooseColor":"Pilih"},"cellPad":"Sel spasi dalam","cellSpace":"Spasi antar sel","column":{"menu":"Kolom","insertBefore":"Sisip Kolom Sebelum","insertAfter":"Sisip Kolom Sesudah","deleteColumn":"Hapus Kolom"},"columns":"Kolom","deleteTable":"Hapus Tabel","headers":"Headers","headersBoth":"Keduanya","headersColumn":"Kolom pertama","headersNone":"Tidak ada","headersRow":"Baris Pertama","invalidBorder":"Ukuran batasan harus sebuah angka","invalidCellPadding":"'Spasi dalam' sel harus angka positif.","invalidCellSpacing":"Spasi antar sel harus angka positif.","invalidCols":"Jumlah kolom harus sebuah angka lebih besar dari 0","invalidHeight":"Tinggi tabel harus sebuah angka.","invalidRows":"Jumlah barus harus sebuah angka dan lebih besar dari 0.","invalidWidth":"Lebar tabel harus sebuah angka.","menu":"Properti Tabel","row":{"menu":"Baris","insertBefore":"Sisip Baris Sebelum","insertAfter":"Sisip Baris Sesudah","deleteRow":"Hapus Baris"},"rows":"Baris","summary":"Intisari","title":"Properti Tabel","toolbar":"Tabe","widthPc":"persen","widthPx":"piksel","widthUnit":"lebar satuan"},"undo":{"redo":"Kembali lakukan","undo":"Batalkan perlakuan"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/is.js b/wqflask/wqflask/static/packages/ckeditor/lang/is.js
deleted file mode 100644
index a59622c3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/is.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['is']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Fletta í skjalasafni","url":"Vefslóð","protocol":"Samskiptastaðall","upload":"Senda upp","uploadSubmit":"Hlaða upp","image":"Setja inn mynd","flash":"Flash","form":"Setja inn innsláttarform","checkbox":"Setja inn hökunarreit","radio":"Setja inn valhnapp","textField":"Setja inn textareit","textarea":"Setja inn textasvæði","hiddenField":"Setja inn falið svæði","button":"Setja inn hnapp","select":"Setja inn lista","imageButton":"Setja inn myndahnapp","notSet":"<ekkert valið>","id":"Auðkenni","name":"Nafn","langDir":"Lesstefna","langDirLtr":"Frá vinstri til hægri (LTR)","langDirRtl":"Frá hægri til vinstri (RTL)","langCode":"Tungumálakóði","longDescr":"Nánari lýsing","cssClass":"Stílsniðsflokkur","advisoryTitle":"Titill","cssStyle":"Stíll","ok":"Í lagi","cancel":"Hætta við","close":"Close","preview":"Forskoða","resize":"Resize","generalTab":"Almennt","advancedTab":"Tæknilegt","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Mark","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Frá vinstri til hægri (LTR)","langDirRTL":"Frá hægri til vinstri (RTL)","styles":"Stíll","cssClasses":"Stílsniðsflokkur","width":"Breidd","height":"Hæð","align":"Jöfnun","alignLeft":"Vinstri","alignRight":"Hægri","alignCenter":"Miðjað","alignJustify":"Jafna báðum megin","alignTop":"Efst","alignMiddle":"Miðjuð","alignBottom":"Neðst","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Feitletrað","italic":"Skáletrað","strike":"Yfirstrikað","subscript":"Niðurskrifað","superscript":"Uppskrifað","underline":"Undirstrikað"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Inndráttur"},"clipboard":{"copy":"Afrita","copyError":"Öryggisstillingar vafrans þíns leyfa ekki afritun texta með músaraðgerð. Notaðu lyklaborðið í afrita (Ctrl/Cmd+C).","cut":"Klippa","cutError":"Öryggisstillingar vafrans þíns leyfa ekki klippingu texta með músaraðgerð. Notaðu lyklaborðið í klippa (Ctrl/Cmd+X).","paste":"Líma","pasteArea":"Paste Area","pasteMsg":"Límdu í svæðið hér að neðan og (<STRONG>Ctrl/Cmd+V</STRONG>) og smelltu á <STRONG>OK</STRONG>.","securityMsg":"Vegna öryggisstillinga í vafranum þínum fær ritillinn ekki beinan aðgang að klippuborðinu. Þú verður að líma innihaldið aftur inn í þennan glugga.","title":"Líma"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Sjálfval","bgColorTitle":"Bakgrunnslitur","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Fleiri liti...","panelTitle":"Colors","textColorTitle":"Litur texta"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Sniðmát","emptyListMsg":"(Ekkert sniðmát er skilgreint!)","insertOption":"Skipta út raunverulegu innihaldi","options":"Template Options","selectPromptMsg":"Veldu sniðmát til að opna í ritlinum.<br>(Núverandi innihald víkur fyrir því!):","title":"Innihaldssniðmát"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Leita","findOptions":"Find Options","findWhat":"Leita að:","matchCase":"Gera greinarmun á¡ há¡- og lágstöfum","matchCyclic":"Match cyclic","matchWord":"Aðeins heil orð","notFoundMsg":"Leitartexti fannst ekki!","replace":"Skipta út","replaceAll":"Skipta út allsstaðar","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Skipta út fyrir:","title":"Finna og skipta"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs neðst","alignAbsMiddle":"Abs miðjuð","alignBaseline":"Grunnlína","alignTextTop":"Efri brún texta","bgcolor":"Bakgrunnslitur","chkFull":"Allow Fullscreen","chkLoop":"Endurtekning","chkMenu":"Sýna Flash-valmynd","chkPlay":"Sjálfvirk spilun","flashvars":"Variables for Flash","hSpace":"Vinstri bil","properties":"Eigindi Flash","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Skali","scaleAll":"Sýna allt","scaleFit":"Fella skala að stærð","scaleNoBorder":"Án ramma","title":"Eigindi Flash","vSpace":"Hægri bil","validateHSpace":"HSpace must be a number.","validateSrc":"Sláðu inn veffang stiklunnar!","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Leturstærð ","voiceLabel":"Font Size","panelTitle":"Leturstærð "},"label":"Leturgerð ","panelTitle":"Leturgerð ","voiceLabel":"Leturgerð "},"forms":{"button":{"title":"Eigindi hnapps","text":"Texti","type":"Gerð","typeBtn":"Hnappur","typeSbm":"Staðfesta","typeRst":"Hreinsa"},"checkboxAndRadio":{"checkboxTitle":"Eigindi markreits","radioTitle":"Eigindi valhnapps","value":"Gildi","selected":"Valið"},"form":{"title":"Eigindi innsláttarforms","menu":"Eigindi innsláttarforms","action":"Aðgerð","method":"Aðferð","encoding":"Encoding"},"hidden":{"title":"Eigindi falins svæðis","name":"Nafn","value":"Gildi"},"select":{"title":"Eigindi lista","selectInfo":"Upplýsingar","opAvail":"Kostir","value":"Gildi","size":"Stærð","lines":"línur","chkMulti":"Leyfa fleiri kosti","opText":"Texti","opValue":"Gildi","btnAdd":"Bæta við","btnModify":"Breyta","btnUp":"Upp","btnDown":"Niður","btnSetValue":"Merkja sem valið","btnDelete":"Eyða"},"textarea":{"title":"Eigindi textasvæðis","cols":"Dálkar","rows":"Línur"},"textfield":{"title":"Eigindi textareits","name":"Nafn","value":"Gildi","charWidth":"Breidd (leturtákn)","maxChars":"Hámarksfjöldi leturtákna","type":"Gerð","typeText":"Texti","typePass":"Lykilorð","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"Vefslóð"}},"format":{"label":"Stílsnið","panelTitle":"Stílsnið","tag_address":"Vistfang","tag_div":"Venjulegt (DIV)","tag_h1":"Fyrirsögn 1","tag_h2":"Fyrirsögn 2","tag_h3":"Fyrirsögn 3","tag_h4":"Fyrirsögn 4","tag_h5":"Fyrirsögn 5","tag_h6":"Fyrirsögn 6","tag_p":"Venjulegt letur","tag_pre":"Forsniðið"},"horizontalrule":{"toolbar":"Lóðrétt lína"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Sláðu inn slóðina að myndinni","alt":"Baklægur texti","border":"Rammi","btnUpload":"Hlaða upp","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"Vinstri bil","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Almennt","linkTab":"Stikla","lockRatio":"Festa stærðarhlutfall","menu":"Eigindi myndar","resetSize":"Reikna stærð","title":"Eigindi myndar","titleButton":"Eigindi myndahnapps","upload":"Hlaða upp","urlMissing":"Image source URL is missing.","vSpace":"Hægri bil","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Minnka inndrátt","outdent":"Auka inndrátt"},"smiley":{"options":"Smiley Options","title":"Velja svip","toolbar":"Svipur"},"justify":{"block":"Jafna báðum megin","center":"Miðja texta","left":"Vinstrijöfnun","right":"Hægrijöfnun"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Skammvalshnappur","advanced":"Tæknilegt","advisoryContentType":"Tegund innihalds","advisoryTitle":"Titill","anchor":{"toolbar":"Stofna/breyta kaflamerki","menu":"Eigindi kaflamerkis","title":"Eigindi kaflamerkis","name":"Nafn bókamerkis","errorName":"Sláðu inn nafn bókamerkis!","remove":"Remove Anchor"},"anchorId":"Eftir auðkenni einingar","anchorName":"Eftir akkerisnafni","charset":"Táknróf","cssClasses":"Stílsniðsflokkur","emailAddress":"Netfang","emailBody":"Meginmál","emailSubject":"Efni","id":"Auðkenni","info":"Almennt","langCode":"Lesstefna","langDir":"Lesstefna","langDirLTR":"Frá vinstri til hægri (LTR)","langDirRTL":"Frá hægri til vinstri (RTL)","menu":"Breyta stiklu","name":"Nafn","noAnchors":"<Engin bókamerki á skrá>","noEmail":"Sláðu inn netfang!","noUrl":"Sláðu inn veffang stiklunnar!","other":"<annar>","popupDependent":"Háð venslum (Netscape)","popupFeatures":"Eigindi sprettiglugga","popupFullScreen":"Heilskjár (IE)","popupLeft":"Fjarlægð frá vinstri","popupLocationBar":"Fanglína","popupMenuBar":"Vallína","popupResizable":"Resizable","popupScrollBars":"Skrunstikur","popupStatusBar":"Stöðustika","popupToolbar":"Verkfærastika","popupTop":"Fjarlægð frá efri brún","rel":"Relationship","selectAnchor":"Veldu akkeri","styles":"Stíll","tabIndex":"Raðnúmer innsláttarreits","target":"Mark","targetFrame":"<rammi>","targetFrameName":"Nafn markglugga","targetPopup":"<sprettigluggi>","targetPopupName":"Nafn sprettiglugga","title":"Stikla","toAnchor":"Bókamerki á þessari síðu","toEmail":"Netfang","toUrl":"Vefslóð","toolbar":"Stofna/breyta stiklu","type":"Stikluflokkur","unlink":"Fjarlægja stiklu","upload":"Senda upp"},"list":{"bulletedlist":"Punktalisti","numberedlist":"Númeraður listi"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Ný síða"},"pagebreak":{"alt":"Page Break","toolbar":"Setja inn síðuskil"},"pastetext":{"button":"Líma sem ósniðinn texta","title":"Líma sem ósniðinn texta"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Líma úr Word","toolbar":"Líma úr Word"},"preview":{"preview":"Forskoða"},"print":{"toolbar":"Prenta"},"removeformat":{"toolbar":"Fjarlægja snið"},"save":{"toolbar":"Vista"},"selectall":{"toolbar":"Velja allt"},"showblocks":{"toolbar":"Sýna blokkir"},"sourcearea":{"toolbar":"Kóði"},"specialchar":{"options":"Special Character Options","title":"Velja tákn","toolbar":"Setja inn merki"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stílflokkur","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Breidd ramma","caption":"Titill","cell":{"menu":"Reitur","insertBefore":"Skjóta inn reiti fyrir aftan","insertAfter":"Skjóta inn reiti fyrir framan","deleteCell":"Fella reit","merge":"Sameina reiti","mergeRight":"Sameina til hægri","mergeDown":"Sameina niður á við","splitHorizontal":"Kljúfa reit lárétt","splitVertical":"Kljúfa reit lóðrétt","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Reitaspássía","cellSpace":"Bil milli reita","column":{"menu":"Dálkur","insertBefore":"Skjóta inn dálki vinstra megin","insertAfter":"Skjóta inn dálki hægra megin","deleteColumn":"Fella dálk"},"columns":"Dálkar","deleteTable":"Fella töflu","headers":"Fyrirsagnir","headersBoth":"Hvort tveggja","headersColumn":"Fyrsti dálkur","headersNone":"Engar","headersRow":"Fyrsta röð","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Eigindi töflu","row":{"menu":"Röð","insertBefore":"Skjóta inn röð fyrir ofan","insertAfter":"Skjóta inn röð fyrir neðan","deleteRow":"Eyða röð"},"rows":"Raðir","summary":"Áfram","title":"Eigindi töflu","toolbar":"Tafla","widthPc":"prósent","widthPx":"myndeindir","widthUnit":"width unit"},"undo":{"redo":"Hætta við afturköllun","undo":"Afturkalla"},"wsc":{"btnIgnore":"Hunsa","btnIgnoreAll":"Hunsa allt","btnReplace":"Skipta","btnReplaceAll":"Skipta öllu","btnUndo":"Til baka","changeTo":"Tillaga","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Villuleit ekki sett upp.<br>Viltu setja hana upp?","manyChanges":"Villuleit lokið: %1 orðum breytt","noChanges":"Villuleit lokið: Engu orði breytt","noMispell":"Villuleit lokið: Engin villa fannst","noSuggestions":"- engar tillögur -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Ekki í orðabókinni","oneChange":"Villuleit lokið: Einu orði breytt","progress":"Villuleit í gangi...","title":"Spell Check","toolbar":"Villuleit"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/it.js b/wqflask/wqflask/static/packages/ckeditor/lang/it.js
deleted file mode 100644
index 355f9463..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/it.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['it']={"editor":"Rich Text Editor","editorPanel":"Pannello Rich Text Editor","common":{"editorHelp":"Premi ALT 0 per aiuto","browseServer":"Cerca sul server","url":"URL","protocol":"Protocollo","upload":"Carica","uploadSubmit":"Invia al server","image":"Immagine","flash":"Oggetto Flash","form":"Modulo","checkbox":"Checkbox","radio":"Radio Button","textField":"Campo di testo","textarea":"Area di testo","hiddenField":"Campo nascosto","button":"Bottone","select":"Menu di selezione","imageButton":"Bottone immagine","notSet":"<non impostato>","id":"Id","name":"Nome","langDir":"Direzione scrittura","langDirLtr":"Da Sinistra a Destra (LTR)","langDirRtl":"Da Destra a Sinistra (RTL)","langCode":"Codice Lingua","longDescr":"URL descrizione estesa","cssClass":"Nome classe CSS","advisoryTitle":"Titolo","cssStyle":"Stile","ok":"OK","cancel":"Annulla","close":"Chiudi","preview":"Anteprima","resize":"Trascina per ridimensionare","generalTab":"Generale","advancedTab":"Avanzate","validateNumberFailed":"Il valore inserito non è un numero.","confirmNewPage":"Ogni modifica non salvata sarà persa. Sei sicuro di voler caricare una nuova pagina?","confirmCancel":"Alcune delle opzioni sono state cambiate. Sei sicuro di voler chiudere la finestra di dialogo?","options":"Opzioni","target":"Destinazione","targetNew":"Nuova finestra (_blank)","targetTop":"Finestra in primo piano (_top)","targetSelf":"Stessa finestra (_self)","targetParent":"Finestra Padre (_parent)","langDirLTR":"Da sinistra a destra (LTR)","langDirRTL":"Da destra a sinistra (RTL)","styles":"Stile","cssClasses":"Classi di stile","width":"Larghezza","height":"Altezza","align":"Allineamento","alignLeft":"Sinistra","alignRight":"Destra","alignCenter":"Centrato","alignJustify":"Giustifica","alignTop":"In Alto","alignMiddle":"Centrato","alignBottom":"In Basso","alignNone":"Nessuno","invalidValue":"Valore non valido.","invalidHeight":"L'altezza dev'essere un numero","invalidWidth":"La Larghezza dev'essere un numero","invalidCssLength":"Il valore indicato per il campo \"%1\" deve essere un numero positivo con o senza indicazione di una valida unità di misura per le classi CSS (px, %, in, cm, mm, em, ex, pt, o pc).","invalidHtmlLength":"Il valore indicato per il campo \"%1\" deve essere un numero positivo con o senza indicazione di una valida unità di misura per le pagine HTML (px o %).","invalidInlineStyle":"Il valore specificato per lo stile inline deve consistere in una o più tuple con il formato di \"name : value\", separati da semicolonne.","cssLengthTooltip":"Inserisci un numero per il valore in pixel oppure un numero con una valida unità CSS (px, %, in, cm, mm, ex, pt, o pc).","unavailable":"%1<span class=\"cke_accessibility\">, non disponibile</span>"},"about":{"copy":"Copyright &copy; $1. Tutti i diritti riservati.","dlgTitle":"Riguardo CKEditor","help":"Vedi $1 per l'aiuto.","moreInfo":"Per le informazioni sulla licenza si prega di visitare il nostro sito:","title":"Riguardo CKEditor","userGuide":"Guida Utente CKEditor"},"basicstyles":{"bold":"Grassetto","italic":"Corsivo","strike":"Barrato","subscript":"Pedice","superscript":"Apice","underline":"Sottolineato"},"bidi":{"ltr":"Direzione del testo da sinistra verso destra","rtl":"Direzione del testo da destra verso sinistra"},"blockquote":{"toolbar":"Citazione"},"clipboard":{"copy":"Copia","copyError":"Le impostazioni di sicurezza del browser non permettono di copiare automaticamente il testo. Usa la tastiera (Ctrl/Cmd+C).","cut":"Taglia","cutError":"Le impostazioni di sicurezza del browser non permettono di tagliare automaticamente il testo. Usa la tastiera (Ctrl/Cmd+X).","paste":"Incolla","pasteArea":"Incolla","pasteMsg":"Incolla il testo all'interno dell'area sottostante usando la scorciatoia di tastiere (<STRONG>Ctrl/Cmd+V</STRONG>) e premi <STRONG>OK</STRONG>.","securityMsg":"A causa delle impostazioni di sicurezza del browser,l'editor non è in grado di accedere direttamente agli appunti. E' pertanto necessario incollarli di nuovo in questa finestra.","title":"Incolla"},"button":{"selectedLabel":"%1 (selezionato)"},"colorbutton":{"auto":"Automatico","bgColorTitle":"Colore sfondo","colors":{"000":"Nero","800000":"Marrone Castagna","8B4513":"Marrone Cuoio","2F4F4F":"Grigio Fumo di Londra","008080":"Acquamarina","000080":"Blu Oceano","4B0082":"Indigo","696969":"Grigio Scuro","B22222":"Giallo Fiamma","A52A2A":"Marrone","DAA520":"Giallo Mimosa","006400":"Verde Scuro","40E0D0":"Turchese","0000CD":"Blue Scuro","800080":"Viola","808080":"Grigio","F00":"Rosso","FF8C00":"Arancio Scuro","FFD700":"Oro","008000":"Verde","0FF":"Ciano","00F":"Blu","EE82EE":"Violetto","A9A9A9":"Grigio Scuro","FFA07A":"Salmone","FFA500":"Arancio","FFFF00":"Giallo","00FF00":"Lime","AFEEEE":"Turchese Chiaro","ADD8E6":"Blu Chiaro","DDA0DD":"Rosso Ciliegia","D3D3D3":"Grigio Chiaro","FFF0F5":"Lavanda Chiara","FAEBD7":"Bianco Antico","FFFFE0":"Giallo Chiaro","F0FFF0":"Verde Mela","F0FFFF":"Azzurro","F0F8FF":"Celeste","E6E6FA":"Lavanda","FFF":"Bianco"},"more":"Altri colori...","panelTitle":"Colori","textColorTitle":"Colore testo"},"colordialog":{"clear":"cancella","highlight":"Evidenzia","options":"Opzioni colore","selected":"Seleziona il colore","title":"Selezionare il colore"},"templates":{"button":"Modelli","emptyListMsg":"(Nessun modello definito)","insertOption":"Cancella il contenuto corrente","options":"Opzioni del Modello","selectPromptMsg":"Seleziona il modello da aprire nell'editor","title":"Contenuto dei modelli"},"contextmenu":{"options":"Opzioni del menù contestuale"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Titolo Avviso","cssClassInputLabel":"Classi di stile","edit":"Modifica DIV","inlineStyleInputLabel":"Stile Inline","langDirLTRLabel":"Da sinistra a destra (LTR)","langDirLabel":"Direzione di scrittura","langDirRTLLabel":"Da destra a sinistra (RTL)","languageCodeInputLabel":"Codice lingua","remove":"Rimuovi DIV","styleSelectLabel":"Stile","title":"Crea DIV contenitore","toolbar":"Crea DIV contenitore"},"toolbar":{"toolbarCollapse":"Minimizza Toolbar","toolbarExpand":"Espandi Toolbar","toolbarGroups":{"document":"Documento","clipboard":"Copia negli appunti/Annulla","editing":"Modifica","forms":"Form","basicstyles":"Stili di base","paragraph":"Paragrafo","links":"Link","insert":"Inserisci","styles":"Stili","colors":"Colori","tools":"Strumenti"},"toolbars":"Editor toolbar"},"elementspath":{"eleLabel":"Percorso degli elementi","eleTitle":"%1 elemento"},"find":{"find":"Trova","findOptions":"Opzioni di ricerca","findWhat":"Trova:","matchCase":"Maiuscole/minuscole","matchCyclic":"Ricerca ciclica","matchWord":"Solo parole intere","notFoundMsg":"L'elemento cercato non è stato trovato.","replace":"Sostituisci","replaceAll":"Sostituisci tutto","replaceSuccessMsg":"%1 occorrenza(e) sostituite.","replaceWith":"Sostituisci con:","title":"Cerca e Sostituisci"},"fakeobjects":{"anchor":"Ancora","flash":"Animazione Flash","hiddenfield":"Campo Nascosto","iframe":"IFrame","unknown":"Oggetto sconosciuto"},"flash":{"access":"Accesso Script","accessAlways":"Sempre","accessNever":"Mai","accessSameDomain":"Solo stesso dominio","alignAbsBottom":"In basso assoluto","alignAbsMiddle":"Centrato assoluto","alignBaseline":"Linea base","alignTextTop":"In alto al testo","bgcolor":"Colore sfondo","chkFull":"Permetti la modalità tutto schermo","chkLoop":"Riavvio automatico","chkMenu":"Abilita Menu di Flash","chkPlay":"Avvio Automatico","flashvars":"Variabili per Flash","hSpace":"HSpace","properties":"Proprietà Oggetto Flash","propertiesTab":"Proprietà","quality":"Qualità","qualityAutoHigh":"Alta Automatica","qualityAutoLow":"Bassa Automatica","qualityBest":"Massima","qualityHigh":"Alta","qualityLow":"Bassa","qualityMedium":"Intermedia","scale":"Ridimensiona","scaleAll":"Mostra Tutto","scaleFit":"Dimensione Esatta","scaleNoBorder":"Senza Bordo","title":"Proprietà Oggetto Flash","vSpace":"VSpace","validateHSpace":"L'HSpace dev'essere un numero.","validateSrc":"Devi inserire l'URL del collegamento","validateVSpace":"Il VSpace dev'essere un numero.","windowMode":"Modalità finestra","windowModeOpaque":"Opaca","windowModeTransparent":"Trasparente","windowModeWindow":"Finestra"},"font":{"fontSize":{"label":"Dimensione","voiceLabel":"Dimensione Carattere","panelTitle":"Dimensione"},"label":"Carattere","panelTitle":"Carattere","voiceLabel":"Carattere"},"forms":{"button":{"title":"Proprietà bottone","text":"Testo (Valore)","type":"Tipo","typeBtn":"Bottone","typeSbm":"Invio","typeRst":"Annulla"},"checkboxAndRadio":{"checkboxTitle":"Proprietà checkbox","radioTitle":"Proprietà radio button","value":"Valore","selected":"Selezionato"},"form":{"title":"Proprietà modulo","menu":"Proprietà modulo","action":"Azione","method":"Metodo","encoding":"Codifica"},"hidden":{"title":"Proprietà campo nascosto","name":"Nome","value":"Valore"},"select":{"title":"Proprietà menu di selezione","selectInfo":"Info","opAvail":"Opzioni disponibili","value":"Valore","size":"Dimensione","lines":"righe","chkMulti":"Permetti selezione multipla","opText":"Testo","opValue":"Valore","btnAdd":"Aggiungi","btnModify":"Modifica","btnUp":"Su","btnDown":"Gi","btnSetValue":"Imposta come predefinito","btnDelete":"Rimuovi"},"textarea":{"title":"Proprietà area di testo","cols":"Colonne","rows":"Righe"},"textfield":{"title":"Proprietà campo di testo","name":"Nome","value":"Valore","charWidth":"Larghezza","maxChars":"Numero massimo di caratteri","type":"Tipo","typeText":"Testo","typePass":"Password","typeEmail":"Email","typeSearch":"Cerca","typeTel":"Numero di telefono","typeUrl":"URL"}},"format":{"label":"Formato","panelTitle":"Formato","tag_address":"Indirizzo","tag_div":"Paragrafo (DIV)","tag_h1":"Titolo 1","tag_h2":"Titolo 2","tag_h3":"Titolo 3","tag_h4":"Titolo 4","tag_h5":"Titolo 5","tag_h6":"Titolo 6","tag_p":"Normale","tag_pre":"Formattato"},"horizontalrule":{"toolbar":"Inserisci riga orizzontale"},"iframe":{"border":"Mostra il bordo","noUrl":"Inserire l'URL del campo IFrame","scrolling":"Abilita scrollbar","title":"Proprietà IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Devi inserire l'URL per l'immagine","alt":"Testo alternativo","border":"Bordo","btnUpload":"Invia al server","button2Img":"Vuoi trasformare il bottone immagine selezionato in un'immagine semplice?","hSpace":"HSpace","img2Button":"Vuoi trasferomare l'immagine selezionata in un bottone immagine?","infoTab":"Informazioni immagine","linkTab":"Collegamento","lockRatio":"Blocca rapporto","menu":"Proprietà immagine","resetSize":"Reimposta dimensione","title":"Proprietà immagine","titleButton":"Proprietà bottone immagine","upload":"Carica","urlMissing":"Manca l'URL dell'immagine.","vSpace":"VSpace","validateBorder":"Il campo Bordo deve essere un numero intero.","validateHSpace":"Il campo HSpace deve essere un numero intero.","validateVSpace":"Il campo VSpace deve essere un numero intero."},"indent":{"indent":"Aumenta rientro","outdent":"Riduci rientro"},"smiley":{"options":"Opzioni Smiley","title":"Inserisci emoticon","toolbar":"Emoticon"},"justify":{"block":"Giustifica","center":"Centra","left":"Allinea a sinistra","right":"Allinea a destra"},"language":{"button":"Imposta lingua","remove":"Rimuovi lingua"},"link":{"acccessKey":"Scorciatoia da tastiera","advanced":"Avanzate","advisoryContentType":"Tipo della risorsa collegata","advisoryTitle":"Titolo","anchor":{"toolbar":"Inserisci/Modifica Ancora","menu":"Proprietà ancora","title":"Proprietà ancora","name":"Nome ancora","errorName":"Inserici il nome dell'ancora","remove":"Rimuovi l'ancora"},"anchorId":"Per id elemento","anchorName":"Per Nome","charset":"Set di caretteri della risorsa collegata","cssClasses":"Nome classe CSS","emailAddress":"Indirizzo E-Mail","emailBody":"Corpo del messaggio","emailSubject":"Oggetto del messaggio","id":"Id","info":"Informazioni collegamento","langCode":"Direzione scrittura","langDir":"Direzione scrittura","langDirLTR":"Da Sinistra a Destra (LTR)","langDirRTL":"Da Destra a Sinistra (RTL)","menu":"Modifica collegamento","name":"Nome","noAnchors":"(Nessuna ancora disponibile nel documento)","noEmail":"Devi inserire un'indirizzo e-mail","noUrl":"Devi inserire l'URL del collegamento","other":"<altro>","popupDependent":"Dipendente (Netscape)","popupFeatures":"Caratteristiche finestra popup","popupFullScreen":"A tutto schermo (IE)","popupLeft":"Posizione da sinistra","popupLocationBar":"Barra degli indirizzi","popupMenuBar":"Barra del menu","popupResizable":"Ridimensionabile","popupScrollBars":"Barre di scorrimento","popupStatusBar":"Barra di stato","popupToolbar":"Barra degli strumenti","popupTop":"Posizione dall'alto","rel":"Relazioni","selectAnchor":"Scegli Ancora","styles":"Stile","tabIndex":"Ordine di tabulazione","target":"Destinazione","targetFrame":"<riquadro>","targetFrameName":"Nome del riquadro di destinazione","targetPopup":"<finestra popup>","targetPopupName":"Nome finestra popup","title":"Collegamento","toAnchor":"Ancora nel testo","toEmail":"E-Mail","toUrl":"URL","toolbar":"Collegamento","type":"Tipo di Collegamento","unlink":"Elimina collegamento","upload":"Carica"},"list":{"bulletedlist":"Inserisci/Rimuovi Elenco Puntato","numberedlist":"Inserisci/Rimuovi Elenco Numerato"},"liststyle":{"armenian":"Numerazione Armena","bulletedTitle":"Proprietà liste puntate","circle":"Cerchio","decimal":"Decimale (1, 2, 3, ecc.)","decimalLeadingZero":"Decimale preceduto da 0 (01, 02, 03, ecc.)","disc":"Disco","georgian":"Numerazione Georgiana (an, ban, gan, ecc.)","lowerAlpha":"Alfabetico minuscolo (a, b, c, d, e, ecc.)","lowerGreek":"Greco minuscolo (alpha, beta, gamma, ecc.)","lowerRoman":"Numerazione Romana minuscola (i, ii, iii, iv, v, ecc.)","none":"Nessuno","notset":"<non impostato>","numberedTitle":"Proprietà liste numerate","square":"Quadrato","start":"Inizio","type":"Tipo","upperAlpha":"Alfabetico maiuscolo (A, B, C, D, E, ecc.)","upperRoman":"Numerazione Romana maiuscola (I, II, III, IV, V, ecc.)","validateStartNumber":"Il numero di inizio di una lista numerata deve essere un numero intero."},"magicline":{"title":"Inserisci paragrafo qui"},"maximize":{"maximize":"Massimizza","minimize":"Minimizza"},"newpage":{"toolbar":"Nuova pagina"},"pagebreak":{"alt":"Interruzione di pagina","toolbar":"Inserisci interruzione di pagina per la stampa"},"pastetext":{"button":"Incolla come testo semplice","title":"Incolla come testo semplice"},"pastefromword":{"confirmCleanup":"Il testo da incollare sembra provenire da Word. Desideri pulirlo prima di incollare?","error":"Non è stato possibile eliminare il testo incollato a causa di un errore interno.","title":"Incolla da Word","toolbar":"Incolla da Word"},"preview":{"preview":"Anteprima"},"print":{"toolbar":"Stampa"},"removeformat":{"toolbar":"Elimina formattazione"},"save":{"toolbar":"Salva"},"selectall":{"toolbar":"Seleziona tutto"},"showblocks":{"toolbar":"Visualizza Blocchi"},"sourcearea":{"toolbar":"Sorgente"},"specialchar":{"options":"Opzioni carattere speciale","title":"Seleziona carattere speciale","toolbar":"Inserisci carattere speciale"},"scayt":{"btn_about":"About COMS","btn_dictionaries":"Dizionari","btn_disable":"Disabilita COMS","btn_enable":"Abilita COMS","btn_langs":"Lingue","btn_options":"Opzioni","text_title":""},"stylescombo":{"label":"Stili","panelTitle":"Stili di formattazione","panelTitle1":"Stili per blocchi","panelTitle2":"Stili in linea","panelTitle3":"Stili per oggetti"},"table":{"border":"Dimensione bordo","caption":"Intestazione","cell":{"menu":"Cella","insertBefore":"Inserisci Cella Prima","insertAfter":"Inserisci Cella Dopo","deleteCell":"Elimina celle","merge":"Unisce celle","mergeRight":"Unisci a Destra","mergeDown":"Unisci in Basso","splitHorizontal":"Dividi Cella Orizzontalmente","splitVertical":"Dividi Cella Verticalmente","title":"Proprietà della cella","cellType":"Tipo di cella","rowSpan":"Su più righe","colSpan":"Su più colonne","wordWrap":"Ritorno a capo","hAlign":"Allineamento orizzontale","vAlign":"Allineamento verticale","alignBaseline":"Linea Base","bgColor":"Colore di Sfondo","borderColor":"Colore del Bordo","data":"Dati","header":"Intestazione","yes":"Si","no":"No","invalidWidth":"La larghezza della cella dev'essere un numero.","invalidHeight":"L'altezza della cella dev'essere un numero.","invalidRowSpan":"Il numero di righe dev'essere un numero intero.","invalidColSpan":"Il numero di colonne dev'essere un numero intero.","chooseColor":"Scegli"},"cellPad":"Padding celle","cellSpace":"Spaziatura celle","column":{"menu":"Colonna","insertBefore":"Inserisci Colonna Prima","insertAfter":"Inserisci Colonna Dopo","deleteColumn":"Elimina colonne"},"columns":"Colonne","deleteTable":"Cancella Tabella","headers":"Intestazione","headersBoth":"Entrambe","headersColumn":"Prima Colonna","headersNone":"Nessuna","headersRow":"Prima Riga","invalidBorder":"La dimensione del bordo dev'essere un numero.","invalidCellPadding":"Il paging delle celle dev'essere un numero","invalidCellSpacing":"La spaziatura tra le celle dev'essere un numero.","invalidCols":"Il numero di colonne dev'essere un numero maggiore di 0.","invalidHeight":"L'altezza della tabella dev'essere un numero.","invalidRows":"Il numero di righe dev'essere un numero maggiore di 0.","invalidWidth":"La larghezza della tabella dev'essere un numero.","menu":"Proprietà tabella","row":{"menu":"Riga","insertBefore":"Inserisci Riga Prima","insertAfter":"Inserisci Riga Dopo","deleteRow":"Elimina righe"},"rows":"Righe","summary":"Indice","title":"Proprietà tabella","toolbar":"Tabella","widthPc":"percento","widthPx":"pixel","widthUnit":"unità larghezza"},"undo":{"redo":"Ripristina","undo":"Annulla"},"wsc":{"btnIgnore":"Ignora","btnIgnoreAll":"Ignora tutto","btnReplace":"Cambia","btnReplaceAll":"Cambia tutto","btnUndo":"Annulla","changeTo":"Cambia in","errorLoading":"Errore nel caricamento dell'host col servizio applicativo: %s.","ieSpellDownload":"Contollo ortografico non installato. Lo vuoi scaricare ora?","manyChanges":"Controllo ortografico completato: %1 parole cambiate","noChanges":"Controllo ortografico completato: nessuna parola cambiata","noMispell":"Controllo ortografico completato: nessun errore trovato","noSuggestions":"- Nessun suggerimento -","notAvailable":"Il servizio non è momentaneamente disponibile.","notInDic":"Non nel dizionario","oneChange":"Controllo ortografico completato: 1 parola cambiata","progress":"Controllo ortografico in corso","title":"Controllo ortografico","toolbar":"Correttore ortografico"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ja.js b/wqflask/wqflask/static/packages/ckeditor/lang/ja.js
deleted file mode 100644
index f4d2a11e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ja.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ja']={"editor":"リッチテキストエディタ","editorPanel":"リッチテキストエディタパネル","common":{"editorHelp":"ヘルプは ALT 0 を押してください","browseServer":"サーバブラウザ","url":"URL","protocol":"プロトコル","upload":"アップロード","uploadSubmit":"サーバーに送信","image":"イメージ","flash":"Flash","form":"フォーム","checkbox":"チェックボックス","radio":"ラジオボタン","textField":"1行テキスト","textarea":"テキストエリア","hiddenField":"不可視フィールド","button":"ボタン","select":"選択フィールド","imageButton":"画像ボタン","notSet":"<なし>","id":"Id","name":"Name属性","langDir":"文字表記の方向","langDirLtr":"左から右 (LTR)","langDirRtl":"右から左 (RTL)","langCode":"言語コード","longDescr":"longdesc属性(長文説明)","cssClass":"スタイルシートクラス","advisoryTitle":"Title属性","cssStyle":"スタイルシート","ok":"OK","cancel":"キャンセル","close":"閉じる","preview":"プレビュー","resize":"ドラッグしてリサイズ","generalTab":"全般","advancedTab":"高度な設定","validateNumberFailed":"値が数ではありません","confirmNewPage":"変更内容を保存せず、 新しいページを開いてもよろしいでしょうか?","confirmCancel":"オプション設定を変更しました。ダイアログを閉じてもよろしいでしょうか?","options":"オプション","target":"ターゲット","targetNew":"新しいウインドウ (_blank)","targetTop":"最上部ウィンドウ (_top)","targetSelf":"同じウィンドウ (_self)","targetParent":"親ウィンドウ (_parent)","langDirLTR":"左から右 (LTR)","langDirRTL":"右から左 (RTL)","styles":"スタイル","cssClasses":"スタイルシートクラス","width":"幅","height":"高さ","align":"行揃え","alignLeft":"左","alignRight":"右","alignCenter":"中央","alignJustify":"両端揃え","alignTop":"上","alignMiddle":"中央","alignBottom":"下","alignNone":"なし","invalidValue":"不正な値です。","invalidHeight":"高さは数値で入力してください。","invalidWidth":"幅は数値で入力してください。","invalidCssLength":"入力された \"%1\" 項目の値は、CSSの大きさ(px, %, in, cm, mm, em, ex, pt, または pc)が正しいものである/ないに関わらず、正の値である必要があります。","invalidHtmlLength":"入力された \"%1\" 項目の値は、HTMLの大きさ(px または %)が正しいものである/ないに関わらず、正の値である必要があります。","invalidInlineStyle":"入力されたインラインスタイルの値は、\"名前 : 値\" のフォーマットのセットで、複数の場合はセミコロンで区切られている形式である必要があります。","cssLengthTooltip":"ピクセル数もしくはCSSにセットできる数値を入力してください。(px,%,in,cm,mm,em,ex,pt,or pc)","unavailable":"%1<span class=\"cke_accessibility\">, 利用不可能</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"CKEditorについて","help":"$1 のヘルプを見てください。","moreInfo":"ライセンス情報の詳細はウェブサイトにて確認してください:","title":"CKEditorについて","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"太字","italic":"斜体","strike":"打ち消し線","subscript":"下付き","superscript":"上付き","underline":"下線"},"bidi":{"ltr":"テキストの向き : 左から右へ","rtl":"テキストの向き : 右から左へ"},"blockquote":{"toolbar":"ブロック引用文"},"clipboard":{"copy":"コピー","copyError":"ブラウザーのセキュリティ設定によりエディタのコピー操作を自動で実行することができません。実行するには手動でキーボードの(Ctrl/Cmd+C)を使用してください。","cut":"切り取り","cutError":"ブラウザーのセキュリティ設定によりエディタの切り取り操作を自動で実行することができません。実行するには手動でキーボードの(Ctrl/Cmd+X)を使用してください。","paste":"貼り付け","pasteArea":"貼り付け場所","pasteMsg":"キーボード(<STRONG>Ctrl/Cmd+V</STRONG>)を使用して、次の入力エリア内で貼り付けて、<STRONG>OK</STRONG>を押してください。","securityMsg":"ブラウザのセキュリティ設定により、エディタはクリップボードデータに直接アクセスすることができません。このウィンドウは貼り付け操作を行う度に表示されます。","title":"貼り付け"},"button":{"selectedLabel":"%1 (選択中)"},"colorbutton":{"auto":"自動","bgColorTitle":"背景色","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"その他の色...","panelTitle":"色","textColorTitle":"文字色"},"colordialog":{"clear":"クリア","highlight":"ハイライト","options":"カラーオプション","selected":"選択された色","title":"色選択"},"templates":{"button":"テンプレート","emptyListMsg":"(テンプレートが定義されていません)","insertOption":"現在のエディタの内容と置き換えます","options":"テンプレートオプション","selectPromptMsg":"エディターで使用するテンプレートを選択してください。<br>(現在のエディタの内容は失われます):","title":"内容テンプレート"},"contextmenu":{"options":"コンテキストメニューオプション"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Title属性","cssClassInputLabel":"スタイルシートクラス","edit":"Divコンテナを編集","inlineStyleInputLabel":"インラインスタイル","langDirLTRLabel":"左から右 (LTR)","langDirLabel":"文字表記の方向","langDirRTLLabel":"右から左 (RTL)","languageCodeInputLabel":" 言語コード","remove":"Divコンテナを削除","styleSelectLabel":"スタイル","title":"Divコンテナ","toolbar":"Divコンテナ"},"toolbar":{"toolbarCollapse":"ツールバーを閉じる","toolbarExpand":"ツールバーを開く","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"編集ツールバー"},"elementspath":{"eleLabel":"要素パス","eleTitle":"%1 要素"},"find":{"find":"検索","findOptions":"検索オプション","findWhat":"検索する文字列:","matchCase":"大文字と小文字を区別する","matchCyclic":"末尾に逹したら先頭に戻る","matchWord":"単語単位で探す","notFoundMsg":"指定された文字列は見つかりませんでした。","replace":"置換","replaceAll":"すべて置換","replaceSuccessMsg":"%1 個置換しました。","replaceWith":"置換後の文字列:","title":"検索と置換"},"fakeobjects":{"anchor":"アンカー","flash":"Flash Animation","hiddenfield":"不可視フィールド","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"スプリクトアクセス(AllowScriptAccess)","accessAlways":"すべての場合に通信可能(Always)","accessNever":"すべての場合に通信不可能(Never)","accessSameDomain":"同一ドメインのみに通信可能(Same domain)","alignAbsBottom":"下部(絶対的)","alignAbsMiddle":"中央(絶対的)","alignBaseline":"ベースライン","alignTextTop":"テキスト上部","bgcolor":"背景色","chkFull":"フルスクリーン許可","chkLoop":"ループ再生","chkMenu":"Flashメニュー可能","chkPlay":"再生","flashvars":"フラッシュに渡す変数(FlashVars)","hSpace":"横間隔","properties":"Flash プロパティ","propertiesTab":"プロパティ","quality":"画質","qualityAutoHigh":"自動/高","qualityAutoLow":"自動/低","qualityBest":"品質優先","qualityHigh":"高","qualityLow":"低","qualityMedium":"中","scale":"拡大縮小設定","scaleAll":"すべて表示","scaleFit":"上下左右にフィット","scaleNoBorder":"外が見えない様に拡大","title":"Flash プロパティ","vSpace":"縦間隔","validateHSpace":"横間隔は数値で入力してください。","validateSrc":"リンクURLを入力してください。","validateVSpace":"縦間隔は数値で入力してください。","windowMode":"ウィンドウモード","windowModeOpaque":"背景を不透明設定","windowModeTransparent":"背景を透過設定","windowModeWindow":"標準"},"font":{"fontSize":{"label":"サイズ","voiceLabel":"フォントサイズ","panelTitle":"フォントサイズ"},"label":"フォント","panelTitle":"フォント","voiceLabel":"フォント"},"forms":{"button":{"title":"ボタン プロパティ","text":"テキスト (値)","type":"タイプ","typeBtn":"ボタン","typeSbm":"送信","typeRst":"リセット"},"checkboxAndRadio":{"checkboxTitle":"チェックボックスのプロパティ","radioTitle":"ラジオボタンのプロパティ","value":"値","selected":"選択済み"},"form":{"title":"フォームのプロパティ","menu":"フォームのプロパティ","action":"アクション (action)","method":"メソッド (method)","encoding":"エンコード方式 (encoding)"},"hidden":{"title":"不可視フィールド プロパティ","name":"名前 (name)","value":"値 (value)"},"select":{"title":"選択フィールドのプロパティ","selectInfo":"情報","opAvail":"利用可能なオプション","value":"選択項目値","size":"サイズ","lines":"行","chkMulti":"複数選択を許可","opText":"選択項目名","opValue":"値","btnAdd":"追加","btnModify":"編集","btnUp":"上へ","btnDown":"下へ","btnSetValue":"選択した値を設定","btnDelete":"削除"},"textarea":{"title":"テキストエリア プロパティ","cols":"列","rows":"行"},"textfield":{"title":"1行テキスト プロパティ","name":"名前","value":"値","charWidth":"サイズ","maxChars":"最大長","type":"タイプ","typeText":"テキスト","typePass":"パスワード入力","typeEmail":"メール","typeSearch":"検索","typeTel":"電話番号","typeUrl":"URL"}},"format":{"label":"書式","panelTitle":"段落の書式","tag_address":"アドレス","tag_div":"標準 (DIV)","tag_h1":"見出し 1","tag_h2":"見出し 2","tag_h3":"見出し 3","tag_h4":"見出し 4","tag_h5":"見出し 5","tag_h6":"見出し 6","tag_p":"標準","tag_pre":"書式付き"},"horizontalrule":{"toolbar":"水平線"},"iframe":{"border":"フレームの枠を表示","noUrl":"iframeのURLを入力してください。","scrolling":"スクロールバーの表示を許可","title":"iFrameのプロパティ","toolbar":"IFrame"},"image":{"alertUrl":"画像のURLを入力してください","alt":"代替テキスト","border":"枠線の幅","btnUpload":"サーバーに送信","button2Img":"選択した画像ボタンを画像に変換しますか?","hSpace":"水平間隔","img2Button":"選択した画像を画像ボタンに変換しますか?","infoTab":"画像情報","linkTab":"リンク","lockRatio":"比率を固定","menu":"画像のプロパティ","resetSize":"サイズをリセット","title":"画像のプロパティ","titleButton":"画像ボタンのプロパティ","upload":"アップロード","urlMissing":"画像のURLを入力してください。","vSpace":"垂直間隔","validateBorder":"枠線の幅は数値で入力してください。","validateHSpace":"水平間隔は数値で入力してください。","validateVSpace":"垂直間隔は数値で入力してください。"},"indent":{"indent":"インデント","outdent":"インデント解除"},"smiley":{"options":"絵文字オプション","title":"顔文字挿入","toolbar":"絵文字"},"justify":{"block":"両端揃え","center":"中央揃え","left":"左揃え","right":"右揃え"},"language":{"button":"言語を設定","remove":"言語を削除"},"link":{"acccessKey":"アクセスキー","advanced":"高度な設定","advisoryContentType":"Content Type属性","advisoryTitle":"Title属性","anchor":{"toolbar":"アンカー挿入/編集","menu":"アンカーの編集","title":"アンカーのプロパティ","name":"アンカー名","errorName":"アンカー名を入力してください。","remove":"アンカーを削除"},"anchorId":"エレメントID","anchorName":"アンカー名","charset":"リンク先のcharset","cssClasses":"スタイルシートクラス","emailAddress":"E-Mail アドレス","emailBody":"本文","emailSubject":"件名","id":"Id","info":"ハイパーリンク情報","langCode":"言語コード","langDir":"文字表記の方向","langDirLTR":"左から右 (LTR)","langDirRTL":"右から左 (RTL)","menu":"リンクを編集","name":"Name属性","noAnchors":"(このドキュメント内にアンカーはありません)","noEmail":"メールアドレスを入力してください。","noUrl":"リンクURLを入力してください。","other":"<その他の>","popupDependent":"開いたウィンドウに連動して閉じる (Netscape)","popupFeatures":"ポップアップウィンドウ特徴","popupFullScreen":"全画面モード(IE)","popupLeft":"左端からの座標で指定","popupLocationBar":"ロケーションバー","popupMenuBar":"メニューバー","popupResizable":"サイズ可変","popupScrollBars":"スクロールバー","popupStatusBar":"ステータスバー","popupToolbar":"ツールバー","popupTop":"上端からの座標で指定","rel":"関連リンク","selectAnchor":"アンカーを選択","styles":"スタイルシート","tabIndex":"タブインデックス","target":"ターゲット","targetFrame":"<フレーム>","targetFrameName":"ターゲットのフレーム名","targetPopup":"<ポップアップウィンドウ>","targetPopupName":"ポップアップウィンドウ名","title":"ハイパーリンク","toAnchor":"ページ内のアンカー","toEmail":"E-Mail","toUrl":"URL","toolbar":"リンク挿入/編集","type":"リンクタイプ","unlink":"リンクを削除","upload":"アップロード"},"list":{"bulletedlist":"番号無しリスト","numberedlist":"番号付きリスト"},"liststyle":{"armenian":"アルメニア数字","bulletedTitle":"箇条書きのプロパティ","circle":"白丸","decimal":"数字 (1, 2, 3, etc.)","decimalLeadingZero":"0付きの数字 (01, 02, 03, etc.)","disc":"黒丸","georgian":"グルジア数字 (an, ban, gan, etc.)","lowerAlpha":"小文字アルファベット (a, b, c, d, e, etc.)","lowerGreek":"小文字ギリシャ文字 (alpha, beta, gamma, etc.)","lowerRoman":"小文字ローマ数字 (i, ii, iii, iv, v, etc.)","none":"なし","notset":"<なし>","numberedTitle":"番号付きリストのプロパティ","square":"四角","start":"開始","type":"種類","upperAlpha":"大文字アルファベット (A, B, C, D, E, etc.)","upperRoman":"大文字ローマ数字 (I, II, III, IV, V, etc.)","validateStartNumber":"リストの開始番号は数値で入力してください。"},"magicline":{"title":"ここに段落を挿入"},"maximize":{"maximize":"最大化","minimize":"最小化"},"newpage":{"toolbar":"新しいページ"},"pagebreak":{"alt":"改ページ","toolbar":"印刷の為に改ページ挿入"},"pastetext":{"button":"プレーンテキストとして貼り付け","title":"プレーンテキストとして貼り付け"},"pastefromword":{"confirmCleanup":"貼り付けを行うテキストはワード文章からコピーされようとしています。貼り付ける前にクリーニングを行いますか?","error":"内部エラーにより貼り付けたデータをクリアできませんでした","title":"ワード文章から貼り付け","toolbar":"ワード文章から貼り付け"},"preview":{"preview":"プレビュー"},"print":{"toolbar":"印刷"},"removeformat":{"toolbar":"書式を解除"},"save":{"toolbar":"保存"},"selectall":{"toolbar":"すべて選択"},"showblocks":{"toolbar":"ブロック表示"},"sourcearea":{"toolbar":"ソース"},"specialchar":{"options":"特殊文字オプション","title":"特殊文字の選択","toolbar":"特殊文字を挿入"},"scayt":{"btn_about":"SCAYTバージョン","btn_dictionaries":"辞書","btn_disable":"SCAYT無効","btn_enable":"SCAYT有効","btn_langs":"言語","btn_options":"オプション","text_title":""},"stylescombo":{"label":"スタイル","panelTitle":"スタイル","panelTitle1":"ブロックスタイル","panelTitle2":"インラインスタイル","panelTitle3":"オブジェクトスタイル"},"table":{"border":"枠線の幅","caption":"キャプション","cell":{"menu":"セル","insertBefore":"セルを前に挿入","insertAfter":"セルを後に挿入","deleteCell":"セルを削除","merge":"セルを結合","mergeRight":"右に結合","mergeDown":"下に結合","splitHorizontal":"セルを水平方向に分割","splitVertical":"セルを垂直方向に分割","title":"セルのプロパティ","cellType":"セルの種類","rowSpan":"行の結合数","colSpan":"列の結合数","wordWrap":"単語の折り返し","hAlign":"水平方向の配置","vAlign":"垂直方向の配置","alignBaseline":"ベースライン","bgColor":"背景色","borderColor":"ボーダーカラー","data":"テーブルデータ (td)","header":"ヘッダ","yes":"はい","no":"いいえ","invalidWidth":"セル幅は数値で入力してください。","invalidHeight":"セル高さは数値で入力してください。","invalidRowSpan":"縦幅(行数)は数値で入力してください。","invalidColSpan":"横幅(列数)は数値で入力してください。","chooseColor":"色の選択"},"cellPad":"セル内間隔","cellSpace":"セル内余白","column":{"menu":"列","insertBefore":"列を左に挿入","insertAfter":"列を右に挿入","deleteColumn":"列を削除"},"columns":"列数","deleteTable":"表を削除","headers":"ヘッダ (th)","headersBoth":"両方","headersColumn":"最初の列のみ","headersNone":"なし","headersRow":"最初の行のみ","invalidBorder":"枠線の幅は数値で入力してください。","invalidCellPadding":"セル内余白は数値で入力してください。","invalidCellSpacing":"セル間余白は数値で入力してください。","invalidCols":"列数は0より大きな数値を入力してください。","invalidHeight":"高さは数値で入力してください。","invalidRows":"行数は0より大きな数値を入力してください。","invalidWidth":"幅は数値で入力してください。","menu":"表のプロパティ","row":{"menu":"行","insertBefore":"行を上に挿入","insertAfter":"行を下に挿入","deleteRow":"行を削除"},"rows":"行数","summary":"表の概要","title":"表のプロパティ","toolbar":"表","widthPc":"パーセント","widthPx":"ピクセル","widthUnit":"幅の単位"},"undo":{"redo":"やり直す","undo":"元に戻す"},"wsc":{"btnIgnore":"無視","btnIgnoreAll":"すべて無視","btnReplace":"置換","btnReplaceAll":"すべて置換","btnUndo":"やり直し","changeTo":"変更","errorLoading":"アプリケーションサービスホスト読込みエラー: %s.","ieSpellDownload":"スペルチェッカーがインストールされていません。今すぐダウンロードしますか?","manyChanges":"スペルチェック完了: %1 語句変更されました","noChanges":"スペルチェック完了: 語句は変更されませんでした","noMispell":"スペルチェック完了: スペルの誤りはありませんでした","noSuggestions":"- 該当なし -","notAvailable":"申し訳ありません、現在サービスを利用することができません","notInDic":"辞書にありません","oneChange":"スペルチェック完了: 1語句変更されました","progress":"スペルチェック処理中...","title":"スペルチェック","toolbar":"スペルチェック"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ka.js b/wqflask/wqflask/static/packages/ckeditor/lang/ka.js
deleted file mode 100644
index bb340e0c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ka.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ka']={"editor":"ტექსტის რედაქტორი","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"დააჭირეთ ALT 0-ს დახმარების მისაღებად","browseServer":"სერვერზე დათვალიერება","url":"URL","protocol":"პროტოკოლი","upload":"ატვირთვა","uploadSubmit":"სერვერზე გაგზავნა","image":"სურათი","flash":"Flash","form":"ფორმა","checkbox":"მონიშვნის ღილაკი","radio":"ამორჩევის ღილაკი","textField":"ტექსტური ველი","textarea":"ტექსტური არე","hiddenField":"მალული ველი","button":"ღილაკი","select":"არჩევის ველი","imageButton":"სურათიანი ღილაკი","notSet":"<არაფერი>","id":"Id","name":"სახელი","langDir":"ენის მიმართულება","langDirLtr":"მარცხნიდან მარჯვნივ (LTR)","langDirRtl":"მარჯვნიდან მარცხნივ (RTL)","langCode":"ენის კოდი","longDescr":"დიდი აღწერის URL","cssClass":"CSS კლასი","advisoryTitle":"სათაური","cssStyle":"CSS სტილი","ok":"დიახ","cancel":"გაუქმება","close":"დახურვა","preview":"გადახედვა","resize":"გაწიე ზომის შესაცვლელად","generalTab":"ინფორმაცია","advancedTab":"გაფართოებული","validateNumberFailed":"ეს მნიშვნელობა არაა რიცხვი.","confirmNewPage":"ამ დოკუმენტში ყველა ჩაუწერელი ცვლილება დაიკარგება. დარწმუნებული ხართ რომ ახალი გვერდის ჩატვირთვა გინდათ?","confirmCancel":"ზოგიერთი პარამეტრი შეცვლილია, დარწმუნებულილ ხართ რომ ფანჯრის დახურვა გსურთ?","options":"პარამეტრები","target":"გახსნის ადგილი","targetNew":"ახალი ფანჯარა (_blank)","targetTop":"ზედა ფანჯარა (_top)","targetSelf":"იგივე ფანჯარა (_self)","targetParent":"მშობელი ფანჯარა (_parent)","langDirLTR":"მარცხნიდან მარჯვნივ (LTR)","langDirRTL":"მარჯვნიდან მარცხნივ (RTL)","styles":"სტილი","cssClasses":"CSS კლასი","width":"სიგანე","height":"სიმაღლე","align":"სწორება","alignLeft":"მარცხენა","alignRight":"მარჯვენა","alignCenter":"შუა","alignJustify":"両端揃え","alignTop":"ზემოთა","alignMiddle":"შუა","alignBottom":"ქვემოთა","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"სიმაღლე რიცხვით უნდა იყოს წარმოდგენილი.","invalidWidth":"სიგანე რიცხვით უნდა იყოს წარმოდგენილი.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, მიუწვდომელია</span>"},"about":{"copy":"Copyright &copy; $1. ყველა უფლება დაცულია.","dlgTitle":"CKEditor-ის შესახებ","help":"დახმარებისთვის იხილეთ $1.","moreInfo":"ლიცენზიის ინფორმაციისთვის ეწვიეთ ჩვენს საიტს:","title":"CKEditor-ის შესახებ","userGuide":"CKEditor-ის მომხმარებლის სახელმძღვანელო"},"basicstyles":{"bold":"მსხვილი","italic":"დახრილი","strike":"გადახაზული","subscript":"ინდექსი","superscript":"ხარისხი","underline":"გახაზული"},"bidi":{"ltr":"ტექსტის მიმართულება მარცხნიდან მარჯვნივ","rtl":"ტექსტის მიმართულება მარჯვნიდან მარცხნივ"},"blockquote":{"toolbar":"ციტატა"},"clipboard":{"copy":"ასლი","copyError":"თქვენი ბროუზერის უსაფრთხოების პარამეტრები არ იძლევა ასლის ოპერაციის ავტომატურად განხორციელების საშუალებას. გამოიყენეთ კლავიატურა ამისთვის (Ctrl/Cmd+C).","cut":"ამოჭრა","cutError":"თქვენი ბროუზერის უსაფრთხოების პარამეტრები არ იძლევა ამოჭრის ოპერაციის ავტომატურად განხორციელების საშუალებას. გამოიყენეთ კლავიატურა ამისთვის (Ctrl/Cmd+X).","paste":"ჩასმა","pasteArea":"ჩასმის არე","pasteMsg":"ჩასვით ამ არის შიგნით კლავიატურის გამოყენებით (<strong>Ctrl/Cmd+V</strong>) და დააჭირეთ OK-ს","securityMsg":"თქვენი ბროუზერის უსაფრთხოების პარამეტრები არ იძლევა clipboard-ის მონაცემების წვდომის უფლებას. კიდევ უნდა ჩასვათ ტექსტი ამ ფანჯარაში.","title":"ჩასმა"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"ავტომატური","bgColorTitle":"ფონის ფერი","colors":{"000":"შავი","800000":"მუქი შინდისფერი","8B4513":"ყავისფერი","2F4F4F":"მოლურჯო ნაცრისფერი","008080":"ჩამქრალი ლურჯი","000080":"მუქი ლურჯი","4B0082":"იასამნისფერი","696969":"მუქი ნაცრისფერი","B22222":"აგურისფერი","A52A2A":"მუქი ყავისფერი","DAA520":"მოყვითალო","006400":"მუქი მწვანე","40E0D0":"ცისფერი","0000CD":"ზომიერად ლურჯი","800080":"იისფერი","808080":"ნაცრისფერი","F00":"წითელი","FF8C00":"მუქი სტაფილოსფერი","FFD700":"ოქროსფერი","008000":"მწვანე","0FF":"ღია ცისფერი","00F":"ლურჯი","EE82EE":"იისფერი","A9A9A9":"ბაცი ნაცრისფერი","FFA07A":"ჩამქრალი ვარდისფერი","FFA500":"სტაფილოსფერი","FFFF00":"ყვითელი","00FF00":"ლურჯი","AFEEEE":"ცისფერი","ADD8E6":"ღია ლურჯი","DDA0DD":"ღია იისფერი","D3D3D3":"ღია ნაცრისფერი","FFF0F5":"ღია ვარდისფერი","FAEBD7":"ღია ყავისფერი","FFFFE0":"ნათელი ყვითელი","F0FFF0":"ღია მწვანე","F0FFFF":"ღია ცისფერი 2","F0F8FF":"ღია ცისფერი 3","E6E6FA":"ღია იისფერი 2","FFF":"თეთრი"},"more":"მეტი ფერი...","panelTitle":"ფერები","textColorTitle":"ტექსტის ფერი"},"colordialog":{"clear":"გასუფთავება","highlight":"ჩვენება","options":"ფერის პარამეტრები","selected":"არჩეული ფერი","title":"ფერის შეცვლა"},"templates":{"button":"თარგები","emptyListMsg":"(თარგი არაა განსაზღვრული)","insertOption":"მიმდინარე შეგთავსის შეცვლა","options":"თარგების პარამეტრები","selectPromptMsg":"აირჩიეთ თარგი რედაქტორისთვის","title":"თარგები"},"contextmenu":{"options":"კონტექსტური მენიუს პარამეტრები"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"სათაური","cssClassInputLabel":"CSS კლასები","edit":"Div-ის რედაქტირება","inlineStyleInputLabel":"თანდართული სტილი","langDirLTRLabel":"მარცხნიდან მარჯვნიც (LTR)","langDirLabel":"ენის მინართულება","langDirRTLLabel":"მარჯვნიდან მარცხნივ (RTL)","languageCodeInputLabel":"ენის კოდი","remove":"Div-ის წაშლა","styleSelectLabel":"სტილი","title":"Div კონტეინერის შექმნა","toolbar":"Div კონტეინერის შექმნა"},"toolbar":{"toolbarCollapse":"ხელსაწყოთა ზოლის შეწევა","toolbarExpand":"ხელსაწყოთა ზოლის გამოწევა","toolbarGroups":{"document":"დოკუმენტი","clipboard":"Clipboard/გაუქმება","editing":"რედაქტირება","forms":"ფორმები","basicstyles":"ძირითადი სტილები","paragraph":"აბზაცი","links":"ბმულები","insert":"ჩასმა","styles":"სტილები","colors":"ფერები","tools":"ხელსაწყოები"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"ელემეტის გზა","eleTitle":"%1 ელემენტი"},"find":{"find":"ძებნა","findOptions":"Find Options","findWhat":"საძიებელი ტექსტი:","matchCase":"დიდი და პატარა ასოების დამთხვევა","matchCyclic":"დოკუმენტის ბოლოში გასვლის მერე თავიდან დაწყება","matchWord":"მთელი სიტყვის დამთხვევა","notFoundMsg":"მითითებული ტექსტი არ მოიძებნა.","replace":"შეცვლა","replaceAll":"ყველას შეცვლა","replaceSuccessMsg":"%1 მოძებნილი შეიცვალა.","replaceWith":"შეცვლის ტექსტი:","title":"ძებნა და შეცვლა"},"fakeobjects":{"anchor":"ღუზა","flash":"Flash ანიმაცია","hiddenfield":"მალული ველი","iframe":"IFrame","unknown":"უცნობი ობიექტი"},"flash":{"access":"სკრიპტის წვდომა","accessAlways":"ყოველთვის","accessNever":"არასდროს","accessSameDomain":"იგივე დომენი","alignAbsBottom":"ჩარჩოს ქვემოთა ნაწილის სწორება ტექსტისთვის","alignAbsMiddle":"ჩარჩოს შუა ნაწილის სწორება ტექსტისთვის","alignBaseline":"საბაზისო ხაზის სწორება","alignTextTop":"ტექსტი ზემოდან","bgcolor":"ფონის ფერი","chkFull":"მთელი ეკრანის დაშვება","chkLoop":"ჩაციკლვა","chkMenu":"Flash-ის მენიუს დაშვება","chkPlay":"ავტო გაშვება","flashvars":"ცვლადები Flash-ისთვის","hSpace":"ჰორიზ. სივრცე","properties":"Flash-ის პარამეტრები","propertiesTab":"პარამეტრები","quality":"ხარისხი","qualityAutoHigh":"მაღალი (ავტომატური)","qualityAutoLow":"ძალიან დაბალი","qualityBest":"საუკეთესო","qualityHigh":"მაღალი","qualityLow":"დაბალი","qualityMedium":"საშუალო","scale":"მასშტაბირება","scaleAll":"ყველაფრის ჩვენება","scaleFit":"ზუსტი ჩასმა","scaleNoBorder":"ჩარჩოს გარეშე","title":"Flash-ის პარამეტრები","vSpace":"ვერტ. სივრცე","validateHSpace":"ჰორიზონტალური სივრცე არ უნდა იყოს ცარიელი.","validateSrc":"URL არ უნდა იყოს ცარიელი.","validateVSpace":"ვერტიკალური სივრცე არ უნდა იყოს ცარიელი.","windowMode":"ფანჯრის რეჟიმი","windowModeOpaque":"გაუმჭვირვალე","windowModeTransparent":"გამჭვირვალე","windowModeWindow":"ფანჯარა"},"font":{"fontSize":{"label":"ზომა","voiceLabel":"ტექსტის ზომა","panelTitle":"ტექსტის ზომა"},"label":"ფონტი","panelTitle":"ფონტის სახელი","voiceLabel":"ფონტი"},"forms":{"button":{"title":"ღილაკის პარამეტრები","text":"ტექსტი","type":"ტიპი","typeBtn":"ღილაკი","typeSbm":"გაგზავნა","typeRst":"გასუფთავება"},"checkboxAndRadio":{"checkboxTitle":"მონიშვნის ღილაკის (Checkbox) პარამეტრები","radioTitle":"ასარჩევი ღილაკის (Radio) პარამეტრები","value":"ტექსტი","selected":"არჩეული"},"form":{"title":"ფორმის პარამეტრები","menu":"ფორმის პარამეტრები","action":"ქმედება","method":"მეთოდი","encoding":"კოდირება"},"hidden":{"title":"მალული ველის პარამეტრები","name":"სახელი","value":"მნიშვნელობა"},"select":{"title":"არჩევის ველის პარამეტრები","selectInfo":"ინფორმაცია","opAvail":"შესაძლებელი ვარიანტები","value":"მნიშვნელობა","size":"ზომა","lines":"ხაზები","chkMulti":"მრავლობითი არჩევანის საშუალება","opText":"ტექსტი","opValue":"მნიშვნელობა","btnAdd":"დამატება","btnModify":"შეცვლა","btnUp":"ზემოთ","btnDown":"ქვემოთ","btnSetValue":"ამორჩეულ მნიშვნელოვნად დაყენება","btnDelete":"წაშლა"},"textarea":{"title":"ტექსტური არის პარამეტრები","cols":"სვეტები","rows":"სტრიქონები"},"textfield":{"title":"ტექსტური ველის პარამეტრები","name":"სახელი","value":"მნიშვნელობა","charWidth":"სიმბოლოს ზომა","maxChars":"ასოების მაქსიმალური ოდენობა","type":"ტიპი","typeText":"ტექსტი","typePass":"პაროლი","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"ფიორმატირება","panelTitle":"ფორმატირება","tag_address":"მისამართი","tag_div":"ჩვეულებრივი (DIV)","tag_h1":"სათაური 1","tag_h2":"სათაური 2","tag_h3":"სათაური 3","tag_h4":"სათაური 4","tag_h5":"სათაური 5","tag_h6":"სათაური 6","tag_p":"ჩვეულებრივი","tag_pre":"ფორმატირებული"},"horizontalrule":{"toolbar":"ჰორიზონტალური ხაზის ჩასმა"},"iframe":{"border":"ჩარჩოს გამოჩენა","noUrl":"აკრიფეთ iframe-ის URL","scrolling":"გადახვევის ზოლების დაშვება","title":"IFrame-ის პარამეტრები","toolbar":"IFrame"},"image":{"alertUrl":"აკრიფეთ სურათის URL","alt":"სანაცვლო ტექსტი","border":"ჩარჩო","btnUpload":"სერვერისთვის გაგზავნა","button2Img":"გსურთ არჩეული სურათიანი ღილაკის გადაქცევა ჩვეულებრივ ღილაკად?","hSpace":"ჰორიზონტალური სივრცე","img2Button":"გსურთ არჩეული ჩვეულებრივი ღილაკის გადაქცევა სურათიან ღილაკად?","infoTab":"სურათის ინფორმცია","linkTab":"ბმული","lockRatio":"პროპორციის შენარჩუნება","menu":"სურათის პარამეტრები","resetSize":"ზომის დაბრუნება","title":"სურათის პარამეტრები","titleButton":"სურათიანი ღილაკის პარამეტრები","upload":"ატვირთვა","urlMissing":"სურათის URL არაა შევსებული.","vSpace":"ვერტიკალური სივრცე","validateBorder":"ჩარჩო მთელი რიცხვი უნდა იყოს.","validateHSpace":"ჰორიზონტალური სივრცე მთელი რიცხვი უნდა იყოს.","validateVSpace":"ვერტიკალური სივრცე მთელი რიცხვი უნდა იყოს."},"indent":{"indent":"მეტად შეწევა","outdent":"ნაკლებად შეწევა"},"smiley":{"options":"სიცილაკის პარამეტრები","title":"სიცილაკის ჩასმა","toolbar":"სიცილაკები"},"justify":{"block":"გადასწორება","center":"შუაში სწორება","left":"მარცხნივ სწორება","right":"მარჯვნივ სწორება"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"წვდომის ღილაკი","advanced":"დაწვრილებით","advisoryContentType":"შიგთავსის ტიპი","advisoryTitle":"სათაური","anchor":{"toolbar":"ღუზა","menu":"ღუზის რედაქტირება","title":"ღუზის პარამეტრები","name":"ღუზუს სახელი","errorName":"აკრიფეთ ღუზის სახელი","remove":"Remove Anchor"},"anchorId":"ელემენტის Id-თ","anchorName":"ღუზის სახელით","charset":"კოდირება","cssClasses":"CSS კლასი","emailAddress":"ელფოსტის მისამართები","emailBody":"წერილის ტექსტი","emailSubject":"წერილის სათაური","id":"Id","info":"ბმულის ინფორმაცია","langCode":"ენის კოდი","langDir":"ენის მიმართულება","langDirLTR":"მარცხნიდან მარჯვნივ (LTR)","langDirRTL":"მარჯვნიდან მარცხნივ (RTL)","menu":"ბმულის რედაქტირება","name":"სახელი","noAnchors":"(ამ დოკუმენტში ღუზა არაა)","noEmail":"აკრიფეთ ელფოსტის მისამართი","noUrl":"აკრიფეთ ბმულის URL","other":"<სხვა>","popupDependent":"დამოკიდებული (Netscape)","popupFeatures":"Popup ფანჯრის პარამეტრები","popupFullScreen":"მთელი ეკრანი (IE)","popupLeft":"მარცხენა პოზიცია","popupLocationBar":"ნავიგაციის ზოლი","popupMenuBar":"მენიუს ზოლი","popupResizable":"ცვალებადი ზომით","popupScrollBars":"გადახვევის ზოლები","popupStatusBar":"სტატუსის ზოლი","popupToolbar":"ხელსაწყოთა ზოლი","popupTop":"ზედა პოზიცია","rel":"კავშირი","selectAnchor":"აირჩიეთ ღუზა","styles":"CSS სტილი","tabIndex":"Tab-ის ინდექსი","target":"გახსნის ადგილი","targetFrame":"<frame>","targetFrameName":"Frame-ის სახელი","targetPopup":"<popup ფანჯარა>","targetPopupName":"Popup ფანჯრის სახელი","title":"ბმული","toAnchor":"ბმული ტექსტში ღუზაზე","toEmail":"ელფოსტა","toUrl":"URL","toolbar":"ბმული","type":"ბმულის ტიპი","unlink":"ბმულის მოხსნა","upload":"აქაჩვა"},"list":{"bulletedlist":"ღილიანი სია","numberedlist":"გადანომრილი სია"},"liststyle":{"armenian":"სომხური გადანომრვა","bulletedTitle":"ღილებიანი სიის პარამეტრები","circle":"წრეწირი","decimal":"რიცხვებით (1, 2, 3, ..)","decimalLeadingZero":"ნულით დაწყებული რიცხვებით (01, 02, 03, ..)","disc":"წრე","georgian":"ქართული გადანომრვა (ან, ბან, გან, ..)","lowerAlpha":"პატარა ლათინური ასოებით (a, b, c, d, e, ..)","lowerGreek":"პატარა ბერძნული ასოებით (ალფა, ბეტა, გამა, ..)","lowerRoman":"რომაული გადანომრვცა პატარა ციფრებით (i, ii, iii, iv, v, ..)","none":"არაფერი","notset":"<არაფერი>","numberedTitle":"გადანომრილი სიის პარამეტრები","square":"კვადრატი","start":"საწყისი","type":"ტიპი","upperAlpha":"დიდი ლათინური ასოებით (A, B, C, D, E, ..)","upperRoman":"რომაული გადანომრვა დიდი ციფრებით (I, II, III, IV, V, etc.)","validateStartNumber":"სიის საწყისი მთელი რიცხვი უნდა იყოს."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"გადიდება","minimize":"დაპატარავება"},"newpage":{"toolbar":"ახალი გვერდი"},"pagebreak":{"alt":"გვერდის წყვეტა","toolbar":"გვერდის წყვეტა ბეჭდვისთვის"},"pastetext":{"button":"მხოლოდ ტექსტის ჩასმა","title":"მხოლოდ ტექსტის ჩასმა"},"pastefromword":{"confirmCleanup":"ჩასასმელი ტექსტი ვორდიდან გადმოტანილს გავს - გინდათ მისი წინასწარ გაწმენდა?","error":"შიდა შეცდომის გამო ვერ მოხერხდა ტექსტის გაწმენდა","title":"ვორდიდან ჩასმა","toolbar":"ვორდიდან ჩასმა"},"preview":{"preview":"გადახედვა"},"print":{"toolbar":"ბეჭდვა"},"removeformat":{"toolbar":"ფორმატირების მოხსნა"},"save":{"toolbar":"ჩაწერა"},"selectall":{"toolbar":"ყველაფრის მონიშნვა"},"showblocks":{"toolbar":"არეების ჩვენება"},"sourcearea":{"toolbar":"კოდები"},"specialchar":{"options":"სპეციალური სიმბოლოს პარამეტრები","title":"სპეციალური სიმბოლოს არჩევა","toolbar":"სპეციალური სიმბოლოს ჩასმა"},"scayt":{"btn_about":"SCAYT-ის შესახებ","btn_dictionaries":"ლექსიკონები","btn_disable":"SCAYT-ის გამორთვა","btn_enable":"SCAYT-ის ჩართვა","btn_langs":"ენები","btn_options":"პარამეტრები","text_title":""},"stylescombo":{"label":"სტილები","panelTitle":"ფორმატირების სტილები","panelTitle1":"არის სტილები","panelTitle2":"თანდართული სტილები","panelTitle3":"ობიექტის სტილები"},"table":{"border":"ჩარჩოს ზომა","caption":"სათაური","cell":{"menu":"უჯრა","insertBefore":"უჯრის ჩასმა მანამდე","insertAfter":"უჯრის ჩასმა მერე","deleteCell":"უჯრების წაშლა","merge":"უჯრების შეერთება","mergeRight":"შეერთება მარჯვენასთან","mergeDown":"შეერთება ქვემოთასთან","splitHorizontal":"გაყოფა ჰორიზონტალურად","splitVertical":"გაყოფა ვერტიკალურად","title":"უჯრის პარამეტრები","cellType":"უჯრის ტიპი","rowSpan":"სტრიქონების ოდენობა","colSpan":"სვეტების ოდენობა","wordWrap":"სტრიქონის გადატანა (Word Wrap)","hAlign":"ჰორიზონტალური სწორება","vAlign":"ვერტიკალური სწორება","alignBaseline":"ძირითადი ხაზის გასწვრივ","bgColor":"ფონის ფერი","borderColor":"ჩარჩოს ფერი","data":"მონაცემები","header":"სათაური","yes":"დიახ","no":"არა","invalidWidth":"უჯრის სიგანე რიცხვით უნდა იყოს წარმოდგენილი.","invalidHeight":"უჯრის სიმაღლე რიცხვით უნდა იყოს წარმოდგენილი.","invalidRowSpan":"სტრიქონების რაოდენობა მთელი რიცხვი უნდა იყოს.","invalidColSpan":"სვეტების რაოდენობა მთელი რიცხვი უნდა იყოს.","chooseColor":"არჩევა"},"cellPad":"უჯრის კიდე (padding)","cellSpace":"უჯრის სივრცე (spacing)","column":{"menu":"სვეტი","insertBefore":"სვეტის ჩამატება წინ","insertAfter":"სვეტის ჩამატება მერე","deleteColumn":"სვეტების წაშლა"},"columns":"სვეტი","deleteTable":"ცხრილის წაშლა","headers":"სათაურები","headersBoth":"ორივე","headersColumn":"პირველი სვეტი","headersNone":"არაფერი","headersRow":"პირველი სტრიქონი","invalidBorder":"ჩარჩოს ზომა რიცხვით უდნა იყოს წარმოდგენილი.","invalidCellPadding":"უჯრის კიდე (padding) რიცხვით უნდა იყოს წარმოდგენილი.","invalidCellSpacing":"უჯრის სივრცე (spacing) რიცხვით უნდა იყოს წარმოდგენილი.","invalidCols":"სვეტების რაოდენობა დადებითი რიცხვი უნდა იყოს.","invalidHeight":"ცხრილის სიმაღლე რიცხვით უნდა იყოს წარმოდგენილი.","invalidRows":"სტრიქონების რაოდენობა დადებითი რიცხვი უნდა იყოს.","invalidWidth":"ცხრილის სიგანე რიცხვით უნდა იყოს წარმოდგენილი.","menu":"ცხრილის პარამეტრები","row":{"menu":"სტრიქონი","insertBefore":"სტრიქონის ჩამატება წინ","insertAfter":"სტრიქონის ჩამატება მერე","deleteRow":"სტრიქონების წაშლა"},"rows":"სტრიქონი","summary":"შეჯამება","title":"ცხრილის პარამეტრები","toolbar":"ცხრილი","widthPc":"პროცენტი","widthPx":"წერტილი","widthUnit":"საზომი ერთეული"},"undo":{"redo":"გამეორება","undo":"გაუქმება"},"wsc":{"btnIgnore":"უგულებელყოფა","btnIgnoreAll":"ყველას უგულებელყოფა","btnReplace":"შეცვლა","btnReplaceAll":"ყველას შეცვლა","btnUndo":"გაუქმება","changeTo":"შეცვლელი","errorLoading":"სერვისის გამოძახების შეცდომა: %s.","ieSpellDownload":"მართლწერის შემოწმება არაა დაინსტალირებული. ჩამოვქაჩოთ ინტერნეტიდან?","manyChanges":"მართლწერის შემოწმება: %1 სიტყვა შეიცვალა","noChanges":"მართლწერის შემოწმება: არაფერი შეცვლილა","noMispell":"მართლწერის შემოწმება: შეცდომა არ მოიძებნა","noSuggestions":"- არაა შემოთავაზება -","notAvailable":"უკაცრავად, ეს სერვისი ამჟამად მიუწვდომელია.","notInDic":"არაა ლექსიკონში","oneChange":"მართლწერის შემოწმება: ერთი სიტყვა შეიცვალა","progress":"მიმდინარეობს მართლწერის შემოწმება...","title":"მართლწერა","toolbar":"მართლწერა"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/km.js b/wqflask/wqflask/static/packages/ckeditor/lang/km.js
deleted file mode 100644
index 0759e892..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/km.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['km']={"editor":"ឧបករណ៍​សរសេរ​អត្ថបទ​សម្បូរ​បែប","editorPanel":"ផ្ទាំង​ឧបករណ៍​សរសេរ​អត្ថបទ​សម្បូរ​បែប","common":{"editorHelp":"ចុច ALT 0 សម្រាប់​ជំនួយ","browseServer":"រក​មើល​ក្នុង​ម៉ាស៊ីន​បម្រើ","url":"URL","protocol":"ពិធីការ","upload":"ផ្ទុក​ឡើង","uploadSubmit":"បញ្ជូនទៅកាន់ម៉ាស៊ីន​បម្រើ","image":"រូបភាព","flash":"Flash","form":"បែបបទ","checkbox":"ប្រអប់​ធីក","radio":"ប៊ូតុង​មូល","textField":"វាល​អត្ថបទ","textarea":"Textarea","hiddenField":"វាល​កំបាំង","button":"ប៊ូតុង","select":"វាល​ជម្រើស","imageButton":"ប៊ូតុង​រូបភាព","notSet":"<មិនកំណត់>","id":"Id","name":"ឈ្មោះ","langDir":"ទិសដៅភាសា","langDirLtr":"ពីឆ្វេងទៅស្តាំ (LTR)","langDirRtl":"ពីស្តាំទៅឆ្វេង (RTL)","langCode":"លេខ​កូដ​ភាសា","longDescr":"URL អធិប្បាយ​វែង","cssClass":"Stylesheet Classes","advisoryTitle":"ចំណង​ជើង​ណែនាំ","cssStyle":"រចនាបថ","ok":"ព្រម","cancel":"បោះបង់","close":"បិទ","preview":"មើល​ជា​មុន","resize":"ប្ដូរ​ទំហំ","generalTab":"ទូទៅ","advancedTab":"កម្រិត​ខ្ពស់","validateNumberFailed":"តម្លៃ​នេះ​ពុំ​មែន​ជា​លេខ​ទេ។","confirmNewPage":"រាល់​បន្លាស់​ប្ដូរ​នានា​ដែល​មិន​ទាន់​រក្សា​ទុក​ក្នុង​មាតិកា​នេះ នឹង​ត្រូវ​បាត់​បង់។ តើ​អ្នក​ពិត​ជា​ចង់​ផ្ទុក​ទំព័រ​ថ្មី​មែនទេ?","confirmCancel":"ការ​កំណត់​មួយ​ចំនួន​ត្រូ​វ​បាន​ផ្លាស់​ប្ដូរ។ តើ​អ្នក​ពិត​ជា​ចង់​បិទ​ប្រអប់​នេះ​មែនទេ?","options":"ការ​កំណត់","target":"គោលដៅ","targetNew":"វីនដូ​ថ្មី (_blank)","targetTop":"វីនដូ​លើ​គេ (_top)","targetSelf":"វីនដូ​ដូច​គ្នា (_self)","targetParent":"វីនដូ​មេ (_parent)","langDirLTR":"ពីឆ្វេងទៅស្តាំ(LTR)","langDirRTL":"ពីស្តាំទៅឆ្វេង(RTL)","styles":"រចនាបថ","cssClasses":"Stylesheet Classes","width":"ទទឹង","height":"កំពស់","align":"កំណត់​ទីតាំង","alignLeft":"ខាងឆ្វង","alignRight":"ខាងស្តាំ","alignCenter":"កណ្តាល","alignJustify":"両端揃え","alignTop":"ខាងលើ","alignMiddle":"កណ្តាល","alignBottom":"ខាងក្រោម","alignNone":"អត់","invalidValue":"តម្លៃ​មិន​ត្រឹម​ត្រូវ។","invalidHeight":"តម្លៃ​កំពស់​ត្រូវ​តែ​ជា​លេខ។","invalidWidth":"តម្លៃ​ទទឹង​ត្រូវ​តែ​ជា​លេខ។","invalidCssLength":"តម្លៃ​កំណត់​សម្រាប់​វាល \"%1\" ត្រូវ​តែ​ជា​លេខ​វិជ្ជមាន​ ដោយ​ភ្ជាប់ឬ​មិន​ភ្ជាប់​ជាមួយ​នឹង​ឯកតា​រង្វាស់​របស់ CSS (px, %, in, cm, mm, em, ex, pt ឬ pc) ។","invalidHtmlLength":"តម្លៃ​កំណត់​សម្រាប់​វាល \"%1\" ត្រូវ​តែ​ជា​លេខ​វិជ្ជមាន ដោយ​ភ្ជាប់​ឬ​មិន​ភ្ជាប់​ជាមួយ​នឹង​ឯកតា​រង្វាស់​របស់ HTML (px ឬ %) ។","invalidInlineStyle":"តម្លៃ​កំណត់​សម្រាប់​រចនាបថ​ក្នុង​តួ ត្រូវ​តែ​មាន​មួយ​ឬ​ធាតុ​ច្រើន​ដោយ​មាន​ទ្រង់ទ្រាយ​ជា \"ឈ្មោះ : តម្លៃ\" ហើយ​ញែក​ចេញ​ពី​គ្នា​ដោយ​ចុច​ក្បៀស។","cssLengthTooltip":"បញ្ចូល​លេខ​សម្រាប់​តម្លៃ​ជា​ភិចសែល ឬ​លេខ​ដែល​មាន​ឯកតា​ត្រឹមត្រូវ​របស់ CSS (px, %, in, cm, mm, em, ex, pt ឬ pc) ។","unavailable":"%1<span class=\"cke_accessibility\">, មិន​មាន</span>"},"about":{"copy":"រក្សាសិទ្ធិ &copy; $1។ រក្សា​សិទ្ធិ​គ្រប់​បែប​យ៉ាង។","dlgTitle":"អំពី CKEditor","help":"ពិនិត្យ $1 សម្រាប់​ជំនួយ។","moreInfo":"សម្រាប់​ព័ត៌មាន​អំពី​អាជ្ញាបណញណ សូម​មើល​ក្នុង​គេហទំព័រ​របស់​យើង៖","title":"អំពី CKEditor","userGuide":"វិធី​ប្រើ​ប្រាស់ CKEditor"},"basicstyles":{"bold":"ដិត","italic":"ទ្រេត","strike":"គូស​បន្ទាត់​ចំ​កណ្ដាល","subscript":"អក្សរតូចក្រោម","superscript":"អក្សរតូចលើ","underline":"គូស​បន្ទាត់​ក្រោម"},"bidi":{"ltr":"ទិស​ដៅ​អក្សរ​ពី​ឆ្វេង​ទៅ​ស្ដាំ","rtl":"ទិស​ដៅ​អក្សរ​ពី​ស្ដាំ​ទៅ​ឆ្វេង"},"blockquote":{"toolbar":"ប្លក់​ពាក្យ​សម្រង់"},"clipboard":{"copy":"ចម្លង","copyError":"ការកំណត់សុវត្ថភាពរបស់កម្មវិធីរុករករបស់លោកអ្នក នេះ​មិនអាចធ្វើកម្មវិធីតាក់តែងអត្ថបទ ចំលងអត្ថបទយកដោយស្វ័យប្រវត្តបានឡើយ ។ សូមប្រើប្រាស់បន្សំ ឃីដូចនេះ (Ctrl/Cmd+C)។","cut":"កាត់យក","cutError":"ការកំណត់សុវត្ថភាពរបស់កម្មវិធីរុករករបស់លោកអ្នក នេះ​មិនអាចធ្វើកម្មវិធីតាក់តែងអត្ថបទ កាត់អត្ថបទយកដោយស្វ័យប្រវត្តបានឡើយ ។ សូមប្រើប្រាស់បន្សំ ឃីដូចនេះ (Ctrl/Cmd+X) ។","paste":"បិទ​ភ្ជាប់","pasteArea":"តំបន់​បិទ​ភ្ជាប់","pasteMsg":"សូមចំលងអត្ថបទទៅដាក់ក្នុងប្រអប់ដូចខាងក្រោមដោយប្រើប្រាស់ ឃី ​(<STRONG>Ctrl/Cmd+V</STRONG>) ហើយចុច <STRONG>OK</STRONG> ។","securityMsg":"ព្រោះតែ​ការកំណត់​សុវត្ថិភាព ប្រអប់សរសេរ​មិន​អាចចាប់​យកទិន្នន័យពីក្តារតម្បៀតខ្ទាស់​អ្នក​​ដោយផ្ទាល់​បានទេ។ អ្នក​ត្រូវចំលង​ដាក់វាម្តង​ទៀត ក្នុងផ្ទាំងនេះ។","title":"បិទ​ភ្ជាប់"},"button":{"selectedLabel":"%1 (បាន​ជ្រើស​រើស)"},"colorbutton":{"auto":"ស្វ័យប្រវត្តិ","bgColorTitle":"ពណ៌ផ្ទៃខាងក្រោយ","colors":{"000":"ខ្មៅ","800000":"ត្នោត​ចាស់","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"ខៀវ​ចាស់","4B0082":"ធ្លះ","696969":"ប្រផេះ​ក្រាស់","B22222":"Fire Brick","A52A2A":"ត្នោត","DAA520":"Golden Rod","006400":"បៃតង​ចាស់","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"ប្រផេះ","F00":"ក្រហម","FF8C00":"ទឹក​ក្រូច​ចាស់","FFD700":"មាស","008000":"បៃតង","0FF":"Cyan","00F":"ខៀវ","EE82EE":"ស្វាយ","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"ទឹក​ក្រូច","FFFF00":"លឿង","00FF00":"ក្រូច​ឆ្មារ","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"លឿង​ស្ដើង","F0FFF0":"Honeydew","F0FFFF":"ផ្ទៃមេឃ","F0F8FF":"Alice Blue","E6E6FA":"ឡាវិនដឺ","FFF":"ស"},"more":"ពណ៌​ផ្សេង​ទៀត..","panelTitle":"ពណ៌","textColorTitle":"ពណ៌អក្សរ"},"colordialog":{"clear":"សម្អាត","highlight":"បន្លិច​ពណ៌","options":"ជម្រើស​ពណ៌","selected":"ពណ៌​ដែល​បាន​រើស","title":"រើស​ពណ៌"},"templates":{"button":"ពុម្ព​គំរូ","emptyListMsg":"(មិន​មាន​ពុម្ព​គំរូ​ត្រូវ​បាន​កំណត់)","insertOption":"ជំនួស​ក្នុង​មាតិកា​បច្ចុប្បន្ន","options":"ជម្រើស​ពុម្ព​គំរូ","selectPromptMsg":"សូម​រើស​ពុម្ព​គំរូ​ដើម្បី​បើក​ក្នុង​កម្មវិធី​សរសេរ​អត្ថបទ","title":"ពុម្ព​គំរូ​មាតិកា"},"contextmenu":{"options":"ជម្រើស​ម៉ឺនុយ​បរិបទ"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"ចំណង​ជើង​ប្រឹក្សា","cssClassInputLabel":"Stylesheet Classes","edit":"កែ Div","inlineStyleInputLabel":"ស្ទីល​ក្នុង​បន្ទាត់","langDirLTRLabel":"ពីឆ្វេងទៅស្តាំ(LTR)","langDirLabel":"ទិសដៅភាសា","langDirRTLLabel":"ពីស្តាំទៅឆ្វេង(RTL)","languageCodeInputLabel":"កូដ​ភាសា","remove":"ដក Div ចេញ","styleSelectLabel":"ស្ទីល","title":"បង្កើត​អ្នក​ផ្ទុក Div","toolbar":"បង្កើត​អ្នក​ផ្ទុក Div"},"toolbar":{"toolbarCollapse":"បង្រួម​របារ​ឧបករណ៍","toolbarExpand":"ពង្រីក​របារ​ឧបករណ៍","toolbarGroups":{"document":"ឯកសារ","clipboard":"Clipboard/មិន​ធ្វើ​វិញ","editing":"ការ​កែ​សម្រួល","forms":"បែបបទ","basicstyles":"រចនាបថ​មូលដ្ឋាន","paragraph":"កថាខណ្ឌ","links":"តំណ","insert":"បញ្ចូល","styles":"រចនាបថ","colors":"ពណ៌","tools":"ឧបករណ៍"},"toolbars":"របារ​ឧបករណ៍​កែ​សម្រួល"},"elementspath":{"eleLabel":"ទីតាំង​ធាតុ","eleTitle":"ធាតុ %1"},"find":{"find":"ស្វែងរក","findOptions":"ជម្រើស​ស្វែង​រក","findWhat":"ស្វែងរកអ្វី:","matchCase":"ករណី​ដំណូច","matchCyclic":"ត្រូវ​នឹង cyclic","matchWord":"ដូច​នឹង​ពាក្យ​ទាំង​មូល","notFoundMsg":"រក​មិន​ឃើញ​ពាក្យ​ដែល​បាន​បញ្ជាក់។","replace":"ជំនួស","replaceAll":"ជំនួសទាំងអស់","replaceSuccessMsg":"ការ​ជំនួស​ចំនួន %1 បាន​កើត​ឡើង។","replaceWith":"ជំនួសជាមួយ:","title":"រក​និង​ជំនួស"},"fakeobjects":{"anchor":"យុថ្កា","flash":"Flash មាន​ចលនា","hiddenfield":"វាល​កំបាំង","iframe":"IFrame","unknown":"វត្ថុ​មិន​ស្គាល់"},"flash":{"access":"Script Access","accessAlways":"ជានិច្ច","accessNever":"កុំ","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"បន្ទាត់ជាមូលដ្ឋាន","alignTextTop":"លើអត្ថបទ","bgcolor":"ពណ៌ផ្ទៃខាងក្រោយ","chkFull":"អនុញ្ញាត​ឲ្យ​ពេញ​អេក្រង់","chkLoop":"ចំនួនដង","chkMenu":"បង្ហាញ មឺនុយរបស់ Flash","chkPlay":"លេងដោយស្វ័យប្រវត្ត","flashvars":"អថេរ Flash","hSpace":"គំលាតទទឹង","properties":"ការកំណត់ Flash","propertiesTab":"លក្ខណៈ​សម្បត្តិ","quality":"គុណភាព","qualityAutoHigh":"ខ្ពស់​ស្វ័យ​ប្រវត្តិ","qualityAutoLow":"ទាប​ស្វ័យ​ប្រវត្តិ","qualityBest":"ល្អ​បំផុត","qualityHigh":"ខ្ពស់","qualityLow":"ទាប","qualityMedium":"មធ្យម","scale":"ទំហំ","scaleAll":"បង្ហាញទាំងអស់","scaleFit":"ត្រូវល្មម","scaleNoBorder":"មិនបង្ហាញស៊ុម","title":"ការកំណត់ Flash","vSpace":"គំលាតបណ្តោយ","validateHSpace":"HSpace must be a number.","validateSrc":"សូមសរសេរ អាស័យដ្ឋាន URL","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"ភាព​ថ្លា","windowModeWindow":"វីនដូ"},"font":{"fontSize":{"label":"ទំហំ","voiceLabel":"ទំហំ​អក្សរ","panelTitle":"ទំហំ​អក្សរ"},"label":"ពុម្ព​អក្សរ","panelTitle":"ឈ្មោះ​ពុម្ព​អក្សរ","voiceLabel":"ពុម្ព​អក្សរ"},"forms":{"button":{"title":"លក្ខណៈ​ប៊ូតុង","text":"អត្ថបទ (តម្លៃ)","type":"ប្រភេទ","typeBtn":"ប៊ូតុង","typeSbm":"ដាក់ស្នើ","typeRst":"កំណត់​ឡើង​វិញ"},"checkboxAndRadio":{"checkboxTitle":"លក្ខណៈ​ប្រអប់​ធីក","radioTitle":"លក្ខនៈ​ប៊ូតុង​មូល","value":"តម្លៃ","selected":"បាន​ជ្រើស"},"form":{"title":"លក្ខណៈ​បែបបទ","menu":"លក្ខណៈ​បែបបទ","action":"សកម្មភាព","method":"វិធីសាស្ត្រ","encoding":"ការ​អ៊ិនកូដ"},"hidden":{"title":"លក្ខណៈ​វាល​កំបាំង","name":"ឈ្មោះ","value":"តម្លៃ"},"select":{"title":"លក្ខណៈ​វាល​ជម្រើស","selectInfo":"ព័ត៌មាន​ជម្រើស","opAvail":"ជម្រើស​ដែល​មាន","value":"តម្លៃ","size":"ទំហំ","lines":"បន្ទាត់","chkMulti":"អនុញ្ញាត​ពហុ​ជម្រើស","opText":"អត្ថបទ","opValue":"តម្លៃ","btnAdd":"បន្ថែម","btnModify":"ផ្លាស់ប្តូរ","btnUp":"លើ","btnDown":"ក្រោម","btnSetValue":"កំណត់​ជា​តម្លៃ​ដែល​បាន​ជ្រើស","btnDelete":"លុប"},"textarea":{"title":"លក្ខណៈ​ប្រអប់​អត្ថបទ","cols":"ជួរឈរ","rows":"ជួរដេក"},"textfield":{"title":"លក្ខណៈ​វាល​អត្ថបទ","name":"ឈ្មោះ","value":"តម្លៃ","charWidth":"ទទឹង​តួ​អក្សរ","maxChars":"អក្សរអតិបរិមា","type":"ប្រភេទ","typeText":"អត្ថបទ","typePass":"ពាក្យសម្ងាត់","typeEmail":"អ៊ីមែល","typeSearch":"ស្វែង​រក","typeTel":"លេខ​ទូរសព្ទ","typeUrl":"URL"}},"format":{"label":"ទម្រង់","panelTitle":"ទម្រង់​កថាខណ្ឌ","tag_address":"អាសយដ្ឋាន","tag_div":"ធម្មតា (DIV)","tag_h1":"ចំណង​ជើង 1","tag_h2":"ចំណង​ជើង 2","tag_h3":"ចំណង​ជើង 3","tag_h4":"ចំណង​ជើង 4","tag_h5":"ចំណង​ជើង 5","tag_h6":"ចំណង​ជើង 6","tag_p":"ធម្មតា","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"បន្ថែមបន្ទាត់ផ្តេក"},"iframe":{"border":"បង្ហាញ​បន្ទាត់​ស៊ុម","noUrl":"សូម​បញ្ចូល URL របស់ iframe","scrolling":"ប្រើ​របារ​រំកិល","title":"លក្ខណៈ​សម្បត្តិ IFrame","toolbar":"IFrame"},"image":{"alertUrl":"សូម​បញ្ចូល URL រូបភាព","alt":"អត្ថបទជំនួស","border":"ស៊ុម","btnUpload":"ផ្ញើ​ទៅ​ម៉ាស៊ីន​បម្រើ","button2Img":"តើ​អ្នក​ចង់​ផ្លាស់​ប្ដូរ​ប៊ូតុង​រូបភាព​ដែល​បាន​ជ្រើស នៅ​លើ​រូបភាព​ធម្មតា​មួយ​មែនទេ?","hSpace":"គម្លាត​ផ្ដេក","img2Button":"តើ​អ្នក​ចង់​ផ្លាស់​ប្ដូរ​រូបភាព​ដែល​បាន​ជ្រើស នៅ​លើ​ប៊ូតុង​រូបភាព​មែនទេ?","infoTab":"ពត៌មានអំពីរូបភាព","linkTab":"តំណ","lockRatio":"ចាក់​សោ​ផល​ធៀប","menu":"លក្ខណៈ​រូបភាព","resetSize":"កំណត់ទំហំឡើងវិញ","title":"លក្ខណៈ​រូបភាព","titleButton":"លក្ខណៈ​ប៊ូតុង​រូបភាព","upload":"ផ្ទុកឡើង","urlMissing":"ខ្វះ URL ប្រភព​រូប​ភាព។","vSpace":"គម្លាត​បញ្ឈរ","validateBorder":"ស៊ុម​ត្រូវ​តែ​ជា​លេខ។","validateHSpace":"គម្លាត​ផ្ដេក​ត្រូវ​តែ​ជា​លេខ។","validateVSpace":"គម្លាត​បញ្ឈរ​ត្រូវ​តែ​ជា​លេខ។"},"indent":{"indent":"បន្ថែមការចូលបន្ទាត់","outdent":"បន្ថយការចូលបន្ទាត់"},"smiley":{"options":"ជម្រើស​រូប​សញ្ញា​អារម្មណ៍","title":"បញ្ចូល​រូប​សញ្ញា​អារម្មណ៍","toolbar":"រូប​សញ្ញ​អារម្មណ៍"},"justify":{"block":"តម្រឹម​ពេញ","center":"កណ្ដាល","left":"តម្រឹម​ឆ្វេង","right":"តម្រឹម​ស្ដាំ"},"language":{"button":"កំណត់​ភាសា","remove":"លុប​ភាសា"},"link":{"acccessKey":"សោរ​ចូល","advanced":"កម្រិត​ខ្ពស់","advisoryContentType":"ប្រភេទអត្ថបទ​ប្រឹក្សា","advisoryTitle":"ចំណងជើង​ប្រឹក្សា","anchor":{"toolbar":"យុថ្កា","menu":"កែ​យុថ្កា","title":"លក្ខណៈ​យុថ្កា","name":"ឈ្មោះ​យុថ្កា","errorName":"សូម​បញ្ចូល​ឈ្មោះ​យុថ្កា","remove":"ដក​យុថ្កា​ចេញ"},"anchorId":"តាម ID ធាតុ","anchorName":"តាម​ឈ្មោះ​យុថ្កា","charset":"លេខកូតអក្សររបស់ឈ្នាប់","cssClasses":"Stylesheet Classes","emailAddress":"អាសយដ្ឋាន​អ៊ីមែល","emailBody":"តួ​អត្ថបទ","emailSubject":"ប្រធានបទ​សារ","id":"Id","info":"ព័ត៌មាន​ពី​តំណ","langCode":"កូដ​ភាសា","langDir":"ទិសដៅភាសា","langDirLTR":"ពីឆ្វេងទៅស្តាំ(LTR)","langDirRTL":"ពីស្តាំទៅឆ្វេង(RTL)","menu":"កែ​តំណ","name":"ឈ្មោះ","noAnchors":"(មិន​មាន​យុថ្កា​នៅ​ក្នុង​ឯកសារ​អត្ថថបទ​ទេ)","noEmail":"សូម​បញ្ចូល​អាសយដ្ឋាន​អ៊ីមែល","noUrl":"សូម​បញ្ចូល​តំណ URL","other":"<ផ្សេង​ទៀត>","popupDependent":"Dependent (Netscape)","popupFeatures":"មុខ​ងារ​ផុស​ផ្ទាំង​វីនដូ​ឡើង","popupFullScreen":"ពេញ​អេក្រង់ (IE)","popupLeft":"ទីតាំងខាងឆ្វេង","popupLocationBar":"របារ​ទីតាំង","popupMenuBar":"របារ​ម៉ឺនុយ","popupResizable":"អាច​ប្ដូរ​ទំហំ","popupScrollBars":"របារ​រំកិល","popupStatusBar":"របារ​ស្ថានភាព","popupToolbar":"របារ​ឧបករណ៍","popupTop":"ទីតាំង​កំពូល","rel":"សម្ពន្ធ​ភាព","selectAnchor":"រើស​យក​យុថ្កា​មួយ","styles":"ស្ទីល","tabIndex":"លេខ Tab","target":"គោលដៅ","targetFrame":"<ស៊ុម>","targetFrameName":"ឈ្មោះ​ស៊ុម​ជា​គោល​ដៅ","targetPopup":"<វីនដូ​ផុស​ឡើង>","targetPopupName":"ឈ្មោះ​វីនដូត​ផុស​ឡើង","title":"តំណ","toAnchor":"ត​ភ្ជាប់​ទៅ​យុថ្កា​ក្នុង​អត្ថបទ","toEmail":"អ៊ីមែល","toUrl":"URL","toolbar":"តំណ","type":"ប្រភេទ​តំណ","unlink":"ផ្ដាច់​តំណ","upload":"ផ្ទុក​ឡើង"},"list":{"bulletedlist":"បញ្ចូល / លុប​បញ្ជី​ជា​ចំណុច​មូល","numberedlist":"បញ្ចូល / លុប​បញ្ជី​ជា​លេខ"},"liststyle":{"armenian":"លេខ​អារមេនី","bulletedTitle":"លក្ខណៈ​សម្បត្តិ​បញ្ជី​ជា​ចំណុច","circle":"រង្វង់​មូល","decimal":"លេខ​ទសភាគ (1, 2, 3, ...)","decimalLeadingZero":"ទសភាគ​ចាប់​ផ្ដើម​ពី​សូន្យ (01, 02, 03, ...)","disc":"ថាស","georgian":"លេខ​ចចជា (an, ban, gan, ...)","lowerAlpha":"ព្យញ្ជនៈ​តូច (a, b, c, d, e, ...)","lowerGreek":"លេខ​ក្រិក​តូច (alpha, beta, gamma, ...)","lowerRoman":"លេខ​រ៉ូម៉ាំង​តូច (i, ii, iii, iv, v, ...)","none":"គ្មាន","notset":"<not set>","numberedTitle":"លក្ខណៈ​សម្បត្តិ​បញ្ជី​ជា​លេខ","square":"ការេ","start":"ចាប់​ផ្ដើម","type":"ប្រភេទ","upperAlpha":"អក្សរ​ធំ (A, B, C, D, E, ...)","upperRoman":"លេខ​រ៉ូម៉ាំង​ធំ (I, II, III, IV, V, ...)","validateStartNumber":"លេខ​ចាប់​ផ្ដើម​បញ្ជី ត្រូវ​តែ​ជា​តួ​លេខ​ពិត​ប្រាកដ។"},"magicline":{"title":"បញ្ចូល​កថាខណ្ឌ​នៅ​ទីនេះ"},"maximize":{"maximize":"ពង្រីក​អតិបរមា","minimize":"បង្រួម​អប្បបរមា"},"newpage":{"toolbar":"ទំព័រ​ថ្មី"},"pagebreak":{"alt":"បំបែក​ទំព័រ","toolbar":"បន្ថែម​ការ​បំបែក​ទំព័រ​មុន​បោះពុម្ព"},"pastetext":{"button":"បិទ​ភ្ជាប់​ជា​អត្ថបទ​ធម្មតា","title":"បិទ​ភ្ជាប់​ជា​អត្ថបទ​ធម្មតា"},"pastefromword":{"confirmCleanup":"អត្ថបទ​ដែល​អ្នក​ចង់​បិទ​ភ្ជាប់​នេះ ទំនង​ដូច​ជា​ចម្លង​មក​ពី Word។ តើ​អ្នក​ចង់​សម្អាត​វា​មុន​បិទ​ភ្ជាប់​ទេ?","error":"ដោយ​សារ​មាន​បញ្ហា​ផ្នែក​ក្នុង​ធ្វើ​ឲ្យ​មិន​អាច​សម្អាត​ទិន្នន័យ​ដែល​បាន​បិទ​ភ្ជាប់","title":"បិទ​ភ្ជាប់​ពី Word","toolbar":"បិទ​ភ្ជាប់​ពី Word"},"preview":{"preview":"មើល​ជា​មុន"},"print":{"toolbar":"បោះពុម្ព"},"removeformat":{"toolbar":"ជម្រះ​ទ្រង់​ទ្រាយ"},"save":{"toolbar":"រក្សាទុក"},"selectall":{"toolbar":"រើស​ទាំង​អស់"},"showblocks":{"toolbar":"បង្ហាញ​ប្លក់"},"sourcearea":{"toolbar":"អក្សរ​កូដ"},"specialchar":{"options":"ជម្រើស​តួ​អក្សរ​ពិសេស","title":"រើស​តួអក្សរ​ពិសេស","toolbar":"បន្ថែមអក្សរពិសេស"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"រចនាបថ","panelTitle":"ទ្រង់ទ្រាយ​រចនាបថ","panelTitle1":"រចនាបថ​ប្លក់","panelTitle2":"រចនាបថ​ក្នុង​ជួរ","panelTitle3":"រចនាបថ​វត្ថុ"},"table":{"border":"ទំហំ​បន្ទាត់​ស៊ុម","caption":"ចំណងជើង","cell":{"menu":"ក្រឡា","insertBefore":"បញ្ចូល​ក្រឡា​ពីមុខ","insertAfter":"បញ្ចូល​ក្រឡា​ពី​ក្រោយ","deleteCell":"លុប​ក្រឡា","merge":"បញ្ចូល​ក្រឡា​ចូល​គ្នា","mergeRight":"បញ្ចូល​គ្នា​ខាង​ស្ដាំ","mergeDown":"បញ្ចូល​គ្នា​ចុះ​ក្រោម","splitHorizontal":"ពុះ​ក្រឡា​ផ្ដេក","splitVertical":"ពុះ​ក្រឡា​បញ្ឈរ","title":"លក្ខណៈ​ក្រឡា","cellType":"ប្រភេទ​ក្រឡា","rowSpan":"ចំនួន​ជួរ​ដេក​លាយ​ចូល​គ្នា","colSpan":"ចំនួន​ជួរ​ឈរ​លាយ​ចូល​គ្នា","wordWrap":"រុំ​ពាក្យ","hAlign":"ការ​តម្រឹម​ផ្ដេក","vAlign":"ការ​តម្រឹម​បញ្ឈរ","alignBaseline":"ខ្សែ​បន្ទាត់​គោល","bgColor":"ពណ៌​ផ្ទៃ​ក្រោយ","borderColor":"ពណ៌​បន្ទាត់​ស៊ុម","data":"ទិន្នន័យ","header":"ក្បាល","yes":"ព្រម","no":"ទេ","invalidWidth":"ទទឹង​ក្រឡា​ត្រូវ​តែ​ជា​លេខ។","invalidHeight":"កម្ពស់​ក្រឡា​ត្រូវ​តែ​ជា​លេខ។","invalidRowSpan":"ចំនួន​ជួរ​ដេក​លាយ​ចូល​គ្នា​ត្រូវ​តែ​ជា​លេខ​ទាំង​អស់។","invalidColSpan":"ចំនួន​ជួរ​ឈរ​លាយ​ចូល​គ្នា​ត្រូវ​តែ​ជា​លេខ​ទាំង​អស់។","chooseColor":"រើស"},"cellPad":"ចន្លោះ​ក្រឡា","cellSpace":"គម្លាត​ក្រឡា","column":{"menu":"ជួរ​ឈរ","insertBefore":"បញ្ចូល​ជួរ​ឈរ​ពីមុខ","insertAfter":"បញ្ចូល​ជួរ​ឈរ​ពី​ក្រោយ","deleteColumn":"លុប​ជួរ​ឈរ"},"columns":"ជួរឈរ","deleteTable":"លុប​តារាង","headers":"ក្បាល","headersBoth":"ទាំង​ពីរ","headersColumn":"ជួរ​ឈរ​ដំបូង","headersNone":"មិន​មាន","headersRow":"ជួរ​ដេក​ដំបូង","invalidBorder":"ទំហំ​បន្ទាត់​ស៊ុម​ត្រូវ​តែ​ជា​លេខ។","invalidCellPadding":"ចន្លោះ​ក្រឡា​ត្រូវ​តែជា​លេខ​វិជ្ជមាន។","invalidCellSpacing":"គម្លាត​ក្រឡា​ត្រូវ​តែ​ជា​លេខ​វិជ្ជមាន។","invalidCols":"ចំនួន​ជួរ​ឈរ​ត្រូវ​តែ​ជា​លេខ​ធំ​ជាង 0។","invalidHeight":"កម្ពស់​តារាង​ត្រូវ​តែ​ជា​លេខ","invalidRows":"ចំនួន​ជួរ​ដេក​ត្រូវ​តែ​ជា​លេខ​ធំ​ជាង 0។","invalidWidth":"ទទឹង​តារាង​ត្រូវ​តែ​ជា​លេខ។","menu":"លក្ខណៈ​តារាង","row":{"menu":"ជួរ​ដេក","insertBefore":"បញ្ចូល​ជួរ​ដេក​ពីមុខ","insertAfter":"បញ្ចូល​ជួរ​ដេក​ពី​ក្រោយ","deleteRow":"លុប​ជួរ​ដេក"},"rows":"ជួរ​ដេក","summary":"សេចក្តី​សង្ខេប","title":"លក្ខណៈ​តារាង","toolbar":"តារាង","widthPc":"ភាគរយ","widthPx":"ភីកសែល","widthUnit":"ឯកតា​ទទឹង"},"undo":{"redo":"ធ្វើ​ឡើង​វិញ","undo":"មិន​ធ្វើ​វិញ"},"wsc":{"btnIgnore":"មិនផ្លាស់ប្តូរ","btnIgnoreAll":"មិនផ្លាស់ប្តូរ ទាំងអស់","btnReplace":"ជំនួស","btnReplaceAll":"ជំនួសទាំងអស់","btnUndo":"សារឡើងវិញ","changeTo":"ផ្លាស់ប្តូរទៅ","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"ពុំមានកម្មវិធីពិនិត្យអក្ខរាវិរុទ្ធ ។ តើចង់ទាញយកពីណា?","manyChanges":"ការពិនិត្យអក្ខរាវិរុទ្ធបានចប់: %1 ពាក្យបានផ្លាស់ប្តូរ","noChanges":"ការពិនិត្យអក្ខរាវិរុទ្ធបានចប់: ពុំមានផ្លាស់ប្តូរ","noMispell":"ការពិនិត្យអក្ខរាវិរុទ្ធបានចប់: គ្មានកំហុស","noSuggestions":"- គ្មានសំណើរ -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"គ្មានក្នុងវចនានុក្រម","oneChange":"ការពិនិត្យអក្ខរាវិរុទ្ធបានចប់: ពាក្យមួយត្រូចបានផ្លាស់ប្តូរ","progress":"កំពុងពិនិត្យអក្ខរាវិរុទ្ធ...","title":"Spell Check","toolbar":"ពិនិត្យអក្ខរាវិរុទ្ធ"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ko.js b/wqflask/wqflask/static/packages/ckeditor/lang/ko.js
deleted file mode 100644
index fc29f33d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ko.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ko']={"editor":"리치 텍스트 편집기","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"도움이 필요하시면 ALT 0 을 누르세요","browseServer":"서버 보기","url":"URL","protocol":"프로토콜","upload":"업로드","uploadSubmit":"서버로 전송","image":"이미지","flash":"플래쉬","form":"폼","checkbox":"체크박스","radio":"라디오버튼","textField":"입력필드","textarea":"입력영역","hiddenField":"숨김필드","button":"버튼","select":"펼침목록","imageButton":"이미지버튼","notSet":"<설정되지 않음>","id":"ID","name":"Name","langDir":"쓰기 방향","langDirLtr":"왼쪽에서 오른쪽 (LTR)","langDirRtl":"오른쪽에서 왼쪽 (RTL)","langCode":"언어 코드","longDescr":"URL 설명","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"예","cancel":"아니오","close":"닫기","preview":"미리보기","resize":"크기 조절","generalTab":"일반","advancedTab":"자세히","validateNumberFailed":"이 값은 숫자가 아닙니다.","confirmNewPage":"저장하지 않은 모든 변경사항은 유실됩니다. 정말로 새로운 페이지를 부르겠습니까?","confirmCancel":"몇몇개의 옵션이 바꼈습니다. 정말로 창을 닫으시겠습니까?","options":"옵션","target":"타겟","targetNew":"새로운 창 (_blank)","targetTop":"최상위 창 (_top)","targetSelf":"같은 창 (_self)","targetParent":"부모 창 (_parent)","langDirLTR":"왼쪽에서 오른쪽 (LTR)","langDirRTL":"오른쪽에서 왼쪽 (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"너비","height":"높이","align":"정렬","alignLeft":"왼쪽","alignRight":"오른쪽","alignCenter":"가운데","alignJustify":"両端揃え","alignTop":"위","alignMiddle":"중간","alignBottom":"아래","alignNone":"None","invalidValue":"잘못된 값.","invalidHeight":"높이는 숫자여야 합니다.","invalidWidth":"넓이는 숫자여야 합니다.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, 사용할 수 없음</span>"},"about":{"copy":"저작권 &copy; $1 . 판권 소유.","dlgTitle":"CKEditor 에 대하여","help":"도움이 필요하시면 $1 를 확인하세요","moreInfo":"라이센스에 대한 정보를 보고싶다면 우리의 웹 사이트를 방문하세요:","title":"CKEditor에 대하여","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"진하게","italic":"이텔릭","strike":"취소선","subscript":"아래 첨자","superscript":"위 첨자","underline":"밑줄"},"bidi":{"ltr":"택스트 방향이 왼쪽에서 오른쪽으로 ","rtl":"택스트 방향이 오른쪽에서 왼쪽으로"},"blockquote":{"toolbar":"인용 블록"},"clipboard":{"copy":"복사하기","copyError":"브라우저의 보안설정때문에 복사하기 기능을 실행할 수 없습니다. 키보드 명령을 사용하십시요. (Ctrl/Cmd+C).","cut":"잘라내기","cutError":"브라우저의 보안설정때문에 잘라내기 기능을 실행할 수 없습니다. 키보드 명령을 사용하십시요. (Ctrl/Cmd+X).","paste":"붙여넣기","pasteArea":"범위 붙여넣기","pasteMsg":"키보드의 (<STRONG>Ctrl/Cmd+V</STRONG>) 를 이용해서 상자안에 붙여넣고 <STRONG>OK</STRONG> 를 누르세요.","securityMsg":"브러우저 보안 설정으로 인해, 클립보드의 자료를 직접 접근할 수 없습니다. 이 창에 다시 붙여넣기 하십시오.","title":"붙여넣기"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"기본색상","bgColorTitle":"배경 색상","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"색상선택...","panelTitle":"Colors","textColorTitle":"글자 색상"},"colordialog":{"clear":"제거","highlight":"하이라이트","options":"색상 옵션","selected":"색상 선택됨","title":"색상 선택"},"templates":{"button":"템플릿","emptyListMsg":"(템플릿이 없습니다.)","insertOption":"현재 내용 바꾸기","options":"템플릿 옵션","selectPromptMsg":"에디터에서 사용할 템플릿을 선택하십시요.<br>(지금까지 작성된 내용은 사라집니다.):","title":"내용 템플릿"},"contextmenu":{"options":"컨텍스트 메뉴 옵션"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Div 태그 수정","inlineStyleInputLabel":"인라인 스타일","langDirLTRLabel":"왼쪽에서 오른쪽 (LTR)","langDirLabel":"쓰기 방향","langDirRTLLabel":"오른쪽에서 왼쪽 (RTL)","languageCodeInputLabel":"언어 코드","remove":"Div 태그 삭제","styleSelectLabel":"Style","title":"Div 태그 생성","toolbar":"Div 태그 생성"},"toolbar":{"toolbarCollapse":"툴바 삭제","toolbarExpand":"확장 툴바","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"편집자용 툴바들"},"elementspath":{"eleLabel":"요소 위치","eleTitle":"%1 요소"},"find":{"find":"찾기","findOptions":"Find Options","findWhat":"찾을 문자열:","matchCase":"대소문자 구분","matchCyclic":"Match cyclic","matchWord":"온전한 단어","notFoundMsg":"문자열을 찾을 수 없습니다.","replace":"바꾸기","replaceAll":"모두 바꾸기","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"바꿀 문자열:","title":"찾기 & 바꾸기"},"fakeobjects":{"anchor":"책갈피 삽입/변경","flash":"Flash Animation","hiddenfield":"숨김필드","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"스크립트 허용","accessAlways":"항상 허용","accessNever":"허용 안함","accessSameDomain":"Same domain","alignAbsBottom":"줄아래(Abs Bottom)","alignAbsMiddle":"줄중간(Abs Middle)","alignBaseline":"기준선","alignTextTop":"글자상단","bgcolor":"배경 색상","chkFull":"전체화면 ","chkLoop":"반복","chkMenu":"플래쉬메뉴 가능","chkPlay":"자동재생","flashvars":"Variables for Flash","hSpace":"수평여백","properties":"플래쉬 속성","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"영역","scaleAll":"모두보기","scaleFit":"영역자동조절","scaleNoBorder":"경계선없음","title":"플래쉬 등록정보","vSpace":"수직여백","validateHSpace":"HSpace must be a number.","validateSrc":"링크 URL을 입력하십시요.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"글자 크기","voiceLabel":"Font Size","panelTitle":"글자 크기"},"label":"폰트","panelTitle":"폰트","voiceLabel":"폰트"},"forms":{"button":{"title":"버튼 속성","text":"버튼글자(값)","type":"버튼종류","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"체크박스 속성","radioTitle":"라디오버튼 속성","value":"값","selected":"선택됨"},"form":{"title":"폼 속성","menu":"폼 속성","action":"실행경로(Action)","method":"방법(Method)","encoding":"Encoding"},"hidden":{"title":"숨김필드 속성","name":"이름","value":"값"},"select":{"title":"펼침목록 속성","selectInfo":"정보","opAvail":"선택옵션","value":"값","size":"세로크기","lines":"줄","chkMulti":"여러항목 선택 허용","opText":"이름","opValue":"값","btnAdd":"추가","btnModify":"변경","btnUp":"위로","btnDown":"아래로","btnSetValue":"선택된것으로 설정","btnDelete":"삭제"},"textarea":{"title":"입력영역 속성","cols":"칸수","rows":"줄수"},"textfield":{"title":"입력필드 속성","name":"이름","value":"값","charWidth":"글자 너비","maxChars":"최대 글자수","type":"종류","typeText":"문자열","typePass":"비밀번호","typeEmail":"이메일","typeSearch":"검색","typeTel":"전화번호","typeUrl":"URL"}},"format":{"label":"포맷","panelTitle":"포맷","tag_address":"Address","tag_div":"기본 (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"수평선 삽입"},"iframe":{"border":"프레임 테두리 표시","noUrl":"iframe 대응 URL을 입력해주세요.","scrolling":"스크롤바 사용","title":"IFrame 속성","toolbar":"IFrame"},"image":{"alertUrl":"이미지 URL을 입력하십시요","alt":"이미지 설명","border":"테두리","btnUpload":"서버로 전송","button2Img":"단순 이미지에서 선택한 이미지 버튼을 변환하시겠습니까?","hSpace":"수평여백","img2Button":"이미지 버튼에 선택한 이미지를 변환하시겠습니까?","infoTab":"이미지 정보","linkTab":"링크","lockRatio":"비율 유지","menu":"이미지 설정","resetSize":"원래 크기로","title":"이미지 설정","titleButton":"이미지버튼 속성","upload":"업로드","urlMissing":"이미지 소스 URL이 없습니다.","vSpace":"수직여백","validateBorder":"테두리는 정수여야 합니다.","validateHSpace":"가로 길이는 정수여야 합니다.","validateVSpace":"세로 길이는 정수여야 합니다."},"indent":{"indent":"들여쓰기","outdent":"내어쓰기"},"smiley":{"options":"이모티콘 옵션","title":"아이콘 삽입","toolbar":"아이콘"},"justify":{"block":"양쪽 맞춤","center":"가운데 정렬","left":"왼쪽 정렬","right":"오른쪽 정렬"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"엑세스 키","advanced":"자세히","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"책갈피 삽입/변경","menu":"책갈피 속성","title":"책갈피 속성","name":"책갈피 이름","errorName":"책갈피 이름을 입력하십시요.","remove":"Remove Anchor"},"anchorId":"책갈피 ID","anchorName":"책갈피 이름","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"이메일 주소","emailBody":"내용","emailSubject":"제목","id":"ID","info":"링크 정보","langCode":"쓰기 방향","langDir":"쓰기 방향","langDirLTR":"왼쪽에서 오른쪽 (LTR)","langDirRTL":"오른쪽에서 왼쪽 (RTL)","menu":"링크 수정","name":"Name","noAnchors":"(문서에 책갈피가 없습니다.)","noEmail":"이메일주소를 입력하십시요.","noUrl":"링크 URL을 입력하십시요.","other":"<기타>","popupDependent":"Dependent (Netscape)","popupFeatures":"팝업창 설정","popupFullScreen":"전체화면 (IE)","popupLeft":"왼쪽 위치","popupLocationBar":"주소표시줄","popupMenuBar":"메뉴바","popupResizable":"크기 조절 가능","popupScrollBars":"스크롤바","popupStatusBar":"상태바","popupToolbar":"툴바","popupTop":"윗쪽 위치","rel":"관계","selectAnchor":"책갈피 선택","styles":"Style","tabIndex":"탭 순서","target":"타겟","targetFrame":"<프레임>","targetFrameName":"타겟 프레임 이름","targetPopup":"<팝업창>","targetPopupName":"팝업창 이름","title":"링크","toAnchor":"책갈피","toEmail":"이메일","toUrl":"URL","toolbar":"링크 삽입/변경","type":"링크 종류","unlink":"링크 삭제","upload":"업로드"},"list":{"bulletedlist":"순서없는 목록","numberedlist":"순서있는 목록"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"여기에 그래프 삽입"},"maximize":{"maximize":"최대","minimize":"최소"},"newpage":{"toolbar":"새 문서"},"pagebreak":{"alt":"패이지 나누기","toolbar":"인쇄시 페이지 나누기 삽입"},"pastetext":{"button":"텍스트로 붙여넣기","title":"텍스트로 붙여넣기"},"pastefromword":{"confirmCleanup":"붙여 넣기 할 텍스트는 MS Word에서 복사 한 것입니다. 붙여 넣기 전에 MS Word 포멧을 삭제 하시겠습니까?","error":"내부 오류로 붙여 넣은 데이터를 정리 할 수 없습니다.","title":"MS Word 형식에서 붙여넣기","toolbar":"MS Word 형식에서 붙여넣기"},"preview":{"preview":"미리보기"},"print":{"toolbar":"인쇄하기"},"removeformat":{"toolbar":"포맷 지우기"},"save":{"toolbar":"저장하기"},"selectall":{"toolbar":"전체선택"},"showblocks":{"toolbar":"블록 보기"},"sourcearea":{"toolbar":"소스"},"specialchar":{"options":"특수문자 옵션","title":"특수문자 선택","toolbar":"특수문자 삽입"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"스타일","panelTitle":"전체 구성 스타일","panelTitle1":"블록 스타일","panelTitle2":"인라인 스타일","panelTitle3":"오브젝트 스타일"},"table":{"border":"테두리 크기","caption":"캡션","cell":{"menu":"셀/칸(Cell)","insertBefore":"앞에 셀/칸 삽입","insertAfter":"뒤에 셀/칸 삽입","deleteCell":"셀 삭제","merge":"셀 합치기","mergeRight":"오른쪽 뭉치기","mergeDown":"왼쪽 뭉치기","splitHorizontal":"수평 나누기","splitVertical":"수직 나누기","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"셀 여백","cellSpace":"셀 간격","column":{"menu":"열(Column)","insertBefore":"앞에 열 삽입","insertAfter":"뒤에 열 삽입","deleteColumn":"세로줄 삭제"},"columns":"세로줄","deleteTable":"표 삭제","headers":"해더","headersBoth":"모두","headersColumn":"첫 열","headersNone":"None","headersRow":"첫 행","invalidBorder":"테두리 크기는 숫자여야 합니다.","invalidCellPadding":"셀 안쪽의 여백은 0 이상이어야 합니다.","invalidCellSpacing":"셀 간격은 0 이상이어야 합니다.","invalidCols":"행 번호는 0보다 큰 숫자여야 합니다.","invalidHeight":"표 높이는 숫자여야 합니다.","invalidRows":"행 번호는 0보다 큰 숫자여야 합니다.","invalidWidth":"표의 폭은 숫자여야 합니다.","menu":"표 설정","row":{"menu":"행(Row)","insertBefore":"앞에 행 삽입","insertAfter":"뒤에 행 삽입","deleteRow":"가로줄 삭제"},"rows":"가로줄","summary":"요약","title":"표 설정","toolbar":"표","widthPc":"퍼센트","widthPx":"픽셀","widthUnit":"폭 단위"},"undo":{"redo":"재실행","undo":"취소"},"wsc":{"btnIgnore":"건너뜀","btnIgnoreAll":"모두 건너뜀","btnReplace":"변경","btnReplaceAll":"모두 변경","btnUndo":"취소","changeTo":"변경할 단어","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"철자 검사기가 철치되지 않았습니다. 지금 다운로드하시겠습니까?","manyChanges":"철자검사 완료: %1 단어가 변경되었습니다.","noChanges":"철자검사 완료: 변경된 단어가 없습니다.","noMispell":"철자검사 완료: 잘못된 철자가 없습니다.","noSuggestions":"- 추천단어 없음 -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"사전에 없는 단어","oneChange":"철자검사 완료: 단어가 변경되었습니다.","progress":"철자검사를 진행중입니다...","title":"Spell Check","toolbar":"철자검사"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ku.js b/wqflask/wqflask/static/packages/ckeditor/lang/ku.js
deleted file mode 100644
index 98670f23..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ku.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ku']={"editor":"سەرنووسەی دەقی بە پیت","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"کلیکی ALT لەگەڵ 0 بکه‌ بۆ یارمەتی","browseServer":"هێنانی ڕاژە","url":"ناونیشانی بەستەر","protocol":"پڕۆتۆکۆڵ","upload":"بارکردن","uploadSubmit":"ناردنی بۆ ڕاژە","image":"وێنە","flash":"فلاش","form":"داڕشتە","checkbox":"خانەی نیشانکردن","radio":"جێگرەوەی دوگمە","textField":"خانەی دەق","textarea":"ڕووبەری دەق","hiddenField":"شاردنەوی خانە","button":"دوگمە","select":"هەڵبژاردەی خانە","imageButton":"دوگمەی وێنە","notSet":"<هیچ دانەدراوە>","id":"ناسنامە","name":"ناو","langDir":"ئاراستەی زمان","langDirLtr":"چەپ بۆ ڕاست (LTR)","langDirRtl":"ڕاست بۆ چەپ (RTL)","langCode":"هێمای زمان","longDescr":"پێناسەی درێژی بەستەر","cssClass":"شێوازی چینی په‌ڕە","advisoryTitle":"ڕاوێژکاری سەردێڕ","cssStyle":"شێواز","ok":"باشە","cancel":"هەڵوەشاندن","close":"داخستن","preview":"پێشبینین","resize":"گۆڕینی ئەندازە","generalTab":"گشتی","advancedTab":"پەرەسەندوو","validateNumberFailed":"ئەم نرخە ژمارە نیە، تکایە نرخێکی ژمارە بنووسە.","confirmNewPage":"سەرجەم گۆڕانکاریەکان و پێکهاتەکانی ناووەوە لەدەست دەدەی گەر بێتوو پاشکەوتی نەکەی یەکەم جار، تۆ هەر دڵنیایی لەکردنەوەی پەنجەرەکی نوێ؟","confirmCancel":"هەندێك هەڵبژاردە گۆڕدراوە. تۆ دڵنیایی لە داخستنی ئەم دیالۆگە؟","options":"هەڵبژاردەکان","target":"ئامانج","targetNew":"پەنجەرەیەکی نوێ (_blank)","targetTop":"لووتکەی پەنجەرە (_top)","targetSelf":"لەهەمان پەنجەرە (_self)","targetParent":"پەنجەرەی باوان (_parent)","langDirLTR":"چەپ بۆ ڕاست (LTR)","langDirRTL":"ڕاست بۆ چەپ (RTL)","styles":"شێواز","cssClasses":"شێوازی چینی پەڕە","width":"پانی","height":"درێژی","align":"ڕێککەرەوە","alignLeft":"چەپ","alignRight":"ڕاست","alignCenter":"ناوەڕاست","alignJustify":"هاوستوونی","alignTop":"سەرەوە","alignMiddle":"ناوەند","alignBottom":"ژێرەوە","alignNone":"None","invalidValue":"نرخێکی نادرووست.","invalidHeight":"درێژی دەبێت ژمارە بێت.","invalidWidth":"پانی دەبێت ژمارە بێت.","invalidCssLength":"ئەم نرخەی دراوە بۆ خانەی \"%1\" دەبێت ژمارەکی درووست بێت یان بێ ناونیشانی ئامرازی (px, %, in, cm, mm, em, ex, pt, یان pc).","invalidHtmlLength":"ئەم نرخەی دراوە بۆ خانەی \"%1\" دەبێت ژمارەکی درووست بێت یان بێ ناونیشانی ئامرازی HTML (px یان %).","invalidInlineStyle":"دانەی نرخی شێوازی ناوهێڵ دەبێت پێکهاتبێت لەیەك یان زیاتری داڕشتە \"ناو : نرخ\", جیاکردنەوەی بە فاریزە و خاڵ","cssLengthTooltip":"ژمارەیەك بنووسه‌ بۆ نرخی piksel یان ئامرازێکی درووستی CSS (px, %, in, cm, mm, em, ex, pt, یان pc).","unavailable":"%1<span class=\"cke_accessibility\">, ئامادە نیە</span>"},"about":{"copy":"مافی لەبەرگەرتنەوەی &copy; $1. گشتی پارێزراوه. ورگێڕانی بۆ کوردی لەلایەن هۆژە کۆیی.","dlgTitle":"دەربارەی CKEditor","help":"سەیری $1 بکه بۆ یارمەتی.","moreInfo":"بۆ زانیاری زیاتر دەربارەی مۆڵەتی بەکارهێنان، تکایه سەردانی ماڵپەڕەکەمان بکه:","title":"دەربارەی CKEditor","userGuide":"ڕێپیشاندەری CKEditors"},"basicstyles":{"bold":"قەڵەو","italic":"لار","strike":"لێدان","subscript":"ژێرنووس","superscript":"سەرنووس","underline":"ژێرهێڵ"},"bidi":{"ltr":"ئاراستەی نووسە لە چەپ بۆ ڕاست","rtl":"ئاراستەی نووسە لە ڕاست بۆ چەپ"},"blockquote":{"toolbar":"بەربەستکردنی ووتەی وەرگیراو"},"clipboard":{"copy":"لەبەرگرتنەوە","copyError":"پارێزی وێبگەڕەکەت ڕێگەنادات بەسەرنووسەکە لە لکاندنی دەقی خۆکارارنە. تکایە لەبری ئەمە ئەم فەرمانە بەکاربهێنە بەداگرتنی کلیلی (Ctrl/Cmd+C).","cut":"بڕین","cutError":"پارێزی وێبگەڕەکەت ڕێگەنادات بە سەرنووسەکە لەبڕینی خۆکارانە. تکایە لەبری ئەمە ئەم فەرمانە بەکاربهێنە بەداگرتنی کلیلی (Ctrl/Cmd+X).","paste":"لکاندن","pasteArea":"ناوچەی لکاندن","pasteMsg":"تکایە بیلکێنە لەناوەوەی ئەم سنوقە لەڕێی تەختەکلیلەکەت بە بەکارهێنانی کلیلی (<STRONG>Ctrl/Cmd+V</STRONG>) دووای کلیکی باشە بکە.","securityMsg":"بەهۆی شێوەپێدانی پارێزی وێبگەڕەکەت، سەرنووسەکه ناتوانێت دەستبگەیەنێت بەهەڵگیراوەکە ڕاستەوخۆ. بۆیه پێویسته دووباره بیلکێنیت لەم پەنجەرەیه.","title":"لکاندن"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"خۆکار","bgColorTitle":"ڕەنگی پاشبنەما","colors":{"000":"ڕەش","800000":"سۆرو ماڕوونی","8B4513":"ماڕوونی","2F4F4F":"سەوزی تاریك","008080":"سەوز و شین","000080":"شینی تۆخ","4B0082":"مۆری تۆخ","696969":"ڕەساسی تۆخ","B22222":"سۆری تۆخ","A52A2A":"قاوەیی","DAA520":"قاوەیی بریسکەدار","006400":"سەوزی تۆخ","40E0D0":"شینی ناتۆخی بریسکەدار","0000CD":"شینی مامناوەند","800080":"پەمبەیی","808080":"ڕەساسی","F00":"سۆر","FF8C00":"نارەنجی تۆخ","FFD700":"زەرد","008000":"سەوز","0FF":"شینی ئاسمانی","00F":"شین","EE82EE":"پەمەیی","A9A9A9":"ڕەساسی ناتۆخ","FFA07A":"نارەنجی ناتۆخ","FFA500":"نارەنجی","FFFF00":"زەرد","00FF00":"سەوز","AFEEEE":"شینی ناتۆخ","ADD8E6":"شینی زۆر ناتۆخ","DDA0DD":"پەمەیی ناتۆخ","D3D3D3":"ڕەساسی بریسکەدار","FFF0F5":"جەرگی زۆر ناتۆخ","FAEBD7":"جەرگی ناتۆخ","FFFFE0":"سپی ناتۆخ","F0FFF0":"هەنگوینی ناتۆخ","F0FFFF":"شینێکی زۆر ناتۆخ","F0F8FF":"شینێکی ئاسمانی زۆر ناتۆخ","E6E6FA":"شیری","FFF":"سپی"},"more":"ڕەنگی زیاتر...","panelTitle":"ڕەنگەکان","textColorTitle":"ڕەنگی دەق"},"colordialog":{"clear":"پاکیکەوە","highlight":"نیشانکردن","options":"هەڵبژاردەی ڕەنگەکان","selected":"ڕەنگی هەڵبژێردراو","title":"هەڵبژاردنی ڕەنگ"},"templates":{"button":"ڕووکار","emptyListMsg":"(هیچ ڕووکارێك دیارینەکراوە)","insertOption":"لە شوێن دانانی ئەم پێکهاتانەی ئێستا","options":"هەڵبژاردەکانی ڕووکار","selectPromptMsg":"ڕووکارێك هەڵبژێره بۆ کردنەوەی له سەرنووسەر:","title":"پێکهاتەی ڕووکار"},"contextmenu":{"options":"هەڵبژاردەی لیستەی کلیکی دەستی ڕاست"},"div":{"IdInputLabel":"ناسنامە","advisoryTitleInputLabel":"سەردێڕ","cssClassInputLabel":"شێوازی چینی پەڕه","edit":"چاکسازی Div","inlineStyleInputLabel":"شێوازی ناوهێڵ","langDirLTRLabel":"چەپ بۆ ڕاست (LTR)","langDirLabel":"ئاراستەی زمان","langDirRTLLabel":"ڕاست بۆ چەپ (RTL)","languageCodeInputLabel":"هێمای زمان","remove":"لابردنی Div","styleSelectLabel":"شێواز","title":"دروستکردنی لەخۆگری Div","toolbar":"دروستکردنی لەخۆگری Div"},"toolbar":{"toolbarCollapse":"شاردنەوی هێڵی تووڵامراز","toolbarExpand":"نیشاندانی هێڵی تووڵامراز","toolbarGroups":{"document":"پەڕه","clipboard":"بڕین/پووچکردنەوە","editing":"چاکسازی","forms":"داڕشتە","basicstyles":"شێوازی بنچینەیی","paragraph":"بڕگە","links":"بەستەر","insert":"خستنە ناو","styles":"شێواز","colors":"ڕەنگەکان","tools":"ئامرازەکان"},"toolbars":"تووڵامرازی دەسکاریکەر"},"elementspath":{"eleLabel":"ڕێڕەوی توخمەکان","eleTitle":"%1 توخم"},"find":{"find":"گەڕان","findOptions":"هەڵبژاردەکانی گەڕان","findWhat":"گەڕان بەدووای:","matchCase":"جیاکردنەوه لەنێوان پیتی گەورەو بچووك","matchCyclic":"گەڕان لەهەموو پەڕەکه","matchWord":"تەنەا هەموو وشەکه","notFoundMsg":"هیچ دەقه گەڕانێك نەدۆزراوه.","replace":"لەبریدانان","replaceAll":"لەبریدانانی هەمووی","replaceSuccessMsg":" پێشهاتە(ی) لەبری دانرا. %1","replaceWith":"لەبریدانان به:","title":"گەڕان و لەبریدانان"},"fakeobjects":{"anchor":"لەنگەر","flash":"فلاش","hiddenfield":"شاردنەوەی خانه","iframe":"لەچوارچێوە","unknown":"بەرکارێکی نەناسراو"},"flash":{"access":"دەستپێگەیشتنی نووسراو","accessAlways":"هەمیشه","accessNever":"هەرگیز","accessSameDomain":"هەمان دۆمەین","alignAbsBottom":"له ژێرەوه","alignAbsMiddle":"لەناوەند","alignBaseline":"هێڵەبنەڕەت","alignTextTop":"دەق لەسەرەوه","bgcolor":"ڕەنگی پاشبنەما","chkFull":"ڕێپێدان بە پڕی شاشه","chkLoop":"گرێ","chkMenu":"چالاککردنی لیستەی فلاش","chkPlay":"پێکردنی یان لێدانی خۆکار","flashvars":"گۆڕاوەکان بۆ فلاش","hSpace":"بۆشایی ئاسۆیی","properties":"خاسیەتی فلاش","propertiesTab":"خاسیەت","quality":"جۆرایەتی","qualityAutoHigh":"بەرزی خۆکار","qualityAutoLow":"نزمی خۆکار","qualityBest":"باشترین","qualityHigh":"بەرزی","qualityLow":"نزم","qualityMedium":"مامناوەند","scale":"پێوانه","scaleAll":"نیشاندانی هەموو","scaleFit":"بەوردی بگونجێت","scaleNoBorder":"بێ پەراوێز","title":"خاسیەتی فلاش","vSpace":"بۆشایی ئەستونی","validateHSpace":"بۆشایی ئاسۆیی دەبێت ژمارە بێت.","validateSrc":"ناونیشانی بەستەر نابێت خاڵی بێت","validateVSpace":"بۆشایی ئەستونی دەبێت ژماره بێت.","windowMode":"شێوازی پەنجەره","windowModeOpaque":"ناڕوون","windowModeTransparent":"ڕۆشن","windowModeWindow":"پەنجەره"},"font":{"fontSize":{"label":"گەورەیی","voiceLabel":"گەورەیی فۆنت","panelTitle":"گەورەیی فۆنت"},"label":"فۆنت","panelTitle":"ناوی فۆنت","voiceLabel":"فۆنت"},"forms":{"button":{"title":"خاسیەتی دوگمە","text":"(نرخی) دەق","type":"جۆر","typeBtn":"دوگمە","typeSbm":"بنێرە","typeRst":"ڕێکخستنەوە"},"checkboxAndRadio":{"checkboxTitle":"خاسیەتی چووارگۆشی پشکنین","radioTitle":"خاسیەتی جێگرەوەی دوگمە","value":"نرخ","selected":"هەڵبژاردرا"},"form":{"title":"خاسیەتی داڕشتە","menu":"خاسیەتی داڕشتە","action":"کردار","method":"ڕێگە","encoding":"بەکۆدکەر"},"hidden":{"title":"خاسیەتی خانەی شاردراوە","name":"ناو","value":"نرخ"},"select":{"title":"هەڵبژاردەی خاسیەتی خانە","selectInfo":"زانیاری","opAvail":"هەڵبژاردەی لەبەردەستدابوون","value":"نرخ","size":"گەورەیی","lines":"هێڵەکان","chkMulti":"ڕێدان بەفره هەڵبژارده","opText":"دەق","opValue":"نرخ","btnAdd":"زیادکردن","btnModify":"گۆڕانکاری","btnUp":"سەرەوه","btnDown":"خوارەوە","btnSetValue":"دابنێ وەك نرخێکی هەڵبژێردراو","btnDelete":"سڕینەوه"},"textarea":{"title":"خاسیەتی ڕووبەری دەق","cols":"ستوونەکان","rows":"ڕیزەکان"},"textfield":{"title":"خاسیەتی خانەی دەق","name":"ناو","value":"نرخ","charWidth":"پانی نووسە","maxChars":"ئەوپەڕی نووسە","type":"جۆر","typeText":"دەق","typePass":"پێپەڕەوشە","typeEmail":"ئیمەیل","typeSearch":"گەڕان","typeTel":"ژمارەی تەلەفۆن","typeUrl":"ناونیشانی بەستەر"}},"format":{"label":"ڕازاندنەوە","panelTitle":"بەشی ڕازاندنەوه","tag_address":"ناونیشان","tag_div":"(DIV)-ی ئاسایی","tag_h1":"سەرنووسەی ١","tag_h2":"سەرنووسەی ٢","tag_h3":"سەرنووسەی ٣","tag_h4":"سەرنووسەی ٤","tag_h5":"سەرنووسەی ٥","tag_h6":"سەرنووسەی ٦","tag_p":"ئاسایی","tag_pre":"شێوازکراو"},"horizontalrule":{"toolbar":"دانانی هێلی ئاسۆیی"},"iframe":{"border":"نیشاندانی لاکێشه بە چوواردەوری چووارچێوە","noUrl":"تکایه ناونیشانی بەستەر بنووسه بۆ چووارچێوه","scrolling":"چالاککردنی هاتووچۆپێکردن","title":"دیالۆگی چووارچێوه","toolbar":"چووارچێوه"},"image":{"alertUrl":"تکایه ناونیشانی بەستەری وێنه بنووسه","alt":"جێگرەوەی دەق","border":"پەراوێز","btnUpload":"ناردنی بۆ ڕاژه","button2Img":"تۆ دەتەوێت دوگمەی وێنەی دیاریکراو بگۆڕیت بۆ وێنەیەکی ئاسایی؟","hSpace":"بۆشایی ئاسۆیی","img2Button":"تۆ دەتەوێت وێنەی دیاریکراو بگۆڕیت بۆ دوگمەی وێنه؟","infoTab":"زانیاری وێنه","linkTab":"بەستەر","lockRatio":"داخستنی ڕێژه","menu":"خاسیەتی وێنه","resetSize":"ڕێکخستنەوەی قەباره","title":"خاسیەتی وێنه","titleButton":"خاسیەتی دوگمەی وێنه","upload":"بارکردن","urlMissing":"سەرچاوەی بەستەری وێنه بزره","vSpace":"بۆشایی ئەستونی","validateBorder":"پەراوێز دەبێت بەتەواوی تەنها ژماره بێت.","validateHSpace":"بۆشایی ئاسۆیی دەبێت بەتەواوی تەنها ژمارە بێت.","validateVSpace":"بۆشایی ئەستونی دەبێت بەتەواوی تەنها ژماره بێت."},"indent":{"indent":"زیادکردنی بۆشایی","outdent":"کەمکردنەوەی بۆشایی"},"smiley":{"options":"هەڵبژاردەی زەردەخەنه","title":"دانانی زەردەخەنەیەك","toolbar":"زەردەخەنه"},"justify":{"block":"هاوستوونی","center":"ناوەڕاست","left":"بەهێڵ کردنی چەپ","right":"بەهێڵ کردنی ڕاست"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"کلیلی دەستپێگەیشتن","advanced":"پێشکەوتوو","advisoryContentType":"جۆری ناوەڕۆکی ڕاویژکار","advisoryTitle":"ڕاوێژکاری سەردێڕ","anchor":{"toolbar":"دانان/چاکسازی لەنگەر","menu":"چاکسازی لەنگەر","title":"خاسیەتی لەنگەر","name":"ناوی لەنگەر","errorName":"تکایه ناوی لەنگەر بنووسه","remove":"لابردنی لەنگەر"},"anchorId":"بەپێی ناسنامەی توخم","anchorName":"بەپێی ناوی لەنگەر","charset":"بەستەری سەرچاوەی نووسە","cssClasses":"شێوازی چینی پەڕه","emailAddress":"ناونیشانی ئیمەیل","emailBody":"ناوەڕۆکی نامە","emailSubject":"بابەتی نامە","id":"ناسنامە","info":"زانیاری بەستەر","langCode":"هێمای زمان","langDir":"ئاراستەی زمان","langDirLTR":"چەپ بۆ ڕاست (LTR)","langDirRTL":"ڕاست بۆ چەپ (RTL)","menu":"چاکسازی بەستەر","name":"ناو","noAnchors":"(هیچ جۆرێکی لەنگەر ئامادە نیە لەم پەڕەیه)","noEmail":"تکایە ناونیشانی ئیمەیل بنووسە","noUrl":"تکایە ناونیشانی بەستەر بنووسە","other":"<هیتر>","popupDependent":"پێوەبەستراو (Netscape)","popupFeatures":"خاسیەتی پەنجەرەی سەرهەڵدەر","popupFullScreen":"پڕ بەپڕی شاشە (IE)","popupLeft":"جێگای چەپ","popupLocationBar":"هێڵی ناونیشانی بەستەر","popupMenuBar":"هێڵی لیسته","popupResizable":"توانای گۆڕینی قەباره","popupScrollBars":"هێڵی هاتووچۆپێکردن","popupStatusBar":"هێڵی دۆخ","popupToolbar":"هێڵی تووڵامراز","popupTop":"جێگای سەرەوە","rel":"پەیوەندی","selectAnchor":"هەڵبژاردنی لەنگەرێك","styles":"شێواز","tabIndex":"بازدەری تابی ئیندێکس","target":"ئامانج","targetFrame":"<چووارچێوە>","targetFrameName":"ناوی ئامانجی چووارچێوە","targetPopup":"<پەنجەرەی سەرهەڵدەر>","targetPopupName":"ناوی پەنجەرەی سەرهەڵدەر","title":"بەستەر","toAnchor":"بەستەر بۆ لەنگەر له دەق","toEmail":"ئیمەیل","toUrl":"ناونیشانی بەستەر","toolbar":"دانان/ڕێکخستنی بەستەر","type":"جۆری بەستەر","unlink":"لابردنی بەستەر","upload":"بارکردن"},"list":{"bulletedlist":"دانان/لابردنی خاڵی لیست","numberedlist":"دانان/لابردنی ژمارەی لیست"},"liststyle":{"armenian":"ئاراستەی ژمارەی ئەرمەنی","bulletedTitle":"خاسیەتی لیستی خاڵی","circle":"بازنه","decimal":"ژمارە (1, 2, 3, وە هیتر.)","decimalLeadingZero":"ژمارە سفڕی لەپێشەوه (01, 02, 03, وە هیتر.)","disc":"پەپکە","georgian":"ئاراستەی ژمارەی جۆڕجی (an, ban, gan, وە هیتر.)","lowerAlpha":"ئەلفابێی بچووك (a, b, c, d, e, وە هیتر.)","lowerGreek":"یۆنانی بچووك (alpha, beta, gamma, وە هیتر.)","lowerRoman":"ژمارەی ڕۆمی بچووك (i, ii, iii, iv, v, وە هیتر.)","none":"هیچ","notset":"<دانەندراوه>","numberedTitle":"خاسیەتی لیستی ژمارەیی","square":"چووراگۆشە","start":"دەستپێکردن","type":"جۆر","upperAlpha":"ئەلفابێی گەوره (A, B, C, D, E, وە هیتر.)","upperRoman":"ژمارەی ڕۆمی گەوره (I, II, III, IV, V, وە هیتر.)","validateStartNumber":"دەستپێکەری لیستی ژمارەیی دەبێت تەنها ژمارە بێت."},"magicline":{"title":"بڕگە لێرە دابنێ"},"maximize":{"maximize":"ئەوپەڕی گەورەیی","minimize":"ئەوپەڕی بچووکی"},"newpage":{"toolbar":"پەڕەیەکی نوێ"},"pagebreak":{"alt":"پشووی پەڕە","toolbar":"دانانی پشووی پەڕە بۆ چاپکردن"},"pastetext":{"button":"لکاندنی وەك دەقی ڕوون","title":"لکاندنی وەك دەقی ڕوون"},"pastefromword":{"confirmCleanup":"ئەم دەقەی بەتەمای بیلکێنی پێدەچێت له word هێنرابێت. دەتەوێت پاکی بکەیوه پێش ئەوەی بیلکێنی؟","error":"هیچ ڕێگەیەك نەبوو لەلکاندنی دەقەکه بەهۆی هەڵەیەکی ناوەخۆیی","title":"لکاندنی لەلایەن Word","toolbar":"لکاندنی لەڕێی Word"},"preview":{"preview":"پێشبینین"},"print":{"toolbar":"چاپکردن"},"removeformat":{"toolbar":"لابردنی داڕشتەکە"},"save":{"toolbar":"پاشکەوتکردن"},"selectall":{"toolbar":"دیاریکردنی هەمووی"},"showblocks":{"toolbar":"نیشاندانی بەربەستەکان"},"sourcearea":{"toolbar":"سەرچاوە"},"specialchar":{"options":"هەڵبژاردەی نووسەی تایبەتی","title":"هەڵبژاردنی نووسەی تایبەتی","toolbar":"دانانی نووسەی تایبەتی"},"scayt":{"btn_about":"دهربارهی SCAYT","btn_dictionaries":"فهرههنگهکان","btn_disable":"ناچالاککردنی SCAYT","btn_enable":"چالاککردنی SCAYT","btn_langs":"زمانهکان","btn_options":"ههڵبژارده","text_title":""},"stylescombo":{"label":"شێواز","panelTitle":"شێوازی ڕازاندنەوە","panelTitle1":"شێوازی خشت","panelTitle2":"شێوازی ناوهێڵ","panelTitle3":"شێوازی بەرکار"},"table":{"border":"گەورەیی پەراوێز","caption":"سەردێڕ","cell":{"menu":"خانه","insertBefore":"دانانی خانه لەپێش","insertAfter":"دانانی خانه لەپاش","deleteCell":"سڕینەوەی خانه","merge":"تێکەڵکردنی خانە","mergeRight":"تێکەڵکردنی لەگەڵ ڕاست","mergeDown":"تێکەڵکردنی لەگەڵ خوارەوە","splitHorizontal":"دابەشکردنی خانەی ئاسۆیی","splitVertical":"دابەشکردنی خانەی ئەستونی","title":"خاسیەتی خانه","cellType":"جۆری خانه","rowSpan":"ماوەی نێوان ڕیز","colSpan":"بستی ئەستونی","wordWrap":"پێچانەوەی وشە","hAlign":"ڕیزکردنی ئاسۆیی","vAlign":"ڕیزکردنی ئەستونی","alignBaseline":"هێڵەبنەڕەت","bgColor":"ڕەنگی پاشبنەما","borderColor":"ڕەنگی پەراوێز","data":"داتا","header":"سەرپەڕه","yes":"بەڵێ","no":"نەخێر","invalidWidth":"پانی خانه دەبێت بەتەواوی ژماره بێت.","invalidHeight":"درێژی خانه بەتەواوی دەبێت ژمارە بێت.","invalidRowSpan":"ماوەی نێوان ڕیز بەتەواوی دەبێت ژمارە بێت.","invalidColSpan":"ماوەی نێوان ئەستونی بەتەواوی دەبێت ژمارە بێت.","chooseColor":"هەڵبژێرە"},"cellPad":"بۆشایی ناوپۆش","cellSpace":"بۆشایی خانه","column":{"menu":"ئەستون","insertBefore":"دانانی ئەستون لەپێش","insertAfter":"دانانی ئەستوون لەپاش","deleteColumn":"سڕینەوەی ئەستوون"},"columns":"ستوونەکان","deleteTable":"سڕینەوەی خشتە","headers":"سەرپەڕه","headersBoth":"هەردووك","headersColumn":"یەکەم ئەستوون","headersNone":"هیچ","headersRow":"یەکەم ڕیز","invalidBorder":"ژمارەی پەراوێز دەبێت تەنها ژماره بێت.","invalidCellPadding":"ناوپۆشی خانه دەبێت ژمارەکی درووست بێت.","invalidCellSpacing":"بۆشایی خانه دەبێت ژمارەکی درووست بێت.","invalidCols":"ژمارەی ئەستوونی دەبێت گەورەتر بێت لەژمارەی 0.","invalidHeight":"درێژی خشته دهبێت تهنها ژماره بێت.","invalidRows":"ژمارەی ڕیز دەبێت گەورەتر بێت لەژمارەی 0.","invalidWidth":"پانی خشته دەبێت تەنها ژماره بێت.","menu":"خاسیەتی خشتە","row":{"menu":"ڕیز","insertBefore":"دانانی ڕیز لەپێش","insertAfter":"دانانی ڕیز لەپاش","deleteRow":"سڕینەوەی ڕیز"},"rows":"ڕیز","summary":"کورتە","title":"خاسیەتی خشتە","toolbar":"خشتە","widthPc":"لەسەدا","widthPx":"وێنەخاڵ - پیکسل","widthUnit":"پانی یەکە"},"undo":{"redo":"هەڵگەڕاندنەوە","undo":"پووچکردنەوە"},"wsc":{"btnIgnore":"پشتگوێ کردن","btnIgnoreAll":"پشتگوێکردنی ههمووی","btnReplace":"لهبریدانن","btnReplaceAll":"لهبریدانانی ههمووی","btnUndo":"پووچکردنهوه","changeTo":"گۆڕینی بۆ","errorLoading":"ههڵه لههێنانی داخوازینامهی خانهخۆێی ڕاژه: %s.","ieSpellDownload":"پشکنینی ڕێنووس دانهمزراوه. دهتهوێت ئێستا دایبگریت?","manyChanges":"پشکنینی ڕێنووس کۆتای هات: لهسهدا %1 ی وشهکان گۆڕدرا","noChanges":"پشکنینی ڕێنووس کۆتای هات: هیچ وشهیهك نۆگۆڕدرا","noMispell":"پشکنینی ڕێنووس کۆتای هات: هیچ ههڵهیهکی ڕێنووس نهدۆزراوه","noSuggestions":"- هیچ پێشنیارێك -","notAvailable":"ببووره، لهمکاتهدا ڕاژهکه لهبهردهستا نیه.","notInDic":"لهفهرههنگ دانیه","oneChange":"پشکنینی ڕێنووس کۆتای هات: یهك وشه گۆڕدرا","progress":"پشکنینی ڕێنووس لهبهردهوامبوون دایه...","title":"پشکنینی ڕێنووس","toolbar":"پشکنینی ڕێنووس"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/lt.js b/wqflask/wqflask/static/packages/ckeditor/lang/lt.js
deleted file mode 100644
index d0703895..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/lt.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['lt']={"editor":"Pilnas redaktorius","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Spauskite ALT 0 dėl pagalbos","browseServer":"Naršyti po serverį","url":"URL","protocol":"Protokolas","upload":"Siųsti","uploadSubmit":"Siųsti į serverį","image":"Vaizdas","flash":"Flash","form":"Forma","checkbox":"Žymimasis langelis","radio":"Žymimoji akutė","textField":"Teksto laukas","textarea":"Teksto sritis","hiddenField":"Nerodomas laukas","button":"Mygtukas","select":"Atrankos laukas","imageButton":"Vaizdinis mygtukas","notSet":"<nėra nustatyta>","id":"Id","name":"Vardas","langDir":"Teksto kryptis","langDirLtr":"Iš kairės į dešinę (LTR)","langDirRtl":"Iš dešinės į kairę (RTL)","langCode":"Kalbos kodas","longDescr":"Ilgas aprašymas URL","cssClass":"Stilių lentelės klasės","advisoryTitle":"Konsultacinė antraštė","cssStyle":"Stilius","ok":"OK","cancel":"Nutraukti","close":"Uždaryti","preview":"Peržiūrėti","resize":"Pavilkite, kad pakeistumėte dydį","generalTab":"Bendros savybės","advancedTab":"Papildomas","validateNumberFailed":"Ši reikšmė nėra skaičius.","confirmNewPage":"Visas neišsaugotas turinys bus prarastas. Ar tikrai norite įkrauti naują puslapį?","confirmCancel":"Kai kurie parametrai pasikeitė. Ar tikrai norite užverti langą?","options":"Parametrai","target":"Tikslinė nuoroda","targetNew":"Naujas langas (_blank)","targetTop":"Viršutinis langas (_top)","targetSelf":"Esamas langas (_self)","targetParent":"Paskutinis langas (_parent)","langDirLTR":"Iš kairės į dešinę (LTR)","langDirRTL":"Iš dešinės į kairę (RTL)","styles":"Stilius","cssClasses":"Stilių klasės","width":"Plotis","height":"Aukštis","align":"Lygiuoti","alignLeft":"Kairę","alignRight":"Dešinę","alignCenter":"Centrą","alignJustify":"Lygiuoti abi puses","alignTop":"Viršūnę","alignMiddle":"Vidurį","alignBottom":"Apačią","alignNone":"None","invalidValue":"Neteisinga reikšmė.","invalidHeight":"Aukštis turi būti nurodytas skaičiais.","invalidWidth":"Plotis turi būti nurodytas skaičiais.","invalidCssLength":"Reikšmė nurodyta \"%1\" laukui, turi būti teigiamas skaičius su arba be tinkamo CSS matavimo vieneto (px, %, in, cm, mm, em, ex, pt arba pc).","invalidHtmlLength":"Reikšmė nurodyta \"%1\" laukui, turi būti teigiamas skaičius su arba be tinkamo HTML matavimo vieneto (px arba %).","invalidInlineStyle":"Reikšmė nurodyta vidiniame stiliuje turi būti sudaryta iš vieno šių reikšmių \"vardas : reikšmė\", atskirta kabliataškiais.","cssLengthTooltip":"Įveskite reikšmę pikseliais arba skaičiais su tinkamu CSS vienetu (px, %, in, cm, mm, em, ex, pt arba pc).","unavailable":"%1<span class=\"cke_accessibility\">, netinkamas</span>"},"about":{"copy":"Copyright &copy; $1. Visos teiss saugomos.","dlgTitle":"Apie CKEditor","help":"Patikrinkite $1 dėl pagalbos.","moreInfo":"Dėl licencijavimo apsilankykite mūsų svetainėje:","title":"Apie CKEditor","userGuide":"CKEditor Vartotojo Gidas"},"basicstyles":{"bold":"Pusjuodis","italic":"Kursyvas","strike":"Perbrauktas","subscript":"Apatinis indeksas","superscript":"Viršutinis indeksas","underline":"Pabrauktas"},"bidi":{"ltr":"Tekstas iš kairės į dešinę","rtl":"Tekstas iš dešinės į kairę"},"blockquote":{"toolbar":"Citata"},"clipboard":{"copy":"Kopijuoti","copyError":"Jūsų naršyklės saugumo nustatymai neleidžia redaktoriui automatiškai įvykdyti kopijavimo operacijų. Tam prašome naudoti klaviatūrą (Ctrl/Cmd+C).","cut":"Iškirpti","cutError":"Jūsų naršyklės saugumo nustatymai neleidžia redaktoriui automatiškai įvykdyti iškirpimo operacijų. Tam prašome naudoti klaviatūrą (Ctrl/Cmd+X).","paste":"Įdėti","pasteArea":"Įkelti dalį","pasteMsg":"Žemiau esančiame įvedimo lauke įdėkite tekstą, naudodami klaviatūrą (<STRONG>Ctrl/Cmd+V</STRONG>) ir paspauskite mygtuką <STRONG>OK</STRONG>.","securityMsg":"Dėl jūsų naršyklės saugumo nustatymų, redaktorius negali tiesiogiai pasiekti laikinosios atminties. Jums reikia nukopijuoti dar kartą į šį langą.","title":"Įdėti"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatinis","bgColorTitle":"Fono spalva","colors":{"000":"Juoda","800000":"Kaštoninė","8B4513":"Tamsiai ruda","2F4F4F":"Pilka tamsaus šiferio","008080":"Teal","000080":"Karinis","4B0082":"Indigo","696969":"Tamsiai pilka","B22222":"Ugnies","A52A2A":"Ruda","DAA520":"Aukso","006400":"Tamsiai žalia","40E0D0":"Turquoise","0000CD":"Vidutinė mėlyna","800080":"Violetinė","808080":"Pilka","F00":"Raudona","FF8C00":"Tamsiai oranžinė","FFD700":"Auksinė","008000":"Žalia","0FF":"Žydra","00F":"Mėlyna","EE82EE":"Violetinė","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Oranžinė","FFFF00":"Geltona","00FF00":"Citrinų","AFEEEE":"Pale Turquoise","ADD8E6":"Šviesiai mėlyna","DDA0DD":"Plum","D3D3D3":"Šviesiai pilka","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Šviesiai geltona","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"Balta"},"more":"Daugiau spalvų...","panelTitle":"Spalva","textColorTitle":"Teksto spalva"},"colordialog":{"clear":"Išvalyti","highlight":"Paryškinti","options":"Spalvos nustatymai","selected":"Pasirinkta spalva","title":"Pasirinkite spalvą"},"templates":{"button":"Šablonai","emptyListMsg":"(Šablonų sąrašas tuščias)","insertOption":"Pakeisti dabartinį turinį pasirinktu šablonu","options":"Template Options","selectPromptMsg":"Pasirinkite norimą šabloną<br>(<b>Dėmesio!</b> esamas turinys bus prarastas):","title":"Turinio šablonai"},"contextmenu":{"options":"Kontekstinio meniu parametrai"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Patariamas pavadinimas","cssClassInputLabel":"Stilių klasės","edit":"Redaguoti Div","inlineStyleInputLabel":"Vidiniai stiliai","langDirLTRLabel":"Iš kairės į dešinę (LTR)","langDirLabel":"Kalbos nurodymai","langDirRTLLabel":"Iš dešinės į kairę (RTL)","languageCodeInputLabel":" Kalbos kodas","remove":"Pašalinti Div","styleSelectLabel":"Stilius","title":"Sukurti Div elementą","toolbar":"Sukurti Div elementą"},"toolbar":{"toolbarCollapse":"Apjungti įrankių juostą","toolbarExpand":"Išplėsti įrankių juostą","toolbarGroups":{"document":"Dokumentas","clipboard":"Atmintinė/Atgal","editing":"Redagavimas","forms":"Formos","basicstyles":"Pagrindiniai stiliai","paragraph":"Paragrafas","links":"Nuorodos","insert":"Įterpti","styles":"Stiliai","colors":"Spalvos","tools":"Įrankiai"},"toolbars":"Redaktoriaus įrankiai"},"elementspath":{"eleLabel":"Elemento kelias","eleTitle":"%1 elementas"},"find":{"find":"Rasti","findOptions":"Paieškos nustatymai","findWhat":"Surasti tekstą:","matchCase":"Skirti didžiąsias ir mažąsias raides","matchCyclic":"Sutampantis cikliškumas","matchWord":"Atitikti pilną žodį","notFoundMsg":"Nurodytas tekstas nerastas.","replace":"Pakeisti","replaceAll":"Pakeisti viską","replaceSuccessMsg":"%1 sutapimas(ų) buvo pakeisti.","replaceWith":"Pakeisti tekstu:","title":"Surasti ir pakeisti"},"fakeobjects":{"anchor":"Žymė","flash":"Flash animacija","hiddenfield":"Paslėptas laukas","iframe":"IFrame","unknown":"Nežinomas objektas"},"flash":{"access":"Skripto priėjimas","accessAlways":"Visada","accessNever":"Niekada","accessSameDomain":"Tas pats domenas","alignAbsBottom":"Absoliučią apačią","alignAbsMiddle":"Absoliutų vidurį","alignBaseline":"Apatinę liniją","alignTextTop":"Teksto viršūnę","bgcolor":"Fono spalva","chkFull":"Leisti per visą ekraną","chkLoop":"Ciklas","chkMenu":"Leisti Flash meniu","chkPlay":"Automatinis paleidimas","flashvars":"Flash kintamieji","hSpace":"Hor.Erdvė","properties":"Flash savybės","propertiesTab":"Nustatymai","quality":"Kokybė","qualityAutoHigh":"Automatiškai Gera","qualityAutoLow":"Automatiškai Žema","qualityBest":"Geriausia","qualityHigh":"Gera","qualityLow":"Žema","qualityMedium":"Vidutinė","scale":"Mastelis","scaleAll":"Rodyti visą","scaleFit":"Tikslus atitikimas","scaleNoBorder":"Be rėmelio","title":"Flash savybės","vSpace":"Vert.Erdvė","validateHSpace":"HSpace turi būti skaičius.","validateSrc":"Prašome įvesti nuorodos URL","validateVSpace":"VSpace turi būti skaičius.","windowMode":"Lango režimas","windowModeOpaque":"Nepermatomas","windowModeTransparent":"Permatomas","windowModeWindow":"Langas"},"font":{"fontSize":{"label":"Šrifto dydis","voiceLabel":"Šrifto dydis","panelTitle":"Šrifto dydis"},"label":"Šriftas","panelTitle":"Šriftas","voiceLabel":"Šriftas"},"forms":{"button":{"title":"Mygtuko savybės","text":"Tekstas (Reikšmė)","type":"Tipas","typeBtn":"Mygtukas","typeSbm":"Siųsti","typeRst":"Išvalyti"},"checkboxAndRadio":{"checkboxTitle":"Žymimojo langelio savybės","radioTitle":"Žymimosios akutės savybės","value":"Reikšmė","selected":"Pažymėtas"},"form":{"title":"Formos savybės","menu":"Formos savybės","action":"Veiksmas","method":"Metodas","encoding":"Kodavimas"},"hidden":{"title":"Nerodomo lauko savybės","name":"Vardas","value":"Reikšmė"},"select":{"title":"Atrankos lauko savybės","selectInfo":"Informacija","opAvail":"Galimos parinktys","value":"Reikšmė","size":"Dydis","lines":"eilučių","chkMulti":"Leisti daugeriopą atranką","opText":"Tekstas","opValue":"Reikšmė","btnAdd":"Įtraukti","btnModify":"Modifikuoti","btnUp":"Aukštyn","btnDown":"Žemyn","btnSetValue":"Laikyti pažymėta reikšme","btnDelete":"Trinti"},"textarea":{"title":"Teksto srities savybės","cols":"Ilgis","rows":"Plotis"},"textfield":{"title":"Teksto lauko savybės","name":"Vardas","value":"Reikšmė","charWidth":"Ilgis simboliais","maxChars":"Maksimalus simbolių skaičius","type":"Tipas","typeText":"Tekstas","typePass":"Slaptažodis","typeEmail":"El. paštas","typeSearch":"Paieška","typeTel":"Telefono numeris","typeUrl":"Nuoroda"}},"format":{"label":"Šrifto formatas","panelTitle":"Šrifto formatas","tag_address":"Kreipinio","tag_div":"Normalus (DIV)","tag_h1":"Antraštinis 1","tag_h2":"Antraštinis 2","tag_h3":"Antraštinis 3","tag_h4":"Antraštinis 4","tag_h5":"Antraštinis 5","tag_h6":"Antraštinis 6","tag_p":"Normalus","tag_pre":"Formuotas"},"horizontalrule":{"toolbar":"Įterpti horizontalią liniją"},"iframe":{"border":"Rodyti rėmelį","noUrl":"Nurodykite iframe nuorodą","scrolling":"Įjungti slankiklius","title":"IFrame nustatymai","toolbar":"IFrame"},"image":{"alertUrl":"Prašome įvesti vaizdo URL","alt":"Alternatyvus Tekstas","border":"Rėmelis","btnUpload":"Siųsti į serverį","button2Img":"Ar norite mygtuką paversti paprastu paveiksliuku?","hSpace":"Hor.Erdvė","img2Button":"Ar norite paveiksliuką paversti mygtuku?","infoTab":"Vaizdo informacija","linkTab":"Nuoroda","lockRatio":"Išlaikyti proporciją","menu":"Vaizdo savybės","resetSize":"Atstatyti dydį","title":"Vaizdo savybės","titleButton":"Vaizdinio mygtuko savybės","upload":"Nusiųsti","urlMissing":"Paveiksliuko nuorodos nėra.","vSpace":"Vert.Erdvė","validateBorder":"Reikšmė turi būti sveikas skaičius.","validateHSpace":"Reikšmė turi būti sveikas skaičius.","validateVSpace":"Reikšmė turi būti sveikas skaičius."},"indent":{"indent":"Padidinti įtrauką","outdent":"Sumažinti įtrauką"},"smiley":{"options":"Šypsenėlių nustatymai","title":"Įterpti veidelį","toolbar":"Veideliai"},"justify":{"block":"Lygiuoti abi puses","center":"Centruoti","left":"Lygiuoti kairę","right":"Lygiuoti dešinę"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Prieigos raktas","advanced":"Papildomas","advisoryContentType":"Konsultacinio turinio tipas","advisoryTitle":"Konsultacinė antraštė","anchor":{"toolbar":"Įterpti/modifikuoti žymę","menu":"Žymės savybės","title":"Žymės savybės","name":"Žymės vardas","errorName":"Prašome įvesti žymės vardą","remove":"Pašalinti žymę"},"anchorId":"Pagal žymės Id","anchorName":"Pagal žymės vardą","charset":"Susietų išteklių simbolių lentelė","cssClasses":"Stilių lentelės klasės","emailAddress":"El.pašto adresas","emailBody":"Žinutės turinys","emailSubject":"Žinutės tema","id":"Id","info":"Nuorodos informacija","langCode":"Teksto kryptis","langDir":"Teksto kryptis","langDirLTR":"Iš kairės į dešinę (LTR)","langDirRTL":"Iš dešinės į kairę (RTL)","menu":"Taisyti nuorodą","name":"Vardas","noAnchors":"(Šiame dokumente žymių nėra)","noEmail":"Prašome įvesti el.pašto adresą","noUrl":"Prašome įvesti nuorodos URL","other":"<kitas>","popupDependent":"Priklausomas (Netscape)","popupFeatures":"Išskleidžiamo lango savybės","popupFullScreen":"Visas ekranas (IE)","popupLeft":"Kairė pozicija","popupLocationBar":"Adreso juosta","popupMenuBar":"Meniu juosta","popupResizable":"Kintamas dydis","popupScrollBars":"Slinkties juostos","popupStatusBar":"Būsenos juosta","popupToolbar":"Mygtukų juosta","popupTop":"Viršutinė pozicija","rel":"Sąsajos","selectAnchor":"Pasirinkite žymę","styles":"Stilius","tabIndex":"Tabuliavimo indeksas","target":"Paskirties vieta","targetFrame":"<kadras>","targetFrameName":"Paskirties kadro vardas","targetPopup":"<išskleidžiamas langas>","targetPopupName":"Paskirties lango vardas","title":"Nuoroda","toAnchor":"Žymė šiame puslapyje","toEmail":"El.paštas","toUrl":"Nuoroda","toolbar":"Įterpti/taisyti nuorodą","type":"Nuorodos tipas","unlink":"Panaikinti nuorodą","upload":"Siųsti"},"list":{"bulletedlist":"Suženklintas sąrašas","numberedlist":"Numeruotas sąrašas"},"liststyle":{"armenian":"Armėniški skaitmenys","bulletedTitle":"Ženklelinio sąrašo nustatymai","circle":"Apskritimas","decimal":"Dešimtainis (1, 2, 3, t.t)","decimalLeadingZero":"Dešimtainis su nuliu priekyje (01, 02, 03, t.t)","disc":"Diskas","georgian":"Gruziniški skaitmenys (an, ban, gan, t.t)","lowerAlpha":"Mažosios Alpha (a, b, c, d, e, t.t)","lowerGreek":"Mažosios Graikų (alpha, beta, gamma, t.t)","lowerRoman":"Mažosios Romėnų (i, ii, iii, iv, v, t.t)","none":"Niekas","notset":"<nenurodytas>","numberedTitle":"Skaitmeninio sąrašo nustatymai","square":"Kvadratas","start":"Pradžia","type":"Rūšis","upperAlpha":"Didžiosios Alpha (A, B, C, D, E, t.t)","upperRoman":"Didžiosios Romėnų (I, II, III, IV, V, t.t)","validateStartNumber":"Sąrašo pradžios skaitmuo turi būti sveikas skaičius."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Išdidinti","minimize":"Sumažinti"},"newpage":{"toolbar":"Naujas puslapis"},"pagebreak":{"alt":"Puslapio skirtukas","toolbar":"Įterpti puslapių skirtuką"},"pastetext":{"button":"Įdėti kaip gryną tekstą","title":"Įdėti kaip gryną tekstą"},"pastefromword":{"confirmCleanup":"Tekstas, kurį įkeliate yra kopijuojamas iš Word. Ar norite jį išvalyti prieš įkeliant?","error":"Dėl vidinių sutrikimų, nepavyko išvalyti įkeliamo teksto","title":"Įdėti iš Word","toolbar":"Įdėti iš Word"},"preview":{"preview":"Peržiūra"},"print":{"toolbar":"Spausdinti"},"removeformat":{"toolbar":"Panaikinti formatą"},"save":{"toolbar":"Išsaugoti"},"selectall":{"toolbar":"Pažymėti viską"},"showblocks":{"toolbar":"Rodyti blokus"},"sourcearea":{"toolbar":"Šaltinis"},"specialchar":{"options":"Specialaus simbolio nustatymai","title":"Pasirinkite specialų simbolį","toolbar":"Įterpti specialų simbolį"},"scayt":{"btn_about":"Apie SCAYT","btn_dictionaries":"Žodynai","btn_disable":"Išjungti SCAYT","btn_enable":"Įjungti SCAYT","btn_langs":"Kalbos","btn_options":"Parametrai","text_title":""},"stylescombo":{"label":"Stilius","panelTitle":"Stilių formatavimas","panelTitle1":"Blokų stiliai","panelTitle2":"Vidiniai stiliai","panelTitle3":"Objektų stiliai"},"table":{"border":"Rėmelio dydis","caption":"Antraštė","cell":{"menu":"Langelis","insertBefore":"Įterpti langelį prieš","insertAfter":"Įterpti langelį po","deleteCell":"Šalinti langelius","merge":"Sujungti langelius","mergeRight":"Sujungti su dešine","mergeDown":"Sujungti su apačia","splitHorizontal":"Skaidyti langelį horizontaliai","splitVertical":"Skaidyti langelį vertikaliai","title":"Cell nustatymai","cellType":"Cell rūšis","rowSpan":"Eilučių Span","colSpan":"Stulpelių Span","wordWrap":"Sutraukti raides","hAlign":"Horizontalus lygiavimas","vAlign":"Vertikalus lygiavimas","alignBaseline":"Apatinė linija","bgColor":"Fono spalva","borderColor":"Rėmelio spalva","data":"Data","header":"Antraštė","yes":"Taip","no":"Ne","invalidWidth":"Reikšmė turi būti skaičius.","invalidHeight":"Reikšmė turi būti skaičius.","invalidRowSpan":"Reikšmė turi būti skaičius.","invalidColSpan":"Reikšmė turi būti skaičius.","chooseColor":"Pasirinkite"},"cellPad":"Tarpas nuo langelio rėmo iki teksto","cellSpace":"Tarpas tarp langelių","column":{"menu":"Stulpelis","insertBefore":"Įterpti stulpelį prieš","insertAfter":"Įterpti stulpelį po","deleteColumn":"Šalinti stulpelius"},"columns":"Stulpeliai","deleteTable":"Šalinti lentelę","headers":"Antraštės","headersBoth":"Abu","headersColumn":"Pirmas stulpelis","headersNone":"Nėra","headersRow":"Pirma eilutė","invalidBorder":"Reikšmė turi būti nurodyta skaičiumi.","invalidCellPadding":"Reikšmė turi būti nurodyta skaičiumi.","invalidCellSpacing":"Reikšmė turi būti nurodyta skaičiumi.","invalidCols":"Skaičius turi būti didesnis nei 0.","invalidHeight":"Reikšmė turi būti nurodyta skaičiumi.","invalidRows":"Skaičius turi būti didesnis nei 0.","invalidWidth":"Reikšmė turi būti nurodyta skaičiumi.","menu":"Lentelės savybės","row":{"menu":"Eilutė","insertBefore":"Įterpti eilutę prieš","insertAfter":"Įterpti eilutę po","deleteRow":"Šalinti eilutes"},"rows":"Eilutės","summary":"Santrauka","title":"Lentelės savybės","toolbar":"Lentelė","widthPc":"procentais","widthPx":"taškais","widthUnit":"pločio vienetas"},"undo":{"redo":"Atstatyti","undo":"Atšaukti"},"wsc":{"btnIgnore":"Ignoruoti","btnIgnoreAll":"Ignoruoti visus","btnReplace":"Pakeisti","btnReplaceAll":"Pakeisti visus","btnUndo":"Atšaukti","changeTo":"Pakeisti į","errorLoading":"Klaida įkraunant servisą: %s.","ieSpellDownload":"Rašybos tikrinimas neinstaliuotas. Ar Jūs norite jį dabar atsisiųsti?","manyChanges":"Rašybos tikrinimas baigtas: Pakeista %1 žodžių","noChanges":"Rašybos tikrinimas baigtas: Nėra pakeistų žodžių","noMispell":"Rašybos tikrinimas baigtas: Nerasta rašybos klaidų","noSuggestions":"- Nėra pasiūlymų -","notAvailable":"Atleiskite, šiuo metu servisas neprieinamas.","notInDic":"Žodyne nerastas","oneChange":"Rašybos tikrinimas baigtas: Vienas žodis pakeistas","progress":"Vyksta rašybos tikrinimas...","title":"Tikrinti klaidas","toolbar":"Rašybos tikrinimas"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/lv.js b/wqflask/wqflask/static/packages/ckeditor/lang/lv.js
deleted file mode 100644
index d9bbcead..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/lv.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['lv']={"editor":"Bagātinātā teksta redaktors","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Palīdzībai, nospiediet ALT 0 ","browseServer":"Skatīt servera saturu","url":"URL","protocol":"Protokols","upload":"Augšupielādēt","uploadSubmit":"Nosūtīt serverim","image":"Attēls","flash":"Flash","form":"Forma","checkbox":"Atzīmēšanas kastīte","radio":"Izvēles poga","textField":"Teksta rinda","textarea":"Teksta laukums","hiddenField":"Paslēpta teksta rinda","button":"Poga","select":"Iezīmēšanas lauks","imageButton":"Attēlpoga","notSet":"<nav iestatīts>","id":"Id","name":"Nosaukums","langDir":"Valodas lasīšanas virziens","langDirLtr":"No kreisās uz labo (LTR)","langDirRtl":"No labās uz kreiso (RTL)","langCode":"Valodas kods","longDescr":"Gara apraksta Hipersaite","cssClass":"Stilu saraksta klases","advisoryTitle":"Konsultatīvs virsraksts","cssStyle":"Stils","ok":"Darīts!","cancel":"Atcelt","close":"Aizvērt","preview":"Priekšskatījums","resize":"Mērogot","generalTab":"Vispārīgi","advancedTab":"Izvērstais","validateNumberFailed":"Šī vērtība nav skaitlis","confirmNewPage":"Jebkuras nesaglabātās izmaiņas tiks zaudētas. Vai tiešām vēlaties atvērt jaunu lapu?","confirmCancel":"Daži no uzstādījumiem ir mainīti. Vai tiešām vēlaties aizvērt šo dialogu?","options":"Uzstādījumi","target":"Mērķis","targetNew":"Jauns logs (_blank)","targetTop":"Virsējais logs (_top)","targetSelf":"Tas pats logs (_self)","targetParent":"Avota logs (_parent)","langDirLTR":"Kreisais uz Labo (LTR)","langDirRTL":"Labais uz Kreiso (RTL)","styles":"Stils","cssClasses":"Stilu klases","width":"Platums","height":"Augstums","align":"Nolīdzināt","alignLeft":"Pa kreisi","alignRight":"Pa labi","alignCenter":"Centrēti","alignJustify":"Izlīdzināt malas","alignTop":"Augšā","alignMiddle":"Vertikāli centrēts","alignBottom":"Apakšā","alignNone":"None","invalidValue":"Nekorekta vērtība","invalidHeight":"Augstumam jābūt skaitlim.","invalidWidth":"Platumam jābūt skaitlim","invalidCssLength":"Laukam \"%1\" norādītajai vērtībai jābūt pozitīvam skaitlim ar vai bez korektām CSS mērvienībām (px, %, in, cm, mm, em, ex, pt, vai pc).","invalidHtmlLength":"Laukam \"%1\" norādītajai vērtībai jābūt pozitīvam skaitlim ar vai bez korektām HTML mērvienībām (px vai %).","invalidInlineStyle":"Iekļautajā stilā norādītajai vērtībai jāsastāv no viena vai vairākiem pāriem pēc forma'ta \"nosaukums: vērtība\", atdalītiem ar semikolu.","cssLengthTooltip":"Ievadiet vērtību pikseļos vai skaitli ar derīgu CSS mērvienību (px, %, in, cm, mm, em, ex, pt, vai pc).","unavailable":"%1<span class=\"cke_accessibility\">, nav pieejams</span>"},"about":{"copy":"Kopēšanas tiesības &copy; $1. Visas tiesības rezervētas.","dlgTitle":"Par CKEditor","help":"Pārbaudiet $1 palīdzībai.","moreInfo":"Informācijai par licenzēšanu apmeklējiet mūsu mājas lapu:","title":"Par CKEditor","userGuide":"CKEditor Lietotāja pamācība"},"basicstyles":{"bold":"Treknināts","italic":"Kursīvs","strike":"Pārsvītrots","subscript":"Apakšrakstā","superscript":"Augšrakstā","underline":"Pasvītrots"},"bidi":{"ltr":"Teksta virziens no kreisās uz labo","rtl":"Teksta virziens no labās uz kreiso"},"blockquote":{"toolbar":"Bloka citāts"},"clipboard":{"copy":"Kopēt","copyError":"Jūsu pārlūkprogrammas drošības iestatījumi nepieļauj redaktoram automātiski veikt kopēšanas darbību. Lūdzu, izmantojiet (Ctrl/Cmd+C), lai veiktu šo darbību.","cut":"Izgriezt","cutError":"Jūsu pārlūkprogrammas drošības iestatījumi nepieļauj redaktoram automātiski veikt izgriezšanas darbību. Lūdzu, izmantojiet (Ctrl/Cmd+X), lai veiktu šo darbību.","paste":"Ielīmēt","pasteArea":"Ielīmēšanas zona","pasteMsg":"Lūdzu, ievietojiet tekstu šajā laukumā, izmantojot klaviatūru (<STRONG>Ctrl/Cmd+V</STRONG>) un apstipriniet ar <STRONG>Darīts!</STRONG>.","securityMsg":"Jūsu pārlūka drošības uzstādījumu dēļ, nav iespējams tieši piekļūt jūsu starpliktuvei. Jums jāielīmē atkārtoti šajā logā.","title":"Ievietot"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automātiska","bgColorTitle":"Fona krāsa","colors":{"000":"Melns","800000":"Sarkanbrūns","8B4513":"Sedlu brūns","2F4F4F":"Tumšas tāfeles pelēks","008080":"Zili-zaļš","000080":"Jūras","4B0082":"Indigo","696969":"Tumši pelēks","B22222":"Ķieģeļsarkans","A52A2A":"Brūns","DAA520":"Zelta","006400":"Tumši zaļš","40E0D0":"Tirkīzs","0000CD":"Vidēji zils","800080":"Purpurs","808080":"Pelēks","F00":"Sarkans","FF8C00":"Tumši oranžs","FFD700":"Zelta","008000":"Zaļš","0FF":"Tumšzils","00F":"Zils","EE82EE":"Violets","A9A9A9":"Pelēks","FFA07A":"Gaiši laškrāsas","FFA500":"Oranžs","FFFF00":"Dzeltens","00FF00":"Laima","AFEEEE":"Gaiši tirkīza","ADD8E6":"Gaiši zils","DDA0DD":"Plūmju","D3D3D3":"Gaiši pelēks","FFF0F5":"Lavandas sārts","FAEBD7":"Antīki balts","FFFFE0":"Gaiši dzeltens","F0FFF0":"Meduspile","F0FFFF":"Debesszils","F0F8FF":"Alises zils","E6E6FA":"Lavanda","FFF":"Balts"},"more":"Plašāka palete...","panelTitle":"Krāsa","textColorTitle":"Teksta krāsa"},"colordialog":{"clear":"Notīrīt","highlight":"Paraugs","options":"Krāsas uzstādījumi","selected":"Izvēlētā krāsa","title":"Izvēlies krāsu"},"templates":{"button":"Sagataves","emptyListMsg":"(Nav norādītas sagataves)","insertOption":"Aizvietot pašreizējo saturu","options":"Sagataves uzstādījumi","selectPromptMsg":"Lūdzu, norādiet sagatavi, ko atvērt editorā<br>(patreizējie dati tiks zaudēti):","title":"Satura sagataves"},"contextmenu":{"options":"Uznirstošās izvēlnes uzstādījumi"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Konsultatīvs virsraksts","cssClassInputLabel":"Stilu klases","edit":"Labot Div","inlineStyleInputLabel":"Iekļautais stils","langDirLTRLabel":"Kreisais uz Labo (LTR)","langDirLabel":"Valodas virziens","langDirRTLLabel":"Labais uz kreiso (RTL)","languageCodeInputLabel":"Valodas kods","remove":"Noņemt Div","styleSelectLabel":"Stils","title":"Izveidot div konteineri","toolbar":"Izveidot div konteineri"},"toolbar":{"toolbarCollapse":"Aizvērt rīkjoslu","toolbarExpand":"Atvērt rīkjoslu","toolbarGroups":{"document":"Dokuments","clipboard":"Starpliktuve/Atcelt","editing":"Labošana","forms":"Formas","basicstyles":"Pamata stili","paragraph":"Paragrāfs","links":"Saites","insert":"Ievietot","styles":"Stili","colors":"Krāsas","tools":"Rīki"},"toolbars":"Redaktora rīkjoslas"},"elementspath":{"eleLabel":"Elementa ceļš","eleTitle":"%1 elements"},"find":{"find":"Meklēt","findOptions":"Meklēt uzstādījumi","findWhat":"Meklēt:","matchCase":"Reģistrjūtīgs","matchCyclic":"Sakrist cikliski","matchWord":"Jāsakrīt pilnībā","notFoundMsg":"Norādītā frāze netika atrasta.","replace":"Nomainīt","replaceAll":"Aizvietot visu","replaceSuccessMsg":"%1 gadījums(i) aizvietoti","replaceWith":"Nomainīt uz:","title":"Meklēt un aizvietot"},"fakeobjects":{"anchor":"Iezīme","flash":"Flash animācija","hiddenfield":"Slēpts lauks","iframe":"Iframe","unknown":"Nezināms objekts"},"flash":{"access":"Skripta pieeja","accessAlways":"Vienmēr","accessNever":"Nekad","accessSameDomain":"Tas pats domēns","alignAbsBottom":"Absolūti apakšā","alignAbsMiddle":"Absolūti vertikāli centrēts","alignBaseline":"Pamatrindā","alignTextTop":"Teksta augšā","bgcolor":"Fona krāsa","chkFull":"Pilnekrāns","chkLoop":"Nepārtraukti","chkMenu":"Atļaut Flash izvēlni","chkPlay":"Automātiska atskaņošana","flashvars":"Flash mainīgie","hSpace":"Horizontālā telpa","properties":"Flash īpašības","propertiesTab":"Uzstādījumi","quality":"Kvalitāte","qualityAutoHigh":"Automātiski Augsta","qualityAutoLow":"Automātiski Zema","qualityBest":"Labākā","qualityHigh":"Augsta","qualityLow":"Zema","qualityMedium":"Vidēja","scale":"Mainīt izmēru","scaleAll":"Rādīt visu","scaleFit":"Precīzs izmērs","scaleNoBorder":"Bez rāmja","title":"Flash īpašības","vSpace":"Vertikālā telpa","validateHSpace":"Hspace jābūt skaitlim","validateSrc":"Lūdzu norādi hipersaiti","validateVSpace":"Vspace jābūt skaitlim","windowMode":"Loga režīms","windowModeOpaque":"Necaurspīdīgs","windowModeTransparent":"Caurspīdīgs","windowModeWindow":"Logs"},"font":{"fontSize":{"label":"Izmērs","voiceLabel":"Fonta izmeŗs","panelTitle":"Izmērs"},"label":"Šrifts","panelTitle":"Šrifts","voiceLabel":"Fonts"},"forms":{"button":{"title":"Pogas īpašības","text":"Teksts (vērtība)","type":"Tips","typeBtn":"Poga","typeSbm":"Nosūtīt","typeRst":"Atcelt"},"checkboxAndRadio":{"checkboxTitle":"Atzīmēšanas kastītes īpašības","radioTitle":"Izvēles poga īpašības","value":"Vērtība","selected":"Iezīmēts"},"form":{"title":"Formas īpašības","menu":"Formas īpašības","action":"Darbība","method":"Metode","encoding":"Kodējums"},"hidden":{"title":"Paslēptās teksta rindas īpašības","name":"Nosaukums","value":"Vērtība"},"select":{"title":"Iezīmēšanas lauka īpašības","selectInfo":"Informācija","opAvail":"Pieejamās iespējas","value":"Vērtība","size":"Izmērs","lines":"rindas","chkMulti":"Atļaut vairākus iezīmējumus","opText":"Teksts","opValue":"Vērtība","btnAdd":"Pievienot","btnModify":"Veikt izmaiņas","btnUp":"Augšup","btnDown":"Lejup","btnSetValue":"Noteikt kā iezīmēto vērtību","btnDelete":"Dzēst"},"textarea":{"title":"Teksta laukuma īpašības","cols":"Kolonnas","rows":"Rindas"},"textfield":{"title":"Teksta rindas īpašības","name":"Nosaukums","value":"Vērtība","charWidth":"Simbolu platums","maxChars":"Simbolu maksimālais daudzums","type":"Tips","typeText":"Teksts","typePass":"Parole","typeEmail":"Epasts","typeSearch":"Meklēt","typeTel":"Tālruņa numurs","typeUrl":"Adrese"}},"format":{"label":"Formāts","panelTitle":"Formāts","tag_address":"Adrese","tag_div":"Rindkopa (DIV)","tag_h1":"Virsraksts 1","tag_h2":"Virsraksts 2","tag_h3":"Virsraksts 3","tag_h4":"Virsraksts 4","tag_h5":"Virsraksts 5","tag_h6":"Virsraksts 6","tag_p":"Normāls teksts","tag_pre":"Formatēts teksts"},"horizontalrule":{"toolbar":"Ievietot horizontālu Atdalītājsvītru"},"iframe":{"border":"Rādīt rāmi","noUrl":"Norādiet iframe adresi","scrolling":"Atļaut ritjoslas","title":"IFrame uzstādījumi","toolbar":"IFrame"},"image":{"alertUrl":"Lūdzu norādīt attēla hipersaiti","alt":"Alternatīvais teksts","border":"Rāmis","btnUpload":"Nosūtīt serverim","button2Img":"Vai vēlaties pārveidot izvēlēto attēla pogu uz attēla?","hSpace":"Horizontālā telpa","img2Button":"Vai vēlaties pārveidot izvēlēto attēlu uz attēla pogas?","infoTab":"Informācija par attēlu","linkTab":"Hipersaite","lockRatio":"Nemainīga Augstuma/Platuma attiecība","menu":"Attēla īpašības","resetSize":"Atjaunot sākotnējo izmēru","title":"Attēla īpašības","titleButton":"Attēlpogas īpašības","upload":"Augšupielādēt","urlMissing":"Trūkst attēla atrašanās adrese.","vSpace":"Vertikālā telpa","validateBorder":"Apmalei jābūt veselam skaitlim","validateHSpace":"HSpace jābūt veselam skaitlim","validateVSpace":"VSpace jābūt veselam skaitlim"},"indent":{"indent":"Palielināt atkāpi","outdent":"Samazināt atkāpi"},"smiley":{"options":"Smaidiņu uzstādījumi","title":"Ievietot smaidiņu","toolbar":"Smaidiņi"},"justify":{"block":"Izlīdzināt malas","center":"Izlīdzināt pret centru","left":"Izlīdzināt pa kreisi","right":"Izlīdzināt pa labi"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Pieejas taustiņš","advanced":"Izvērstais","advisoryContentType":"Konsultatīvs satura tips","advisoryTitle":"Konsultatīvs virsraksts","anchor":{"toolbar":"Ievietot/Labot iezīmi","menu":"Labot iezīmi","title":"Iezīmes uzstādījumi","name":"Iezīmes nosaukums","errorName":"Lūdzu norādiet iezīmes nosaukumu","remove":"Noņemt iezīmi"},"anchorId":"Pēc elementa ID","anchorName":"Pēc iezīmes nosaukuma","charset":"Pievienotā resursa kodējums","cssClasses":"Stilu saraksta klases","emailAddress":"E-pasta adrese","emailBody":"Ziņas saturs","emailSubject":"Ziņas tēma","id":"ID","info":"Hipersaites informācija","langCode":"Valodas kods","langDir":"Valodas lasīšanas virziens","langDirLTR":"No kreisās uz labo (LTR)","langDirRTL":"No labās uz kreiso (RTL)","menu":"Labot hipersaiti","name":"Nosaukums","noAnchors":"(Šajā dokumentā nav iezīmju)","noEmail":"Lūdzu norādi e-pasta adresi","noUrl":"Lūdzu norādi hipersaiti","other":"<cits>","popupDependent":"Atkarīgs (Netscape)","popupFeatures":"Uznirstošā loga nosaukums īpašības","popupFullScreen":"Pilnā ekrānā (IE)","popupLeft":"Kreisā koordināte","popupLocationBar":"Atrašanās vietas josla","popupMenuBar":"Izvēlnes josla","popupResizable":"Mērogojams","popupScrollBars":"Ritjoslas","popupStatusBar":"Statusa josla","popupToolbar":"Rīku josla","popupTop":"Augšējā koordināte","rel":"Relācija","selectAnchor":"Izvēlēties iezīmi","styles":"Stils","tabIndex":"Ciļņu indekss","target":"Mērķis","targetFrame":"<ietvars>","targetFrameName":"Mērķa ietvara nosaukums","targetPopup":"<uznirstošā logā>","targetPopupName":"Uznirstošā loga nosaukums","title":"Hipersaite","toAnchor":"Iezīme šajā lapā","toEmail":"E-pasts","toUrl":"Adrese","toolbar":"Ievietot/Labot hipersaiti","type":"Hipersaites tips","unlink":"Noņemt hipersaiti","upload":"Augšupielādēt"},"list":{"bulletedlist":"Pievienot/Noņemt vienkāršu sarakstu","numberedlist":"Numurēts saraksts"},"liststyle":{"armenian":"Armēņu skaitļi","bulletedTitle":"Vienkārša saraksta uzstādījumi","circle":"Aplis","decimal":"Decimālie (1, 2, 3, utt)","decimalLeadingZero":"Decimālie ar nulli (01, 02, 03, utt)","disc":"Disks","georgian":"Gruzīņu skaitļi (an, ban, gan, utt)","lowerAlpha":"Mazie alfabēta (a, b, c, d, e, utt)","lowerGreek":"Mazie grieķu (alfa, beta, gamma, utt)","lowerRoman":"Mazie romāņu (i, ii, iii, iv, v, utt)","none":"Nekas","notset":"<nav norādīts>","numberedTitle":"Numurēta saraksta uzstādījumi","square":"Kvadrāts","start":"Sākt","type":"Tips","upperAlpha":"Lielie alfabēta (A, B, C, D, E, utt)","upperRoman":"Lielie romāņu (I, II, III, IV, V, utt)","validateStartNumber":"Saraksta sākuma numuram jābūt veselam skaitlim"},"magicline":{"title":"Ievietot šeit rindkopu"},"maximize":{"maximize":"Maksimizēt","minimize":"Minimizēt"},"newpage":{"toolbar":"Jauna lapa"},"pagebreak":{"alt":"Lapas pārnesums","toolbar":"Ievietot lapas pārtraukumu drukai"},"pastetext":{"button":"Ievietot kā vienkāršu tekstu","title":"Ievietot kā vienkāršu tekstu"},"pastefromword":{"confirmCleanup":"Teksts, kuru vēlaties ielīmēt, izskatās ir nokopēts no Word. Vai vēlaties to iztīrīt pirms ielīmēšanas?","error":"Iekšējas kļūdas dēļ, neizdevās iztīrīt ielīmētos datus.","title":"Ievietot no Worda","toolbar":"Ievietot no Worda"},"preview":{"preview":"Priekšskatīt"},"print":{"toolbar":"Drukāt"},"removeformat":{"toolbar":"Noņemt stilus"},"save":{"toolbar":"Saglabāt"},"selectall":{"toolbar":"Iezīmēt visu"},"showblocks":{"toolbar":"Parādīt blokus"},"sourcearea":{"toolbar":"HTML kods"},"specialchar":{"options":"Speciālo simbolu uzstādījumi","title":"Ievietot īpašu simbolu","toolbar":"Ievietot speciālo simbolu"},"scayt":{"btn_about":"Par SCAYT","btn_dictionaries":"Vārdnīcas","btn_disable":"Atslēgt SCAYT","btn_enable":"Ieslēgt SCAYT","btn_langs":"Valodas","btn_options":"Uzstādījumi","text_title":""},"stylescombo":{"label":"Stils","panelTitle":"Formatēšanas stili","panelTitle1":"Bloka stili","panelTitle2":"iekļautie stili","panelTitle3":"Objekta stili"},"table":{"border":"Rāmja izmērs","caption":"Leģenda","cell":{"menu":"Šūna","insertBefore":"Pievienot šūnu pirms","insertAfter":"Pievienot šūnu pēc","deleteCell":"Dzēst rūtiņas","merge":"Apvienot rūtiņas","mergeRight":"Apvieno pa labi","mergeDown":"Apvienot uz leju","splitHorizontal":"Sadalīt šūnu horizontāli","splitVertical":"Sadalīt šūnu vertikāli","title":"Šūnas uzstādījumi","cellType":"Šūnas tips","rowSpan":"Apvienotas rindas","colSpan":"Apvienotas kolonas","wordWrap":"Vārdu pārnese","hAlign":"Horizontālais novietojums","vAlign":"Vertikālais novietojums","alignBaseline":"Pamatrinda","bgColor":"Fona krāsa","borderColor":"Rāmja krāsa","data":"Dati","header":"Virsraksts","yes":"Jā","no":"Nē","invalidWidth":"Šūnas platumam jābūt skaitlim","invalidHeight":"Šūnas augstumam jābūt skaitlim","invalidRowSpan":"Apvienojamo rindu skaitam jābūt veselam skaitlim","invalidColSpan":"Apvienojamo kolonu skaitam jābūt veselam skaitlim","chooseColor":"Izvēlēties"},"cellPad":"Rūtiņu nobīde","cellSpace":"Rūtiņu atstatums","column":{"menu":"Kolonna","insertBefore":"Ievietot kolonu pirms","insertAfter":"Ievieto kolonu pēc","deleteColumn":"Dzēst kolonnas"},"columns":"Kolonnas","deleteTable":"Dzēst tabulu","headers":"Virsraksti","headersBoth":"Abi","headersColumn":"Pirmā kolona","headersNone":"Nekas","headersRow":"Pirmā rinda","invalidBorder":"Rāmju izmēram jābūt skaitlim","invalidCellPadding":"Šūnu atkāpēm jābūt pozitīvam skaitlim","invalidCellSpacing":"Šūnu atstarpēm jābūt pozitīvam skaitlim","invalidCols":"Kolonu skaitam jābūt lielākam par 0","invalidHeight":"Tabulas augstumam jābūt skaitlim","invalidRows":"Rindu skaitam jābūt lielākam par 0","invalidWidth":"Tabulas platumam jābūt skaitlim","menu":"Tabulas īpašības","row":{"menu":"Rinda","insertBefore":"Ievietot rindu pirms","insertAfter":"Ievietot rindu pēc","deleteRow":"Dzēst rindas"},"rows":"Rindas","summary":"Anotācija","title":"Tabulas īpašības","toolbar":"Tabula","widthPc":"procentuāli","widthPx":"pikseļos","widthUnit":"platuma mērvienība"},"undo":{"redo":"Atkārtot","undo":"Atcelt"},"wsc":{"btnIgnore":"Ignorēt","btnIgnoreAll":"Ignorēt visu","btnReplace":"Aizvietot","btnReplaceAll":"Aizvietot visu","btnUndo":"Atcelt","changeTo":"Nomainīt uz","errorLoading":"Kļūda ielādējot aplikācijas servisa adresi: %s.","ieSpellDownload":"Pareizrakstības pārbaudītājs nav pievienots. Vai vēlaties to lejupielādēt tagad?","manyChanges":"Pareizrakstības pārbaude pabeigta: %1 vārdi tika mainīti","noChanges":"Pareizrakstības pārbaude pabeigta: nekas netika labots","noMispell":"Pareizrakstības pārbaude pabeigta: kļūdas netika atrastas","noSuggestions":"- Nav ieteikumu -","notAvailable":"Atvainojiet, bet serviss šobrīd nav pieejams.","notInDic":"Netika atrasts vārdnīcā","oneChange":"Pareizrakstības pārbaude pabeigta: 1 vārds izmainīts","progress":"Notiek pareizrakstības pārbaude...","title":"Pārbaudīt gramatiku","toolbar":"Pareizrakstības pārbaude"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/mk.js b/wqflask/wqflask/static/packages/ckeditor/lang/mk.js
deleted file mode 100644
index 6cccf141..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/mk.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['mk']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"Општо","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","alignLeft":"Left","alignRight":"Right","alignCenter":"Center","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background color","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Center","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/mn.js b/wqflask/wqflask/static/packages/ckeditor/lang/mn.js
deleted file mode 100644
index f8d38706..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/mn.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['mn']={"editor":"Хэлбэрт бичвэр боловсруулагч","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Үйлчлэгч тооцоолуур (сервэр)-ийг үзэх","url":"цахим хуудасны хаяг (URL)","protocol":"Протокол","upload":"Илгээж ачаалах","uploadSubmit":"Үүнийг үйлчлэгч тооцоолуур (сервер) лүү илгээх","image":"Зураг","flash":"Флаш хөдөлгөөнтэй зураг","form":"Маягт","checkbox":"Тэмдэглээний нүд","radio":"Радио товчлуур","textField":"Бичвэрийн талбар","textarea":"Бичвэрийн зай","hiddenField":"Далд талбар","button":"Товчлуур","select":"Сонголтын талбар","imageButton":"Зургий товчуур","notSet":"<тохируулаагүй>","id":"Id (техникийн нэр)","name":"Нэр","langDir":"Хэлний чиглэл","langDirLtr":"Зүүнээс баруун (LTR)","langDirRtl":"Баруунаас зүүн (RTL)","langCode":"Хэлний код","longDescr":"Урт тайлбарын вэб хаяг","cssClass":"Хэлбэрийн хуудасны ангиуд","advisoryTitle":"Зөвлөх гарчиг","cssStyle":"Загвар","ok":"За","cancel":"Болих","close":"Хаах","preview":"Урьдчилан харах","resize":"Resize","generalTab":"Ерөнхий","advancedTab":"Гүнзгий","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Сонголт","target":"Бай","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Зүүн талаас баруун тийшээ (LTR)","langDirRTL":"Баруун талаас зүүн тийшээ (RTL)","styles":"Загвар","cssClasses":"Хэлбэрийн хуудасны ангиуд","width":"Өргөн","height":"Өндөр","align":"Эгнээ","alignLeft":"Зүүн","alignRight":"Баруун","alignCenter":"Төвд","alignJustify":"Тэгшлэх","alignTop":"Дээд талд","alignMiddle":"Дунд","alignBottom":"Доод талд","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Өндөр нь тоо байх ёстой.","invalidWidth":"Өргөн нь тоо байх ёстой.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Тод бүдүүн","italic":"Налуу","strike":"Дундуур нь зураастай болгох","subscript":"Суурь болгох","superscript":"Зэрэг болгох","underline":"Доогуур нь зураастай болгох"},"bidi":{"ltr":"Зүүнээс баруун тийш бичлэг","rtl":"Баруунаас зүүн тийш бичлэг"},"blockquote":{"toolbar":"Ишлэл хэсэг"},"clipboard":{"copy":"Хуулах","copyError":"Таны browser-ын хамгаалалтын тохиргоо editor-д автоматаар хуулах үйлдэлийг зөвшөөрөхгүй байна. (Ctrl/Cmd+C) товчны хослолыг ашиглана уу.","cut":"Хайчлах","cutError":"Таны browser-ын хамгаалалтын тохиргоо editor-д автоматаар хайчлах үйлдэлийг зөвшөөрөхгүй байна. (Ctrl/Cmd+X) товчны хослолыг ашиглана уу.","paste":"Буулгах","pasteArea":"Paste Area","pasteMsg":"(<strong>Ctrl/Cmd+V</strong>) товчийг ашиглан paste хийнэ үү. Мөн <strong>OK</strong> дар.","securityMsg":"Таны үзүүлэгч/browser/-н хамгаалалтын тохиргооноос болоод editor clipboard өгөгдөлрүү шууд хандах боломжгүй. Энэ цонход дахин paste хийхийг оролд.","title":"Буулгах"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Автоматаар","bgColorTitle":"Дэвсгэр өнгө","colors":{"000":"Хар","800000":"Хүрэн","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Саарал","F00":"Улаан","FF8C00":"Dark Orange","FFD700":"Алт","008000":"Ногоон","0FF":"Цэнхэр","00F":"Хөх","EE82EE":"Ягаан","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Улбар шар","FFFF00":"Шар","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Цайвар саарал","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"Цагаан"},"more":"Нэмэлт өнгөнүүд...","panelTitle":"Өнгөнүүд","textColorTitle":"Бичвэрийн өнгө"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Загварууд","emptyListMsg":"(Загвар тодорхойлогдоогүй байна)","insertOption":"Одоогийн агууллагыг дарж бичих","options":"Template Options","selectPromptMsg":"Загварыг нээж editor-рүү сонгож оруулна уу<br />(Одоогийн агууллагыг устаж магадгүй):","title":"Загварын агуулга"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Зөвлөлдөх гарчиг","cssClassInputLabel":"Stylesheet классууд","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Зүүн талаас баруун тишээ (LTR)","langDirLabel":"Хэлний чиглэл","langDirRTLLabel":"Баруун талаас зүүн тишээ (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Загвар","title":"Div гэдэг хэсэг бий болгох","toolbar":"Div гэдэг хэсэг бий болгох"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Холбоосууд","insert":"Оруулах","styles":"Загварууд","colors":"Онгөнүүд","tools":"Хэрэгслүүд"},"toolbars":"Болосруулагчийн хэрэгслийн самбар"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Хайх","findOptions":"Хайх сонголтууд","findWhat":"Хайх үг/үсэг:","matchCase":"Тэнцэх төлөв","matchCyclic":"Match cyclic","matchWord":"Тэнцэх бүтэн үг","notFoundMsg":"Хайсан бичвэрийг олсонгүй.","replace":"Орлуулах","replaceAll":"Бүгдийг нь солих","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Солих үг:","title":"Хайж орлуулах"},"fakeobjects":{"anchor":"Зангуу","flash":"Flash Animation","hiddenfield":"Нууц талбар","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Онцлогууд","accessNever":"Хэзээ ч үгүй","accessSameDomain":"Байнга","alignAbsBottom":"Abs доод талд","alignAbsMiddle":"Abs Дунд талд","alignBaseline":"Baseline","alignTextTop":"Текст дээр","bgcolor":"Дэвсгэр өнгө","chkFull":"Allow Fullscreen","chkLoop":"Давтах","chkMenu":"Флаш цэс идвэхжүүлэх","chkPlay":"Автоматаар тоглох","flashvars":"Variables for Flash","hSpace":"Хөндлөн зай","properties":"Флаш шинж чанар","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Өргөгтгөх","scaleAll":"Бүгдийг харуулах","scaleFit":"Яг тааруулах","scaleNoBorder":"Хүрээгүй","title":"Флаш шинж чанар","vSpace":"Босоо зай","validateHSpace":"HSpace must be a number.","validateSrc":"Линк URL-ээ төрөлжүүлнэ үү","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Хэмжээ","voiceLabel":"Үсгийн хэмжээ","panelTitle":"Үсгийн хэмжээ"},"label":"Үсгийн хэлбэр","panelTitle":"Үгсийн хэлбэрийн нэр","voiceLabel":"Үгсийн хэлбэр"},"forms":{"button":{"title":"Товчны шинж чанар","text":"Тэкст (Утга)","type":"Төрөл","typeBtn":"Товч","typeSbm":"Submit","typeRst":"Болих"},"checkboxAndRadio":{"checkboxTitle":"Чекбоксны шинж чанар","radioTitle":"Радио товчны шинж чанар","value":"Утга","selected":"Сонгогдсон"},"form":{"title":"Форм шинж чанар","menu":"Форм шинж чанар","action":"Үйлдэл","method":"Арга","encoding":"Encoding"},"hidden":{"title":"Нууц талбарын шинж чанар","name":"Нэр","value":"Утга"},"select":{"title":"Согогч талбарын шинж чанар","selectInfo":"Мэдээлэл","opAvail":"Идвэхтэй сонголт","value":"Утга","size":"Хэмжээ","lines":"Мөр","chkMulti":"Олон зүйл зэрэг сонгохыг зөвшөөрөх","opText":"Тэкст","opValue":"Утга","btnAdd":"Нэмэх","btnModify":"Өөрчлөх","btnUp":"Дээш","btnDown":"Доош","btnSetValue":"Сонгогдсан утга оноох","btnDelete":"Устгах"},"textarea":{"title":"Текст орчны шинж чанар","cols":"Багана","rows":"Мөр"},"textfield":{"title":"Текст талбарын шинж чанар","name":"Нэр","value":"Утга","charWidth":"Тэмдэгтын өргөн","maxChars":"Хамгийн их тэмдэгт","type":"Төрөл","typeText":"Текст","typePass":"Нууц үг","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"цахим хуудасны хаяг (URL)"}},"format":{"label":"Параргафын загвар","panelTitle":"Параргафын загвар","tag_address":"Хаяг","tag_div":"Paragraph (DIV)","tag_h1":"Гарчиг 1","tag_h2":"Гарчиг 2","tag_h3":"Гарчиг 3","tag_h4":"Гарчиг 4","tag_h5":"Гарчиг 5","tag_h6":"Гарчиг 6","tag_p":"Хэвийн","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Хөндлөн зураас оруулах"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Зурагны URL-ын төрлийн сонгоно уу","alt":"Зургийг орлох бичвэр","border":"Хүрээ","btnUpload":"Үүнийг сервэррүү илгээ","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"Хөндлөн зай","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Зурагны мэдээлэл","linkTab":"Холбоос","lockRatio":"Радио түгжих","menu":"Зураг","resetSize":"хэмжээ дахин оноох","title":"Зураг","titleButton":"Зурган товчны шинж чанар","upload":"Хуулах","urlMissing":"Зургийн эх сурвалжийн хаяг (URL) байхгүй байна.","vSpace":"Босоо зай","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Догол мөр хасах","outdent":"Догол мөр нэмэх"},"smiley":{"options":"Smiley Options","title":"Тодорхойлолт оруулах","toolbar":"Тодорхойлолт"},"justify":{"block":"Тэгшлэх","center":"Голлуулах","left":"Зүүн талд тулгах","right":"Баруун талд тулгах"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Холбох түлхүүр","advanced":"Нэмэлт","advisoryContentType":"Зөвлөлдөх төрлийн агуулга","advisoryTitle":"Зөвлөлдөх гарчиг","anchor":{"toolbar":"Зангуу","menu":"Зангууг болосруулах","title":"Зангуугийн шинж чанар","name":"Зангуугийн нэр","errorName":"Зангуугийн нэрийг оруулна уу","remove":"Зангууг устгах"},"anchorId":"Элемэнтйн Id нэрээр","anchorName":"Зангуугийн нэрээр","charset":"Тэмдэгт оноох нөөцөд холбогдсон","cssClasses":"Stylesheet классууд","emailAddress":"Э-шуудангийн хаяг","emailBody":"Зурвасны их бие","emailSubject":"Зурвасны гарчиг","id":"Id","info":"Холбоосын тухай мэдээлэл","langCode":"Хэлний код","langDir":"Хэлний чиглэл","langDirLTR":"Зүүнээс баруун (LTR)","langDirRTL":"Баруунаас зүүн (RTL)","menu":"Холбоос засварлах","name":"Нэр","noAnchors":"(Баримт бичиг зангуугүй байна)","noEmail":"Э-шуудангий хаягаа шивнэ үү","noUrl":"Холбоосны URL хаягийг шивнэ үү","other":"<other>","popupDependent":"Хамаатай (Netscape)","popupFeatures":"Popup цонхны онцлог","popupFullScreen":"Цонх дүүргэх (Internet Explorer)","popupLeft":"Зүүн байрлал","popupLocationBar":"Location хэсэг","popupMenuBar":"Цэсний самбар","popupResizable":"Resizable","popupScrollBars":"Скрол хэсэгүүд","popupStatusBar":"Статус хэсэг","popupToolbar":"Багажны самбар","popupTop":"Дээд байрлал","rel":"Relationship","selectAnchor":"Нэг зангууг сонгоно уу","styles":"Загвар","tabIndex":"Tab индекс","target":"Байрлал","targetFrame":"<Агуулах хүрээ>","targetFrameName":"Очих фремын нэр","targetPopup":"<popup цонх>","targetPopupName":"Popup цонхны нэр","title":"Холбоос","toAnchor":"Энэ бичвэр дэх зангуу руу очих холбоос","toEmail":"Э-захиа","toUrl":"цахим хуудасны хаяг (URL)","toolbar":"Холбоос","type":"Линкийн төрөл","unlink":"Холбоос авч хаях","upload":"Хуулах"},"list":{"bulletedlist":"Цэгтэй жагсаалт","numberedlist":"Дугаарлагдсан жагсаалт"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Төрөл","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Дэлгэц дүүргэх","minimize":"Цонхыг багсгаж харуулах"},"newpage":{"toolbar":"Шинэ хуудас"},"pagebreak":{"alt":"Page Break","toolbar":"Хуудас тусгаарлагч оруулах"},"pastetext":{"button":"Энгийн бичвэрээр буулгах","title":"Энгийн бичвэрээр буулгах"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Word-оос буулгах","toolbar":"Word-оос буулгах"},"preview":{"preview":"Уридчлан харах"},"print":{"toolbar":"Хэвлэх"},"removeformat":{"toolbar":"Параргафын загварыг авч хаях"},"save":{"toolbar":"Хадгалах"},"selectall":{"toolbar":"Бүгдийг нь сонгох"},"showblocks":{"toolbar":"Хавтангуудыг харуулах"},"sourcearea":{"toolbar":"Код"},"specialchar":{"options":"Special Character Options","title":"Онцгой тэмдэгт сонгох","toolbar":"Онцгой тэмдэгт оруулах"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Толь бичгүүд","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Хэлүүд","btn_options":"Сонголт","text_title":""},"stylescombo":{"label":"Загвар","panelTitle":"Загвар хэлбэржүүлэх","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Хүрээний хэмжээ","caption":"Тайлбар","cell":{"menu":"Нүх/зай","insertBefore":"Нүх/зай өмнө нь оруулах","insertAfter":"Нүх/зай дараа нь оруулах","deleteCell":"Нүх устгах","merge":"Нүх нэгтэх","mergeRight":"Баруун тийш нэгтгэх","mergeDown":"Доош нэгтгэх","splitHorizontal":"Нүх/зайг босоогоор нь тусгаарлах","splitVertical":"Нүх/зайг хөндлөнгөөр нь тусгаарлах","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Хэвтээд тэгшлэх арга","vAlign":"Босоод тэгшлэх арга","alignBaseline":"Baseline","bgColor":"Дэвсгэр өнгө","borderColor":"Хүрээний өнгө","data":"Data","header":"Header","yes":"Тийм","no":"Үгүй","invalidWidth":"Нүдний өргөн нь тоо байх ёстой.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Сонгох"},"cellPad":"Нүх доторлох(padding)","cellSpace":"Нүх хоорондын зай (spacing)","column":{"menu":"Багана","insertBefore":"Багана өмнө нь оруулах","insertAfter":"Багана дараа нь оруулах","deleteColumn":"Багана устгах"},"columns":"Багана","deleteTable":"Хүснэгт устгах","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Хүснэгтийн өргөн нь тоо байх ёстой.","menu":"Хүснэгт","row":{"menu":"Мөр","insertBefore":"Мөр өмнө нь оруулах","insertAfter":"Мөр дараа нь оруулах","deleteRow":"Мөр устгах"},"rows":"Мөр","summary":"Тайлбар","title":"Хүснэгт","toolbar":"Хүснэгт","widthPc":"хувь","widthPx":"цэг","widthUnit":"өргөний нэгж"},"undo":{"redo":"Өмнөх үйлдлээ сэргээх","undo":"Хүчингүй болгох"},"wsc":{"btnIgnore":"Зөвшөөрөх","btnIgnoreAll":"Бүгдийг зөвшөөрөх","btnReplace":"Солих","btnReplaceAll":"Бүгдийг Дарж бичих","btnUndo":"Буцаах","changeTo":"Өөрчлөх","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Дүрэм шалгагч суугаагүй байна. Татаж авахыг хүсч байна уу?","manyChanges":"Дүрэм шалгаад дууссан: %1 үг өөрчлөгдсөн","noChanges":"Дүрэм шалгаад дууссан: үг өөрчлөгдөөгүй","noMispell":"Дүрэм шалгаад дууссан: Алдаа олдсонгүй","noSuggestions":"- Тайлбаргүй -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Толь бичиггүй","oneChange":"Дүрэм шалгаад дууссан: 1 үг өөрчлөгдсөн","progress":"Дүрэм шалгаж байгаа үйл явц...","title":"Spell Check","toolbar":"Үгийн дүрэх шалгах"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ms.js b/wqflask/wqflask/static/packages/ckeditor/lang/ms.js
deleted file mode 100644
index 281a7b5d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ms.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ms']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protokol","upload":"Muat Naik","uploadSubmit":"Hantar ke Server","image":"Gambar","flash":"Flash","form":"Borang","checkbox":"Checkbox","radio":"Butang Radio","textField":"Text Field","textarea":"Textarea","hiddenField":"Field Tersembunyi","button":"Butang","select":"Field Pilihan","imageButton":"Butang Bergambar","notSet":"<tidak di set>","id":"Id","name":"Nama","langDir":"Arah Tulisan","langDirLtr":"Kiri ke Kanan (LTR)","langDirRtl":"Kanan ke Kiri (RTL)","langCode":"Kod Bahasa","longDescr":"Butiran Panjang URL","cssClass":"Kelas-kelas Stylesheet","advisoryTitle":"Tajuk Makluman","cssStyle":"Stail","ok":"OK","cancel":"Batal","close":"Close","preview":"Prebiu","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Sasaran","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Kiri ke Kanan (LTR)","langDirRTL":"Kanan ke Kiri (RTL)","styles":"Stail","cssClasses":"Kelas-kelas Stylesheet","width":"Lebar","height":"Tinggi","align":"Jajaran","alignLeft":"Kiri","alignRight":"Kanan","alignCenter":"Tengah","alignJustify":"Jajaran Blok","alignTop":"Atas","alignMiddle":"Pertengahan","alignBottom":"Bawah","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Salin","copyError":"Keselamatan perisian browser anda tidak membenarkan operasi salinan text/imej. Sila gunakan papan kekunci (Ctrl/Cmd+C).","cut":"Potong","cutError":"Keselamatan perisian browser anda tidak membenarkan operasi suntingan text/imej. Sila gunakan papan kekunci (Ctrl/Cmd+X).","paste":"Tampal","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Tampal"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Otomatik","bgColorTitle":"Warna Latarbelakang","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Warna lain-lain...","panelTitle":"Colors","textColorTitle":"Warna Text"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templat","emptyListMsg":"(Tiada Templat Disimpan)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Sila pilih templat untuk dibuka oleh editor<br>(kandungan sebenar akan hilang):","title":"Templat Kandungan"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Cari","findOptions":"Find Options","findWhat":"Perkataan yang dicari:","matchCase":"Padanan case huruf","matchCyclic":"Match cyclic","matchWord":"Padana Keseluruhan perkataan","notFoundMsg":"Text yang dicari tidak dijumpai.","replace":"Ganti","replaceAll":"Ganti semua","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Diganti dengan:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Bawah Mutlak","alignAbsMiddle":"Pertengahan Mutlak","alignBaseline":"Garis Dasar","alignTextTop":"Atas Text","bgcolor":"Warna Latarbelakang","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"Ruang Melintang","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"Ruang Menegak","validateHSpace":"HSpace must be a number.","validateSrc":"Sila taip sambungan URL","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Saiz","voiceLabel":"Font Size","panelTitle":"Saiz"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Ciri-ciri Butang","text":"Teks (Nilai)","type":"Jenis","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Ciri-ciri Checkbox","radioTitle":"Ciri-ciri Butang Radio","value":"Nilai","selected":"Dipilih"},"form":{"title":"Ciri-ciri Borang","menu":"Ciri-ciri Borang","action":"Tindakan borang","method":"Cara borang dihantar","encoding":"Encoding"},"hidden":{"title":"Ciri-ciri Field Tersembunyi","name":"Nama","value":"Nilai"},"select":{"title":"Ciri-ciri Selection Field","selectInfo":"Select Info","opAvail":"Pilihan sediada","value":"Nilai","size":"Saiz","lines":"garisan","chkMulti":"Benarkan pilihan pelbagai","opText":"Teks","opValue":"Nilai","btnAdd":"Tambah Pilihan","btnModify":"Ubah Pilihan","btnUp":"Naik ke atas","btnDown":"Turun ke bawah","btnSetValue":"Set sebagai nilai terpilih","btnDelete":"Padam"},"textarea":{"title":"Ciri-ciri Textarea","cols":"Lajur","rows":"Baris"},"textfield":{"title":"Ciri-ciri Text Field","name":"Nama","value":"Nilai","charWidth":"Lebar isian","maxChars":"Isian Maksimum","type":"Jenis","typeText":"Teks","typePass":"Kata Laluan","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Alamat","tag_div":"Perenggan (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Telah Diformat"},"horizontalrule":{"toolbar":"Masukkan Garisan Membujur"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Sila taip URL untuk fail gambar","alt":"Text Alternatif","border":"Border","btnUpload":"Hantar ke Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"Ruang Melintang","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Info Imej","linkTab":"Sambungan","lockRatio":"Tetapkan Nisbah","menu":"Ciri-ciri Imej","resetSize":"Saiz Set Semula","title":"Ciri-ciri Imej","titleButton":"Ciri-ciri Butang Bergambar","upload":"Muat Naik","urlMissing":"Image source URL is missing.","vSpace":"Ruang Menegak","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Tambahkan Inden","outdent":"Kurangkan Inden"},"smiley":{"options":"Smiley Options","title":"Masukkan Smiley","toolbar":"Smiley"},"justify":{"block":"Jajaran Blok","center":"Jajaran Tengah","left":"Jajaran Kiri","right":"Jajaran Kanan"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Kunci Akses","advanced":"Advanced","advisoryContentType":"Jenis Kandungan Makluman","advisoryTitle":"Tajuk Makluman","anchor":{"toolbar":"Masukkan/Sunting Pautan","menu":"Ciri-ciri Pautan","title":"Ciri-ciri Pautan","name":"Nama Pautan","errorName":"Sila taip nama pautan","remove":"Remove Anchor"},"anchorId":"dengan menggunakan ID elemen","anchorName":"dengan menggunakan nama pautan","charset":"Linked Resource Charset","cssClasses":"Kelas-kelas Stylesheet","emailAddress":"Alamat E-Mail","emailBody":"Isi Kandungan Mesej","emailSubject":"Subjek Mesej","id":"Id","info":"Butiran Sambungan","langCode":"Arah Tulisan","langDir":"Arah Tulisan","langDirLTR":"Kiri ke Kanan (LTR)","langDirRTL":"Kanan ke Kiri (RTL)","menu":"Sunting Sambungan","name":"Nama","noAnchors":"(Tiada pautan terdapat dalam dokumen ini)","noEmail":"Sila taip alamat e-mail","noUrl":"Sila taip sambungan URL","other":"<lain>","popupDependent":"Bergantungan (Netscape)","popupFeatures":"Ciri Tetingkap Popup","popupFullScreen":"Skrin Penuh (IE)","popupLeft":"Posisi Kiri","popupLocationBar":"Bar Lokasi","popupMenuBar":"Bar Menu","popupResizable":"Resizable","popupScrollBars":"Bar-bar skrol","popupStatusBar":"Bar Status","popupToolbar":"Toolbar","popupTop":"Posisi Atas","rel":"Relationship","selectAnchor":"Sila pilih pautan","styles":"Stail","tabIndex":"Indeks Tab ","target":"Sasaran","targetFrame":"<bingkai>","targetFrameName":"Nama Bingkai Sasaran","targetPopup":"<tetingkap popup>","targetPopupName":"Nama Tetingkap Popup","title":"Sambungan","toAnchor":"Pautan dalam muka surat ini","toEmail":"E-Mail","toUrl":"URL","toolbar":"Masukkan/Sunting Sambungan","type":"Jenis Sambungan","unlink":"Buang Sambungan","upload":"Muat Naik"},"list":{"bulletedlist":"Senarai tidak bernombor","numberedlist":"Senarai bernombor"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Helaian Baru"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Tampal sebagai text biasa","title":"Tampal sebagai text biasa"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Tampal dari Word","toolbar":"Tampal dari Word"},"preview":{"preview":"Prebiu"},"print":{"toolbar":"Cetak"},"removeformat":{"toolbar":"Buang Format"},"save":{"toolbar":"Simpan"},"selectall":{"toolbar":"Pilih Semua"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Sumber"},"specialchar":{"options":"Special Character Options","title":"Sila pilih huruf istimewa","toolbar":"Masukkan Huruf Istimewa"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stail","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Saiz Border","caption":"Keterangan","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Buangkan Sel-sel","merge":"Cantumkan Sel-sel","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Tambahan Ruang Sel","cellSpace":"Ruangan Antara Sel","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Buangkan Lajur"},"columns":"Jaluran","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Ciri-ciri Jadual","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Buangkan Baris"},"rows":"Barisan","summary":"Summary","title":"Ciri-ciri Jadual","toolbar":"Jadual","widthPc":"peratus","widthPx":"piksel-piksel","widthUnit":"width unit"},"undo":{"redo":"Ulangkan","undo":"Batalkan"},"wsc":{"btnIgnore":"Biar","btnIgnoreAll":"Biarkan semua","btnReplace":"Ganti","btnReplaceAll":"Gantikan Semua","btnUndo":"Batalkan","changeTo":"Tukarkan kepada","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Pemeriksa ejaan tidak dipasang. Adakah anda mahu muat turun sekarang?","manyChanges":"Pemeriksaan ejaan siap: %1 perkataan diubah","noChanges":"Pemeriksaan ejaan siap: Tiada perkataan diubah","noMispell":"Pemeriksaan ejaan siap: Tiada salah ejaan","noSuggestions":"- Tiada cadangan -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Tidak terdapat didalam kamus","oneChange":"Pemeriksaan ejaan siap: Satu perkataan telah diubah","progress":"Pemeriksaan ejaan sedang diproses...","title":"Spell Check","toolbar":"Semak Ejaan"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/nb.js b/wqflask/wqflask/static/packages/ckeditor/lang/nb.js
deleted file mode 100644
index 92e84398..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/nb.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['nb']={"editor":"Rikteksteditor","editorPanel":"Panel for rikteksteditor","common":{"editorHelp":"Trykk ALT 0 for hjelp","browseServer":"Bla gjennom tjener","url":"URL","protocol":"Protokoll","upload":"Last opp","uploadSubmit":"Send det til serveren","image":"Bilde","flash":"Flash","form":"Skjema","checkbox":"Avmerkingsboks","radio":"Alternativknapp","textField":"Tekstboks","textarea":"Tekstområde","hiddenField":"Skjult felt","button":"Knapp","select":"Rullegardinliste","imageButton":"Bildeknapp","notSet":"<ikke satt>","id":"Id","name":"Navn","langDir":"Språkretning","langDirLtr":"Venstre til høyre (VTH)","langDirRtl":"Høyre til venstre (HTV)","langCode":"Språkkode","longDescr":"Utvidet beskrivelse","cssClass":"Stilarkklasser","advisoryTitle":"Tittel","cssStyle":"Stil","ok":"OK","cancel":"Avbryt","close":"Lukk","preview":"Forhåndsvis","resize":"Dra for å skalere","generalTab":"Generelt","advancedTab":"Avansert","validateNumberFailed":"Denne verdien er ikke et tall.","confirmNewPage":"Alle ulagrede endringer som er gjort i dette innholdet vil gå tapt. Er du sikker på at du vil laste en ny side?","confirmCancel":"Du har endret noen alternativer. Er du sikker på at du vil lukke dialogvinduet?","options":"Valg","target":"Mål","targetNew":"Nytt vindu (_blank)","targetTop":"Hele vindu (_top)","targetSelf":"Samme vindu (_self)","targetParent":"Foreldrevindu (_parent)","langDirLTR":"Venstre til høyre (VTH)","langDirRTL":"Høyre til venstre (HTV)","styles":"Stil","cssClasses":"Stilarkklasser","width":"Bredde","height":"Høyde","align":"Juster","alignLeft":"Venstre","alignRight":"Høyre","alignCenter":"Midtjuster","alignJustify":"Blokkjuster","alignTop":"Topp","alignMiddle":"Midten","alignBottom":"Bunn","alignNone":"Ingen","invalidValue":"Ugyldig verdi.","invalidHeight":"Høyde må være et tall.","invalidWidth":"Bredde må være et tall.","invalidCssLength":"Den angitte verdien for feltet \"%1\" må være et positivt tall med eller uten en gyldig CSS-målingsenhet (px, %, in, cm, mm, em, ex, pt, eller pc).","invalidHtmlLength":"Den angitte verdien for feltet \"%1\" må være et positivt tall med eller uten en gyldig HTML-målingsenhet (px eller %).","invalidInlineStyle":"Verdi angitt for inline stil må bestå av en eller flere sett med formatet \"navn : verdi\", separert med semikolon","cssLengthTooltip":"Skriv inn et tall for en piksel-verdi eller et tall med en gyldig CSS-enhet (px, %, in, cm, mm, em, ex, pt, eller pc).","unavailable":"%1<span class=\"cke_accessibility\">, utilgjenglig</span>"},"about":{"copy":"Copyright &copy; $1. Alle rettigheter reservert.","dlgTitle":"Om CKEditor","help":"Se $1 for hjelp.","moreInfo":"For lisensieringsinformasjon, vennligst besøk vårt nettsted:","title":"Om CKEditor","userGuide":"CKEditors brukerveiledning"},"basicstyles":{"bold":"Fet","italic":"Kursiv","strike":"Gjennomstreking","subscript":"Senket skrift","superscript":"Hevet skrift","underline":"Understreking"},"bidi":{"ltr":"Tekstretning fra venstre til høyre","rtl":"Tekstretning fra høyre til venstre"},"blockquote":{"toolbar":"Blokksitat"},"clipboard":{"copy":"Kopier","copyError":"Din nettlesers sikkerhetsinstillinger tillater ikke automatisk kopiering av tekst. Vennligst bruk tastatursnarveien (Ctrl/Cmd+C).","cut":"Klipp ut","cutError":"Din nettlesers sikkerhetsinstillinger tillater ikke automatisk utklipping av tekst. Vennligst bruk tastatursnarveien (Ctrl/Cmd+X).","paste":"Lim inn","pasteArea":"Innlimingsområde","pasteMsg":"Vennligst lim inn i følgende boks med tastaturet (<strong>Ctrl/Cmd+V</strong>) og trykk <strong>OK</strong>.","securityMsg":"Din nettlesers sikkerhetsinstillinger gir ikke redigeringsverktøyet direkte tilgang til utklippstavlen. Du må derfor lime det inn på nytt i dette vinduet.","title":"Lim inn"},"button":{"selectedLabel":"%1 (Valgt)"},"colorbutton":{"auto":"Automatisk","bgColorTitle":"Bakgrunnsfarge","colors":{"000":"Svart","800000":"Rødbrun","8B4513":"Salbrun","2F4F4F":"Grønnsvart","008080":"Blågrønn","000080":"Marineblått","4B0082":"Indigo","696969":"Mørk grå","B22222":"Mørkerød","A52A2A":"Brun","DAA520":"Lys brun","006400":"Mørk grønn","40E0D0":"Turkis","0000CD":"Medium blå","800080":"Purpur","808080":"Grå","F00":"Rød","FF8C00":"Mørk oransje","FFD700":"Gull","008000":"Grønn","0FF":"Cyan","00F":"Blå","EE82EE":"Fiolett","A9A9A9":"Svak grå","FFA07A":"Rosa-oransje","FFA500":"Oransje","FFFF00":"Gul","00FF00":"Lime","AFEEEE":"Svak turkis","ADD8E6":"Lys Blå","DDA0DD":"Plomme","D3D3D3":"Lys grå","FFF0F5":"Svak lavendelrosa","FAEBD7":"Antikk-hvit","FFFFE0":"Lys gul","F0FFF0":"Honningmelon","F0FFFF":"Svakt asurblått","F0F8FF":"Svak cyan","E6E6FA":"Lavendel","FFF":"Hvit"},"more":"Flere farger...","panelTitle":"Farger","textColorTitle":"Tekstfarge"},"colordialog":{"clear":"Tøm","highlight":"Merk","options":"Alternativer for farge","selected":"Valgt","title":"Velg farge"},"templates":{"button":"Maler","emptyListMsg":"(Ingen maler definert)","insertOption":"Erstatt gjeldende innhold","options":"Alternativer for mal","selectPromptMsg":"Velg malen du vil åpne i redigeringsverktøyet:","title":"Innholdsmaler"},"contextmenu":{"options":"Alternativer for høyreklikkmeny"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Tittel","cssClassInputLabel":"Stilark-klasser","edit":"Rediger Div","inlineStyleInputLabel":"Inlinestiler","langDirLTRLabel":"Venstre til høyre (VTH)","langDirLabel":"Språkretning","langDirRTLLabel":"Høyre til venstre (HTV)","languageCodeInputLabel":" Språkkode","remove":"Fjern Div","styleSelectLabel":"Stil","title":"Sett inn Div Container","toolbar":"Sett inn Div Container"},"toolbar":{"toolbarCollapse":"Skjul verktøylinje","toolbarExpand":"Vis verktøylinje","toolbarGroups":{"document":"Dokument","clipboard":"Utklippstavle/Angre","editing":"Redigering","forms":"Skjema","basicstyles":"Basisstiler","paragraph":"Avsnitt","links":"Lenker","insert":"Innsetting","styles":"Stiler","colors":"Farger","tools":"Verktøy"},"toolbars":"Verktøylinjer for editor"},"elementspath":{"eleLabel":"Element-sti","eleTitle":"%1 element"},"find":{"find":"Søk","findOptions":"Søkealternativer","findWhat":"Søk etter:","matchCase":"Skill mellom store og små bokstaver","matchCyclic":"Søk i hele dokumentet","matchWord":"Bare hele ord","notFoundMsg":"Fant ikke søketeksten.","replace":"Erstatt","replaceAll":"Erstatt alle","replaceSuccessMsg":"%1 tilfelle(r) erstattet.","replaceWith":"Erstatt med:","title":"Søk og erstatt"},"fakeobjects":{"anchor":"Anker","flash":"Flash-animasjon","hiddenfield":"Skjult felt","iframe":"IFrame","unknown":"Ukjent objekt"},"flash":{"access":"Scripttilgang","accessAlways":"Alltid","accessNever":"Aldri","accessSameDomain":"Samme domene","alignAbsBottom":"Abs bunn","alignAbsMiddle":"Abs midten","alignBaseline":"Bunnlinje","alignTextTop":"Tekst topp","bgcolor":"Bakgrunnsfarge","chkFull":"Tillat fullskjerm","chkLoop":"Loop","chkMenu":"Slå på Flash-meny","chkPlay":"Autospill","flashvars":"Variabler for flash","hSpace":"HMarg","properties":"Egenskaper for Flash-objekt","propertiesTab":"Egenskaper","quality":"Kvalitet","qualityAutoHigh":"Auto høy","qualityAutoLow":"Auto lav","qualityBest":"Best","qualityHigh":"Høy","qualityLow":"Lav","qualityMedium":"Medium","scale":"Skaler","scaleAll":"Vis alt","scaleFit":"Skaler til å passe","scaleNoBorder":"Ingen ramme","title":"Flash-egenskaper","vSpace":"VMarg","validateHSpace":"HMarg må være et tall.","validateSrc":"Vennligst skriv inn lenkens url.","validateVSpace":"VMarg må være et tall.","windowMode":"Vindumodus","windowModeOpaque":"Opaque","windowModeTransparent":"Gjennomsiktig","windowModeWindow":"Vindu"},"font":{"fontSize":{"label":"Størrelse","voiceLabel":"Skriftstørrelse","panelTitle":"Skriftstørrelse"},"label":"Skrift","panelTitle":"Skrift","voiceLabel":"Font"},"forms":{"button":{"title":"Egenskaper for knapp","text":"Tekst (verdi)","type":"Type","typeBtn":"Knapp","typeSbm":"Send","typeRst":"Nullstill"},"checkboxAndRadio":{"checkboxTitle":"Egenskaper for avmerkingsboks","radioTitle":"Egenskaper for alternativknapp","value":"Verdi","selected":"Valgt"},"form":{"title":"Egenskaper for skjema","menu":"Egenskaper for skjema","action":"Handling","method":"Metode","encoding":"Encoding"},"hidden":{"title":"Egenskaper for skjult felt","name":"Navn","value":"Verdi"},"select":{"title":"Egenskaper for rullegardinliste","selectInfo":"Info","opAvail":"Tilgjenglige alternativer","value":"Verdi","size":"Størrelse","lines":"Linjer","chkMulti":"Tillat flervalg","opText":"Tekst","opValue":"Verdi","btnAdd":"Legg til","btnModify":"Endre","btnUp":"Opp","btnDown":"Ned","btnSetValue":"Sett som valgt","btnDelete":"Slett"},"textarea":{"title":"Egenskaper for tekstområde","cols":"Kolonner","rows":"Rader"},"textfield":{"title":"Egenskaper for tekstfelt","name":"Navn","value":"Verdi","charWidth":"Tegnbredde","maxChars":"Maks antall tegn","type":"Type","typeText":"Tekst","typePass":"Passord","typeEmail":"Epost","typeSearch":"Søk","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Avsnittsformat","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Overskrift 1","tag_h2":"Overskrift 2","tag_h3":"Overskrift 3","tag_h4":"Overskrift 4","tag_h5":"Overskrift 5","tag_h6":"Overskrift 6","tag_p":"Normal","tag_pre":"Formatert"},"horizontalrule":{"toolbar":"Sett inn horisontal linje"},"iframe":{"border":"Viss ramme rundt iframe","noUrl":"Vennligst skriv inn URL for iframe","scrolling":"Aktiver scrollefelt","title":"Egenskaper for IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Vennligst skriv bilde-urlen","alt":"Alternativ tekst","border":"Ramme","btnUpload":"Send det til serveren","button2Img":"Vil du endre den valgte bildeknappen til et vanlig bilde?","hSpace":"HMarg","img2Button":"Vil du endre det valgte bildet til en bildeknapp?","infoTab":"Bildeinformasjon","linkTab":"Lenke","lockRatio":"Lås forhold","menu":"Bildeegenskaper","resetSize":"Tilbakestill størrelse","title":"Bildeegenskaper","titleButton":"Egenskaper for bildeknapp","upload":"Last opp","urlMissing":"Bildets adresse mangler.","vSpace":"VMarg","validateBorder":"Ramme må være et heltall.","validateHSpace":"HMarg må være et heltall.","validateVSpace":"VMarg må være et heltall."},"indent":{"indent":"Øk innrykk","outdent":"Reduser innrykk"},"smiley":{"options":"Alternativer for smil","title":"Sett inn smil","toolbar":"Smil"},"justify":{"block":"Blokkjuster","center":"Midtstill","left":"Venstrejuster","right":"Høyrejuster"},"language":{"button":"Sett språk","remove":"Fjern språk"},"link":{"acccessKey":"Aksessknapp","advanced":"Avansert","advisoryContentType":"Type","advisoryTitle":"Tittel","anchor":{"toolbar":"Sett inn/Rediger anker","menu":"Egenskaper for anker","title":"Egenskaper for anker","name":"Ankernavn","errorName":"Vennligst skriv inn ankernavnet","remove":"Fjern anker"},"anchorId":"Element etter ID","anchorName":"Anker etter navn","charset":"Lenket tegnsett","cssClasses":"Stilarkklasser","emailAddress":"E-postadresse","emailBody":"Melding","emailSubject":"Meldingsemne","id":"Id","info":"Lenkeinfo","langCode":"Språkkode","langDir":"Språkretning","langDirLTR":"Venstre til høyre (VTH)","langDirRTL":"Høyre til venstre (HTV)","menu":"Rediger lenke","name":"Navn","noAnchors":"(Ingen anker i dokumentet)","noEmail":"Vennligst skriv inn e-postadressen","noUrl":"Vennligst skriv inn lenkens URL","other":"<annen>","popupDependent":"Avhenging (Netscape)","popupFeatures":"Egenskaper for popup-vindu","popupFullScreen":"Fullskjerm (IE)","popupLeft":"Venstre posisjon","popupLocationBar":"Adresselinje","popupMenuBar":"Menylinje","popupResizable":"Skalerbar","popupScrollBars":"Scrollbar","popupStatusBar":"Statuslinje","popupToolbar":"Verktøylinje","popupTop":"Topp-posisjon","rel":"Relasjon (rel)","selectAnchor":"Velg et anker","styles":"Stil","tabIndex":"Tabindeks","target":"Mål","targetFrame":"<ramme>","targetFrameName":"Målramme","targetPopup":"<popup-vindu>","targetPopupName":"Navn på popup-vindu","title":"Lenke","toAnchor":"Lenke til anker i teksten","toEmail":"E-post","toUrl":"URL","toolbar":"Sett inn/Rediger lenke","type":"Lenketype","unlink":"Fjern lenke","upload":"Last opp"},"list":{"bulletedlist":"Legg til/Fjern punktmerket liste","numberedlist":"Legg til/Fjern nummerert liste"},"liststyle":{"armenian":"Armensk nummerering","bulletedTitle":"Egenskaper for punktmerket liste","circle":"Sirkel","decimal":"Tall (1, 2, 3, osv.)","decimalLeadingZero":"Tall, med førstesiffer null (01, 02, 03, osv.)","disc":"Disk","georgian":"Georgisk nummerering (an, ban, gan, osv.)","lowerAlpha":"Alfabetisk, små (a, b, c, d, e, osv.)","lowerGreek":"Gresk, små (alpha, beta, gamma, osv.)","lowerRoman":"Romertall, små (i, ii, iii, iv, v, osv.)","none":"Ingen","notset":"<ikke satt>","numberedTitle":"Egenskaper for nummerert liste","square":"Firkant","start":"Start","type":"Type","upperAlpha":"Alfabetisk, store (A, B, C, D, E, osv.)","upperRoman":"Romertall, store (I, II, III, IV, V, osv.)","validateStartNumber":"Starten på listen må være et heltall."},"magicline":{"title":"Sett inn nytt avsnitt her"},"maximize":{"maximize":"Maksimer","minimize":"Minimer"},"newpage":{"toolbar":"Ny side"},"pagebreak":{"alt":"Sideskift","toolbar":"Sett inn sideskift for utskrift"},"pastetext":{"button":"Lim inn som ren tekst","title":"Lim inn som ren tekst"},"pastefromword":{"confirmCleanup":"Teksten du limer inn ser ut til å være kopiert fra Word. Vil du renske den før du limer den inn?","error":"Det var ikke mulig å renske den innlimte teksten på grunn av en intern feil","title":"Lim inn fra Word","toolbar":"Lim inn fra Word"},"preview":{"preview":"Forhåndsvis"},"print":{"toolbar":"Skriv ut"},"removeformat":{"toolbar":"Fjern formatering"},"save":{"toolbar":"Lagre"},"selectall":{"toolbar":"Merk alt"},"showblocks":{"toolbar":"Vis blokker"},"sourcearea":{"toolbar":"Kilde"},"specialchar":{"options":"Alternativer for spesialtegn","title":"Velg spesialtegn","toolbar":"Sett inn spesialtegn"},"scayt":{"btn_about":"Om SCAYT","btn_dictionaries":"Ordbøker","btn_disable":"Slå av SCAYT","btn_enable":"Slå på SCAYT","btn_langs":"Språk","btn_options":"Valg","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Stilformater","panelTitle1":"Blokkstiler","panelTitle2":"Inlinestiler","panelTitle3":"Objektstiler"},"table":{"border":"Rammestørrelse","caption":"Tittel","cell":{"menu":"Celle","insertBefore":"Sett inn celle før","insertAfter":"Sett inn celle etter","deleteCell":"Slett celler","merge":"Slå sammen celler","mergeRight":"Slå sammen høyre","mergeDown":"Slå sammen ned","splitHorizontal":"Del celle horisontalt","splitVertical":"Del celle vertikalt","title":"Celleegenskaper","cellType":"Celletype","rowSpan":"Radspenn","colSpan":"Kolonnespenn","wordWrap":"Tekstbrytning","hAlign":"Horisontal justering","vAlign":"Vertikal justering","alignBaseline":"Grunnlinje","bgColor":"Bakgrunnsfarge","borderColor":"Rammefarge","data":"Data","header":"Overskrift","yes":"Ja","no":"Nei","invalidWidth":"Cellebredde må være et tall.","invalidHeight":"Cellehøyde må være et tall.","invalidRowSpan":"Radspenn må være et heltall.","invalidColSpan":"Kolonnespenn må være et heltall.","chooseColor":"Velg"},"cellPad":"Cellepolstring","cellSpace":"Cellemarg","column":{"menu":"Kolonne","insertBefore":"Sett inn kolonne før","insertAfter":"Sett inn kolonne etter","deleteColumn":"Slett kolonner"},"columns":"Kolonner","deleteTable":"Slett tabell","headers":"Overskrifter","headersBoth":"Begge","headersColumn":"Første kolonne","headersNone":"Ingen","headersRow":"Første rad","invalidBorder":"Rammestørrelse må være et tall.","invalidCellPadding":"Cellepolstring må være et positivt tall.","invalidCellSpacing":"Cellemarg må være et positivt tall.","invalidCols":"Antall kolonner må være et tall større enn 0.","invalidHeight":"Tabellhøyde må være et tall.","invalidRows":"Antall rader må være et tall større enn 0.","invalidWidth":"Tabellbredde må være et tall.","menu":"Egenskaper for tabell","row":{"menu":"Rader","insertBefore":"Sett inn rad før","insertAfter":"Sett inn rad etter","deleteRow":"Slett rader"},"rows":"Rader","summary":"Sammendrag","title":"Egenskaper for tabell","toolbar":"Tabell","widthPc":"prosent","widthPx":"piksler","widthUnit":"Bredde-enhet"},"undo":{"redo":"Gjør om","undo":"Angre"},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer alle","btnReplace":"Erstatt","btnReplaceAll":"Erstatt alle","btnUndo":"Angre","changeTo":"Endre til","errorLoading":"Feil under lasting av applikasjonstjenestetjener: %s.","ieSpellDownload":"Stavekontroll er ikke installert. Vil du laste den ned nå?","manyChanges":"Stavekontroll fullført: %1 ord endret","noChanges":"Stavekontroll fullført: ingen ord endret","noMispell":"Stavekontroll fullført: ingen feilstavinger funnet","noSuggestions":"- Ingen forslag -","notAvailable":"Beklager, tjenesten er utilgjenglig nå.","notInDic":"Ikke i ordboken","oneChange":"Stavekontroll fullført: Ett ord endret","progress":"Stavekontroll pågår...","title":"Stavekontroll","toolbar":"Stavekontroll"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/nl.js b/wqflask/wqflask/static/packages/ckeditor/lang/nl.js
deleted file mode 100644
index 21947656..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/nl.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['nl']={"editor":"Tekstverwerker","editorPanel":"Tekstverwerker beheerpaneel","common":{"editorHelp":"Druk ALT 0 voor hulp","browseServer":"Bladeren op server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Naar server verzenden","image":"Afbeelding","flash":"Flash","form":"Formulier","checkbox":"Selectievinkje","radio":"Keuzerondje","textField":"Tekstveld","textarea":"Tekstvak","hiddenField":"Verborgen veld","button":"Knop","select":"Selectieveld","imageButton":"Afbeeldingsknop","notSet":"<niet ingevuld>","id":"Id","name":"Naam","langDir":"Schrijfrichting","langDirLtr":"Links naar rechts (LTR)","langDirRtl":"Rechts naar links (RTL)","langCode":"Taalcode","longDescr":"Lange URL-omschrijving","cssClass":"Stylesheet-klassen","advisoryTitle":"Adviserende titel","cssStyle":"Stijl","ok":"OK","cancel":"Annuleren","close":"Sluiten","preview":"Voorbeeld","resize":"Sleep om te herschalen","generalTab":"Algemeen","advancedTab":"Geavanceerd","validateNumberFailed":"Deze waarde is geen geldig getal.","confirmNewPage":"Alle aangebrachte wijzigingen gaan verloren. Weet u zeker dat u een nieuwe pagina wilt openen?","confirmCancel":"Enkele opties zijn gewijzigd. Weet u zeker dat u dit dialoogvenster wilt sluiten?","options":"Opties","target":"Doelvenster","targetNew":"Nieuw venster (_blank)","targetTop":"Hele venster (_top)","targetSelf":"Zelfde venster (_self)","targetParent":"Origineel venster (_parent)","langDirLTR":"Links naar rechts (LTR)","langDirRTL":"Rechts naar links (RTL)","styles":"Stijl","cssClasses":"Stylesheet-klassen","width":"Breedte","height":"Hoogte","align":"Uitlijning","alignLeft":"Links","alignRight":"Rechts","alignCenter":"Centreren","alignJustify":"Uitvullen","alignTop":"Boven","alignMiddle":"Midden","alignBottom":"Onder","alignNone":"Geen","invalidValue":"Ongeldige waarde.","invalidHeight":"De hoogte moet een getal zijn.","invalidWidth":"De breedte moet een getal zijn.","invalidCssLength":"Waarde in veld \"%1\" moet een positief nummer zijn, met of zonder een geldige CSS meeteenheid (px, %, in, cm, mm, em, ex, pt of pc).","invalidHtmlLength":"Waarde in veld \"%1\" moet een positief nummer zijn, met of zonder een geldige HTML meeteenheid (px of %).","invalidInlineStyle":"Waarde voor de online stijl moet bestaan uit een of meerdere tupels met het formaat \"naam : waarde\", gescheiden door puntkomma's.","cssLengthTooltip":"Geef een nummer in voor een waarde in pixels of geef een nummer in met een geldige CSS eenheid (px, %, in, cm, mm, em, ex, pt, of pc).","unavailable":"%1<span class=\"cke_accessibility\">, niet beschikbaar</span>"},"about":{"copy":"Copyright &copy; $1. Alle rechten voorbehouden.","dlgTitle":"Over CKEditor","help":"Bekijk de $1 voor hulp.","moreInfo":"Bezoek onze website voor licentieinformatie:","title":"Over CKEditor","userGuide":"CKEditor gebruiksaanwijzing"},"basicstyles":{"bold":"Vet","italic":"Cursief","strike":"Doorhalen","subscript":"Subscript","superscript":"Superscript","underline":"Onderstrepen"},"bidi":{"ltr":"Schrijfrichting van links naar rechts","rtl":"Schrijfrichting van rechts naar links"},"blockquote":{"toolbar":"Citaatblok"},"clipboard":{"copy":"Kopiëren","copyError":"De beveiligingsinstelling van de browser verhinderen het automatisch kopiëren. Gebruik de sneltoets Ctrl/Cmd+C van het toetsenbord.","cut":"Knippen","cutError":"De beveiligingsinstelling van de browser verhinderen het automatisch knippen. Gebruik de sneltoets Ctrl/Cmd+X van het toetsenbord.","paste":"Plakken","pasteArea":"Plakgebied","pasteMsg":"Plak de tekst in het volgende vak gebruikmakend van uw toetsenbord (<strong>Ctrl/Cmd+V</strong>) en klik op OK.","securityMsg":"Door de beveiligingsinstellingen van uw browser is het niet mogelijk om direct vanuit het klembord in de editor te plakken. Middels opnieuw plakken in dit venster kunt u de tekst alsnog plakken in de editor.","title":"Plakken"},"button":{"selectedLabel":"%1 (Geselecteerd)"},"colorbutton":{"auto":"Automatisch","bgColorTitle":"Achtergrondkleur","colors":{"000":"Zwart","800000":"Kastanjebruin","8B4513":"Chocoladebruin","2F4F4F":"Donkerleigrijs","008080":"Blauwgroen","000080":"Marine","4B0082":"Indigo","696969":"Donkergrijs","B22222":"Baksteen","A52A2A":"Bruin","DAA520":"Donkergeel","006400":"Donkergroen","40E0D0":"Turquoise","0000CD":"Middenblauw","800080":"Paars","808080":"Grijs","F00":"Rood","FF8C00":"Donkeroranje","FFD700":"Goud","008000":"Groen","0FF":"Cyaan","00F":"Blauw","EE82EE":"Violet","A9A9A9":"Donkergrijs","FFA07A":"Lichtzalm","FFA500":"Oranje","FFFF00":"Geel","00FF00":"Felgroen","AFEEEE":"Lichtturquoise","ADD8E6":"Lichtblauw","DDA0DD":"Pruim","D3D3D3":"Lichtgrijs","FFF0F5":"Linnen","FAEBD7":"Ivoor","FFFFE0":"Lichtgeel","F0FFF0":"Honingdauw","F0FFFF":"Azuur","F0F8FF":"Licht hemelsblauw","E6E6FA":"Lavendel","FFF":"Wit"},"more":"Meer kleuren...","panelTitle":"Kleuren","textColorTitle":"Tekstkleur"},"colordialog":{"clear":"Wissen","highlight":"Actief","options":"Kleuropties","selected":"Geselecteerde kleur","title":"Selecteer kleur"},"templates":{"button":"Sjablonen","emptyListMsg":"(Geen sjablonen gedefinieerd)","insertOption":"Vervang de huidige inhoud","options":"Template opties","selectPromptMsg":"Selecteer het sjabloon dat in de editor geopend moet worden (de actuele inhoud gaat verloren):","title":"Inhoud sjablonen"},"contextmenu":{"options":"Contextmenu opties"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Adviserende titel","cssClassInputLabel":"Stylesheet klassen","edit":"Div wijzigen","inlineStyleInputLabel":"Inline stijl","langDirLTRLabel":"Links naar rechts (LTR)","langDirLabel":"Schrijfrichting","langDirRTLLabel":"Rechts naar links (RTL)","languageCodeInputLabel":" Taalcode","remove":"Div verwijderen","styleSelectLabel":"Stijl","title":"Div aanmaken","toolbar":"Div aanmaken"},"toolbar":{"toolbarCollapse":"Werkbalk inklappen","toolbarExpand":"Werkbalk uitklappen","toolbarGroups":{"document":"Document","clipboard":"Klembord/Ongedaan maken","editing":"Bewerken","forms":"Formulieren","basicstyles":"Basisstijlen","paragraph":"Paragraaf","links":"Links","insert":"Invoegen","styles":"Stijlen","colors":"Kleuren","tools":"Toepassingen"},"toolbars":"Werkbalken"},"elementspath":{"eleLabel":"Elementenpad","eleTitle":"%1 element"},"find":{"find":"Zoeken","findOptions":"Zoekopties","findWhat":"Zoeken naar:","matchCase":"Hoofdlettergevoelig","matchCyclic":"Doorlopend zoeken","matchWord":"Hele woord moet voorkomen","notFoundMsg":"De opgegeven tekst is niet gevonden.","replace":"Vervangen","replaceAll":"Alles vervangen","replaceSuccessMsg":"%1 resultaten vervangen.","replaceWith":"Vervangen met:","title":"Zoeken en vervangen"},"fakeobjects":{"anchor":"Interne link","flash":"Flash animatie","hiddenfield":"Verborgen veld","iframe":"IFrame","unknown":"Onbekend object"},"flash":{"access":"Script toegang","accessAlways":"Altijd","accessNever":"Nooit","accessSameDomain":"Zelfde domeinnaam","alignAbsBottom":"Absoluut-onder","alignAbsMiddle":"Absoluut-midden","alignBaseline":"Basislijn","alignTextTop":"Boven tekst","bgcolor":"Achtergrondkleur","chkFull":"Schermvullend toestaan","chkLoop":"Herhalen","chkMenu":"Flashmenu's inschakelen","chkPlay":"Automatisch afspelen","flashvars":"Variabelen voor Flash","hSpace":"HSpace","properties":"Eigenschappen Flash","propertiesTab":"Eigenschappen","quality":"Kwaliteit","qualityAutoHigh":"Automatisch hoog","qualityAutoLow":"Automatisch laag","qualityBest":"Beste","qualityHigh":"Hoog","qualityLow":"Laag","qualityMedium":"Gemiddeld","scale":"Schaal","scaleAll":"Alles tonen","scaleFit":"Precies passend","scaleNoBorder":"Geen rand","title":"Eigenschappen Flash","vSpace":"VSpace","validateHSpace":"De HSpace moet een getal zijn.","validateSrc":"De URL mag niet leeg zijn.","validateVSpace":"De VSpace moet een getal zijn.","windowMode":"Venster modus","windowModeOpaque":"Ondoorzichtig","windowModeTransparent":"Doorzichtig","windowModeWindow":"Venster"},"font":{"fontSize":{"label":"Lettergrootte","voiceLabel":"Lettergrootte","panelTitle":"Lettergrootte"},"label":"Lettertype","panelTitle":"Lettertype","voiceLabel":"Lettertype"},"forms":{"button":{"title":"Eigenschappen knop","text":"Tekst (waarde)","type":"Soort","typeBtn":"Knop","typeSbm":"Versturen","typeRst":"Leegmaken"},"checkboxAndRadio":{"checkboxTitle":"Eigenschappen aanvinkvakje","radioTitle":"Eigenschappen selectievakje","value":"Waarde","selected":"Geselecteerd"},"form":{"title":"Eigenschappen formulier","menu":"Eigenschappen formulier","action":"Actie","method":"Methode","encoding":"Codering"},"hidden":{"title":"Eigenschappen verborgen veld","name":"Naam","value":"Waarde"},"select":{"title":"Eigenschappen selectieveld","selectInfo":"Informatie","opAvail":"Beschikbare opties","value":"Waarde","size":"Grootte","lines":"Regels","chkMulti":"Gecombineerde selecties toestaan","opText":"Tekst","opValue":"Waarde","btnAdd":"Toevoegen","btnModify":"Wijzigen","btnUp":"Omhoog","btnDown":"Omlaag","btnSetValue":"Als geselecteerde waarde instellen","btnDelete":"Verwijderen"},"textarea":{"title":"Eigenschappen tekstvak","cols":"Kolommen","rows":"Rijen"},"textfield":{"title":"Eigenschappen tekstveld","name":"Naam","value":"Waarde","charWidth":"Breedte (tekens)","maxChars":"Maximum aantal tekens","type":"Soort","typeText":"Tekst","typePass":"Wachtwoord","typeEmail":"E-mail","typeSearch":"Zoeken","typeTel":"Telefoonnummer","typeUrl":"URL"}},"format":{"label":"Opmaak","panelTitle":"Opmaak","tag_address":"Adres","tag_div":"Normaal (DIV)","tag_h1":"Kop 1","tag_h2":"Kop 2","tag_h3":"Kop 3","tag_h4":"Kop 4","tag_h5":"Kop 5","tag_h6":"Kop 6","tag_p":"Normaal","tag_pre":"Met opmaak"},"horizontalrule":{"toolbar":"Horizontale lijn invoegen"},"iframe":{"border":"Framerand tonen","noUrl":"Vul de IFrame URL in","scrolling":"Scrollbalken inschakelen","title":"IFrame-eigenschappen","toolbar":"IFrame"},"image":{"alertUrl":"Geef de URL van de afbeelding","alt":"Alternatieve tekst","border":"Rand","btnUpload":"Naar server verzenden","button2Img":"Wilt u de geselecteerde afbeeldingsknop vervangen door een eenvoudige afbeelding?","hSpace":"HSpace","img2Button":"Wilt u de geselecteerde afbeelding vervangen door een afbeeldingsknop?","infoTab":"Informatie afbeelding","linkTab":"Link","lockRatio":"Afmetingen vergrendelen","menu":"Eigenschappen afbeelding","resetSize":"Afmetingen resetten","title":"Eigenschappen afbeelding","titleButton":"Eigenschappen afbeeldingsknop","upload":"Upload","urlMissing":"De URL naar de afbeelding ontbreekt.","vSpace":"VSpace","validateBorder":"Rand moet een heel nummer zijn.","validateHSpace":"HSpace moet een heel nummer zijn.","validateVSpace":"VSpace moet een heel nummer zijn."},"indent":{"indent":"Inspringing vergroten","outdent":"Inspringing verkleinen"},"smiley":{"options":"Smiley opties","title":"Smiley invoegen","toolbar":"Smiley"},"justify":{"block":"Uitvullen","center":"Centreren","left":"Links uitlijnen","right":"Rechts uitlijnen"},"language":{"button":"Taal instellen","remove":"Taal verwijderen"},"link":{"acccessKey":"Toegangstoets","advanced":"Geavanceerd","advisoryContentType":"Aanbevolen content-type","advisoryTitle":"Adviserende titel","anchor":{"toolbar":"Interne link","menu":"Eigenschappen interne link","title":"Eigenschappen interne link","name":"Naam interne link","errorName":"Geef de naam van de interne link op","remove":"Interne link verwijderen"},"anchorId":"Op kenmerk interne link","anchorName":"Op naam interne link","charset":"Karakterset van gelinkte bron","cssClasses":"Stylesheet-klassen","emailAddress":"E-mailadres","emailBody":"Inhoud bericht","emailSubject":"Onderwerp bericht","id":"Id","info":"Linkomschrijving","langCode":"Taalcode","langDir":"Schrijfrichting","langDirLTR":"Links naar rechts (LTR)","langDirRTL":"Rechts naar links (RTL)","menu":"Link wijzigen","name":"Naam","noAnchors":"(Geen interne links in document gevonden)","noEmail":"Geef een e-mailadres","noUrl":"Geef de link van de URL","other":"<ander>","popupDependent":"Afhankelijk (Netscape)","popupFeatures":"Instellingen popupvenster","popupFullScreen":"Volledig scherm (IE)","popupLeft":"Positie links","popupLocationBar":"Locatiemenu","popupMenuBar":"Menubalk","popupResizable":"Herschaalbaar","popupScrollBars":"Schuifbalken","popupStatusBar":"Statusbalk","popupToolbar":"Werkbalk","popupTop":"Positie boven","rel":"Relatie","selectAnchor":"Kies een interne link","styles":"Stijl","tabIndex":"Tabvolgorde","target":"Doelvenster","targetFrame":"<frame>","targetFrameName":"Naam doelframe","targetPopup":"<popupvenster>","targetPopupName":"Naam popupvenster","title":"Link","toAnchor":"Interne link in pagina","toEmail":"E-mail","toUrl":"URL","toolbar":"Link invoegen/wijzigen","type":"Linktype","unlink":"Link verwijderen","upload":"Upload"},"list":{"bulletedlist":"Opsomming invoegen","numberedlist":"Genummerde lijst invoegen"},"liststyle":{"armenian":"Armeense nummering","bulletedTitle":"Eigenschappen lijst met opsommingstekens","circle":"Cirkel","decimal":"Cijfers (1, 2, 3, etc.)","decimalLeadingZero":"Cijfers beginnen met nul (01, 02, 03, etc.)","disc":"Schijf","georgian":"Georgische nummering (an, ban, gan, etc.)","lowerAlpha":"Kleine letters (a, b, c, d, e, etc.)","lowerGreek":"Grieks kleine letters (alpha, beta, gamma, etc.)","lowerRoman":"Romeins kleine letters (i, ii, iii, iv, v, etc.)","none":"Geen","notset":"<niet gezet>","numberedTitle":"Eigenschappen genummerde lijst","square":"Vierkant","start":"Start","type":"Type","upperAlpha":"Hoofdletters (A, B, C, D, E, etc.)","upperRoman":"Romeinse hoofdletters (I, II, III, IV, V, etc.)","validateStartNumber":"Startnummer van de lijst moet een heel nummer zijn."},"magicline":{"title":"Hier paragraaf invoeren"},"maximize":{"maximize":"Maximaliseren","minimize":"Minimaliseren"},"newpage":{"toolbar":"Nieuwe pagina"},"pagebreak":{"alt":"Pagina-einde","toolbar":"Pagina-einde invoegen"},"pastetext":{"button":"Plakken als platte tekst","title":"Plakken als platte tekst"},"pastefromword":{"confirmCleanup":"De tekst die u wilt plakken lijkt gekopieerd te zijn vanuit Word. Wilt u de tekst opschonen voordat deze geplakt wordt?","error":"Het was niet mogelijk om de geplakte tekst op te schonen door een interne fout","title":"Plakken vanuit Word","toolbar":"Plakken vanuit Word"},"preview":{"preview":"Voorbeeld"},"print":{"toolbar":"Afdrukken"},"removeformat":{"toolbar":"Opmaak verwijderen"},"save":{"toolbar":"Opslaan"},"selectall":{"toolbar":"Alles selecteren"},"showblocks":{"toolbar":"Toon blokken"},"sourcearea":{"toolbar":"Broncode"},"specialchar":{"options":"Speciale tekens opties","title":"Selecteer speciaal teken","toolbar":"Speciaal teken invoegen"},"scayt":{"btn_about":"Over SCAYT","btn_dictionaries":"Woordenboeken","btn_disable":"SCAYT uitschakelen","btn_enable":"SCAYT inschakelen","btn_langs":"Talen","btn_options":"Opties","text_title":""},"stylescombo":{"label":"Stijl","panelTitle":"Opmaakstijlen","panelTitle1":"Blok stijlen","panelTitle2":"Inline stijlen","panelTitle3":"Object stijlen"},"table":{"border":"Randdikte","caption":"Onderschrift","cell":{"menu":"Cel","insertBefore":"Voeg cel in voor","insertAfter":"Voeg cel in na","deleteCell":"Cellen verwijderen","merge":"Cellen samenvoegen","mergeRight":"Voeg samen naar rechts","mergeDown":"Voeg samen naar beneden","splitHorizontal":"Splits cel horizontaal","splitVertical":"Splits cel vertikaal","title":"Celeigenschappen","cellType":"Celtype","rowSpan":"Rijen samenvoegen","colSpan":"Kolommen samenvoegen","wordWrap":"Automatische terugloop","hAlign":"Horizontale uitlijning","vAlign":"Verticale uitlijning","alignBaseline":"Tekstregel","bgColor":"Achtergrondkleur","borderColor":"Randkleur","data":"Gegevens","header":"Kop","yes":"Ja","no":"Nee","invalidWidth":"De celbreedte moet een getal zijn.","invalidHeight":"De celhoogte moet een getal zijn.","invalidRowSpan":"Rijen samenvoegen moet een heel getal zijn.","invalidColSpan":"Kolommen samenvoegen moet een heel getal zijn.","chooseColor":"Kies"},"cellPad":"Celopvulling","cellSpace":"Celafstand","column":{"menu":"Kolom","insertBefore":"Voeg kolom in voor","insertAfter":"Voeg kolom in na","deleteColumn":"Kolommen verwijderen"},"columns":"Kolommen","deleteTable":"Tabel verwijderen","headers":"Koppen","headersBoth":"Beide","headersColumn":"Eerste kolom","headersNone":"Geen","headersRow":"Eerste rij","invalidBorder":"De randdikte moet een getal zijn.","invalidCellPadding":"Celopvulling moet een getal zijn.","invalidCellSpacing":"Celafstand moet een getal zijn.","invalidCols":"Het aantal kolommen moet een getal zijn groter dan 0.","invalidHeight":"De tabelhoogte moet een getal zijn.","invalidRows":"Het aantal rijen moet een getal zijn groter dan 0.","invalidWidth":"De tabelbreedte moet een getal zijn.","menu":"Tabeleigenschappen","row":{"menu":"Rij","insertBefore":"Voeg rij in voor","insertAfter":"Voeg rij in na","deleteRow":"Rijen verwijderen"},"rows":"Rijen","summary":"Samenvatting","title":"Tabeleigenschappen","toolbar":"Tabel","widthPc":"procent","widthPx":"pixels","widthUnit":"eenheid breedte"},"undo":{"redo":"Opnieuw uitvoeren","undo":"Ongedaan maken"},"wsc":{"btnIgnore":"Negeren","btnIgnoreAll":"Alles negeren","btnReplace":"Vervangen","btnReplaceAll":"Alles vervangen","btnUndo":"Ongedaan maken","changeTo":"Wijzig in","errorLoading":"Er is een fout opgetreden bij het laden van de dienst: %s.","ieSpellDownload":"De spellingscontrole is niet geïnstalleerd. Wilt u deze nu downloaden?","manyChanges":"Klaar met spellingscontrole: %1 woorden aangepast","noChanges":"Klaar met spellingscontrole: geen woorden aangepast","noMispell":"Klaar met spellingscontrole: geen fouten gevonden","noSuggestions":"- Geen suggesties -","notAvailable":"Excuses, deze dienst is momenteel niet beschikbaar.","notInDic":"Niet in het woordenboek","oneChange":"Klaar met spellingscontrole: één woord aangepast","progress":"Bezig met spellingscontrole...","title":"Spellingscontrole","toolbar":"Spellingscontrole"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/no.js b/wqflask/wqflask/static/packages/ckeditor/lang/no.js
deleted file mode 100644
index b4e02d76..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/no.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['no']={"editor":"Rikteksteditor","editorPanel":"Panel for rikteksteditor","common":{"editorHelp":"Trykk ALT 0 for hjelp","browseServer":"Bla igjennom server","url":"URL","protocol":"Protokoll","upload":"Last opp","uploadSubmit":"Send det til serveren","image":"Bilde","flash":"Flash","form":"Skjema","checkbox":"Avmerkingsboks","radio":"Alternativknapp","textField":"Tekstboks","textarea":"Tekstområde","hiddenField":"Skjult felt","button":"Knapp","select":"Rullegardinliste","imageButton":"Bildeknapp","notSet":"<ikke satt>","id":"Id","name":"Navn","langDir":"Språkretning","langDirLtr":"Venstre til høyre (VTH)","langDirRtl":"Høyre til venstre (HTV)","langCode":"Språkkode","longDescr":"Utvidet beskrivelse","cssClass":"Stilarkklasser","advisoryTitle":"Tittel","cssStyle":"Stil","ok":"OK","cancel":"Avbryt","close":"Lukk","preview":"Forhåndsvis","resize":"Dra for å skalere","generalTab":"Generelt","advancedTab":"Avansert","validateNumberFailed":"Denne verdien er ikke et tall.","confirmNewPage":"Alle ulagrede endringer som er gjort i dette innholdet vil bli tapt. Er du sikker på at du vil laste en ny side?","confirmCancel":"Noen av valgene har blitt endret. Er du sikker på at du vil lukke dialogen?","options":"Valg","target":"Mål","targetNew":"Nytt vindu (_blank)","targetTop":"Hele vindu (_top)","targetSelf":"Samme vindu (_self)","targetParent":"Foreldrevindu (_parent)","langDirLTR":"Venstre til høyre (VTH)","langDirRTL":"Høyre til venstre (HTV)","styles":"Stil","cssClasses":"Stilarkklasser","width":"Bredde","height":"Høyde","align":"Juster","alignLeft":"Venstre","alignRight":"Høyre","alignCenter":"Midtjuster","alignJustify":"Blokkjuster","alignTop":"Topp","alignMiddle":"Midten","alignBottom":"Bunn","alignNone":"Ingen","invalidValue":"Ugyldig verdi.","invalidHeight":"Høyde må være et tall.","invalidWidth":"Bredde må være et tall.","invalidCssLength":"Den angitte verdien for feltet \"%1\" må være et positivt tall med eller uten en gyldig CSS-målingsenhet (px, %, in, cm, mm, em, ex, pt, eller pc).","invalidHtmlLength":"Den angitte verdien for feltet \"%1\" må være et positivt tall med eller uten en gyldig HTML-målingsenhet (px eller %).","invalidInlineStyle":"Verdi angitt for inline stil må bestå av en eller flere sett med formatet \"navn : verdi\", separert med semikolon","cssLengthTooltip":"Skriv inn et tall for en piksel-verdi eller et tall med en gyldig CSS-enhet (px, %, in, cm, mm, em, ex, pt, eller pc).","unavailable":"%1<span class=\"cke_accessibility\">, utilgjenglig</span>"},"about":{"copy":"Copyright &copy; $1. Alle rettigheter reservert.","dlgTitle":"Om CKEditor","help":"Se $1 for hjelp.","moreInfo":"For lisensieringsinformasjon, vennligst besøk vårt nettsted:","title":"Om CKEditor","userGuide":"CKEditors brukerveiledning"},"basicstyles":{"bold":"Fet","italic":"Kursiv","strike":"Gjennomstreking","subscript":"Senket skrift","superscript":"Hevet skrift","underline":"Understreking"},"bidi":{"ltr":"Tekstretning fra venstre til høyre","rtl":"Tekstretning fra høyre til venstre"},"blockquote":{"toolbar":"Blokksitat"},"clipboard":{"copy":"Kopier","copyError":"Din nettlesers sikkerhetsinstillinger tillater ikke automatisk kopiering av tekst. Vennligst bruk snarveien (Ctrl/Cmd+C).","cut":"Klipp ut","cutError":"Din nettlesers sikkerhetsinstillinger tillater ikke automatisk utklipping av tekst. Vennligst bruk snarveien (Ctrl/Cmd+X).","paste":"Lim inn","pasteArea":"Innlimingsområde","pasteMsg":"Vennligst lim inn i følgende boks med tastaturet (<STRONG>Ctrl/Cmd+V</STRONG>) og trykk <STRONG>OK</STRONG>.","securityMsg":"Din nettlesers sikkerhetsinstillinger gir ikke redigeringsverktøyet direkte tilgang til utklippstavlen. Du må derfor lime det inn på nytt i dette vinduet.","title":"Lim inn"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatisk","bgColorTitle":"Bakgrunnsfarge","colors":{"000":"Svart","800000":"Rødbrun","8B4513":"Salbrun","2F4F4F":"Grønnsvart","008080":"Blågrønn","000080":"Marineblått","4B0082":"Indigo","696969":"Mørk grå","B22222":"Mørkerød","A52A2A":"Brun","DAA520":"Lys brun","006400":"Mørk grønn","40E0D0":"Turkis","0000CD":"Medium blå","800080":"Purpur","808080":"Grå","F00":"Rød","FF8C00":"Mørk oransje","FFD700":"Gull","008000":"Grønn","0FF":"Cyan","00F":"Blå","EE82EE":"Fiolett","A9A9A9":"Svak grå","FFA07A":"Rosa-oransje","FFA500":"Oransje","FFFF00":"Gul","00FF00":"Lime","AFEEEE":"Svak turkis","ADD8E6":"Lys Blå","DDA0DD":"Plomme","D3D3D3":"Lys grå","FFF0F5":"Svak lavendelrosa","FAEBD7":"Antikk-hvit","FFFFE0":"Lys gul","F0FFF0":"Honningmelon","F0FFFF":"Svakt asurblått","F0F8FF":"Svak cyan","E6E6FA":"Lavendel","FFF":"Hvit"},"more":"Flere farger...","panelTitle":"Farger","textColorTitle":"Tekstfarge"},"colordialog":{"clear":"Tøm","highlight":"Merk","options":"Alternativer for farge","selected":"Valgt","title":"Velg farge"},"templates":{"button":"Maler","emptyListMsg":"(Ingen maler definert)","insertOption":"Erstatt gjeldende innhold","options":"Alternativer for mal","selectPromptMsg":"Velg malen du vil åpne i redigeringsverktøyet:","title":"Innholdsmaler"},"contextmenu":{"options":"Alternativer for høyreklikkmeny"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Tittel","cssClassInputLabel":"Stilark-klasser","edit":"Rediger Div","inlineStyleInputLabel":"Inlinestiler","langDirLTRLabel":"Venstre til høyre (VTH)","langDirLabel":"Språkretning","langDirRTLLabel":"Høyre til venstre (HTV)","languageCodeInputLabel":" Språkkode","remove":"Fjern Div","styleSelectLabel":"Stil","title":"Sett inn Div Container","toolbar":"Sett inn Div Container"},"toolbar":{"toolbarCollapse":"Skjul verktøylinje","toolbarExpand":"Vis verktøylinje","toolbarGroups":{"document":"Dokument","clipboard":"Utklippstavle/Angre","editing":"Redigering","forms":"Skjema","basicstyles":"Basisstiler","paragraph":"Avsnitt","links":"Lenker","insert":"Innsetting","styles":"Stiler","colors":"Farger","tools":"Verktøy"},"toolbars":"Verktøylinjer for editor"},"elementspath":{"eleLabel":"Element-sti","eleTitle":"%1 element"},"find":{"find":"Søk","findOptions":"Søkealternativer","findWhat":"Søk etter:","matchCase":"Skill mellom store og små bokstaver","matchCyclic":"Søk i hele dokumentet","matchWord":"Bare hele ord","notFoundMsg":"Fant ikke søketeksten.","replace":"Erstatt","replaceAll":"Erstatt alle","replaceSuccessMsg":"%1 tilfelle(r) erstattet.","replaceWith":"Erstatt med:","title":"Søk og erstatt"},"fakeobjects":{"anchor":"Anker","flash":"Flash-animasjon","hiddenfield":"Skjult felt","iframe":"IFrame","unknown":"Ukjent objekt"},"flash":{"access":"Scripttilgang","accessAlways":"Alltid","accessNever":"Aldri","accessSameDomain":"Samme domene","alignAbsBottom":"Abs bunn","alignAbsMiddle":"Abs midten","alignBaseline":"Bunnlinje","alignTextTop":"Tekst topp","bgcolor":"Bakgrunnsfarge","chkFull":"Tillat fullskjerm","chkLoop":"Loop","chkMenu":"Slå på Flash-meny","chkPlay":"Autospill","flashvars":"Variabler for flash","hSpace":"HMarg","properties":"Egenskaper for Flash-objekt","propertiesTab":"Egenskaper","quality":"Kvalitet","qualityAutoHigh":"Auto høy","qualityAutoLow":"Auto lav","qualityBest":"Best","qualityHigh":"Høy","qualityLow":"Lav","qualityMedium":"Medium","scale":"Skaler","scaleAll":"Vis alt","scaleFit":"Skaler til å passe","scaleNoBorder":"Ingen ramme","title":"Flash-egenskaper","vSpace":"VMarg","validateHSpace":"HMarg må være et tall.","validateSrc":"Vennligst skriv inn lenkens url.","validateVSpace":"VMarg må være et tall.","windowMode":"Vindumodus","windowModeOpaque":"Opaque","windowModeTransparent":"Gjennomsiktig","windowModeWindow":"Vindu"},"font":{"fontSize":{"label":"Størrelse","voiceLabel":"Font Størrelse","panelTitle":"Størrelse"},"label":"Skrift","panelTitle":"Skrift","voiceLabel":"Font"},"forms":{"button":{"title":"Egenskaper for knapp","text":"Tekst (verdi)","type":"Type","typeBtn":"Knapp","typeSbm":"Send","typeRst":"Nullstill"},"checkboxAndRadio":{"checkboxTitle":"Egenskaper for avmerkingsboks","radioTitle":"Egenskaper for alternativknapp","value":"Verdi","selected":"Valgt"},"form":{"title":"Egenskaper for skjema","menu":"Egenskaper for skjema","action":"Handling","method":"Metode","encoding":"Encoding"},"hidden":{"title":"Egenskaper for skjult felt","name":"Navn","value":"Verdi"},"select":{"title":"Egenskaper for rullegardinliste","selectInfo":"Info","opAvail":"Tilgjenglige alternativer","value":"Verdi","size":"Størrelse","lines":"Linjer","chkMulti":"Tillat flervalg","opText":"Tekst","opValue":"Verdi","btnAdd":"Legg til","btnModify":"Endre","btnUp":"Opp","btnDown":"Ned","btnSetValue":"Sett som valgt","btnDelete":"Slett"},"textarea":{"title":"Egenskaper for tekstområde","cols":"Kolonner","rows":"Rader"},"textfield":{"title":"Egenskaper for tekstfelt","name":"Navn","value":"Verdi","charWidth":"Tegnbredde","maxChars":"Maks antall tegn","type":"Type","typeText":"Tekst","typePass":"Passord","typeEmail":"Epost","typeSearch":"Søk","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Avsnittsformat","tag_address":"Adresse","tag_div":"Normal (DIV)","tag_h1":"Overskrift 1","tag_h2":"Overskrift 2","tag_h3":"Overskrift 3","tag_h4":"Overskrift 4","tag_h5":"Overskrift 5","tag_h6":"Overskrift 6","tag_p":"Normal","tag_pre":"Formatert"},"horizontalrule":{"toolbar":"Sett inn horisontal linje"},"iframe":{"border":"Viss ramme rundt iframe","noUrl":"Vennligst skriv inn URL for iframe","scrolling":"Aktiver scrollefelt","title":"Egenskaper for IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Vennligst skriv bilde-urlen","alt":"Alternativ tekst","border":"Ramme","btnUpload":"Send det til serveren","button2Img":"Vil du endre den valgte bildeknappen til et vanlig bilde?","hSpace":"HMarg","img2Button":"Vil du endre det valgte bildet til en bildeknapp?","infoTab":"Bildeinformasjon","linkTab":"Lenke","lockRatio":"Lås forhold","menu":"Bildeegenskaper","resetSize":"Tilbakestill størrelse","title":"Bildeegenskaper","titleButton":"Egenskaper for bildeknapp","upload":"Last opp","urlMissing":"Bildets adresse mangler.","vSpace":"VMarg","validateBorder":"Ramme må være et heltall.","validateHSpace":"HMarg må være et heltall.","validateVSpace":"VMarg må være et heltall."},"indent":{"indent":"Øk innrykk","outdent":"Reduser innrykk"},"smiley":{"options":"Alternativer for smil","title":"Sett inn smil","toolbar":"Smil"},"justify":{"block":"Blokkjuster","center":"Midtstill","left":"Venstrejuster","right":"Høyrejuster"},"language":{"button":"Sett språk","remove":"Fjern språk"},"link":{"acccessKey":"Aksessknapp","advanced":"Avansert","advisoryContentType":"Type","advisoryTitle":"Tittel","anchor":{"toolbar":"Sett inn/Rediger anker","menu":"Egenskaper for anker","title":"Egenskaper for anker","name":"Ankernavn","errorName":"Vennligst skriv inn ankernavnet","remove":"Fjern anker"},"anchorId":"Element etter ID","anchorName":"Anker etter navn","charset":"Lenket tegnsett","cssClasses":"Stilarkklasser","emailAddress":"E-postadresse","emailBody":"Melding","emailSubject":"Meldingsemne","id":"Id","info":"Lenkeinfo","langCode":"Språkkode","langDir":"Språkretning","langDirLTR":"Venstre til høyre (VTH)","langDirRTL":"Høyre til venstre (HTV)","menu":"Rediger lenke","name":"Navn","noAnchors":"(Ingen anker i dokumentet)","noEmail":"Vennligst skriv inn e-postadressen","noUrl":"Vennligst skriv inn lenkens URL","other":"<annen>","popupDependent":"Avhenging (Netscape)","popupFeatures":"Egenskaper for popup-vindu","popupFullScreen":"Fullskjerm (IE)","popupLeft":"Venstre posisjon","popupLocationBar":"Adresselinje","popupMenuBar":"Menylinje","popupResizable":"Skalerbar","popupScrollBars":"Scrollbar","popupStatusBar":"Statuslinje","popupToolbar":"Verktøylinje","popupTop":"Topp-posisjon","rel":"Relasjon (rel)","selectAnchor":"Velg et anker","styles":"Stil","tabIndex":"Tabindeks","target":"Mål","targetFrame":"<ramme>","targetFrameName":"Målramme","targetPopup":"<popup-vindu>","targetPopupName":"Navn på popup-vindu","title":"Lenke","toAnchor":"Lenke til anker i teksten","toEmail":"E-post","toUrl":"URL","toolbar":"Sett inn/Rediger lenke","type":"Lenketype","unlink":"Fjern lenke","upload":"Last opp"},"list":{"bulletedlist":"Legg til/Fjern punktmerket liste","numberedlist":"Legg til/Fjern nummerert liste"},"liststyle":{"armenian":"Armensk nummerering","bulletedTitle":"Egenskaper for punktmerket liste","circle":"Sirkel","decimal":"Tall (1, 2, 3, osv.)","decimalLeadingZero":"Tall, med førstesiffer null (01, 02, 03, osv.)","disc":"Disk","georgian":"Georgisk nummerering (an, ban, gan, osv.)","lowerAlpha":"Alfabetisk, små (a, b, c, d, e, osv.)","lowerGreek":"Gresk, små (alpha, beta, gamma, osv.)","lowerRoman":"Romertall, små (i, ii, iii, iv, v, osv.)","none":"Ingen","notset":"<ikke satt>","numberedTitle":"Egenskaper for nummerert liste","square":"Firkant","start":"Start","type":"Type","upperAlpha":"Alfabetisk, store (A, B, C, D, E, osv.)","upperRoman":"Romertall, store (I, II, III, IV, V, osv.)","validateStartNumber":"Starten på listen må være et heltall."},"magicline":{"title":"Sett inn nytt avsnitt her"},"maximize":{"maximize":"Maksimer","minimize":"Minimer"},"newpage":{"toolbar":"Ny side"},"pagebreak":{"alt":"Sideskift","toolbar":"Sett inn sideskift for utskrift"},"pastetext":{"button":"Lim inn som ren tekst","title":"Lim inn som ren tekst"},"pastefromword":{"confirmCleanup":"Teksten du limer inn ser ut til å være kopiert fra Word. Vil du renske den før du limer den inn?","error":"Det var ikke mulig å renske den innlimte teksten på grunn av en intern feil","title":"Lim inn fra Word","toolbar":"Lim inn fra Word"},"preview":{"preview":"Forhåndsvis"},"print":{"toolbar":"Skriv ut"},"removeformat":{"toolbar":"Fjern formatering"},"save":{"toolbar":"Lagre"},"selectall":{"toolbar":"Merk alt"},"showblocks":{"toolbar":"Vis blokker"},"sourcearea":{"toolbar":"Kilde"},"specialchar":{"options":"Alternativer for spesialtegn","title":"Velg spesialtegn","toolbar":"Sett inn spesialtegn"},"scayt":{"btn_about":"Om SCAYT","btn_dictionaries":"Ordbøker","btn_disable":"Slå av SCAYT","btn_enable":"Slå på SCAYT","btn_langs":"Språk","btn_options":"Valg","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Stilformater","panelTitle1":"Blokkstiler","panelTitle2":"Inlinestiler","panelTitle3":"Objektstiler"},"table":{"border":"Rammestørrelse","caption":"Tittel","cell":{"menu":"Celle","insertBefore":"Sett inn celle før","insertAfter":"Sett inn celle etter","deleteCell":"Slett celler","merge":"Slå sammen celler","mergeRight":"Slå sammen høyre","mergeDown":"Slå sammen ned","splitHorizontal":"Del celle horisontalt","splitVertical":"Del celle vertikalt","title":"Celleegenskaper","cellType":"Celletype","rowSpan":"Radspenn","colSpan":"Kolonnespenn","wordWrap":"Tekstbrytning","hAlign":"Horisontal justering","vAlign":"Vertikal justering","alignBaseline":"Grunnlinje","bgColor":"Bakgrunnsfarge","borderColor":"Rammefarge","data":"Data","header":"Overskrift","yes":"Ja","no":"Nei","invalidWidth":"Cellebredde må være et tall.","invalidHeight":"Cellehøyde må være et tall.","invalidRowSpan":"Radspenn må være et heltall.","invalidColSpan":"Kolonnespenn må være et heltall.","chooseColor":"Velg"},"cellPad":"Cellepolstring","cellSpace":"Cellemarg","column":{"menu":"Kolonne","insertBefore":"Sett inn kolonne før","insertAfter":"Sett inn kolonne etter","deleteColumn":"Slett kolonner"},"columns":"Kolonner","deleteTable":"Slett tabell","headers":"Overskrifter","headersBoth":"Begge","headersColumn":"Første kolonne","headersNone":"Ingen","headersRow":"Første rad","invalidBorder":"Rammestørrelse må være et tall.","invalidCellPadding":"Cellepolstring må være et positivt tall.","invalidCellSpacing":"Cellemarg må være et positivt tall.","invalidCols":"Antall kolonner må være et tall større enn 0.","invalidHeight":"Tabellhøyde må være et tall.","invalidRows":"Antall rader må være et tall større enn 0.","invalidWidth":"Tabellbredde må være et tall.","menu":"Egenskaper for tabell","row":{"menu":"Rader","insertBefore":"Sett inn rad før","insertAfter":"Sett inn rad etter","deleteRow":"Slett rader"},"rows":"Rader","summary":"Sammendrag","title":"Egenskaper for tabell","toolbar":"Tabell","widthPc":"prosent","widthPx":"piksler","widthUnit":"Bredde-enhet"},"undo":{"redo":"Gjør om","undo":"Angre"},"wsc":{"btnIgnore":"Ignorer","btnIgnoreAll":"Ignorer alle","btnReplace":"Erstatt","btnReplaceAll":"Erstatt alle","btnUndo":"Angre","changeTo":"Endre til","errorLoading":"Feil under lasting av applikasjonstjenestetjener: %s.","ieSpellDownload":"Stavekontroll er ikke installert. Vil du laste den ned nå?","manyChanges":"Stavekontroll fullført: %1 ord endret","noChanges":"Stavekontroll fullført: ingen ord endret","noMispell":"Stavekontroll fullført: ingen feilstavinger funnet","noSuggestions":"- Ingen forslag -","notAvailable":"Beklager, tjenesten er utilgjenglig nå.","notInDic":"Ikke i ordboken","oneChange":"Stavekontroll fullført: Ett ord endret","progress":"Stavekontroll pågår...","title":"Stavekontroll","toolbar":"Stavekontroll"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/pl.js b/wqflask/wqflask/static/packages/ckeditor/lang/pl.js
deleted file mode 100644
index 9e05ebde..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/pl.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['pl']={"editor":"Edytor tekstu sformatowanego","editorPanel":"Panel edytora tekstu sformatowanego","common":{"editorHelp":"W celu uzyskania pomocy naciśnij ALT 0","browseServer":"Przeglądaj","url":"Adres URL","protocol":"Protokół","upload":"Wyślij","uploadSubmit":"Wyślij","image":"Obrazek","flash":"Flash","form":"Formularz","checkbox":"Pole wyboru (checkbox)","radio":"Przycisk opcji (radio)","textField":"Pole tekstowe","textarea":"Obszar tekstowy","hiddenField":"Pole ukryte","button":"Przycisk","select":"Lista wyboru","imageButton":"Przycisk graficzny","notSet":"<nie ustawiono>","id":"Id","name":"Nazwa","langDir":"Kierunek tekstu","langDirLtr":"Od lewej do prawej (LTR)","langDirRtl":"Od prawej do lewej (RTL)","langCode":"Kod języka","longDescr":"Adres URL długiego opisu","cssClass":"Nazwa klasy CSS","advisoryTitle":"Opis obiektu docelowego","cssStyle":"Styl","ok":"OK","cancel":"Anuluj","close":"Zamknij","preview":"Podgląd","resize":"Przeciągnij, aby zmienić rozmiar","generalTab":"Ogólne","advancedTab":"Zaawansowane","validateNumberFailed":"Ta wartość nie jest liczbą.","confirmNewPage":"Wszystkie niezapisane zmiany zostaną utracone. Czy na pewno wczytać nową stronę?","confirmCancel":"Pewne opcje zostały zmienione. Czy na pewno zamknąć okno dialogowe?","options":"Opcje","target":"Obiekt docelowy","targetNew":"Nowe okno (_blank)","targetTop":"Okno najwyżej w hierarchii (_top)","targetSelf":"To samo okno (_self)","targetParent":"Okno nadrzędne (_parent)","langDirLTR":"Od lewej do prawej (LTR)","langDirRTL":"Od prawej do lewej (RTL)","styles":"Style","cssClasses":"Klasy arkusza stylów","width":"Szerokość","height":"Wysokość","align":"Wyrównaj","alignLeft":"Do lewej","alignRight":"Do prawej","alignCenter":"Do środka","alignJustify":"Wyjustuj","alignTop":"Do góry","alignMiddle":"Do środka","alignBottom":"Do dołu","alignNone":"Brak","invalidValue":"Nieprawidłowa wartość.","invalidHeight":"Wysokość musi być liczbą.","invalidWidth":"Szerokość musi być liczbą.","invalidCssLength":"Wartość podana dla pola \"%1\" musi być liczbą dodatnią bez jednostki lub z poprawną jednostką długości zgodną z CSS (px, %, in, cm, mm, em, ex, pt lub pc).","invalidHtmlLength":"Wartość podana dla pola \"%1\" musi być liczbą dodatnią bez jednostki lub z poprawną jednostką długości zgodną z HTML (px lub %).","invalidInlineStyle":"Wartość podana dla stylu musi składać się z jednej lub większej liczby krotek w formacie \"nazwa : wartość\", rozdzielonych średnikami.","cssLengthTooltip":"Wpisz liczbę dla wartości w pikselach lub liczbę wraz z jednostką długości zgodną z CSS (px, %, in, cm, mm, em, ex, pt lub pc).","unavailable":"%1<span class=\"cke_accessibility\">, niedostępne</span>"},"about":{"copy":"Copyright &copy; $1. Wszelkie prawa zastrzeżone.","dlgTitle":"Informacje o programie CKEditor","help":"Pomoc znajdziesz w $1.","moreInfo":"Informacje na temat licencji można znaleźć na naszej stronie:","title":"Informacje o programie CKEditor","userGuide":"podręczniku użytkownika programu CKEditor"},"basicstyles":{"bold":"Pogrubienie","italic":"Kursywa","strike":"Przekreślenie","subscript":"Indeks dolny","superscript":"Indeks górny","underline":"Podkreślenie"},"bidi":{"ltr":"Kierunek tekstu od lewej strony do prawej","rtl":"Kierunek tekstu od prawej strony do lewej"},"blockquote":{"toolbar":"Cytat"},"clipboard":{"copy":"Kopiuj","copyError":"Ustawienia bezpieczeństwa Twojej przeglądarki nie pozwalają na automatyczne kopiowanie tekstu. Użyj skrótu klawiszowego Ctrl/Cmd+C.","cut":"Wytnij","cutError":"Ustawienia bezpieczeństwa Twojej przeglądarki nie pozwalają na automatyczne wycinanie tekstu. Użyj skrótu klawiszowego Ctrl/Cmd+X.","paste":"Wklej","pasteArea":"Obszar wklejania","pasteMsg":"Wklej tekst w poniższym polu, używając skrótu klawiaturowego (<STRONG>Ctrl/Cmd+V</STRONG>), i kliknij <STRONG>OK</STRONG>.","securityMsg":"Zabezpieczenia przeglądarki uniemożliwiają wklejenie danych bezpośrednio do edytora. Proszę ponownie wkleić dane w tym oknie.","title":"Wklej"},"button":{"selectedLabel":"%1 (Wybrany)"},"colorbutton":{"auto":"Automatycznie","bgColorTitle":"Kolor tła","colors":{"000":"Czarny","800000":"Kasztanowy","8B4513":"Czekoladowy","2F4F4F":"Ciemnografitowy","008080":"Morski","000080":"Granatowy","4B0082":"Indygo","696969":"Ciemnoszary","B22222":"Czerwień żelazowa","A52A2A":"Brązowy","DAA520":"Ciemnozłoty","006400":"Ciemnozielony","40E0D0":"Turkusowy","0000CD":"Ciemnoniebieski","800080":"Purpurowy","808080":"Szary","F00":"Czerwony","FF8C00":"Ciemnopomarańczowy","FFD700":"Złoty","008000":"Zielony","0FF":"Cyjan","00F":"Niebieski","EE82EE":"Fioletowy","A9A9A9":"Przygaszony szary","FFA07A":"Łososiowy","FFA500":"Pomarańczowy","FFFF00":"Żółty","00FF00":"Limonkowy","AFEEEE":"Bladoturkusowy","ADD8E6":"Jasnoniebieski","DDA0DD":"Śliwkowy","D3D3D3":"Jasnoszary","FFF0F5":"Jasnolawendowy","FAEBD7":"Kremowobiały","FFFFE0":"Jasnożółty","F0FFF0":"Bladozielony","F0FFFF":"Jasnolazurowy","F0F8FF":"Jasnobłękitny","E6E6FA":"Lawendowy","FFF":"Biały"},"more":"Więcej kolorów...","panelTitle":"Kolory","textColorTitle":"Kolor tekstu"},"colordialog":{"clear":"Wyczyść","highlight":"Zaznacz","options":"Opcje koloru","selected":"Wybrany","title":"Wybierz kolor"},"templates":{"button":"Szablony","emptyListMsg":"(Brak zdefiniowanych szablonów)","insertOption":"Zastąp obecną zawartość","options":"Opcje szablonów","selectPromptMsg":"Wybierz szablon do otwarcia w edytorze<br>(obecna zawartość okna edytora zostanie utracona):","title":"Szablony zawartości"},"contextmenu":{"options":"Opcje menu kontekstowego"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Opis obiektu docelowego","cssClassInputLabel":"Klasy arkusza stylów","edit":"Edytuj pojemnik Div","inlineStyleInputLabel":"Style liniowe","langDirLTRLabel":"Od lewej do prawej (LTR)","langDirLabel":"Kierunek tekstu","langDirRTLLabel":"Od prawej do lewej (RTL)","languageCodeInputLabel":"Kod języka","remove":"Usuń pojemnik Div","styleSelectLabel":"Styl","title":"Utwórz pojemnik Div","toolbar":"Utwórz pojemnik Div"},"toolbar":{"toolbarCollapse":"Zwiń pasek narzędzi","toolbarExpand":"Rozwiń pasek narzędzi","toolbarGroups":{"document":"Dokument","clipboard":"Schowek/Wstecz","editing":"Edycja","forms":"Formularze","basicstyles":"Style podstawowe","paragraph":"Akapit","links":"Hiperłącza","insert":"Wstawianie","styles":"Style","colors":"Kolory","tools":"Narzędzia"},"toolbars":"Paski narzędzi edytora"},"elementspath":{"eleLabel":"Ścieżka elementów","eleTitle":"element %1"},"find":{"find":"Znajdź","findOptions":"Opcje wyszukiwania","findWhat":"Znajdź:","matchCase":"Uwzględnij wielkość liter","matchCyclic":"Cykliczne dopasowanie","matchWord":"Całe słowa","notFoundMsg":"Nie znaleziono szukanego hasła.","replace":"Zamień","replaceAll":"Zamień wszystko","replaceSuccessMsg":"%1 wystąpień zastąpionych.","replaceWith":"Zastąp przez:","title":"Znajdź i zamień"},"fakeobjects":{"anchor":"Kotwica","flash":"Animacja Flash","hiddenfield":"Pole ukryte","iframe":"IFrame","unknown":"Nieznany obiekt"},"flash":{"access":"Dostęp skryptów","accessAlways":"Zawsze","accessNever":"Nigdy","accessSameDomain":"Ta sama domena","alignAbsBottom":"Do dołu","alignAbsMiddle":"Do środka w pionie","alignBaseline":"Do linii bazowej","alignTextTop":"Do góry tekstu","bgcolor":"Kolor tła","chkFull":"Zezwól na pełny ekran","chkLoop":"Pętla","chkMenu":"Włącz menu","chkPlay":"Autoodtwarzanie","flashvars":"Zmienne obiektu Flash","hSpace":"Odstęp poziomy","properties":"Właściwości obiektu Flash","propertiesTab":"Właściwości","quality":"Jakość","qualityAutoHigh":"Auto wysoka","qualityAutoLow":"Auto niska","qualityBest":"Najlepsza","qualityHigh":"Wysoka","qualityLow":"Niska","qualityMedium":"Średnia","scale":"Skaluj","scaleAll":"Pokaż wszystko","scaleFit":"Dokładne dopasowanie","scaleNoBorder":"Bez obramowania","title":"Właściwości obiektu Flash","vSpace":"Odstęp pionowy","validateHSpace":"Odstęp poziomy musi być liczbą.","validateSrc":"Podaj adres URL","validateVSpace":"Odstęp pionowy musi być liczbą.","windowMode":"Tryb okna","windowModeOpaque":"Nieprzezroczyste","windowModeTransparent":"Przezroczyste","windowModeWindow":"Okno"},"font":{"fontSize":{"label":"Rozmiar","voiceLabel":"Rozmiar czcionki","panelTitle":"Rozmiar"},"label":"Czcionka","panelTitle":"Czcionka","voiceLabel":"Czcionka"},"forms":{"button":{"title":"Właściwości przycisku","text":"Tekst (Wartość)","type":"Typ","typeBtn":"Przycisk","typeSbm":"Wyślij","typeRst":"Wyczyść"},"checkboxAndRadio":{"checkboxTitle":"Właściwości pola wyboru (checkbox)","radioTitle":"Właściwości przycisku opcji (radio)","value":"Wartość","selected":"Zaznaczone"},"form":{"title":"Właściwości formularza","menu":"Właściwości formularza","action":"Akcja","method":"Metoda","encoding":"Kodowanie"},"hidden":{"title":"Właściwości pola ukrytego","name":"Nazwa","value":"Wartość"},"select":{"title":"Właściwości listy wyboru","selectInfo":"Informacje","opAvail":"Dostępne opcje","value":"Wartość","size":"Rozmiar","lines":"wierszy","chkMulti":"Wielokrotny wybór","opText":"Tekst","opValue":"Wartość","btnAdd":"Dodaj","btnModify":"Zmień","btnUp":"Do góry","btnDown":"Do dołu","btnSetValue":"Ustaw jako zaznaczoną","btnDelete":"Usuń"},"textarea":{"title":"Właściwości obszaru tekstowego","cols":"Liczba kolumn","rows":"Liczba wierszy"},"textfield":{"title":"Właściwości pola tekstowego","name":"Nazwa","value":"Wartość","charWidth":"Szerokość w znakach","maxChars":"Szerokość maksymalna","type":"Typ","typeText":"Tekst","typePass":"Hasło","typeEmail":"Email","typeSearch":"Szukaj","typeTel":"Numer telefonu","typeUrl":"Adres URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Adres","tag_div":"Normalny (DIV)","tag_h1":"Nagłówek 1","tag_h2":"Nagłówek 2","tag_h3":"Nagłówek 3","tag_h4":"Nagłówek 4","tag_h5":"Nagłówek 5","tag_h6":"Nagłówek 6","tag_p":"Normalny","tag_pre":"Tekst sformatowany"},"horizontalrule":{"toolbar":"Wstaw poziomą linię"},"iframe":{"border":"Pokaż obramowanie obiektu IFrame","noUrl":"Podaj adres URL elementu IFrame","scrolling":"Włącz paski przewijania","title":"Właściwości elementu IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Podaj adres obrazka.","alt":"Tekst zastępczy","border":"Obramowanie","btnUpload":"Wyślij","button2Img":"Czy chcesz przekonwertować zaznaczony przycisk graficzny do zwykłego obrazka?","hSpace":"Odstęp poziomy","img2Button":"Czy chcesz przekonwertować zaznaczony obrazek do przycisku graficznego?","infoTab":"Informacje o obrazku","linkTab":"Hiperłącze","lockRatio":"Zablokuj proporcje","menu":"Właściwości obrazka","resetSize":"Przywróć rozmiar","title":"Właściwości obrazka","titleButton":"Właściwości przycisku graficznego","upload":"Wyślij","urlMissing":"Podaj adres URL obrazka.","vSpace":"Odstęp pionowy","validateBorder":"Wartość obramowania musi być liczbą całkowitą.","validateHSpace":"Wartość odstępu poziomego musi być liczbą całkowitą.","validateVSpace":"Wartość odstępu pionowego musi być liczbą całkowitą."},"indent":{"indent":"Zwiększ wcięcie","outdent":"Zmniejsz wcięcie"},"smiley":{"options":"Opcje emotikonów","title":"Wstaw emotikona","toolbar":"Emotikony"},"justify":{"block":"Wyjustuj","center":"Wyśrodkuj","left":"Wyrównaj do lewej","right":"Wyrównaj do prawej"},"language":{"button":"Ustaw język","remove":"Usuń język"},"link":{"acccessKey":"Klawisz dostępu","advanced":"Zaawansowane","advisoryContentType":"Typ MIME obiektu docelowego","advisoryTitle":"Opis obiektu docelowego","anchor":{"toolbar":"Wstaw/edytuj kotwicę","menu":"Właściwości kotwicy","title":"Właściwości kotwicy","name":"Nazwa kotwicy","errorName":"Wpisz nazwę kotwicy","remove":"Usuń kotwicę"},"anchorId":"Wg identyfikatora","anchorName":"Wg nazwy","charset":"Kodowanie znaków obiektu docelowego","cssClasses":"Nazwa klasy CSS","emailAddress":"Adres e-mail","emailBody":"Treść","emailSubject":"Temat","id":"Id","info":"Informacje ","langCode":"Kod języka","langDir":"Kierunek tekstu","langDirLTR":"Od lewej do prawej (LTR)","langDirRTL":"Od prawej do lewej (RTL)","menu":"Edytuj odnośnik","name":"Nazwa","noAnchors":"(W dokumencie nie zdefiniowano żadnych kotwic)","noEmail":"Podaj adres e-mail","noUrl":"Podaj adres URL","other":"<inny>","popupDependent":"Okno zależne (Netscape)","popupFeatures":"Właściwości wyskakującego okna","popupFullScreen":"Pełny ekran (IE)","popupLeft":"Pozycja w poziomie","popupLocationBar":"Pasek adresu","popupMenuBar":"Pasek menu","popupResizable":"Skalowalny","popupScrollBars":"Paski przewijania","popupStatusBar":"Pasek statusu","popupToolbar":"Pasek narzędzi","popupTop":"Pozycja w pionie","rel":"Relacja","selectAnchor":"Wybierz kotwicę","styles":"Styl","tabIndex":"Indeks kolejności","target":"Obiekt docelowy","targetFrame":"<ramka>","targetFrameName":"Nazwa ramki docelowej","targetPopup":"<wyskakujące okno>","targetPopupName":"Nazwa wyskakującego okna","title":"Odnośnik","toAnchor":"Odnośnik wewnątrz strony (kotwica)","toEmail":"Adres e-mail","toUrl":"Adres URL","toolbar":"Wstaw/edytuj odnośnik","type":"Typ odnośnika","unlink":"Usuń odnośnik","upload":"Wyślij"},"list":{"bulletedlist":"Lista wypunktowana","numberedlist":"Lista numerowana"},"liststyle":{"armenian":"Numerowanie armeńskie","bulletedTitle":"Właściwości list wypunktowanych","circle":"Koło","decimal":"Liczby (1, 2, 3 itd.)","decimalLeadingZero":"Liczby z początkowym zerem (01, 02, 03 itd.)","disc":"Okrąg","georgian":"Numerowanie gruzińskie (an, ban, gan itd.)","lowerAlpha":"Małe litery (a, b, c, d, e itd.)","lowerGreek":"Małe litery greckie (alpha, beta, gamma itd.)","lowerRoman":"Małe cyfry rzymskie (i, ii, iii, iv, v itd.)","none":"Brak","notset":"<nie ustawiono>","numberedTitle":"Właściwości list numerowanych","square":"Kwadrat","start":"Początek","type":"Typ punktora","upperAlpha":"Duże litery (A, B, C, D, E itd.)","upperRoman":"Duże cyfry rzymskie (I, II, III, IV, V itd.)","validateStartNumber":"Listę musi rozpoczynać liczba całkowita."},"magicline":{"title":"Wstaw nowy akapit"},"maximize":{"maximize":"Maksymalizuj","minimize":"Minimalizuj"},"newpage":{"toolbar":"Nowa strona"},"pagebreak":{"alt":"Wstaw podział strony","toolbar":"Wstaw podział strony"},"pastetext":{"button":"Wklej jako czysty tekst","title":"Wklej jako czysty tekst"},"pastefromword":{"confirmCleanup":"Tekst, który chcesz wkleić, prawdopodobnie pochodzi z programu Microsoft Word. Czy chcesz go wyczyścić przed wklejeniem?","error":"Wyczyszczenie wklejonych danych nie było możliwe z powodu wystąpienia błędu.","title":"Wklej z programu MS Word","toolbar":"Wklej z programu MS Word"},"preview":{"preview":"Podgląd"},"print":{"toolbar":"Drukuj"},"removeformat":{"toolbar":"Usuń formatowanie"},"save":{"toolbar":"Zapisz"},"selectall":{"toolbar":"Zaznacz wszystko"},"showblocks":{"toolbar":"Pokaż bloki"},"sourcearea":{"toolbar":"Źródło dokumentu"},"specialchar":{"options":"Opcje znaków specjalnych","title":"Wybierz znak specjalny","toolbar":"Wstaw znak specjalny"},"scayt":{"btn_about":"Informacje o SCAYT","btn_dictionaries":"Słowniki","btn_disable":"Wyłącz SCAYT","btn_enable":"Włącz SCAYT","btn_langs":"Języki","btn_options":"Opcje","text_title":""},"stylescombo":{"label":"Styl","panelTitle":"Style formatujące","panelTitle1":"Style blokowe","panelTitle2":"Style liniowe","panelTitle3":"Style obiektowe"},"table":{"border":"Grubość obramowania","caption":"Tytuł","cell":{"menu":"Komórka","insertBefore":"Wstaw komórkę z lewej","insertAfter":"Wstaw komórkę z prawej","deleteCell":"Usuń komórki","merge":"Połącz komórki","mergeRight":"Połącz z komórką z prawej","mergeDown":"Połącz z komórką poniżej","splitHorizontal":"Podziel komórkę poziomo","splitVertical":"Podziel komórkę pionowo","title":"Właściwości komórki","cellType":"Typ komórki","rowSpan":"Scalenie wierszy","colSpan":"Scalenie komórek","wordWrap":"Zawijanie słów","hAlign":"Wyrównanie poziome","vAlign":"Wyrównanie pionowe","alignBaseline":"Linia bazowa","bgColor":"Kolor tła","borderColor":"Kolor obramowania","data":"Dane","header":"Nagłówek","yes":"Tak","no":"Nie","invalidWidth":"Szerokość komórki musi być liczbą.","invalidHeight":"Wysokość komórki musi być liczbą.","invalidRowSpan":"Scalenie wierszy musi być liczbą całkowitą.","invalidColSpan":"Scalenie komórek musi być liczbą całkowitą.","chooseColor":"Wybierz"},"cellPad":"Dopełnienie komórek","cellSpace":"Odstęp pomiędzy komórkami","column":{"menu":"Kolumna","insertBefore":"Wstaw kolumnę z lewej","insertAfter":"Wstaw kolumnę z prawej","deleteColumn":"Usuń kolumny"},"columns":"Liczba kolumn","deleteTable":"Usuń tabelę","headers":"Nagłówki","headersBoth":"Oba","headersColumn":"Pierwsza kolumna","headersNone":"Brak","headersRow":"Pierwszy wiersz","invalidBorder":"Wartość obramowania musi być liczbą.","invalidCellPadding":"Dopełnienie komórek musi być liczbą dodatnią.","invalidCellSpacing":"Odstęp pomiędzy komórkami musi być liczbą dodatnią.","invalidCols":"Liczba kolumn musi być większa niż 0.","invalidHeight":"Wysokość tabeli musi być liczbą.","invalidRows":"Liczba wierszy musi być większa niż 0.","invalidWidth":"Szerokość tabeli musi być liczbą.","menu":"Właściwości tabeli","row":{"menu":"Wiersz","insertBefore":"Wstaw wiersz powyżej","insertAfter":"Wstaw wiersz poniżej","deleteRow":"Usuń wiersze"},"rows":"Liczba wierszy","summary":"Podsumowanie","title":"Właściwości tabeli","toolbar":"Tabela","widthPc":"%","widthPx":"piksele","widthUnit":"jednostka szerokości"},"undo":{"redo":"Ponów","undo":"Cofnij"},"wsc":{"btnIgnore":"Ignoruj","btnIgnoreAll":"Ignoruj wszystkie","btnReplace":"Zmień","btnReplaceAll":"Zmień wszystkie","btnUndo":"Cofnij","changeTo":"Zmień na","errorLoading":"Błąd wczytywania hosta aplikacji usługi: %s.","ieSpellDownload":"Słownik nie jest zainstalowany. Czy chcesz go pobrać?","manyChanges":"Sprawdzanie zakończone: zmieniono %l słów","noChanges":"Sprawdzanie zakończone: nie zmieniono żadnego słowa","noMispell":"Sprawdzanie zakończone: nie znaleziono błędów","noSuggestions":"- Brak sugestii -","notAvailable":"Przepraszamy, ale usługa jest obecnie niedostępna.","notInDic":"Słowa nie ma w słowniku","oneChange":"Sprawdzanie zakończone: zmieniono jedno słowo","progress":"Trwa sprawdzanie...","title":"Sprawdź pisownię","toolbar":"Sprawdź pisownię"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/pt-br.js b/wqflask/wqflask/static/packages/ckeditor/lang/pt-br.js
deleted file mode 100644
index d697b0b0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/pt-br.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['pt-br']={"editor":"Editor de Rich Text","editorPanel":"Painel do editor de Rich Text","common":{"editorHelp":"Pressione ALT+0 para ajuda","browseServer":"Localizar no Servidor","url":"URL","protocol":"Protocolo","upload":"Enviar ao Servidor","uploadSubmit":"Enviar para o Servidor","image":"Imagem","flash":"Flash","form":"Formulário","checkbox":"Caixa de Seleção","radio":"Botão de Opção","textField":"Caixa de Texto","textarea":"Área de Texto","hiddenField":"Campo Oculto","button":"Botão","select":"Caixa de Listagem","imageButton":"Botão de Imagem","notSet":"<não ajustado>","id":"Id","name":"Nome","langDir":"Direção do idioma","langDirLtr":"Esquerda para Direita (LTR)","langDirRtl":"Direita para Esquerda (RTL)","langCode":"Idioma","longDescr":"Descrição da URL","cssClass":"Classe de CSS","advisoryTitle":"Título","cssStyle":"Estilos","ok":"OK","cancel":"Cancelar","close":"Fechar","preview":"Visualizar","resize":"Arraste para redimensionar","generalTab":"Geral","advancedTab":"Avançado","validateNumberFailed":"Este valor não é um número.","confirmNewPage":"Todas as mudanças não salvas serão perdidas. Tem certeza de que quer abrir uma nova página?","confirmCancel":"Algumas opções foram alteradas. Tem certeza de que quer fechar a caixa de diálogo?","options":"Opções","target":"Destino","targetNew":"Nova Janela (_blank)","targetTop":"Janela de Cima (_top)","targetSelf":"Mesma Janela (_self)","targetParent":"Janela Pai (_parent)","langDirLTR":"Esquerda para Direita (LTR)","langDirRTL":"Direita para Esquerda (RTL)","styles":"Estilo","cssClasses":"Classes","width":"Largura","height":"Altura","align":"Alinhamento","alignLeft":"Esquerda","alignRight":"Direita","alignCenter":"Centralizado","alignJustify":"Justificar","alignTop":"Superior","alignMiddle":"Centralizado","alignBottom":"Inferior","alignNone":"Nenhum","invalidValue":"Valor inválido.","invalidHeight":"A altura tem que ser um número","invalidWidth":"A largura tem que ser um número.","invalidCssLength":"O valor do campo \"%1\" deve ser um número positivo opcionalmente seguido por uma válida unidade de medida de CSS (px, %, in, cm, mm, em, ex, pt ou pc).","invalidHtmlLength":"O valor do campo \"%1\" deve ser um número positivo opcionalmente seguido por uma válida unidade de medida de HTML (px ou %).","invalidInlineStyle":"O valor válido para estilo deve conter uma ou mais tuplas no formato \"nome : valor\", separados por ponto e vírgula.","cssLengthTooltip":"Insira um número para valor em pixels ou um número seguido de uma válida unidade de medida de CSS (px, %, in, cm, mm, em, ex, pt ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponível</span>"},"about":{"copy":"Copyright &copy; $1. Todos os direitos reservados.","dlgTitle":"Sobre o CKEditor","help":"Verifique o $1 para obter ajuda.","moreInfo":"Para informações sobre a licença por favor visite o nosso site:","title":"Sobre o CKEditor","userGuide":"Guia do Usuário do CKEditor"},"basicstyles":{"bold":"Negrito","italic":"Itálico","strike":"Tachado","subscript":"Subscrito","superscript":"Sobrescrito","underline":"Sublinhado"},"bidi":{"ltr":"Direção do texto da esquerda para a direita","rtl":"Direção do texto da direita para a esquerda"},"blockquote":{"toolbar":"Citação"},"clipboard":{"copy":"Copiar","copyError":"As configurações de segurança do seu navegador não permitem que o editor execute operações de copiar automaticamente. Por favor, utilize o teclado para copiar (Ctrl/Cmd+C).","cut":"Recortar","cutError":"As configurações de segurança do seu navegador não permitem que o editor execute operações de recortar automaticamente. Por favor, utilize o teclado para recortar (Ctrl/Cmd+X).","paste":"Colar","pasteArea":"Área para Colar","pasteMsg":"Transfira o link usado na caixa usando o teclado com (<STRONG>Ctrl/Cmd+V</STRONG>) e <STRONG>OK</STRONG>.","securityMsg":"As configurações de segurança do seu navegador não permitem que o editor acesse os dados da área de transferência diretamente. Por favor cole o conteúdo manualmente nesta janela.","title":"Colar"},"button":{"selectedLabel":"%1 (Selecionado)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Cor do Plano de Fundo","colors":{"000":"Preto","800000":"Foquete","8B4513":"Marrom 1","2F4F4F":"Cinza 1","008080":"Cerceta","000080":"Azul Marinho","4B0082":"Índigo","696969":"Cinza 2","B22222":"Tijolo de Fogo","A52A2A":"Marrom 2","DAA520":"Vara Dourada","006400":"Verde Escuro","40E0D0":"Turquesa","0000CD":"Azul Médio","800080":"Roxo","808080":"Cinza 3","F00":"Vermelho","FF8C00":"Laranja Escuro","FFD700":"Dourado","008000":"Verde","0FF":"Ciano","00F":"Azul","EE82EE":"Violeta","A9A9A9":"Cinza Escuro","FFA07A":"Salmão Claro","FFA500":"Laranja","FFFF00":"Amarelo","00FF00":"Lima","AFEEEE":"Turquesa Pálido","ADD8E6":"Azul Claro","DDA0DD":"Ameixa","D3D3D3":"Cinza Claro","FFF0F5":"Lavanda 1","FAEBD7":"Branco Antiguidade","FFFFE0":"Amarelo Claro","F0FFF0":"Orvalho","F0FFFF":"Azure","F0F8FF":"Azul Alice","E6E6FA":"Lavanda 2","FFF":"Branco"},"more":"Mais Cores...","panelTitle":"Cores","textColorTitle":"Cor do Texto"},"colordialog":{"clear":"Limpar","highlight":"Grifar","options":"Opções de Cor","selected":"Cor Selecionada","title":"Selecione uma Cor"},"templates":{"button":"Modelos de layout","emptyListMsg":"(Não foram definidos modelos de layout)","insertOption":"Substituir o conteúdo atual","options":"Opções de Template","selectPromptMsg":"Selecione um modelo de layout para ser aberto no editor<br>(o conteúdo atual será perdido):","title":"Modelo de layout de conteúdo"},"contextmenu":{"options":"Opções Menu de Contexto"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Título Consulta","cssClassInputLabel":"Classes de CSS","edit":"Editar Div","inlineStyleInputLabel":"Estilo Inline","langDirLTRLabel":"Esquerda para Direita (LTR)","langDirLabel":"Direção da Escrita","langDirRTLLabel":"Direita para Esquerda (RTL)","languageCodeInputLabel":"Código de Idioma","remove":"Remover Div","styleSelectLabel":"Estilo","title":"Criar Container de DIV","toolbar":"Criar Container de DIV"},"toolbar":{"toolbarCollapse":"Diminuir Barra de Ferramentas","toolbarExpand":"Aumentar Barra de Ferramentas","toolbarGroups":{"document":"Documento","clipboard":"Clipboard/Desfazer","editing":"Edição","forms":"Formulários","basicstyles":"Estilos Básicos","paragraph":"Paragrafo","links":"Links","insert":"Inserir","styles":"Estilos","colors":"Cores","tools":"Ferramentas"},"toolbars":"Barra de Ferramentas do Editor"},"elementspath":{"eleLabel":"Caminho dos Elementos","eleTitle":"Elemento %1"},"find":{"find":"Localizar","findOptions":"Opções","findWhat":"Procurar por:","matchCase":"Coincidir Maiúsculas/Minúsculas","matchCyclic":"Coincidir cíclico","matchWord":"Coincidir a palavra inteira","notFoundMsg":"O texto especificado não foi encontrado.","replace":"Substituir","replaceAll":"Substituir Tudo","replaceSuccessMsg":"%1 ocorrência(s) substituída(s).","replaceWith":"Substituir por:","title":"Localizar e Substituir"},"fakeobjects":{"anchor":"Âncora","flash":"Animação em Flash","hiddenfield":"Campo Oculto","iframe":"IFrame","unknown":"Objeto desconhecido"},"flash":{"access":"Acesso ao script","accessAlways":"Sempre","accessNever":"Nunca","accessSameDomain":"Acessar Mesmo Domínio","alignAbsBottom":"Inferior Absoluto","alignAbsMiddle":"Centralizado Absoluto","alignBaseline":"Baseline","alignTextTop":"Superior Absoluto","bgcolor":"Cor do Plano de Fundo","chkFull":"Permitir tela cheia","chkLoop":"Tocar Infinitamente","chkMenu":"Habilita Menu Flash","chkPlay":"Tocar Automaticamente","flashvars":"Variáveis do Flash","hSpace":"HSpace","properties":"Propriedades do Flash","propertiesTab":"Propriedades","quality":"Qualidade","qualityAutoHigh":"Qualidade Alta Automática","qualityAutoLow":"Qualidade Baixa Automática","qualityBest":"Qualidade Melhor","qualityHigh":"Qualidade Alta","qualityLow":"Qualidade Baixa","qualityMedium":"Qualidade Média","scale":"Escala","scaleAll":"Mostrar tudo","scaleFit":"Escala Exata","scaleNoBorder":"Sem Borda","title":"Propriedades do Flash","vSpace":"VSpace","validateHSpace":"O HSpace tem que ser um número","validateSrc":"Por favor, digite o endereço do link","validateVSpace":"O VSpace tem que ser um número.","windowMode":"Modo da janela","windowModeOpaque":"Opaca","windowModeTransparent":"Transparente","windowModeWindow":"Janela"},"font":{"fontSize":{"label":"Tamanho","voiceLabel":"Tamanho da fonte","panelTitle":"Tamanho"},"label":"Fonte","panelTitle":"Fonte","voiceLabel":"Fonte"},"forms":{"button":{"title":"Formatar Botão","text":"Texto (Valor)","type":"Tipo","typeBtn":"Botão","typeSbm":"Enviar","typeRst":"Limpar"},"checkboxAndRadio":{"checkboxTitle":"Formatar Caixa de Seleção","radioTitle":"Formatar Botão de Opção","value":"Valor","selected":"Selecionado"},"form":{"title":"Formatar Formulário","menu":"Formatar Formulário","action":"Ação","method":"Método","encoding":"Codificação"},"hidden":{"title":"Formatar Campo Oculto","name":"Nome","value":"Valor"},"select":{"title":"Formatar Caixa de Listagem","selectInfo":"Informações","opAvail":"Opções disponíveis","value":"Valor","size":"Tamanho","lines":"linhas","chkMulti":"Permitir múltiplas seleções","opText":"Texto","opValue":"Valor","btnAdd":"Adicionar","btnModify":"Modificar","btnUp":"Para cima","btnDown":"Para baixo","btnSetValue":"Definir como selecionado","btnDelete":"Remover"},"textarea":{"title":"Formatar Área de Texto","cols":"Colunas","rows":"Linhas"},"textfield":{"title":"Formatar Caixa de Texto","name":"Nome","value":"Valor","charWidth":"Comprimento (em caracteres)","maxChars":"Número Máximo de Caracteres","type":"Tipo","typeText":"Texto","typePass":"Senha","typeEmail":"Email","typeSearch":"Busca","typeTel":"Número de Telefone","typeUrl":"URL"}},"format":{"label":"Formatação","panelTitle":"Formatação","tag_address":"Endereço","tag_div":"Normal (DIV)","tag_h1":"Título 1","tag_h2":"Título 2","tag_h3":"Título 3","tag_h4":"Título 4","tag_h5":"Título 5","tag_h6":"Título 6","tag_p":"Normal","tag_pre":"Formatado"},"horizontalrule":{"toolbar":"Inserir Linha Horizontal"},"iframe":{"border":"Mostra borda do iframe","noUrl":"Insira a URL do iframe","scrolling":"Abilita scrollbars","title":"Propriedade do IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Por favor, digite a URL da imagem.","alt":"Texto Alternativo","border":"Borda","btnUpload":"Enviar para o Servidor","button2Img":"Deseja transformar o botão de imagem em uma imagem comum?","hSpace":"HSpace","img2Button":"Deseja transformar a imagem em um botão de imagem?","infoTab":"Informações da Imagem","linkTab":"Link","lockRatio":"Travar Proporções","menu":"Formatar Imagem","resetSize":"Redefinir para o Tamanho Original","title":"Formatar Imagem","titleButton":"Formatar Botão de Imagem","upload":"Enviar","urlMissing":"URL da imagem está faltando.","vSpace":"VSpace","validateBorder":"A borda deve ser um número inteiro.","validateHSpace":"O HSpace deve ser um número inteiro.","validateVSpace":"O VSpace deve ser um número inteiro."},"indent":{"indent":"Aumentar Recuo","outdent":"Diminuir Recuo"},"smiley":{"options":"Opções de Emoticons","title":"Inserir Emoticon","toolbar":"Emoticon"},"justify":{"block":"Justificado","center":"Centralizar","left":"Alinhar Esquerda","right":"Alinhar Direita"},"language":{"button":"Configure o Idioma","remove":"Remover Idioma"},"link":{"acccessKey":"Chave de Acesso","advanced":"Avançado","advisoryContentType":"Tipo de Conteúdo","advisoryTitle":"Título","anchor":{"toolbar":"Inserir/Editar Âncora","menu":"Formatar Âncora","title":"Formatar Âncora","name":"Nome da Âncora","errorName":"Por favor, digite o nome da âncora","remove":"Remover Âncora"},"anchorId":"Id da âncora","anchorName":"Nome da âncora","charset":"Charset do Link","cssClasses":"Classe de CSS","emailAddress":"Endereço E-Mail","emailBody":"Corpo da Mensagem","emailSubject":"Assunto da Mensagem","id":"Id","info":"Informações","langCode":"Direção do idioma","langDir":"Direção do idioma","langDirLTR":"Esquerda para Direita (LTR)","langDirRTL":"Direita para Esquerda (RTL)","menu":"Editar Link","name":"Nome","noAnchors":"(Não há âncoras no documento)","noEmail":"Por favor, digite o endereço de e-mail","noUrl":"Por favor, digite o endereço do Link","other":"<outro>","popupDependent":"Dependente (Netscape)","popupFeatures":"Propriedades da Janela Pop-up","popupFullScreen":"Modo Tela Cheia (IE)","popupLeft":"Esquerda","popupLocationBar":"Barra de Endereços","popupMenuBar":"Barra de Menus","popupResizable":"Redimensionável","popupScrollBars":"Barras de Rolagem","popupStatusBar":"Barra de Status","popupToolbar":"Barra de Ferramentas","popupTop":"Topo","rel":"Tipo de Relação","selectAnchor":"Selecione uma âncora","styles":"Estilos","tabIndex":"Índice de Tabulação","target":"Destino","targetFrame":"<frame>","targetFrameName":"Nome do Frame de Destino","targetPopup":"<janela popup>","targetPopupName":"Nome da Janela Pop-up","title":"Editar Link","toAnchor":"Âncora nesta página","toEmail":"E-Mail","toUrl":"URL","toolbar":"Inserir/Editar Link","type":"Tipo de hiperlink","unlink":"Remover Link","upload":"Enviar ao Servidor"},"list":{"bulletedlist":"Lista sem números","numberedlist":"Lista numerada"},"liststyle":{"armenian":"Numeração Armêna","bulletedTitle":"Propriedades da Lista sem Numeros","circle":"Círculo","decimal":"Numeração Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Numeração Decimal com zeros (01, 02, 03, etc.)","disc":"Disco","georgian":"Numeração da Geórgia (an, ban, gan, etc.)","lowerAlpha":"Numeração Alfabética minúscula (a, b, c, d, e, etc.)","lowerGreek":"Numeração Grega minúscula (alpha, beta, gamma, etc.)","lowerRoman":"Numeração Romana minúscula (i, ii, iii, iv, v, etc.)","none":"Nenhum","notset":"<não definido>","numberedTitle":"Propriedades da Lista Numerada","square":"Quadrado","start":"Início","type":"Tipo","upperAlpha":"Numeração Alfabética Maiúscula (A, B, C, D, E, etc.)","upperRoman":"Numeração Romana maiúscula (I, II, III, IV, V, etc.)","validateStartNumber":"O número inicial da lista deve ser um número inteiro."},"magicline":{"title":"Insera um parágrafo aqui"},"maximize":{"maximize":"Maximizar","minimize":"Minimize"},"newpage":{"toolbar":"Novo"},"pagebreak":{"alt":"Quebra de Página","toolbar":"Inserir Quebra de Página"},"pastetext":{"button":"Colar como Texto sem Formatação","title":"Colar como Texto sem Formatação"},"pastefromword":{"confirmCleanup":"O texto que você deseja colar parece ter sido copiado do Word. Você gostaria de remover a formatação antes de colar?","error":"Não foi possível limpar os dados colados devido a um erro interno","title":"Colar do Word","toolbar":"Colar do Word"},"preview":{"preview":"Visualizar"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Remover Formatação"},"save":{"toolbar":"Salvar"},"selectall":{"toolbar":"Selecionar Tudo"},"showblocks":{"toolbar":"Mostrar blocos de código"},"sourcearea":{"toolbar":"Código-Fonte"},"specialchar":{"options":"Opções de Caractere Especial","title":"Selecione um Caractere Especial","toolbar":"Inserir Caractere Especial"},"scayt":{"btn_about":"Sobre a correção ortográfica durante a digitação","btn_dictionaries":"Dicionários","btn_disable":"Desabilitar correção ortográfica durante a digitação","btn_enable":"Habilitar correção ortográfica durante a digitação","btn_langs":"Idiomas","btn_options":"Opções","text_title":""},"stylescombo":{"label":"Estilo","panelTitle":"Estilos de Formatação","panelTitle1":"Estilos de bloco","panelTitle2":"Estilos de texto corrido","panelTitle3":"Estilos de objeto"},"table":{"border":"Borda","caption":"Legenda","cell":{"menu":"Célula","insertBefore":"Inserir célula a esquerda","insertAfter":"Inserir célula a direita","deleteCell":"Remover Células","merge":"Mesclar Células","mergeRight":"Mesclar com célula a direita","mergeDown":"Mesclar com célula abaixo","splitHorizontal":"Dividir célula horizontalmente","splitVertical":"Dividir célula verticalmente","title":"Propriedades da célula","cellType":"Tipo de célula","rowSpan":"Linhas cobertas","colSpan":"Colunas cobertas","wordWrap":"Quebra de palavra","hAlign":"Alinhamento horizontal","vAlign":"Alinhamento vertical","alignBaseline":"Patamar de alinhamento","bgColor":"Cor de fundo","borderColor":"Cor das bordas","data":"Dados","header":"Cabeçalho","yes":"Sim","no":"Não","invalidWidth":"A largura da célula tem que ser um número.","invalidHeight":"A altura da célula tem que ser um número.","invalidRowSpan":"Linhas cobertas tem que ser um número inteiro.","invalidColSpan":"Colunas cobertas tem que ser um número inteiro.","chooseColor":"Escolher"},"cellPad":"Margem interna","cellSpace":"Espaçamento","column":{"menu":"Coluna","insertBefore":"Inserir coluna a esquerda","insertAfter":"Inserir coluna a direita","deleteColumn":"Remover Colunas"},"columns":"Colunas","deleteTable":"Apagar Tabela","headers":"Cabeçalho","headersBoth":"Ambos","headersColumn":"Primeira coluna","headersNone":"Nenhum","headersRow":"Primeira linha","invalidBorder":"O tamanho da borda tem que ser um número.","invalidCellPadding":"A margem interna das células tem que ser um número.","invalidCellSpacing":"O espaçamento das células tem que ser um número.","invalidCols":"O número de colunas tem que ser um número maior que 0.","invalidHeight":"A altura da tabela tem que ser um número.","invalidRows":"O número de linhas tem que ser um número maior que 0.","invalidWidth":"A largura da tabela tem que ser um número.","menu":"Formatar Tabela","row":{"menu":"Linha","insertBefore":"Inserir linha acima","insertAfter":"Inserir linha abaixo","deleteRow":"Remover Linhas"},"rows":"Linhas","summary":"Resumo","title":"Formatar Tabela","toolbar":"Tabela","widthPc":"%","widthPx":"pixels","widthUnit":"unidade largura"},"undo":{"redo":"Refazer","undo":"Desfazer"},"wsc":{"btnIgnore":"Ignorar uma vez","btnIgnoreAll":"Ignorar Todas","btnReplace":"Alterar","btnReplaceAll":"Alterar Todas","btnUndo":"Desfazer","changeTo":"Alterar para","errorLoading":"Erro carregando servidor de aplicação: %s.","ieSpellDownload":"A verificação ortográfica não foi instalada. Você gostaria de realizar o download agora?","manyChanges":"Verificação ortográfica encerrada: %1 palavras foram alteradas","noChanges":"Verificação ortográfica encerrada: Não houve alterações","noMispell":"Verificação encerrada: Não foram encontrados erros de ortografia","noSuggestions":"-sem sugestões de ortografia-","notAvailable":"Desculpe, o serviço não está disponível no momento.","notInDic":"Não encontrada","oneChange":"Verificação ortográfica encerrada: Uma palavra foi alterada","progress":"Verificação ortográfica em andamento...","title":"Corretor Ortográfico","toolbar":"Verificar Ortografia"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/pt.js b/wqflask/wqflask/static/packages/ckeditor/lang/pt.js
deleted file mode 100644
index fcff7b33..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/pt.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['pt']={"editor":"Rich Text Editor","editorPanel":"Painel do Rich Text Editor","common":{"editorHelp":"Pressione ALT+0 para ajuda","browseServer":"Explorar Servidor","url":"URL","protocol":"Protocolo","upload":"Enviar","uploadSubmit":"Enviá-lo para o Servidor","image":"Imagem","flash":"Flash","form":"Formulário","checkbox":"Caixa de Seleção","radio":"Botão","textField":"Campo do Texto","textarea":"Área do Texto","hiddenField":"Campo Ocultado","button":"Botão","select":"Campo da Seleção","imageButton":"Botão da Imagem","notSet":"<Não definido>","id":"Id.","name":"Nome","langDir":"Direção do Idioma","langDirLtr":"Esquerda para a Direita (EPD)","langDirRtl":"Direita para a Esquerda (DPE)","langCode":"Código do Idioma","longDescr":"Descrição Completa do URL","cssClass":"Classes de Estilo das Folhas","advisoryTitle":"Título Consultivo","cssStyle":"Estilo","ok":"CONFIRMAR","cancel":"Cancelar","close":"Fechar","preview":"Pré-visualização","resize":"Redimensionar","generalTab":"Geral","advancedTab":"Avançado","validateNumberFailed":"Este valor não é um numero.","confirmNewPage":"Irão ser perdidas quaisquer alterações não guardadas. Tem a certeza que deseja carregar a nova página?","confirmCancel":"Foram alteradas algumas das opções. Tem a certeza que deseja fechar a janela?","options":"Opções","target":"Destino","targetNew":"Nova Janela (_blank)","targetTop":"Janela Superior (_top)","targetSelf":"Mesma Janela (_self)","targetParent":"Janela Parente (_parent)","langDirLTR":"Esquerda para a Direita (EPD)","langDirRTL":"Direita para a Esquerda (DPE)","styles":"Estilo","cssClasses":"Classes de Estilo das Folhas","width":"Largura","height":"Altura","align":"Alinhamento","alignLeft":"Esquerda","alignRight":"Direita","alignCenter":"Centrado","alignJustify":"Justificado","alignTop":"Topo","alignMiddle":"Centro","alignBottom":"Base","alignNone":"None","invalidValue":"Valor inválido.","invalidHeight":"A altura deve ser um número.","invalidWidth":"A largura deve ser um número. ","invalidCssLength":"O valor especificado para o campo \"1%\" deve ser um número positivo, com ou sem uma unidade de medida CSS válida (px, %, in, cm, mm, em, ex, pt, ou pc).","invalidHtmlLength":"O valor especificado para o campo \"1%\" deve ser um número positivo, com ou sem uma unidade de medida HTML válida (px ou %).","invalidInlineStyle":"O valor especificado para o estilo em linha deve constituir um ou mais conjuntos de valores com o formato de \"nome : valor\", separados por ponto e vírgula.","cssLengthTooltip":"Insira um número para um valor em pontos ou um número com uma unidade CSS válida (px, %, in, cm, mm, em, ex, pt, ou pc).","unavailable":"%1<span class=\"cke_accessibility\">, indisponível</span>"},"about":{"copy":"Direitos de Autor &copy; $1. Todos os direitos reservados.","dlgTitle":"Sobre o CKEditor","help":"Doar $1 para ajudar.","moreInfo":"Para informação sobre o licenciamento, visite o nosso site da web:","title":"Sobre o CKEditor","userGuide":"CKEditor - Guia do Utilizador"},"basicstyles":{"bold":"Negrito","italic":"Itálico","strike":"Rasurado","subscript":"Superior à Linha","superscript":"Inferior à Linha","underline":"Sublinhado"},"bidi":{"ltr":"Direção do texto da esquerda para a direita","rtl":"Direção do texto da direita para a esquerda"},"blockquote":{"toolbar":"Bloco de citação"},"clipboard":{"copy":"Copiar","copyError":"A configuração de segurança do navegador não permite a execução automática de operações de copiar. Por favor use o teclado (Ctrl/Cmd+C).","cut":"Cortar","cutError":"A configuração de segurança do navegador não permite a execução automática de operações de cortar. Por favor use o teclado (Ctrl/Cmd+X).","paste":"Colar","pasteArea":"Colar Área","pasteMsg":"Por favor, cole dentro da seguinte caixa usando o teclado (<STRONG>Ctrl/Cmd+V</STRONG>) e prima <STRONG>OK</STRONG>.","securityMsg":"Devido ás definições de segurança do teu browser, o editor não pode aceder ao clipboard diretamente. É necessário que voltes a colar as informações nesta janela.","title":"Colar"},"button":{"selectedLabel":"%1 (Selecionados)"},"colorbutton":{"auto":"Automático","bgColorTitle":"Cor de Fundo","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Mais Cores...","panelTitle":"Colors","textColorTitle":"Cor do Texto"},"colordialog":{"clear":"Limpar","highlight":"Realçar","options":"Opções da Cor","selected":"Cor Selecionada","title":"Selecionar Cor"},"templates":{"button":"Modelos","emptyListMsg":"(Sem modelos definidos)","insertOption":"Substituir conteúdos actuais","options":"Opções do Modelo","selectPromptMsg":"Por favor, selecione o modelo para abrir no editor","title":"Conteúdo dos Modelos"},"contextmenu":{"options":"Menu de opções de contexto"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"Título","cssClassInputLabel":"Classes de Estilo de Folhas Classes","edit":"Editar Div","inlineStyleInputLabel":"Estilho em Linha","langDirLTRLabel":"Esquerda à Direita (LTR)","langDirLabel":"Orientação de idioma","langDirRTLLabel":"Direita a Esquerda (RTL)","languageCodeInputLabel":"Codigo do Idioma","remove":"Remover Div","styleSelectLabel":"Estilo","title":"Criar Div","toolbar":"Criar Div"},"toolbar":{"toolbarCollapse":"Ocultar Barra de Ferramentas","toolbarExpand":"Expandir Barra de Ferramentas","toolbarGroups":{"document":"Documento","clipboard":"Área de Transferência/Anular","editing":"Edição","forms":"Formulários","basicstyles":"Estilos Básicos","paragraph":"Parágrafo","links":"Hiperligações","insert":"Inserir","styles":"Estilos","colors":"Cores","tools":"Ferramentas"},"toolbars":"Editor de Barras de Ferramentas"},"elementspath":{"eleLabel":"Camninho dos Elementos","eleTitle":"Elemento %1"},"find":{"find":"Procurar","findOptions":"Find Options","findWhat":"Texto a Procurar:","matchCase":"Maiúsculas/Minúsculas","matchCyclic":"Match cyclic","matchWord":"Coincidir com toda a palavra","notFoundMsg":"O texto especificado não foi encontrado.","replace":"Substituir","replaceAll":"Substituir Tudo","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Substituir por:","title":"Find and Replace"},"fakeobjects":{"anchor":" Inserir/Editar Âncora","flash":"Animação Flash","hiddenfield":"Campo Ocultado","iframe":"IFrame","unknown":"Objeto Desconhecido"},"flash":{"access":"Acesso ao Script","accessAlways":"Sempre","accessNever":"Nunca","accessSameDomain":"Mesmo dominio","alignAbsBottom":"Abs inferior","alignAbsMiddle":"Abs centro","alignBaseline":"Linha de base","alignTextTop":"Topo do texto","bgcolor":"Cor de Fundo","chkFull":"Permitir Ecrã inteiro","chkLoop":"Loop","chkMenu":"Permitir Menu do Flash","chkPlay":"Reproduzir automaticamente","flashvars":"Variaveis para o Flash","hSpace":"Esp.Horiz","properties":"Propriedades do Flash","propertiesTab":"Propriedades","quality":"Qualidade","qualityAutoHigh":"Alta Automaticamente","qualityAutoLow":"Baixa Automaticamente","qualityBest":"Melhor","qualityHigh":"Alta","qualityLow":"Baixa","qualityMedium":"Média","scale":"Escala","scaleAll":"Mostrar tudo","scaleFit":"Tamanho Exacto","scaleNoBorder":"Sem Limites","title":"Propriedades do Flash","vSpace":"Esp.Vert","validateHSpace":"HSpace tem de ser um numero.","validateSrc":"Por favor introduza a hiperligação URL","validateVSpace":"VSpace tem de ser um numero.","windowMode":"Modo de janela","windowModeOpaque":"Opaco","windowModeTransparent":"Transparente","windowModeWindow":"Janela"},"font":{"fontSize":{"label":"Tamanho","voiceLabel":"Tamanho da Letra","panelTitle":"Tamanho da Letra"},"label":"Tipo de Letra","panelTitle":"Nome do Tipo de Letra","voiceLabel":"Tipo de Letra"},"forms":{"button":{"title":"Propriedades do Botão","text":"Texto (Valor)","type":"Tipo","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Propriedades da Caixa de Verificação","radioTitle":"Propriedades do Botão de Opção","value":"Valor","selected":"Seleccionado"},"form":{"title":"Propriedades do Formulário","menu":"Propriedades do Formulário","action":"Acção","method":"Método","encoding":"Encoding"},"hidden":{"title":"Propriedades do Campo Escondido","name":"Nome","value":"Valor"},"select":{"title":"Propriedades da Caixa de Combinação","selectInfo":"Informação","opAvail":"Opções Possíveis","value":"Valor","size":"Tamanho","lines":"linhas","chkMulti":"Permitir selecções múltiplas","opText":"Texto","opValue":"Valor","btnAdd":"Adicionar","btnModify":"Modificar","btnUp":"Para cima","btnDown":"Para baixo","btnSetValue":"Definir um valor por defeito","btnDelete":"Apagar"},"textarea":{"title":"Propriedades da Área de Texto","cols":"Colunas","rows":"Linhas"},"textfield":{"title":"Propriedades do Campo de Texto","name":"Nome","value":"Valor","charWidth":"Tamanho do caracter","maxChars":"Nr. Máximo de Caracteres","type":"Tipo","typeText":"Texto","typePass":"Palavra-chave","typeEmail":"Email","typeSearch":"Pesquisar","typeTel":"Numero de telefone","typeUrl":"URL"}},"format":{"label":"Formatar","panelTitle":"Formatar Parágrafo","tag_address":"Endereço","tag_div":"Normal (DIV)","tag_h1":"Título 1","tag_h2":"Título 2","tag_h3":"Título 3","tag_h4":"Título 4","tag_h5":"Título 5","tag_h6":"Título 6","tag_p":"Normal","tag_pre":"Formatado"},"horizontalrule":{"toolbar":"Inserir Linha Horizontal"},"iframe":{"border":"Mostrar a borda da Frame","noUrl":"Por favor, digite o URL da iframe","scrolling":"Ativar barras de deslocamento","title":"Propriedades da IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Por favor introduza o URL da imagem","alt":"Texto Alternativo","border":"Limite","btnUpload":"Enviar para o Servidor","button2Img":"Deseja transformar o botão com imagem selecionado em uma imagem?","hSpace":"Esp.Horiz","img2Button":"Deseja transformar a imagem selecionada em um botão com imagem?","infoTab":"Informação da Imagem","linkTab":"Hiperligação","lockRatio":"Proporcional","menu":"Propriedades da Imagem","resetSize":"Tamanho Original","title":"Propriedades da Imagem","titleButton":"Propriedades do Botão de imagens","upload":"Carregar","urlMissing":"O URL da fonte da imagem está em falta.","vSpace":"Esp.Vert","validateBorder":"A borda tem de ser um numero.","validateHSpace":"HSpace tem de ser um numero.","validateVSpace":"VSpace tem de ser um numero."},"indent":{"indent":"Aumentar Avanço","outdent":"Diminuir Avanço"},"smiley":{"options":"Opções de Emoticons","title":"Inserir um Emoticon","toolbar":"Emoticons"},"justify":{"block":"Justificado","center":"Alinhar ao Centro","left":"Alinhar à Esquerda","right":"Alinhar à Direita"},"language":{"button":"Definir Idioma","remove":"Remover Idioma"},"link":{"acccessKey":"Chave de Acesso","advanced":"Avançado","advisoryContentType":"Tipo de Conteúdo","advisoryTitle":"Título","anchor":{"toolbar":" Inserir/Editar Âncora","menu":"Propriedades da Âncora","title":"Propriedades da Âncora","name":"Nome da Âncora","errorName":"Por favor, introduza o nome da âncora","remove":"Remove Anchor"},"anchorId":"Por ID de elemento","anchorName":"Por Nome de Referência","charset":"Fonte de caracteres vinculado","cssClasses":"Classes de Estilo de Folhas Classes","emailAddress":"Endereço de E-Mail","emailBody":"Corpo da Mensagem","emailSubject":"Título de Mensagem","id":"ID","info":"Informação de Hiperligação","langCode":"Orientação de idioma","langDir":"Orientação de idioma","langDirLTR":"Esquerda à Direita (LTR)","langDirRTL":"Direita a Esquerda (RTL)","menu":"Editar Hiperligação","name":"Nome","noAnchors":"(Não há referências disponíveis no documento)","noEmail":"Por favor introduza o endereço de e-mail","noUrl":"Por favor introduza a hiperligação URL","other":"<outro>","popupDependent":"Dependente (Netscape)","popupFeatures":"Características de Janela de Popup","popupFullScreen":"Janela Completa (IE)","popupLeft":"Posição Esquerda","popupLocationBar":"Barra de localização","popupMenuBar":"Barra de Menu","popupResizable":"Redimensionável","popupScrollBars":"Barras de deslocamento","popupStatusBar":"Barra de Estado","popupToolbar":"Barra de Ferramentas","popupTop":"Posição Direita","rel":"Relação","selectAnchor":"Seleccionar una referência","styles":"Estilo","tabIndex":"Índice de Tubulação","target":"Destino","targetFrame":"<Frame>","targetFrameName":"Nome do Frame Destino","targetPopup":"<Janela de popup>","targetPopupName":"Nome da Janela de Popup","title":"Hiperligação","toAnchor":"Referência a esta página","toEmail":"E-Mail","toUrl":"URL","toolbar":"Inserir/Editar Hiperligação","type":"Tipo de Hiperligação","unlink":"Eliminar Hiperligação","upload":"Carregar"},"list":{"bulletedlist":"Marcas","numberedlist":"Numeração"},"liststyle":{"armenian":"Numeração armênia","bulletedTitle":"Bulleted List Properties","circle":"Círculo","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disco","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"Nenhum","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Quadrado","start":"Iniciar","type":"Tipo","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insira aqui o parágrafo"},"maximize":{"maximize":"Maximizar","minimize":"Minimizar"},"newpage":{"toolbar":"Nova Página"},"pagebreak":{"alt":"Quebra de página","toolbar":"Inserir Quebra de Página"},"pastetext":{"button":"Colar como Texto Simples","title":"Colar como Texto Simples"},"pastefromword":{"confirmCleanup":"O texto que pretende colar parece ter sido copiado do Word. Deseja limpá-lo antes de colar?","error":"Não foi possivel limpar a informação colada decido a um erro interno.","title":"Colar do Word","toolbar":"Colar do Word"},"preview":{"preview":"Pré-visualizar"},"print":{"toolbar":"Imprimir"},"removeformat":{"toolbar":"Eliminar Formato"},"save":{"toolbar":"Guardar"},"selectall":{"toolbar":"Selecionar Tudo"},"showblocks":{"toolbar":"Exibir blocos"},"sourcearea":{"toolbar":"Fonte"},"specialchar":{"options":"Opções de caracteres especiais","title":"Selecione um caracter especial","toolbar":"Inserir Caracter Especial"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Estilos","panelTitle":"Estilos de Formatação","panelTitle1":"Estilos de Bloco","panelTitle2":"Estilos de Linha","panelTitle3":"Estilos de Objeto"},"table":{"border":"Tamanho da Margem","caption":"Título","cell":{"menu":"Célula","insertBefore":"Inserir Célula Antes","insertAfter":"Inserir Célula Depois","deleteCell":"Apagar Células","merge":"Unir Células","mergeRight":"Unir à Direita","mergeDown":"Unir Abaixo","splitHorizontal":"Dividir Célula Horizontalmente","splitVertical":"Dividir Célula Verticalmente","title":"Propriedades da Célula","cellType":"Tipo de Célula","rowSpan":"Filas na Célula","colSpan":"Colunas na Célula","wordWrap":"Continuar","hAlign":"Alinhamento Horizontal","vAlign":"Alinhamento Vertical","alignBaseline":"Base","bgColor":"Cor de Fundo","borderColor":"Cor da Margem","data":"Dados","header":"Cabeçalho","yes":"Sim","no":"Não","invalidWidth":"A largura da célula deve ser um número.","invalidHeight":"A altura da célula deve ser um número.","invalidRowSpan":"As filas da célula deve ter um número inteiro.","invalidColSpan":"As colunas da célula deve ter um número inteiro.","chooseColor":"Escolher"},"cellPad":"Criação de Espaço","cellSpace":"Espaçamento Célula","column":{"menu":"Coluna","insertBefore":"Inserir Coluna Antes","insertAfter":"Inserir Coluna Depois","deleteColumn":"Apagar Colunas"},"columns":"Colunas","deleteTable":"Apagar Tabela","headers":"Cabeçalhos","headersBoth":"Ambos","headersColumn":"Primeira coluna","headersNone":"Nenhum","headersRow":"Primeira Linha","invalidBorder":"O tamanho da margem tem de ser um número.","invalidCellPadding":"A criação do espaço na célula deve ser um número positivo.","invalidCellSpacing":"O espaçamento da célula deve ser um número positivo.","invalidCols":"O número de colunas tem de ser um número maior que 0.","invalidHeight":"A altura da tabela tem de ser um número.","invalidRows":"O número das linhas tem de ser um número maior que 0.","invalidWidth":"A largura da tabela tem de ser um número.","menu":"Propriedades da Tabela","row":{"menu":"Linha","insertBefore":"Inserir Linha Antes","insertAfter":"Inserir Linha Depois","deleteRow":"Apagar Linhas"},"rows":"Linhas","summary":"Sumário","title":"Propriedades da Tabela","toolbar":"Tabela","widthPc":"percentagem","widthPx":"pontos","widthUnit":"unidade da largura"},"undo":{"redo":"Refazer","undo":"Anular"},"wsc":{"btnIgnore":"Ignorar","btnIgnoreAll":"Ignorar Tudo","btnReplace":"Substituir","btnReplaceAll":"Substituir Tudo","btnUndo":"Anular","changeTo":"Mudar para","errorLoading":"Error loading application service host: %s.","ieSpellDownload":" Verificação ortográfica não instalada. Quer descarregar agora?","manyChanges":"Verificação ortográfica completa: %1 palavras alteradas","noChanges":"Verificação ortográfica completa: não houve alteração de palavras","noMispell":"Verificação ortográfica completa: não foram encontrados erros","noSuggestions":"- Sem sugestões -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Não está num directório","oneChange":"Verificação ortográfica completa: uma palavra alterada","progress":"Verificação ortográfica em progresso…","title":"Spell Check","toolbar":"Verificação Ortográfica"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ro.js b/wqflask/wqflask/static/packages/ckeditor/lang/ro.js
deleted file mode 100644
index 5648bdae..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ro.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ro']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Apasă ALT 0 pentru ajutor","browseServer":"Răsfoieşte server","url":"URL","protocol":"Protocol","upload":"Încarcă","uploadSubmit":"Trimite la server","image":"Imagine","flash":"Flash","form":"Formular (Form)","checkbox":"Bifă (Checkbox)","radio":"Buton radio (RadioButton)","textField":"Câmp text (TextField)","textarea":"Suprafaţă text (Textarea)","hiddenField":"Câmp ascuns (HiddenField)","button":"Buton","select":"Câmp selecţie (SelectionField)","imageButton":"Buton imagine (ImageButton)","notSet":"<nesetat>","id":"Id","name":"Nume","langDir":"Direcţia cuvintelor","langDirLtr":"stânga-dreapta (LTR)","langDirRtl":"dreapta-stânga (RTL)","langCode":"Codul limbii","longDescr":"Descrierea lungă URL","cssClass":"Clasele cu stilul paginii (CSS)","advisoryTitle":"Titlul consultativ","cssStyle":"Stil","ok":"OK","cancel":"Anulare","close":"Închide","preview":"Previzualizare","resize":"Trage pentru a redimensiona","generalTab":"General","advancedTab":"Avansat","validateNumberFailed":"Această valoare nu este un număr.","confirmNewPage":"Orice modificări nesalvate ale acestui conținut, vor fi pierdute. Sigur doriți încărcarea unei noi pagini?","confirmCancel":"Câteva opțiuni au fost schimbate. Sigur doriți să închideți dialogul?","options":"Opțiuni","target":"Țintă","targetNew":"Fereastră nouă (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"În aceeași fereastră (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Stânga spre Dreapta (LTR)","langDirRTL":"Dreapta spre Stânga (RTL)","styles":"Stil","cssClasses":"Stylesheet Classes","width":"Lăţime","height":"Înălţime","align":"Aliniere","alignLeft":"Mărește Bara","alignRight":"Dreapta","alignCenter":"Centru","alignJustify":"Aliniere în bloc (Block Justify)","alignTop":"Sus","alignMiddle":"Mijloc","alignBottom":"Jos","alignNone":"None","invalidValue":"Varloare invalida","invalidHeight":"Înălțimea trebuie să fie un număr.","invalidWidth":"Lățimea trebuie să fie un număr.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, nu este disponibil</span>"},"about":{"copy":"Copyright &copy; $1. Toate drepturile rezervate.","dlgTitle":"Despre CKEeditor","help":"Citește $1 pentru ajutor.","moreInfo":"Pentru informații despre licență, vă rugăm vizitați web site-ul nostru:","title":"Despre CKEditor","userGuide":"CKEditor Ghid Utilizator"},"basicstyles":{"bold":"Îngroşat (bold)","italic":"Înclinat (italic)","strike":"Tăiat (strike through)","subscript":"Indice (subscript)","superscript":"Putere (superscript)","underline":"Subliniat (underline)"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Citat"},"clipboard":{"copy":"Copiază","copyError":"Setările de securitate ale navigatorului (browser) pe care îl folosiţi nu permit editorului să execute automat operaţiunea de copiere. Vă rugăm folosiţi tastatura (Ctrl/Cmd+C).","cut":"Taie","cutError":"Setările de securitate ale navigatorului (browser) pe care îl folosiţi nu permit editorului să execute automat operaţiunea de tăiere. Vă rugăm folosiţi tastatura (Ctrl/Cmd+X).","paste":"Adaugă","pasteArea":"Suprafața de adăugare","pasteMsg":"Vă rugăm adăugaţi în căsuţa următoare folosind tastatura (<strong>Ctrl/Cmd+V</strong>) şi apăsaţi OK","securityMsg":"Din cauza setărilor de securitate ale programului dvs. cu care navigaţi pe internet (browser), editorul nu poate accesa direct datele din clipboard. Va trebui să adăugaţi din nou datele în această fereastră.","title":"Adaugă"},"button":{"selectedLabel":"%1 (Selectat)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Coloarea fundalului","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Mai multe culori...","panelTitle":"Colors","textColorTitle":"Culoarea textului"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Template-uri (şabloane)","emptyListMsg":"(Niciun template (şablon) definit)","insertOption":"Înlocuieşte cuprinsul actual","options":"Opțiuni șabloane","selectPromptMsg":"Vă rugăm selectaţi template-ul (şablonul) ce se va deschide în editor<br>(conţinutul actual va fi pierdut):","title":"Template-uri (şabloane) de conţinut"},"contextmenu":{"options":"Opțiuni Meniu Contextual"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Titlul consultativ","cssClassInputLabel":"Clasele cu stilul paginii (CSS)","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"stânga-dreapta (LTR)","langDirLabel":"Direcţia cuvintelor","langDirRTLLabel":"dreapta-stânga (RTL)","languageCodeInputLabel":"Codul limbii","remove":"Remove Div","styleSelectLabel":"Stil","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Micșorează Bara","toolbarExpand":"Mărește Bara","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editează bara de unelte"},"elementspath":{"eleLabel":"Calea elementelor","eleTitle":"%1 element"},"find":{"find":"Găseşte","findOptions":"Find Options","findWhat":"Găseşte:","matchCase":"Deosebeşte majuscule de minuscule (Match case)","matchCyclic":"Potrivește ciclic","matchWord":"Doar cuvintele întregi","notFoundMsg":"Textul specificat nu a fost găsit.","replace":"Înlocuieşte","replaceAll":"Înlocuieşte tot","replaceSuccessMsg":"%1 căutări înlocuite.","replaceWith":"Înlocuieşte cu:","title":"Găseşte şi înlocuieşte"},"fakeobjects":{"anchor":"Inserează/Editează ancoră","flash":"Flash Animation","hiddenfield":"Câmp ascuns (HiddenField)","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Acces script","accessAlways":"Întotdeauna","accessNever":"Niciodată","accessSameDomain":"Același domeniu","alignAbsBottom":"Jos absolut (Abs Bottom)","alignAbsMiddle":"Mijloc absolut (Abs Middle)","alignBaseline":"Linia de jos (Baseline)","alignTextTop":"Text sus","bgcolor":"Coloarea fundalului","chkFull":"Permite pe tot ecranul","chkLoop":"Repetă (Loop)","chkMenu":"Activează meniul flash","chkPlay":"Rulează automat","flashvars":"Variabile pentru flash","hSpace":"HSpace","properties":"Proprietăţile flashului","propertiesTab":"Proprietăți","quality":"Calitate","qualityAutoHigh":"Auto înaltă","qualityAutoLow":"Auto Joasă","qualityBest":"Cea mai bună","qualityHigh":"Înaltă","qualityLow":"Joasă","qualityMedium":"Medie","scale":"Scală","scaleAll":"Arată tot","scaleFit":"Potriveşte","scaleNoBorder":"Fără bordură (No border)","title":"Proprietăţile flashului","vSpace":"VSpace","validateHSpace":"Hspace trebuie să fie un număr.","validateSrc":"Vă rugăm să scrieţi URL-ul","validateVSpace":"VSpace trebuie să fie un număr","windowMode":"Mod fereastră","windowModeOpaque":"Opacă","windowModeTransparent":"Transparentă","windowModeWindow":"Fereastră"},"font":{"fontSize":{"label":"Mărime","voiceLabel":"Font Size","panelTitle":"Mărime"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Proprietăţi buton","text":"Text (Valoare)","type":"Tip","typeBtn":"Buton","typeSbm":"Trimite","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Proprietăţi bifă (Checkbox)","radioTitle":"Proprietăţi buton radio (Radio Button)","value":"Valoare","selected":"Selectat"},"form":{"title":"Proprietăţi formular (Form)","menu":"Proprietăţi formular (Form)","action":"Acţiune","method":"Metodă","encoding":"Encodare"},"hidden":{"title":"Proprietăţi câmp ascuns (Hidden Field)","name":"Nume","value":"Valoare"},"select":{"title":"Proprietăţi câmp selecţie (Selection Field)","selectInfo":"Informaţii","opAvail":"Opţiuni disponibile","value":"Valoare","size":"Mărime","lines":"linii","chkMulti":"Permite selecţii multiple","opText":"Text","opValue":"Valoare","btnAdd":"Adaugă","btnModify":"Modifică","btnUp":"Sus","btnDown":"Jos","btnSetValue":"Setează ca valoare selectată","btnDelete":"Şterge"},"textarea":{"title":"Proprietăţi suprafaţă text (Textarea)","cols":"Coloane","rows":"Linii"},"textfield":{"title":"Proprietăţi câmp text (Text Field)","name":"Nume","value":"Valoare","charWidth":"Lărgimea caracterului","maxChars":"Caractere maxime","type":"Tip","typeText":"Text","typePass":"Parolă","typeEmail":"Email","typeSearch":"Cauta","typeTel":"Numar de telefon","typeUrl":"URL"}},"format":{"label":"Formatare","panelTitle":"Formatare","tag_address":"Adresă","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatat"},"horizontalrule":{"toolbar":"Inserează linie orizontală"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Vă rugăm să scrieţi URL-ul imaginii","alt":"Text alternativ","border":"Margine","btnUpload":"Trimite la server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Informaţii despre imagine","linkTab":"Link (Legătură web)","lockRatio":"Păstrează proporţiile","menu":"Proprietăţile imaginii","resetSize":"Resetează mărimea","title":"Proprietăţile imaginii","titleButton":"Proprietăţi buton imagine (Image Button)","upload":"Încarcă","urlMissing":"Sursa URL a imaginii lipsește.","vSpace":"VSpace","validateBorder":"Bordura trebuie să fie un număr întreg.","validateHSpace":"Hspace trebuie să fie un număr întreg.","validateVSpace":"Vspace trebuie să fie un număr întreg."},"indent":{"indent":"Creşte indentarea","outdent":"Scade indentarea"},"smiley":{"options":"Opțiuni figuri expresive","title":"Inserează o figură expresivă (Emoticon)","toolbar":"Figură expresivă (Emoticon)"},"justify":{"block":"Aliniere în bloc (Block Justify)","center":"Aliniere centrală","left":"Aliniere la stânga","right":"Aliniere la dreapta"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Tasta de acces","advanced":"Avansat","advisoryContentType":"Tipul consultativ al titlului","advisoryTitle":"Titlul consultativ","anchor":{"toolbar":"Inserează/Editează ancoră","menu":"Proprietăţi ancoră","title":"Proprietăţi ancoră","name":"Numele ancorei","errorName":"Vă rugăm scrieţi numele ancorei","remove":"Elimină ancora"},"anchorId":"după Id-ul elementului","anchorName":"după numele ancorei","charset":"Setul de caractere al resursei legate","cssClasses":"Clasele cu stilul paginii (CSS)","emailAddress":"Adresă de e-mail","emailBody":"Opțiuni Meniu Contextual","emailSubject":"Subiectul mesajului","id":"Id","info":"Informaţii despre link (Legătură web)","langCode":"Direcţia cuvintelor","langDir":"Direcţia cuvintelor","langDirLTR":"stânga-dreapta (LTR)","langDirRTL":"dreapta-stânga (RTL)","menu":"Editează Link","name":"Nume","noAnchors":"(Nicio ancoră disponibilă în document)","noEmail":"Vă rugăm să scrieţi adresa de e-mail","noUrl":"Vă rugăm să scrieţi URL-ul","other":"<alt>","popupDependent":"Dependent (Netscape)","popupFeatures":"Proprietăţile ferestrei popup","popupFullScreen":"Tot ecranul (Full Screen)(IE)","popupLeft":"Poziţia la stânga","popupLocationBar":"Bara de locaţie","popupMenuBar":"Bara de meniu","popupResizable":"Redimensionabil","popupScrollBars":"Bare de derulare","popupStatusBar":"Bara de status","popupToolbar":"Bara de opţiuni","popupTop":"Poziţia la dreapta","rel":"Relație","selectAnchor":"Selectaţi o ancoră","styles":"Stil","tabIndex":"Indexul tabului","target":"Ţintă (Target)","targetFrame":"<frame>","targetFrameName":"Numele frameului ţintă","targetPopup":"<fereastra popup>","targetPopupName":"Numele ferestrei popup","title":"Link (Legătură web)","toAnchor":"Ancoră în această pagină","toEmail":"E-Mail","toUrl":"URL","toolbar":"Inserează/Editează link (legătură web)","type":"Tipul link-ului (al legăturii web)","unlink":"Înlătură link (legătură web)","upload":"Încarcă"},"list":{"bulletedlist":"Inserează / Elimină Listă cu puncte","numberedlist":"Inserează / Elimină Listă numerotată"},"liststyle":{"armenian":"Numerotare armeniană","bulletedTitle":"Proprietățile listei cu simboluri","circle":"Cerc","decimal":"Decimale (1, 2, 3, etc.)","decimalLeadingZero":"Decimale cu zero în față (01, 02, 03, etc.)","disc":"Disc","georgian":"Numerotare georgiană (an, ban, gan, etc.)","lowerAlpha":"Litere mici (a, b, c, d, e, etc.)","lowerGreek":"Litere grecești mici (alpha, beta, gamma, etc.)","lowerRoman":"Cifre romane mici (i, ii, iii, iv, v, etc.)","none":"Nimic","notset":"<nesetat>","numberedTitle":"Proprietățile listei numerotate","square":"Pătrat","start":"Start","type":"Tip","upperAlpha":"Litere mari (A, B, C, D, E, etc.)","upperRoman":"Cifre romane mari (I, II, III, IV, V, etc.)","validateStartNumber":"Începutul listei trebuie să fie un număr întreg."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Mărește","minimize":"Micșorează"},"newpage":{"toolbar":"Pagină nouă"},"pagebreak":{"alt":"Page Break","toolbar":"Inserează separator de pagină (Page Break)"},"pastetext":{"button":"Adaugă ca text simplu (Plain Text)","title":"Adaugă ca text simplu (Plain Text)"},"pastefromword":{"confirmCleanup":"Textul pe care doriți să-l lipiți este din Word. Doriți curățarea textului înante de a-l adăuga?","error":"Nu a fost posibilă curățarea datelor adăugate datorită unei erori interne","title":"Adaugă din Word","toolbar":"Adaugă din Word"},"preview":{"preview":"Previzualizare"},"print":{"toolbar":"Printează"},"removeformat":{"toolbar":"Înlătură formatarea"},"save":{"toolbar":"Salvează"},"selectall":{"toolbar":"Selectează tot"},"showblocks":{"toolbar":"Arată blocurile"},"sourcearea":{"toolbar":"Sursa"},"specialchar":{"options":"Opțiuni caractere speciale","title":"Selectează caracter special","toolbar":"Inserează caracter special"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Formatarea stilurilor","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Mărimea marginii","caption":"Titlu (Caption)","cell":{"menu":"Celulă","insertBefore":"Inserează celulă înainte","insertAfter":"Inserează celulă după","deleteCell":"Şterge celule","merge":"Uneşte celule","mergeRight":"Uneşte la dreapta","mergeDown":"Uneşte jos","splitHorizontal":"Împarte celula pe orizontală","splitVertical":"Împarte celula pe verticală","title":"Proprietăți celulă","cellType":"Tipul celulei","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Aliniament orizontal","vAlign":"Aliniament vertical","alignBaseline":"Baseline","bgColor":"Culoare fundal","borderColor":"Culoare bordură","data":"Data","header":"Antet","yes":"Da","no":"Nu","invalidWidth":"Lățimea celulei trebuie să fie un număr.","invalidHeight":"Înălțimea celulei trebuie să fie un număr.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Alege"},"cellPad":"Spaţiu în cadrul celulei","cellSpace":"Spaţiu între celule","column":{"menu":"Coloană","insertBefore":"Inserează coloană înainte","insertAfter":"Inserează coloană după","deleteColumn":"Şterge celule"},"columns":"Coloane","deleteTable":"Şterge tabel","headers":"Antente","headersBoth":"Ambele","headersColumn":"Prima coloană","headersNone":"Nimic","headersRow":"Primul rând","invalidBorder":"Dimensiunea bordurii trebuie să aibe un număr.","invalidCellPadding":"Spațierea celulei trebuie sa fie un număr pozitiv","invalidCellSpacing":"Spațierea celului trebuie să fie un număr pozitiv.","invalidCols":"Numărul coloanelor trebuie să fie mai mare decât 0.","invalidHeight":"Inaltimea celulei trebuie sa fie un numar.","invalidRows":"Numărul rândurilor trebuie să fie mai mare decât 0.","invalidWidth":"Lățimea tabelului trebuie să fie un număr.","menu":"Proprietăţile tabelului","row":{"menu":"Rând","insertBefore":"Inserează rând înainte","insertAfter":"Inserează rând după","deleteRow":"Şterge rânduri"},"rows":"Rânduri","summary":"Rezumat","title":"Proprietăţile tabelului","toolbar":"Tabel","widthPc":"procente","widthPx":"pixeli","widthUnit":"unitate lățime"},"undo":{"redo":"Starea ulterioară (redo)","undo":"Starea anterioară (undo)"},"wsc":{"btnIgnore":"Ignoră","btnIgnoreAll":"Ignoră toate","btnReplace":"Înlocuieşte","btnReplaceAll":"Înlocuieşte tot","btnUndo":"Starea anterioară (undo)","changeTo":"Schimbă în","errorLoading":"Eroare în lansarea aplicației service host %s.","ieSpellDownload":"Unealta pentru verificat textul (Spell checker) neinstalată. Doriţi să o descărcaţi acum?","manyChanges":"Verificarea textului terminată: 1% cuvinte modificate","noChanges":"Verificarea textului terminată: Niciun cuvânt modificat","noMispell":"Verificarea textului terminată: Nicio greşeală găsită","noSuggestions":"- Fără sugestii -","notAvailable":"Scuzați, dar serviciul nu este disponibil momentan.","notInDic":"Nu e în dicţionar","oneChange":"Verificarea textului terminată: Un cuvânt modificat","progress":"Verificarea textului în desfăşurare...","title":"Spell Check","toolbar":"Verifică scrierea textului"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ru.js b/wqflask/wqflask/static/packages/ckeditor/lang/ru.js
deleted file mode 100644
index 41551b3b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ru.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ru']={"editor":"Визуальный текстовый редактор","editorPanel":"Визуальный редактор текста","common":{"editorHelp":"Нажмите ALT-0 для открытия справки","browseServer":"Выбор на сервере","url":"Ссылка","protocol":"Протокол","upload":"Загрузка файла","uploadSubmit":"Загрузить на сервер","image":"Изображение","flash":"Flash","form":"Форма","checkbox":"Чекбокс","radio":"Радиокнопка","textField":"Текстовое поле","textarea":"Многострочное текстовое поле","hiddenField":"Скрытое поле","button":"Кнопка","select":"Выпадающий список","imageButton":"Кнопка-изображение","notSet":"<не указано>","id":"Идентификатор","name":"Имя","langDir":"Направление текста","langDirLtr":"Слева направо (LTR)","langDirRtl":"Справа налево (RTL)","langCode":"Код языка","longDescr":"Длинное описание ссылки","cssClass":"Класс CSS","advisoryTitle":"Заголовок","cssStyle":"Стиль","ok":"ОК","cancel":"Отмена","close":"Закрыть","preview":"Предпросмотр","resize":"Перетащите для изменения размера","generalTab":"Основное","advancedTab":"Дополнительно","validateNumberFailed":"Это значение не является числом.","confirmNewPage":"Несохранённые изменения будут потеряны! Вы действительно желаете перейти на другую страницу?","confirmCancel":"Некоторые параметры были изменены. Вы уверены, что желаете закрыть без сохранения?","options":"Параметры","target":"Цель","targetNew":"Новое окно (_blank)","targetTop":"Главное окно (_top)","targetSelf":"Текущее окно (_self)","targetParent":"Родительское окно (_parent)","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","styles":"Стиль","cssClasses":"CSS классы","width":"Ширина","height":"Высота","align":"Выравнивание","alignLeft":"По левому краю","alignRight":"По правому краю","alignCenter":"По центру","alignJustify":"По ширине","alignTop":"Поверху","alignMiddle":"Посередине","alignBottom":"Понизу","alignNone":"Нет","invalidValue":"Недопустимое значение.","invalidHeight":"Высота задается числом.","invalidWidth":"Ширина задается числом.","invalidCssLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","invalidHtmlLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры HTML (px или %).","invalidInlineStyle":"Значение, указанное для стиля элемента, должно состоять из одной или нескольких пар данных в формате \"параметр : значение\", разделённых точкой с запятой.","cssLengthTooltip":"Введите значение в пикселях, либо число с корректной единицей меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недоступно</span>"},"about":{"copy":"Copyright &copy; $1. Все права защищены.","dlgTitle":"О CKEditor","help":"$1 содержит подробную справку по использованию.","moreInfo":"Для получения информации о лицензии, пожалуйста, перейдите на наш сайт:","title":"О CKEditor","userGuide":"Руководство пользователя CKEditor"},"basicstyles":{"bold":"Полужирный","italic":"Курсив","strike":"Зачеркнутый","subscript":"Подстрочный индекс","superscript":"Надстрочный индекс","underline":"Подчеркнутый"},"bidi":{"ltr":"Направление текста слева направо","rtl":"Направление текста справа налево"},"blockquote":{"toolbar":"Цитата"},"clipboard":{"copy":"Копировать","copyError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по копированию текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+C).","cut":"Вырезать","cutError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по вырезке текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+X).","paste":"Вставить","pasteArea":"Зона для вставки","pasteMsg":"Пожалуйста, вставьте текст в зону ниже, используя клавиатуру (<strong>Ctrl/Cmd+V</strong>) и нажмите кнопку \"OK\".","securityMsg":"Настройки безопасности вашего браузера не разрешают редактору напрямую обращаться к буферу обмена. Вы должны вставить текст снова в это окно.","title":"Вставить"},"button":{"selectedLabel":"%1 (Выбрано)"},"colorbutton":{"auto":"Автоматически","bgColorTitle":"Цвет фона","colors":{"000":"Чёрный","800000":"Бордовый","8B4513":"Кожано-коричневый","2F4F4F":"Темный синевато-серый","008080":"Сине-зелёный","000080":"Тёмно-синий","4B0082":"Индиго","696969":"Тёмно-серый","B22222":"Кирпичный","A52A2A":"Коричневый","DAA520":"Золотисто-берёзовый","006400":"Темно-зелёный","40E0D0":"Бирюзовый","0000CD":"Умеренно синий","800080":"Пурпурный","808080":"Серый","F00":"Красный","FF8C00":"Темно-оранжевый","FFD700":"Золотистый","008000":"Зелёный","0FF":"Васильковый","00F":"Синий","EE82EE":"Фиолетовый","A9A9A9":"Тускло-серый","FFA07A":"Светло-лососевый","FFA500":"Оранжевый","FFFF00":"Жёлтый","00FF00":"Лайма","AFEEEE":"Бледно-синий","ADD8E6":"Свелто-голубой","DDA0DD":"Сливовый","D3D3D3":"Светло-серый","FFF0F5":"Розово-лавандовый","FAEBD7":"Античный белый","FFFFE0":"Светло-жёлтый","F0FFF0":"Медвяной росы","F0FFFF":"Лазурный","F0F8FF":"Бледно-голубой","E6E6FA":"Лавандовый","FFF":"Белый"},"more":"Ещё цвета...","panelTitle":"Цвета","textColorTitle":"Цвет текста"},"colordialog":{"clear":"Очистить","highlight":"Под курсором","options":"Настройки цвета","selected":"Выбранный цвет","title":"Выберите цвет"},"templates":{"button":"Шаблоны","emptyListMsg":"(не определено ни одного шаблона)","insertOption":"Заменить текущее содержимое","options":"Параметры шаблона","selectPromptMsg":"Пожалуйста, выберите, какой шаблон следует открыть в редакторе","title":"Шаблоны содержимого"},"contextmenu":{"options":"Параметры контекстного меню"},"div":{"IdInputLabel":"Идентификатор","advisoryTitleInputLabel":"Заголовок","cssClassInputLabel":"Классы CSS","edit":"Редактировать контейнер","inlineStyleInputLabel":"Стиль элемента","langDirLTRLabel":"Слева направо (LTR)","langDirLabel":"Направление текста","langDirRTLLabel":"Справа налево (RTL)","languageCodeInputLabel":"Код языка","remove":"Удалить контейнер","styleSelectLabel":"Стиль","title":"Создать Div-контейнер","toolbar":"Создать Div-контейнер"},"toolbar":{"toolbarCollapse":"Свернуть панель инструментов","toolbarExpand":"Развернуть панель инструментов","toolbarGroups":{"document":"Документ","clipboard":"Буфер обмена / Отмена действий","editing":"Корректировка","forms":"Формы","basicstyles":"Простые стили","paragraph":"Абзац","links":"Ссылки","insert":"Вставка","styles":"Стили","colors":"Цвета","tools":"Инструменты"},"toolbars":"Панели инструментов редактора"},"elementspath":{"eleLabel":"Путь элементов","eleTitle":"Элемент %1"},"find":{"find":"Найти","findOptions":"Опции поиска","findWhat":"Найти:","matchCase":"Учитывать регистр","matchCyclic":"По всему тексту","matchWord":"Только слово целиком","notFoundMsg":"Искомый текст не найден.","replace":"Заменить","replaceAll":"Заменить всё","replaceSuccessMsg":"Успешно заменено %1 раз(а).","replaceWith":"Заменить на:","title":"Поиск и замена"},"fakeobjects":{"anchor":"Якорь","flash":"Flash анимация","hiddenfield":"Скрытое поле","iframe":"iFrame","unknown":"Неизвестный объект"},"flash":{"access":"Доступ к скриптам","accessAlways":"Всегда","accessNever":"Никогда","accessSameDomain":"В том же домене","alignAbsBottom":"По низу текста","alignAbsMiddle":"По середине текста","alignBaseline":"По базовой линии","alignTextTop":"По верху текста","bgcolor":"Цвет фона","chkFull":"Разрешить полноэкранный режим","chkLoop":"Повторять","chkMenu":"Включить меню Flash","chkPlay":"Автоматическое воспроизведение","flashvars":"Переменные для Flash","hSpace":"Гориз. отступ","properties":"Свойства Flash","propertiesTab":"Свойства","quality":"Качество","qualityAutoHigh":"Запуск на высоком","qualityAutoLow":"Запуск на низком","qualityBest":"Лучшее","qualityHigh":"Высокое","qualityLow":"Низкое","qualityMedium":"Среднее","scale":"Масштабировать","scaleAll":"Пропорционально","scaleFit":"Заполнять","scaleNoBorder":"Заходить за границы","title":"Свойства Flash","vSpace":"Вертик. отступ","validateHSpace":"Горизонтальный отступ задается числом.","validateSrc":"Вы должны ввести ссылку","validateVSpace":"Вертикальный отступ задается числом.","windowMode":"Взаимодействие с окном","windowModeOpaque":"Непрозрачный","windowModeTransparent":"Прозрачный","windowModeWindow":"Обычный"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер шрифта","panelTitle":"Размер шрифта"},"label":"Шрифт","panelTitle":"Шрифт","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Свойства кнопки","text":"Текст (Значение)","type":"Тип","typeBtn":"Кнопка","typeSbm":"Отправка","typeRst":"Сброс"},"checkboxAndRadio":{"checkboxTitle":"Свойства флаговой кнопки","radioTitle":"Свойства кнопки выбора","value":"Значение","selected":"Выбрано"},"form":{"title":"Свойства формы","menu":"Свойства формы","action":"Действие","method":"Метод","encoding":"Кодировка"},"hidden":{"title":"Свойства скрытого поля","name":"Имя","value":"Значение"},"select":{"title":"Свойства списка выбора","selectInfo":"Информация о списке выбора","opAvail":"Доступные варианты","value":"Значение","size":"Размер","lines":"строк(и)","chkMulti":"Разрешить выбор нескольких вариантов","opText":"Текст","opValue":"Значение","btnAdd":"Добавить","btnModify":"Изменить","btnUp":"Поднять","btnDown":"Опустить","btnSetValue":"Пометить как выбранное","btnDelete":"Удалить"},"textarea":{"title":"Свойства многострочного текстового поля","cols":"Колонок","rows":"Строк"},"textfield":{"title":"Свойства текстового поля","name":"Имя","value":"Значение","charWidth":"Ширина поля (в символах)","maxChars":"Макс. количество символов","type":"Тип содержимого","typeText":"Текст","typePass":"Пароль","typeEmail":"Email","typeSearch":"Поиск","typeTel":"Номер телефона","typeUrl":"Ссылка"}},"format":{"label":"Форматирование","panelTitle":"Форматирование","tag_address":"Адрес","tag_div":"Обычное (div)","tag_h1":"Заголовок 1","tag_h2":"Заголовок 2","tag_h3":"Заголовок 3","tag_h4":"Заголовок 4","tag_h5":"Заголовок 5","tag_h6":"Заголовок 6","tag_p":"Обычное","tag_pre":"Моноширинное"},"horizontalrule":{"toolbar":"Вставить горизонтальную линию"},"iframe":{"border":"Показать границы фрейма","noUrl":"Пожалуйста, введите ссылку фрейма","scrolling":"Отображать полосы прокрутки","title":"Свойства iFrame","toolbar":"iFrame"},"image":{"alertUrl":"Пожалуйста, введите ссылку на изображение","alt":"Альтернативный текст","border":"Граница","btnUpload":"Загрузить на сервер","button2Img":"Вы желаете преобразовать это изображение-кнопку в обычное изображение?","hSpace":"Гориз. отступ","img2Button":"Вы желаете преобразовать это обычное изображение в изображение-кнопку?","infoTab":"Данные об изображении","linkTab":"Ссылка","lockRatio":"Сохранять пропорции","menu":"Свойства изображения","resetSize":"Вернуть обычные размеры","title":"Свойства изображения","titleButton":"Свойства изображения-кнопки","upload":"Загрузить","urlMissing":"Не указана ссылка на изображение.","vSpace":"Вертик. отступ","validateBorder":"Размер границ должен быть задан числом.","validateHSpace":"Горизонтальный отступ должен быть задан числом.","validateVSpace":"Вертикальный отступ должен быть задан числом."},"indent":{"indent":"Увеличить отступ","outdent":"Уменьшить отступ"},"smiley":{"options":"Выбор смайла","title":"Вставить смайл","toolbar":"Смайлы"},"justify":{"block":"По ширине","center":"По центру","left":"По левому краю","right":"По правому краю"},"language":{"button":"Установка языка","remove":"Удалить язык"},"link":{"acccessKey":"Клавиша доступа","advanced":"Дополнительно","advisoryContentType":"Тип содержимого","advisoryTitle":"Заголовок","anchor":{"toolbar":"Вставить / редактировать якорь","menu":"Изменить якорь","title":"Свойства якоря","name":"Имя якоря","errorName":"Пожалуйста, введите имя якоря","remove":"Удалить якорь"},"anchorId":"По идентификатору","anchorName":"По имени","charset":"Кодировка ресурса","cssClasses":"Классы CSS","emailAddress":"Email адрес","emailBody":"Текст сообщения","emailSubject":"Тема сообщения","id":"Идентификатор","info":"Информация о ссылке","langCode":"Код языка","langDir":"Направление текста","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","menu":"Редактировать ссылку","name":"Имя","noAnchors":"(В документе нет ни одного якоря)","noEmail":"Пожалуйста, введите email адрес","noUrl":"Пожалуйста, введите ссылку","other":"<другой>","popupDependent":"Зависимое (Netscape)","popupFeatures":"Параметры всплывающего окна","popupFullScreen":"Полноэкранное (IE)","popupLeft":"Отступ слева","popupLocationBar":"Панель адреса","popupMenuBar":"Панель меню","popupResizable":"Изменяемый размер","popupScrollBars":"Полосы прокрутки","popupStatusBar":"Строка состояния","popupToolbar":"Панель инструментов","popupTop":"Отступ сверху","rel":"Отношение","selectAnchor":"Выберите якорь","styles":"Стиль","tabIndex":"Последовательность перехода","target":"Цель","targetFrame":"<фрейм>","targetFrameName":"Имя целевого фрейма","targetPopup":"<всплывающее окно>","targetPopupName":"Имя всплывающего окна","title":"Ссылка","toAnchor":"Ссылка на якорь в тексте","toEmail":"Email","toUrl":"Ссылка","toolbar":"Вставить/Редактировать ссылку","type":"Тип ссылки","unlink":"Убрать ссылку","upload":"Загрузка"},"list":{"bulletedlist":"Вставить / удалить маркированный список","numberedlist":"Вставить / удалить нумерованный список"},"liststyle":{"armenian":"Армянская нумерация","bulletedTitle":"Свойства маркированного списка","circle":"Круг","decimal":"Десятичные (1, 2, 3, и т.д.)","decimalLeadingZero":"Десятичные с ведущим нулём (01, 02, 03, и т.д.)","disc":"Окружность","georgian":"Грузинская нумерация (ани, бани, гани, и т.д.)","lowerAlpha":"Строчные латинские (a, b, c, d, e, и т.д.)","lowerGreek":"Строчные греческие (альфа, бета, гамма, и т.д.)","lowerRoman":"Строчные римские (i, ii, iii, iv, v, и т.д.)","none":"Нет","notset":"<не указано>","numberedTitle":"Свойства нумерованного списка","square":"Квадрат","start":"Начиная с","type":"Тип","upperAlpha":"Заглавные латинские (A, B, C, D, E, и т.д.)","upperRoman":"Заглавные римские (I, II, III, IV, V, и т.д.)","validateStartNumber":"Первый номер списка должен быть задан обычным целым числом."},"magicline":{"title":"Вставить здесь параграф"},"maximize":{"maximize":"Развернуть","minimize":"Свернуть"},"newpage":{"toolbar":"Новая страница"},"pagebreak":{"alt":"Разрыв страницы","toolbar":"Вставить разрыв страницы для печати"},"pastetext":{"button":"Вставить только текст","title":"Вставить только текст"},"pastefromword":{"confirmCleanup":"Текст, который вы желаете вставить, по всей видимости, был скопирован из Word. Следует ли очистить его перед вставкой?","error":"Невозможно очистить вставленные данные из-за внутренней ошибки","title":"Вставить из Word","toolbar":"Вставить из Word"},"preview":{"preview":"Предварительный просмотр"},"print":{"toolbar":"Печать"},"removeformat":{"toolbar":"Убрать форматирование"},"save":{"toolbar":"Сохранить"},"selectall":{"toolbar":"Выделить все"},"showblocks":{"toolbar":"Отображать блоки"},"sourcearea":{"toolbar":"Источник"},"specialchar":{"options":"Выбор специального символа","title":"Выберите специальный символ","toolbar":"Вставить специальный символ"},"scayt":{"btn_about":"О SCAYT","btn_dictionaries":"Словари","btn_disable":"Отключить SCAYT","btn_enable":"Включить SCAYT","btn_langs":"Языки","btn_options":"Настройки","text_title":"Проверка орфографии по мере ввода (SCAYT)"},"stylescombo":{"label":"Стили","panelTitle":"Стили форматирования","panelTitle1":"Стили блока","panelTitle2":"Стили элемента","panelTitle3":"Стили объекта"},"table":{"border":"Размер границ","caption":"Заголовок","cell":{"menu":"Ячейка","insertBefore":"Вставить ячейку слева","insertAfter":"Вставить ячейку справа","deleteCell":"Удалить ячейки","merge":"Объединить ячейки","mergeRight":"Объединить с правой","mergeDown":"Объединить с нижней","splitHorizontal":"Разделить ячейку по горизонтали","splitVertical":"Разделить ячейку по вертикали","title":"Свойства ячейки","cellType":"Тип ячейки","rowSpan":"Объединяет строк","colSpan":"Объединяет колонок","wordWrap":"Перенос по словам","hAlign":"Горизонтальное выравнивание","vAlign":"Вертикальное выравнивание","alignBaseline":"По базовой линии","bgColor":"Цвет фона","borderColor":"Цвет границ","data":"Данные","header":"Заголовок","yes":"Да","no":"Нет","invalidWidth":"Ширина ячейки должна быть числом.","invalidHeight":"Высота ячейки должна быть числом.","invalidRowSpan":"Количество объединяемых строк должно быть задано числом.","invalidColSpan":"Количество объединяемых колонок должно быть задано числом.","chooseColor":"Выберите"},"cellPad":"Внутренний отступ ячеек","cellSpace":"Внешний отступ ячеек","column":{"menu":"Колонка","insertBefore":"Вставить колонку слева","insertAfter":"Вставить колонку справа","deleteColumn":"Удалить колонки"},"columns":"Колонки","deleteTable":"Удалить таблицу","headers":"Заголовки","headersBoth":"Сверху и слева","headersColumn":"Левая колонка","headersNone":"Без заголовков","headersRow":"Верхняя строка","invalidBorder":"Размер границ должен быть числом.","invalidCellPadding":"Внутренний отступ ячеек (cellpadding) должен быть числом.","invalidCellSpacing":"Внешний отступ ячеек (cellspacing) должен быть числом.","invalidCols":"Количество столбцов должно быть больше 0.","invalidHeight":"Высота таблицы должна быть числом.","invalidRows":"Количество строк должно быть больше 0.","invalidWidth":"Ширина таблицы должна быть числом.","menu":"Свойства таблицы","row":{"menu":"Строка","insertBefore":"Вставить строку сверху","insertAfter":"Вставить строку снизу","deleteRow":"Удалить строки"},"rows":"Строки","summary":"Итоги","title":"Свойства таблицы","toolbar":"Таблица","widthPc":"процентов","widthPx":"пикселей","widthUnit":"единица измерения"},"undo":{"redo":"Повторить","undo":"Отменить"},"wsc":{"btnIgnore":"Пропустить","btnIgnoreAll":"Пропустить всё","btnReplace":"Заменить","btnReplaceAll":"Заменить всё","btnUndo":"Отменить","changeTo":"Изменить на","errorLoading":"Произошла ошибка при подключении к серверу проверки орфографии: %s.","ieSpellDownload":"Модуль проверки орфографии не установлен. Хотите скачать его?","manyChanges":"Проверка орфографии завершена. Изменено слов: %1","noChanges":"Проверка орфографии завершена. Не изменено ни одного слова","noMispell":"Проверка орфографии завершена. Ошибок не найдено","noSuggestions":"- Варианты отсутствуют -","notAvailable":"Извините, но в данный момент сервис недоступен.","notInDic":"Отсутствует в словаре","oneChange":"Проверка орфографии завершена. Изменено одно слово","progress":"Орфография проверяется...","title":"Проверка орфографии","toolbar":"Проверить орфографию"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/si.js b/wqflask/wqflask/static/packages/ckeditor/lang/si.js
deleted file mode 100644
index 32734885..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/si.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['si']={"editor":"පොහොසත් වචන සංස්කරණ","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"උදව් ලබා ගැනීමට ALT බොත්තම ඔබන්න","browseServer":"සෙවුම් සේවාදායකය","url":"URL","protocol":"මුලාපත්‍රය","upload":"උඩුගතකිරීම","uploadSubmit":"සේවාදායකය වෙත යොමුකිරිම","image":"රුපය","flash":"දීප්තිය","form":"පෝරමය","checkbox":"ලකුණුකිරීමේ කොටුව","radio":"තේරීම් ","textField":"ලියන ප්‍රදේශය","textarea":"අකුරු ","hiddenField":"සැඟවුණු ප්‍රදේශය","button":"බොත්තම","select":"තෝරන්න ","imageButton":"රුප ","notSet":"<යොදා >","id":"අංකය","name":"නම","langDir":"භාෂා දිශාව","langDirLtr":"වමේසිට දකුණුට","langDirRtl":"දකුණේ සිට වමට","langCode":"භාෂා කේතය","longDescr":"සම්පුර්න පැහැදිලි කිරීම","cssClass":"විලාශ පත්‍ර පන්තිය","advisoryTitle":"උපදෙස් ","cssStyle":"විලාසය","ok":"නිරදි","cancel":"අවලංගු කිරීම","close":"වැසීම","preview":"නැවත ","resize":"විශාලත්වය නැවත වෙනස් කිරීම","generalTab":"පොදු කරුණු.","advancedTab":"දීය","validateNumberFailed":"මෙම වටිනාකම අංකයක් නොවේ","confirmNewPage":"ආරක්ෂා නොකළ සියලුම දත්තයන් මැකියනුලැබේ. ඔබට නව පිටුවක් ලබා ගැනීමට අවශ්‍යද?","confirmCancel":"ඇතම් විකල්පයන් වෙනස් කර ඇත. ඔබට මින් නික්මීමට අවශ්‍යද?","options":" විකල්ප","target":"අරමුණ","targetNew":"නව කව්ළුව","targetTop":"වැදගත් කව්ළුව","targetSelf":"එම කව්ළුව(_තම\\\\)","targetParent":"මව් කව්ළුව(_)","langDirLTR":"වමේසිට දකුණුට","langDirRTL":"දකුණේ සිට වමට","styles":"විලාසය","cssClasses":"විලාසපත්‍ර පන්තිය","width":"පළල","height":"උස","align":"ගැලපුම","alignLeft":"වම","alignRight":"දකුණ","alignCenter":"මධ්‍ය","alignJustify":"Justify","alignTop":"ඉ","alignMiddle":"මැද","alignBottom":"පහල","alignNone":"None","invalidValue":"වැරදී වටිනාකමකි","invalidHeight":"උස අංකයක් විය යුතුය","invalidWidth":"පළල අංකයක් විය යුතුය","invalidCssLength":"වටිනාකමක් නිරූපණය කිරීම \"%1\" ප්‍රදේශය ධන සංක්‍යාත්මක වටිනාකමක් හෝ නිවරදි නොවන CSS මිනුම් එකක(px, %, in, cm, mm, em, ex, pt, pc)","invalidHtmlLength":"වටිනාකමක් නිරූපණය කිරීම \"%1\" ප්‍රදේශය ධන සංක්‍යාත්මක වටිනාකමක් හෝ නිවරදි නොවන HTML මිනුම් එකක (px හෝ %).","invalidInlineStyle":"වටිනාකමක් නිරූපණය කිරීම පේළි විලාසයයට ආකෘතිය අනතර්ග විය යුතය \"නම : වටිනාකම\", තිත් කොමාවකින් වෙන් වෙන ලද.","cssLengthTooltip":"සංක්‍යා ඇතුලත් කිරීමේදී වටිනාකම තිත් ප්‍රමාණය නිවරදි CSS ඒකක(තිත්, %, අඟල්,සෙමි, mm, em, ex, pt, pc)","unavailable":"%1<span පන්තිය=\"ළඟා වියහැකි ද බලන්න\">, නොමැතිනම්</span>"},"about":{"copy":"පිටපත් අයිතිය සහ පිටපත් කිරීම;$1 .සියලුම හිමිකම් ඇවිරිණි.","dlgTitle":"CKEditor ගැන විස්තර","help":"උදව් සඳහා $1 ","moreInfo":"බලපත්‍ර තොරතුරු සදහා කරුණාකර අපගේ විද්‍යුත් ලිපිනයට පිවිසෙන්න:","title":"CKEditor ගැන විස්තර","userGuide":"CKEditor භාවිතා කිරීම පිළිබඳ "},"basicstyles":{"bold":"තද අකුරින් ලියනලද","italic":"බැධීඅකුරින් ලියන ලද","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"යටින් ඉරි අදින ලද"},"bidi":{"ltr":"වගන්ති දිශාව වමේ සිට දකුණට","rtl":"වගන්ති දිශාව දකුණේ සිට වමට"},"blockquote":{"toolbar":"උද්ධෘත කොටස"},"clipboard":{"copy":"පිටපත් කරන්න","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"කපාගන්න","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"අලවන්න","pasteArea":"අලවන ප්‍රදේශ","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"අලවන්න"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"පසුබිම් වර්ණය","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"වර්ණය","textColorTitle":"අක්ෂර වර්ණ"},"colordialog":{"clear":"පැහැදිලි","highlight":"මතුකර පෙන්වන්න","options":"වර්ණ විකල්ප","selected":"තෙරු වර්ණ","title":"වර්ණ තෝරන්න"},"templates":{"button":"අච්චුව","emptyListMsg":"කිසිම අච්චුවක් කලින් තීරණය කර ","insertOption":"සත්‍ය අන්තර්ගතයන් ප්‍රතිස්ථාපනය කරන්න","options":"අච්චු ","selectPromptMsg":"කරුණාකර සංස්කරණය සදහා අච්චුවක් ","title":"අන්තර්ගත් අච්චුන්"},"contextmenu":{"options":"අනතර්ග ලේඛණ විකල්ප"},"div":{"IdInputLabel":"අංකය","advisoryTitleInputLabel":"උපදේශාත්මක නාමය","cssClassInputLabel":"විලාසපත්‍ර පන්තිය","edit":"වෙනස්කිරීම","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"වමේසිට දකුණුට","langDirLabel":"භාෂා දිශාව","langDirRTLLabel":"දකුණේ සිට වමට","languageCodeInputLabel":"භාෂා ","remove":"ඉවත් කිරීම","styleSelectLabel":"විලාසය","title":"නිර්මාණය ","toolbar":"නිර්මාණය "},"toolbar":{"toolbarCollapse":"මෙවලම් තීරුව හැකුලුම.","toolbarExpand":"මෙවලම් තීරුව දීගහැරුම","toolbarGroups":{"document":"ලිපිය","clipboard":"ඇමිණුම වෙනස් කිරීම","editing":"සංස්කරණය","forms":"පෝරමය","basicstyles":"මුලික විලාසය","paragraph":"චේදය","links":"සබැඳිය","insert":"ඇතුලත් කිරීම","styles":"විලාසය","colors":"වර්ණය","tools":"මෙවලම්"},"toolbars":"සංස්කරණ මෙවලම් තීරුව"},"elementspath":{"eleLabel":"මුලද්‍රව්‍ය මාර්ගය","eleTitle":"%1 මුල"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"හිලව් කිරීම","replaceAll":"සියල්ලම හිලව් කරන්න","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"ආධාරය","flash":"Flash Animation","hiddenfield":"සැඟවුණු ප්‍රදේශය","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"පිටපත් ප්‍රවේශය","accessAlways":"හැමවිටම","accessNever":"කිසිදා නොවේ","accessSameDomain":"එකම වසමේ","alignAbsBottom":"පතුල","alignAbsMiddle":"Abs ","alignBaseline":"පාද රේඛාව","alignTextTop":"වගන්තිය ඉහල","bgcolor":"පසුබිම් වර්ණය","chkFull":"පුර්ණ තිරය සදහා අවසර","chkLoop":"පුඩුව","chkMenu":"සක්‍රිය බබලන මෙනුව","chkPlay":"ස්‌වයංක්‍රිය ක්‍රියාත්මක වීම","flashvars":"වෙනස්වන දත්ත","hSpace":"HSpace","properties":"බබලන ගුණ","propertiesTab":"ගුණ","quality":"තත්වය","qualityAutoHigh":"ස්‌වයංක්‍රිය ","qualityAutoLow":" ස්‌වයංක්‍රිය ","qualityBest":"වඩාත් ගැලපෙන","qualityHigh":"ඉහළ","qualityLow":"පහළ","qualityMedium":"මධ්‍ය","scale":"පරිමාණ","scaleAll":"සියල්ල ","scaleFit":"හරියටම ගැලපෙන","scaleNoBorder":"මාඉම් නොමැති","title":"බබලන ","vSpace":"VSpace","validateHSpace":"HSpace සංක්‍යාවක් විය යුතුය.","validateSrc":"URL හිස් නොවිය ","validateVSpace":"VSpace සංක්‍යාවක් විය යුතුය","windowMode":"ජනෙල ක්‍රමය","windowModeOpaque":"විනිවිද පෙනෙන","windowModeTransparent":"විනිවිද පෙනෙන","windowModeWindow":"ජනෙල"},"font":{"fontSize":{"label":"විශාලත්වය","voiceLabel":"අක්ෂර විශාලත්වය","panelTitle":"අක්ෂර විශාලත්වය"},"label":"අක්ෂරය","panelTitle":"අක්ෂර නාමය","voiceLabel":"අක්ෂර"},"forms":{"button":{"title":"බොත්තම් ගුණ","text":"වගන්තිය(වටිනාකම)","type":"වර්ගය","typeBtn":"බොත්තම","typeSbm":"යොමුකරනවා","typeRst":"නැවත ආරම්භකතත්වයට පත් කරනවා"},"checkboxAndRadio":{"checkboxTitle":"ලකුණු කිරීමේ කොටුවේ ලක්ෂණ","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"පෝරමයේ ","menu":"පෝරමයේ ගුණ/","action":"ගන්නා පියවර","method":"ක්‍රමය","encoding":"කේතීකරණය"},"hidden":{"title":"සැඟවුණු ප්‍රදේශයේ ","name":"නම","value":"Value"},"select":{"title":"තේරීම් ප්‍රදේශයේ ","selectInfo":"විස්තර තෝරන්න","opAvail":"ඉතුරුවී ඇති වීකල්ප","value":"Value","size":"විශාලත්වය","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"මකා දැම්ම"},"textarea":{"title":"Textarea Properties","cols":"සිරස් ","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"නම","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"වර්ගය","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"ආකෘතිය","panelTitle":"චේදයේ ","tag_address":"ලිපිනය","tag_div":"සාමාන්‍ය(DIV)","tag_h1":"ශීර්ෂය 1","tag_h2":"ශීර්ෂය 2","tag_h3":"ශීර්ෂය 3","tag_h4":"ශීර්ෂය 4","tag_h5":"ශීර්ෂය 5","tag_h6":"ශීර්ෂය 6","tag_p":"සාමාන්‍ය","tag_pre":"ආකෘතියන්"},"horizontalrule":{"toolbar":"තිරස් රේඛාවක් ඇතුලත් කරන්න"},"iframe":{"border":"සැකිල්ලේ කඩයිම් ","noUrl":"කරුණාකර රුපයේ URL ලියන්න","scrolling":"සක්ක්‍රිය කරන්න","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"කරුණාකර රුපයේ URL ලියන්න","alt":"විකල්ප ","border":"සීමාවවල ","btnUpload":"සේවාදායකය වෙත යොමුකිරිම","button2Img":"ඔබට තෝරන ලද රුපය පරිවර්තනය කිරීමට අවශ්‍යද?","hSpace":"HSpace","img2Button":"ඔබට තෝරන ලද රුපය පරිවර්තනය කිරීමට අවශ්‍යද?","infoTab":"රුපයේ තොරතුරු","linkTab":"සබැඳිය","lockRatio":"නවතන අනුපාතය ","menu":"රුපයේ ගුණ","resetSize":"නැවතත් විශාලත්වය වෙනස් කිරීම","title":"රුපයේ ","titleButton":"රුප බොත්තමේ ගුණ","upload":"උඩුගතකිරීම","urlMissing":"රුප මුලාශ්‍ර URL නැත.","vSpace":"VSpace","validateBorder":"මාඉම් සම්පුර්ණ සංක්‍යාවක් විය යුතුය.","validateHSpace":"HSpace සම්පුර්ණ සංක්‍යාවක් විය යුතුය","validateVSpace":"VSpace සම්පුර්ණ සංක්‍යාවක් විය යුතුය."},"indent":{"indent":"අතර පරතරය වැඩිකරන්න","outdent":"අතර පරතරය අඩුකරන්න"},"smiley":{"options":"හාස්‍ය විකල්ප","title":"හාස්‍යන් ඇතුලත් කිරීම","toolbar":"හාස්‍යන්"},"justify":{"block":"Justify","center":"මධ්‍ය","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"ප්‍රවේශ යතුර","advanced":"දීය","advisoryContentType":"උපදේශාත්මක අන්තර්ගත ආකාරය","advisoryTitle":"උපදේශාත්මක නාමය","anchor":{"toolbar":"ආධාරය","menu":"ආධාරය වෙනස් කිරීම","title":"ආධාරක ","name":"ආධාරකයේ නාමය","errorName":"කරුණාකර ආධාරකයේ නාමය ඇතුල් කරන්න","remove":"ආධාරකය ඉවත් කිරීම"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"විලාසපත්‍ර පන්තිය","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"අංකය","info":"Link Info","langCode":"භාෂා කේතය","langDir":"භාෂා දිශාව","langDirLTR":"වමේසිට දකුණුට","langDirRTL":"දකුණේ සිට වමට","menu":"Edit Link","name":"නම","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"විලාසය","tabIndex":"Tab Index","target":"අරමුණ","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"සබැඳිය","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"සබැඳිය","type":"Link Type","unlink":"Unlink","upload":"උඩුගතකිරීම"},"list":{"bulletedlist":"ඇතුලත් / ඉවත් කිරීම ලඉස්තුව","numberedlist":"ඇතුලත් / ඉවත් කිරීම අන්න්කිත ලඉස්තුව"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"කිසිවක්ම නොවේ","notset":"<යොදා >","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"වර්ගය","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"චේදය ඇතුලත් කරන්න"},"maximize":{"maximize":"විශාල කිරීම","minimize":"කුඩා කිරීම"},"newpage":{"toolbar":"නව පිටුවක්"},"pagebreak":{"alt":"පිටු බිදුම","toolbar":"මුද්‍රණය සඳහා පිටු බිදුමක් ඇතුලත් කරන්න"},"pastetext":{"button":"සාමාන්‍ය අක්ෂර ලෙස අලවන්න","title":"සාමාන්‍ය අක්ෂර ලෙස අලවන්න"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"වචන වලින් අලවන්න","toolbar":"වචන වලින් අලවන්න"},"preview":{"preview":"නැවත "},"print":{"toolbar":"මුද්‍රණය කරන්න"},"removeformat":{"toolbar":"සැකසීම වෙනස් කරන්න"},"save":{"toolbar":"ආරක්ෂා කරන්න"},"selectall":{"toolbar":"සියල්ලම "},"showblocks":{"toolbar":"කොටස පෙන්නන්න"},"sourcearea":{"toolbar":"මුලාශ්‍රය"},"specialchar":{"options":"විශේෂ ගුණාංග වීකල්ප","title":"විශේෂ ගුණාංග ","toolbar":"විශේෂ ගුණාංග ඇතුලත් "},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"විලාසය","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"සීමාවවල විශාලත්වය","caption":"Caption","cell":{"menu":"කොටුව","insertBefore":"පෙර කොටුවක් ඇතුල්කිරිම","insertAfter":"පසුව කොටුවක් ඇතුලත් ","deleteCell":"කොටුව මැකීම","merge":"කොටු එකට යාකිරිම","mergeRight":"දකුණට ","mergeDown":"පහලට ","splitHorizontal":"තිරස්ව කොටු පැතිරීම","splitVertical":"සිරස්ව කොටු පැතිරීම","title":"කොටු ","cellType":"කොටු වර්ගය","rowSpan":"පේළි පළල","colSpan":"සිරස් පළල","wordWrap":"වචන ගැලපුම","hAlign":"තිරස්ව ","vAlign":"සිරස්ව ","alignBaseline":"පාද රේඛාව","bgColor":"පසුබිම් වර්ණය","borderColor":"මායිම් ","data":"Data","header":"ශීර්ෂක","yes":"ඔව්","no":"නැත","invalidWidth":"කොටු පළල සංඛ්‍ය්ත්මක වටිනාකමක් විය යුතුය","invalidHeight":"කොටු උස සංඛ්‍ය්ත්මක වටිනාකමක් විය යුතුය","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"තෝරන්න"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"සිරස් ","deleteTable":"වගුව මකන්න","headers":"ශීර්ෂක","headersBoth":"දෙකම","headersColumn":"පළමූ සිරස් තීරුව","headersNone":"කිසිවක්ම නොවේ","headersRow":"පළමූ පේළිය","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"නැවත කිරීම","undo":"වෙනස් කිරීම"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sk.js b/wqflask/wqflask/static/packages/ckeditor/lang/sk.js
deleted file mode 100644
index 93dc9fd2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sk.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sk']={"editor":"Editor formátovaného textu","editorPanel":"Panel editora formátovaného textu","common":{"editorHelp":"Stlačte ALT 0 pre nápovedu","browseServer":"Prechádzať server","url":"URL","protocol":"Protokol","upload":"Odoslať","uploadSubmit":"Odoslať na server","image":"Obrázok","flash":"Flash","form":"Formulár","checkbox":"Zaškrtávacie políčko","radio":"Prepínač","textField":"Textové pole","textarea":"Textová oblasť","hiddenField":"Skryté pole","button":"Tlačidlo","select":"Rozbaľovací zoznam","imageButton":"Obrázkové tlačidlo","notSet":"<nenastavené>","id":"Id","name":"Meno","langDir":"Orientácia jazyka","langDirLtr":"Zľava doprava (LTR)","langDirRtl":"Sprava doľava (RTL)","langCode":"Kód jazyka","longDescr":"Dlhý popis URL","cssClass":"Trieda štýlu","advisoryTitle":"Pomocný titulok","cssStyle":"Štýl","ok":"OK","cancel":"Zrušiť","close":"Zatvorit","preview":"Náhľad","resize":"Zmeniť veľkosť","generalTab":"Hlavné","advancedTab":"Rozšírené","validateNumberFailed":"Hodnota nieje číslo.","confirmNewPage":"Prajete si načítat novú stránku? Všetky neuložené zmeny budú stratené. ","confirmCancel":"Niektore možnosti boli zmenené. Naozaj chcete zavrieť okno?","options":"Možnosti","target":"Cieľ","targetNew":"Nové okno (_blank)","targetTop":"Najvrchnejšie okno (_top)","targetSelf":"To isté okno (_self)","targetParent":"Rodičovské okno (_parent)","langDirLTR":"Zľava doprava (LTR)","langDirRTL":"Sprava doľava (RTL)","styles":"Štýl","cssClasses":"Triedy štýlu","width":"Šírka","height":"Výška","align":"Zarovnanie","alignLeft":"Vľavo","alignRight":"Vpravo","alignCenter":"Na stred","alignJustify":"Zarovnať do bloku","alignTop":"Nahor","alignMiddle":"Na stred","alignBottom":"Dole","alignNone":"Žiadne","invalidValue":"Neplatná hodnota.","invalidHeight":"Výška musí byť číslo.","invalidWidth":"Šírka musí byť číslo.","invalidCssLength":"Špecifikovaná hodnota pre pole \"%1\" musí byť kladné číslo s alebo bez platnej CSS mernej jednotky (px, %, in, cm, mm, em, ex, pt alebo pc).","invalidHtmlLength":"Špecifikovaná hodnota pre pole \"%1\" musí byť kladné číslo s alebo bez platnej HTML mernej jednotky (px alebo %).","invalidInlineStyle":"Zadaná hodnota pre inline štýl musí pozostávať s jedného, alebo viac dvojíc formátu \"názov: hodnota\", oddelených bodkočiarkou.","cssLengthTooltip":"Vložte číslo pre hodnotu v pixeloch alebo číslo so správnou CSS jednotou (px, %, in, cm, mm, em, ex, pt alebo pc).","unavailable":"%1<span class=\"cke_accessibility\">, nedostupný</span>"},"about":{"copy":"Copyright &copy; $1. Všetky práva vyhradené.","dlgTitle":"O CKEditor-e","help":"Zaškrtnite $1 pre pomoc.","moreInfo":"Pre informácie o licenciách, prosíme, navštívte našu web stránku:","title":"O CKEditor-e","userGuide":"Používateľská príručka KCEditor-a"},"basicstyles":{"bold":"Tučné","italic":"Kurzíva","strike":"Prečiarknuté","subscript":"Dolný index","superscript":"Horný index","underline":"Podčiarknuté"},"bidi":{"ltr":"Smer textu zľava doprava","rtl":"Smer textu sprava doľava"},"blockquote":{"toolbar":"Citácia"},"clipboard":{"copy":"Kopírovať","copyError":"Bezpečnostné nastavenia Vášho prehliadača nedovoľujú editoru automaticky spustiť operáciu kopírovania. Prosím, použite na to klávesnicu (Ctrl/Cmd+C).","cut":"Vystrihnúť","cutError":"Bezpečnostné nastavenia Vášho prehliadača nedovoľujú editoru automaticky spustiť operáciu vystrihnutia. Prosím, použite na to klávesnicu (Ctrl/Cmd+X).","paste":"Vložiť","pasteArea":"Miesto pre vloženie","pasteMsg":"Prosím, vložte nasledovný rámček použitím klávesnice (<STRONG>Ctrl/Cmd+V</STRONG>) a stlačte OK.","securityMsg":"Kvôli vašim bezpečnostným nastaveniam prehliadača editor nie je schopný pristupovať k vašej schránke na kopírovanie priamo. Vložte to preto do tohto okna.","title":"Vložiť"},"button":{"selectedLabel":"%1 (Vybrané)"},"colorbutton":{"auto":"Automaticky","bgColorTitle":"Farba pozadia","colors":{"000":"Čierna","800000":"Maroon","8B4513":"Sedlová hnedá","2F4F4F":"Tmavo bridlicovo sivá","008080":"Modrozelená","000080":"Tmavomodrá","4B0082":"Indigo","696969":"Tmavá sivá","B22222":"Ohňová tehlová","A52A2A":"Hnedá","DAA520":"Zlatobyľ","006400":"Tmavá zelená","40E0D0":"Tyrkysová","0000CD":"Stredná modrá","800080":"Purpurová","808080":"Sivá","F00":"Červená","FF8C00":"Tmavá oranžová","FFD700":"Zlatá","008000":"Zelená","0FF":"Azúrová","00F":"Modrá","EE82EE":"Fialová","A9A9A9":"Tmavá sivá","FFA07A":"Svetlo lososová","FFA500":"Oranžová","FFFF00":"Žltá","00FF00":"Vápenná","AFEEEE":"Svetlo tyrkysová","ADD8E6":"Svetlo modrá","DDA0DD":"Slivková","D3D3D3":"Svetlo sivá","FFF0F5":"Levanduľovo červená","FAEBD7":"Antická biela","FFFFE0":"Svetlo žltá","F0FFF0":"Medová","F0FFFF":"Azúrová","F0F8FF":"Alicovo modrá","E6E6FA":"Levanduľová","FFF":"Biela"},"more":"Viac farieb...","panelTitle":"Farby","textColorTitle":"Farba textu"},"colordialog":{"clear":"Vyčistiť","highlight":"Zvýrazniť","options":"Možnosti farby","selected":"Vybraná farba","title":"Vyberte farbu"},"templates":{"button":"Šablóny","emptyListMsg":"(Žiadne šablóny nedefinované)","insertOption":"Nahradiť aktuálny obsah","options":"Možnosti šablóny","selectPromptMsg":"Prosím vyberte šablónu na otvorenie v editore","title":"Šablóny obsahu"},"contextmenu":{"options":"Možnosti kontextového menu"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Pomocný titulok","cssClassInputLabel":"Triedy štýlu","edit":"Upraviť Div","inlineStyleInputLabel":"Inline štýl","langDirLTRLabel":"Zľava doprava (LTR)","langDirLabel":"Smer jazyka","langDirRTLLabel":"Zprava doľava (RTL)","languageCodeInputLabel":"Kód jazyka","remove":"Odstrániť Div","styleSelectLabel":"Štýl","title":"Vytvoriť Div kontajner","toolbar":"Vytvoriť Div kontajner"},"toolbar":{"toolbarCollapse":"Zbaliť lištu nástrojov","toolbarExpand":"Rozbaliť lištu nástrojov","toolbarGroups":{"document":"Dokument","clipboard":"Schránka pre kopírovanie/Späť","editing":"Upravovanie","forms":"Formuláre","basicstyles":"Základné štýly","paragraph":"Odstavec","links":"Odkazy","insert":"Vložiť","styles":"Štýly","colors":"Farby","tools":"Nástroje"},"toolbars":"Lišty nástrojov editora"},"elementspath":{"eleLabel":"Cesta prvkov","eleTitle":"%1 prvok"},"find":{"find":"Hľadať","findOptions":"Nájsť možnosti","findWhat":"Čo hľadať:","matchCase":"Rozlišovať malé a veľké písmená","matchCyclic":"Cykliť zhodu","matchWord":"Len celé slová","notFoundMsg":"Hľadaný text nebol nájdený.","replace":"Nahradiť","replaceAll":"Nahradiť všetko","replaceSuccessMsg":"%1 výskyt(ov) nahradených.","replaceWith":"Čím nahradiť:","title":"Nájsť a nahradiť"},"fakeobjects":{"anchor":"Kotva","flash":"Flash animácia","hiddenfield":"Skryté pole","iframe":"IFrame","unknown":"Neznámy objekt"},"flash":{"access":"Prístup skriptu","accessAlways":"Vždy","accessNever":"Nikdy","accessSameDomain":"Rovnaká doména","alignAbsBottom":"Úplne dole","alignAbsMiddle":"Do stredu","alignBaseline":"Na základnú čiaru","alignTextTop":"Na horný okraj textu","bgcolor":"Farba pozadia","chkFull":"Povoliť zobrazenie na celú obrazovku (fullscreen)","chkLoop":"Opakovanie","chkMenu":"Povoliť Flash Menu","chkPlay":"Automatické prehrávanie","flashvars":"Premenné pre Flash","hSpace":"H-medzera","properties":"Vlastnosti Flashu","propertiesTab":"Vlastnosti","quality":"Kvalita","qualityAutoHigh":"Automaticky vysoká","qualityAutoLow":"Automaticky nízka","qualityBest":"Najlepšia","qualityHigh":"Vysoká","qualityLow":"Nízka","qualityMedium":"Stredná","scale":"Mierka","scaleAll":"Zobraziť všetko","scaleFit":"Roztiahnuť, aby sedelo presne","scaleNoBorder":"Bez okrajov","title":"Vlastnosti Flashu","vSpace":"V-medzera","validateHSpace":"H-medzera musí byť číslo.","validateSrc":"URL nesmie byť prázdne.","validateVSpace":"V-medzera musí byť číslo","windowMode":"Mód okna","windowModeOpaque":"Nepriehľadný","windowModeTransparent":"Priehľadný","windowModeWindow":"Okno"},"font":{"fontSize":{"label":"Veľkosť","voiceLabel":"Veľkosť písma","panelTitle":"Veľkosť písma"},"label":"Font","panelTitle":"Názov fontu","voiceLabel":"Font"},"forms":{"button":{"title":"Vlastnosti tlačidla","text":"Text (Hodnota)","type":"Typ","typeBtn":"Tlačidlo","typeSbm":"Odoslať","typeRst":"Resetovať"},"checkboxAndRadio":{"checkboxTitle":"Vlastnosti zaškrtávacieho políčka","radioTitle":"Vlastnosti prepínača (radio button)","value":"Hodnota","selected":"Vybrané (selected)"},"form":{"title":"Vlastnosti formulára","menu":"Vlastnosti formulára","action":"Akcia (action)","method":"Metóda (method)","encoding":"Kódovanie (encoding)"},"hidden":{"title":"Vlastnosti skrytého poľa","name":"Názov (name)","value":"Hodnota"},"select":{"title":"Vlastnosti rozbaľovacieho zoznamu","selectInfo":"Informácie o výbere","opAvail":"Dostupné možnosti","value":"Hodnota","size":"Veľkosť","lines":"riadkov","chkMulti":"Povoliť viacnásobný výber","opText":"Text","opValue":"Hodnota","btnAdd":"Pridať","btnModify":"Upraviť","btnUp":"Hore","btnDown":"Dole","btnSetValue":"Nastaviť ako vybranú hodnotu","btnDelete":"Vymazať"},"textarea":{"title":"Vlastnosti textovej oblasti (textarea)","cols":"Stĺpcov","rows":"Riadkov"},"textfield":{"title":"Vlastnosti textového poľa","name":"Názov (name)","value":"Hodnota","charWidth":"Šírka poľa (podľa znakov)","maxChars":"Maximálny počet znakov","type":"Typ","typeText":"Text","typePass":"Heslo","typeEmail":"Email","typeSearch":"Hľadať","typeTel":"Telefónne číslo","typeUrl":"URL"}},"format":{"label":"Formát","panelTitle":"Formát","tag_address":"Adresa","tag_div":"Normálny (DIV)","tag_h1":"Nadpis 1","tag_h2":"Nadpis 2","tag_h3":"Nadpis 3","tag_h4":"Nadpis 4","tag_h5":"Nadpis 5","tag_h6":"Nadpis 6","tag_p":"Normálny","tag_pre":"Formátovaný"},"horizontalrule":{"toolbar":"Vložiť vodorovnú čiaru"},"iframe":{"border":"Zobraziť rám frame-u","noUrl":"Prosím, vložte URL iframe","scrolling":"Povoliť skrolovanie","title":"Vlastnosti IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Zadajte prosím URL obrázka","alt":"Alternatívny text","border":"Rám (border)","btnUpload":"Odoslať to na server","button2Img":"Chcete zmeniť vybrané obrázkové tlačidlo na jednoduchý obrázok?","hSpace":"H-medzera","img2Button":"Chcete zmeniť vybraný obrázok na obrázkové tlačidlo?","infoTab":"Informácie o obrázku","linkTab":"Odkaz","lockRatio":"Pomer zámky","menu":"Vlastnosti obrázka","resetSize":"Pôvodná veľkosť","title":"Vlastnosti obrázka","titleButton":"Vlastnosti obrázkového tlačidla","upload":"Nahrať","urlMissing":"Chýba URL zdroja obrázka.","vSpace":"V-medzera","validateBorder":"Rám (border) musí byť celé číslo.","validateHSpace":"H-medzera musí byť celé číslo.","validateVSpace":"V-medzera musí byť celé číslo."},"indent":{"indent":"Zväčšiť odsadenie","outdent":"Zmenšiť odsadenie"},"smiley":{"options":"Možnosti smajlíkov","title":"Vložiť smajlíka","toolbar":"Smajlíky"},"justify":{"block":"Zarovnať do bloku","center":"Zarovnať na stred","left":"Zarovnať vľavo","right":"Zarovnať vpravo"},"language":{"button":"Nastaviť jazyk","remove":"Odstrániť jazyk"},"link":{"acccessKey":"Prístupový kľúč","advanced":"Rozšírené","advisoryContentType":"Pomocný typ obsahu","advisoryTitle":"Pomocný titulok","anchor":{"toolbar":"Kotva","menu":"Upraviť kotvu","title":"Vlastnosti kotvy","name":"Názov kotvy","errorName":"Zadajte prosím názov kotvy","remove":"Odstrániť kotvu"},"anchorId":"Podľa Id objektu","anchorName":"Podľa mena kotvy","charset":"Priradená znaková sada","cssClasses":"Triedy štýlu","emailAddress":"E-Mailová adresa","emailBody":"Telo správy","emailSubject":"Predmet správy","id":"Id","info":"Informácie o odkaze","langCode":"Orientácia jazyka","langDir":"Orientácia jazyka","langDirLTR":"Zľava doprava (LTR)","langDirRTL":"Sprava doľava (RTL)","menu":"Upraviť odkaz","name":"Názov","noAnchors":"(V dokumente nie sú dostupné žiadne kotvy)","noEmail":"Zadajte prosím e-mailovú adresu","noUrl":"Zadajte prosím URL odkazu","other":"<iný>","popupDependent":"Závislosť (Netscape)","popupFeatures":"Vlastnosti vyskakovacieho okna","popupFullScreen":"Celá obrazovka (IE)","popupLeft":"Ľavý okraj","popupLocationBar":"Panel umiestnenia (location bar)","popupMenuBar":"Panel ponuky (menu bar)","popupResizable":"Meniteľná veľkosť (resizable)","popupScrollBars":"Posuvníky (scroll bars)","popupStatusBar":"Stavový riadok (status bar)","popupToolbar":"Panel nástrojov (toolbar)","popupTop":"Horný okraj","rel":"Vzťah (rel)","selectAnchor":"Vybrať kotvu","styles":"Štýl","tabIndex":"Poradie prvku (tab index)","target":"Cieľ","targetFrame":"<rámec>","targetFrameName":"Názov rámu cieľa","targetPopup":"<vyskakovacie okno>","targetPopupName":"Názov vyskakovacieho okna","title":"Odkaz","toAnchor":"Odkaz na kotvu v texte","toEmail":"E-mail","toUrl":"URL","toolbar":"Odkaz","type":"Typ odkazu","unlink":"Odstrániť odkaz","upload":"Nahrať"},"list":{"bulletedlist":"Vložiť/Odstrániť zoznam s odrážkami","numberedlist":"Vložiť/Odstrániť číslovaný zoznam"},"liststyle":{"armenian":"Arménske číslovanie","bulletedTitle":"Vlastnosti odrážkového zoznamu","circle":"Kruh","decimal":"Číselné (1, 2, 3, atď.)","decimalLeadingZero":"Číselné s nulou (01, 02, 03, atď.)","disc":"Disk","georgian":"Gregoriánske číslovanie (an, ban, gan, atď.)","lowerAlpha":"Malé latinské (a, b, c, d, e, atď.)","lowerGreek":"Malé grécke (alfa, beta, gama, atď.)","lowerRoman":"Malé rímske (i, ii, iii, iv, v, atď.)","none":"Nič","notset":"<nenastavené>","numberedTitle":"Vlastnosti číselného zoznamu","square":"Štvorec","start":"Začiatok","type":"Typ","upperAlpha":"Veľké latinské (A, B, C, D, E, atď.)","upperRoman":"Veľké rímske (I, II, III, IV, V, atď.)","validateStartNumber":"Začiatočné číslo číselného zoznamu musí byť celé číslo."},"magicline":{"title":"Sem vložte paragraf"},"maximize":{"maximize":"Maximalizovať","minimize":"Minimalizovať"},"newpage":{"toolbar":"Nová stránka"},"pagebreak":{"alt":"Zalomenie strany","toolbar":"Vložiť oddeľovač stránky pre tlač"},"pastetext":{"button":"Vložiť ako čistý text","title":"Vložiť ako čistý text"},"pastefromword":{"confirmCleanup":"Vkladaný text vyzerá byť skopírovaný z Wordu. Chcete ho automaticky vyčistiť pred vkladaním?","error":"Nebolo možné vyčistiť vložené dáta kvôli internej chybe","title":"Vložiť z Wordu","toolbar":"Vložiť z Wordu"},"preview":{"preview":"Náhľad"},"print":{"toolbar":"Tlač"},"removeformat":{"toolbar":"Odstrániť formátovanie"},"save":{"toolbar":"Uložiť"},"selectall":{"toolbar":"Vybrať všetko"},"showblocks":{"toolbar":"Ukázať bloky"},"sourcearea":{"toolbar":"Zdroj"},"specialchar":{"options":"Možnosti špeciálneho znaku","title":"Výber špeciálneho znaku","toolbar":"Vložiť špeciálny znak"},"scayt":{"btn_about":"O KPPP (Kontrola pravopisu počas písania)","btn_dictionaries":"Slovníky","btn_disable":"Zakázať KPPP (Kontrola pravopisu počas písania)","btn_enable":"Povoliť KPPP (Kontrola pravopisu počas písania)","btn_langs":"Jazyky","btn_options":"Možnosti","text_title":""},"stylescombo":{"label":"Štýly","panelTitle":"Formátovanie štýlov","panelTitle1":"Štýly bloku","panelTitle2":"Vnútroriadkové (inline) štýly","panelTitle3":"Štýly objeku"},"table":{"border":"Šírka rámu (border)","caption":"Popis","cell":{"menu":"Bunka","insertBefore":"Vložiť bunku pred","insertAfter":"Vložiť bunku za","deleteCell":"Vymazať bunky","merge":"Zlúčiť bunky","mergeRight":"Zlúčiť doprava","mergeDown":"Zlúčiť dole","splitHorizontal":"Rozdeliť bunky horizontálne","splitVertical":"Rozdeliť bunky vertikálne","title":"Vlastnosti bunky","cellType":"Typ bunky","rowSpan":"Rozsah riadkov","colSpan":"Rozsah stĺpcov","wordWrap":"Zalomovanie riadkov","hAlign":"Horizontálne zarovnanie","vAlign":"Vertikálne zarovnanie","alignBaseline":"Základná čiara (baseline)","bgColor":"Farba pozadia","borderColor":"Farba rámu","data":"Dáta","header":"Hlavička","yes":"Áno","no":"Nie","invalidWidth":"Šírka bunky musí byť číslo.","invalidHeight":"Výška bunky musí byť číslo.","invalidRowSpan":"Rozsah riadkov musí byť celé číslo.","invalidColSpan":"Rozsah stĺpcov musí byť celé číslo.","chooseColor":"Vybrať"},"cellPad":"Odsadenie obsahu (cell padding)","cellSpace":"Vzdialenosť buniek (cell spacing)","column":{"menu":"Stĺpec","insertBefore":"Vložiť stĺpec pred","insertAfter":"Vložiť stĺpec po","deleteColumn":"Zmazať stĺpce"},"columns":"Stĺpce","deleteTable":"Vymazať tabuľku","headers":"Hlavička","headersBoth":"Obe","headersColumn":"Prvý stĺpec","headersNone":"Žiadne","headersRow":"Prvý riadok","invalidBorder":"Širka rámu musí byť číslo.","invalidCellPadding":"Odsadenie v bunkách (cell padding) musí byť kladné číslo.","invalidCellSpacing":"Medzera mädzi bunkami (cell spacing) musí byť kladné číslo.","invalidCols":"Počet stĺpcov musí byť číslo väčšie ako 0.","invalidHeight":"Výška tabuľky musí byť číslo.","invalidRows":"Počet riadkov musí byť číslo väčšie ako 0.","invalidWidth":"Širka tabuľky musí byť číslo.","menu":"Vlastnosti tabuľky","row":{"menu":"Riadok","insertBefore":"Vložiť riadok pred","insertAfter":"Vložiť riadok po","deleteRow":"Vymazať riadky"},"rows":"Riadky","summary":"Prehľad","title":"Vlastnosti tabuľky","toolbar":"Tabuľka","widthPc":"percent","widthPx":"pixelov","widthUnit":"jednotka šírky"},"undo":{"redo":"Znovu","undo":"Späť"},"wsc":{"btnIgnore":"Ignorovať","btnIgnoreAll":"Ignorovať všetko","btnReplace":"Prepísat","btnReplaceAll":"Prepísat všetko","btnUndo":"Späť","changeTo":"Zmeniť na","errorLoading":"Chyba pri načítaní slovníka z adresy: %s.","ieSpellDownload":"Kontrola pravopisu nie je naištalovaná. Chcete ju teraz stiahnuť?","manyChanges":"Kontrola pravopisu dokončená: Bolo zmenených %1 slov","noChanges":"Kontrola pravopisu dokončená: Neboli zmenené žiadne slová","noMispell":"Kontrola pravopisu dokončená: Neboli nájdené žiadne chyby pravopisu","noSuggestions":"- Žiadny návrh -","notAvailable":"Prepáčte, ale služba je momentálne nedostupná.","notInDic":"Nie je v slovníku","oneChange":"Kontrola pravopisu dokončená: Bolo zmenené jedno slovo","progress":"Prebieha kontrola pravopisu...","title":"Skontrolovať pravopis","toolbar":"Kontrola pravopisu"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sl.js b/wqflask/wqflask/static/packages/ckeditor/lang/sl.js
deleted file mode 100644
index 2afeec0f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sl.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sl']={"editor":"Bogat Urejevalnik Besedila","editorPanel":"Rich Text Editor plošča","common":{"editorHelp":"Pritisnite ALT 0 za pomoč","browseServer":"Prebrskaj na strežniku","url":"URL","protocol":"Protokol","upload":"Naloži","uploadSubmit":"Pošlji na strežnik","image":"Slika","flash":"Flash","form":"Obrazec","checkbox":"Potrditveno polje","radio":"Izbirno polje","textField":"Vnosno polje","textarea":"Vnosno območje","hiddenField":"Skrito polje","button":"Gumb","select":"Spustno Polje","imageButton":"Slikovni Gumb","notSet":"<ni določen>","id":"Id","name":"Ime","langDir":"Smer jezika","langDirLtr":"Od leve proti desni (LTR)","langDirRtl":"Od desne proti levi (RTL)","langCode":"Koda Jezika","longDescr":"Dolg opis URL-ja","cssClass":"Razred stilne predloge","advisoryTitle":"Predlagani naslov","cssStyle":"Slog","ok":"V redu","cancel":"Prekliči","close":"Zapri","preview":"Predogled","resize":"Potegni za spremembo velikosti","generalTab":"Splošno","advancedTab":"Napredno","validateNumberFailed":"Ta vrednost ni število.","confirmNewPage":"Vse neshranjene spremembe te vsebine bodo izgubljene. Ali res želite naložiti novo stran?","confirmCancel":"Nekaj možnosti je bilo spremenjenih. Ali res želite zapreti okno?","options":"Možnosti","target":"Cilj","targetNew":"Novo Okno (_blank)","targetTop":"Vrhovno Okno (_top)","targetSelf":"Enako Okno (_self)","targetParent":"Matično Okno (_parent)","langDirLTR":"Od leve proti desni (LTR)","langDirRTL":"Od desne proti levi (RTL)","styles":"Slog","cssClasses":"Razred stilne predloge","width":"Širina","height":"Višina","align":"Poravnava","alignLeft":"Levo","alignRight":"Desno","alignCenter":"Sredinsko","alignJustify":"Obojestranska poravnava","alignTop":"Na vrh","alignMiddle":"V sredino","alignBottom":"Na dno","alignNone":"Brez poravnave","invalidValue":"Neveljavna vrednost.","invalidHeight":"Višina mora biti število.","invalidWidth":"Širina mora biti število.","invalidCssLength":"Vrednost določena za \"%1\" polje mora biti pozitivna številka z ali brez veljavne CSS enote za merjenje (px, %, in, cm, mm, em, ex, pt, ali pc).","invalidHtmlLength":"Vrednost določena za \"%1\" polje mora biti pozitivna številka z ali brez veljavne HTML enote za merjenje (px ali %).","invalidInlineStyle":"Vrednost določena za inline slog mora biti sestavljena iz ene ali več tork (tuples) z obliko \"ime : vrednost\", ločenih z podpičji.","cssLengthTooltip":"Vnesite številko za vrednost v slikovnih pikah (pixels) ali številko z veljavno CSS enoto (px, %, in, cm, mm, em, ex, pt, ali pc).","unavailable":"%1<span class=\"cke_accessibility\">, nedosegljiv</span>"},"about":{"copy":"Copyright &copy; $1. Vse pravice pridržane.","dlgTitle":"O programu CKEditor","help":"Preverite $1 za pomoč.","moreInfo":"Za informacijo o licenci prosim obiščite našo spletno stran:","title":"O programu CKEditor","userGuide":"CKEditor Navodila za Uporabo"},"basicstyles":{"bold":"Krepko","italic":"Ležeče","strike":"Prečrtano","subscript":"Podpisano","superscript":"Nadpisano","underline":"Podčrtano"},"bidi":{"ltr":"Smer besedila od leve proti desni","rtl":"Smer besedila od desne proti levi"},"blockquote":{"toolbar":"Citat"},"clipboard":{"copy":"Kopiraj","copyError":"Varnostne nastavitve brskalnika ne dopuščajo samodejnega kopiranja. Uporabite kombinacijo tipk na tipkovnici (Ctrl/Cmd+C).","cut":"Izreži","cutError":"Varnostne nastavitve brskalnika ne dopuščajo samodejnega izrezovanja. Uporabite kombinacijo tipk na tipkovnici (Ctrl/Cmd+X).","paste":"Prilepi","pasteArea":"Prilepi Prostor","pasteMsg":"Prosim prilepite v sleči okvir s pomočjo tipkovnice (<STRONG>Ctrl/Cmd+V</STRONG>) in pritisnite <STRONG>V redu</STRONG>.","securityMsg":"Zaradi varnostnih nastavitev vašega brskalnika urejevalnik ne more neposredno dostopati do odložišča. Vsebino odložišča ponovno prilepite v to okno.","title":"Prilepi"},"button":{"selectedLabel":"%1 (Izbrano)"},"colorbutton":{"auto":"Samodejno","bgColorTitle":"Barva ozadja","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Več barv...","panelTitle":"Colors","textColorTitle":"Barva besedila"},"colordialog":{"clear":"Počisti","highlight":"Poudarjeno","options":"Barvne Možnosti","selected":"Izbrano","title":"Izberi barvo"},"templates":{"button":"Predloge","emptyListMsg":"(Ni pripravljenih predlog)","insertOption":"Zamenjaj trenutno vsebino","options":"Možnosti Predloge","selectPromptMsg":"Izberite predlogo, ki jo želite odpreti v urejevalniku<br>(trenutna vsebina bo izgubljena):","title":"Vsebinske predloge"},"contextmenu":{"options":"Možnosti Kontekstnega Menija"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Predlagani naslov","cssClassInputLabel":"Razred stilne predloge","edit":"Uredi Div","inlineStyleInputLabel":"Inline Slog","langDirLTRLabel":"Od leve proti desni (LTR)","langDirLabel":"Smer jezika","langDirRTLLabel":"Od desne proti levi (RTL)","languageCodeInputLabel":"Koda Jezika","remove":"Odstrani Div","styleSelectLabel":"Slog","title":"Ustvari Div Posodo","toolbar":"Ustvari Div Posodo"},"toolbar":{"toolbarCollapse":"Skrči Orodno Vrstico","toolbarExpand":"Razširi Orodno Vrstico","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Urejevalnik orodne vrstice"},"elementspath":{"eleLabel":"Pot elementov","eleTitle":"%1 element"},"find":{"find":"Najdi","findOptions":"Find Options","findWhat":"Najdi:","matchCase":"Razlikuj velike in male črke","matchCyclic":"Primerjaj znake v cirilici","matchWord":"Samo cele besede","notFoundMsg":"Navedeno besedilo ni bilo najdeno.","replace":"Zamenjaj","replaceAll":"Zamenjaj vse","replaceSuccessMsg":"%1 pojavitev je bilo zamenjano.","replaceWith":"Zamenjaj z:","title":"Najdi in zamenjaj"},"fakeobjects":{"anchor":"Sidro","flash":"Flash animacija","hiddenfield":"Skrito polje","iframe":"IFrame","unknown":"Neznan objekt"},"flash":{"access":"Dostop skript","accessAlways":"Vedno","accessNever":"Nikoli","accessSameDomain":"Samo ista domena","alignAbsBottom":"Popolnoma na dno","alignAbsMiddle":"Popolnoma v sredino","alignBaseline":"Na osnovno črto","alignTextTop":"Besedilo na vrh","bgcolor":"Barva ozadja","chkFull":"Dovoli celozaslonski način","chkLoop":"Ponavljanje","chkMenu":"Omogoči Flash Meni","chkPlay":"Samodejno predvajaj","flashvars":"Spremenljivke za Flash","hSpace":"Vodoravni razmik","properties":"Lastnosti Flash","propertiesTab":"Lastnosti","quality":"Kakovost","qualityAutoHigh":"Samodejno visoka","qualityAutoLow":"Samodejno nizka","qualityBest":"Najvišja","qualityHigh":"Visoka","qualityLow":"Nizka","qualityMedium":"Srednja","scale":"Povečava","scaleAll":"Pokaži vse","scaleFit":"Natančno prileganje","scaleNoBorder":"Brez obrobe","title":"Lastnosti Flash","vSpace":"Navpični razmik","validateHSpace":"Vodoravni razmik mora biti število.","validateSrc":"Vnesite URL povezave","validateVSpace":"Navpični razmik mora biti število.","windowMode":"Vrsta okna","windowModeOpaque":"Motno","windowModeTransparent":"Prosojno","windowModeWindow":"Okno"},"font":{"fontSize":{"label":"Velikost","voiceLabel":"Velikost","panelTitle":"Velikost"},"label":"Pisava","panelTitle":"Pisava","voiceLabel":"Pisava"},"forms":{"button":{"title":"Lastnosti gumba","text":"Besedilo (Vrednost)","type":"Tip","typeBtn":"Gumb","typeSbm":"Potrdi","typeRst":"Ponastavi"},"checkboxAndRadio":{"checkboxTitle":"Lastnosti potrditvenega polja","radioTitle":"Lastnosti izbirnega polja","value":"Vrednost","selected":"Izbrano"},"form":{"title":"Lastnosti obrazca","menu":"Lastnosti obrazca","action":"Akcija","method":"Metoda","encoding":"Kodiranje znakov"},"hidden":{"title":"Lastnosti skritega polja","name":"Ime","value":"Vrednost"},"select":{"title":"Lastnosti spustnega seznama","selectInfo":"Podatki","opAvail":"Razpoložljive izbire","value":"Vrednost","size":"Velikost","lines":"vrstic","chkMulti":"Dovoli izbor večih vrstic","opText":"Besedilo","opValue":"Vrednost","btnAdd":"Dodaj","btnModify":"Spremeni","btnUp":"Gor","btnDown":"Dol","btnSetValue":"Postavi kot privzeto izbiro","btnDelete":"Izbriši"},"textarea":{"title":"Lastnosti vnosnega območja","cols":"Stolpcev","rows":"Vrstic"},"textfield":{"title":"Lastnosti vnosnega polja","name":"Ime","value":"Vrednost","charWidth":"Dolžina","maxChars":"Največje število znakov","type":"Tip","typeText":"Besedilo","typePass":"Geslo","typeEmail":"E-pošta","typeSearch":"Iskanje","typeTel":"Telefonska Številka","typeUrl":"URL"}},"format":{"label":"Oblika","panelTitle":"Oblika","tag_address":"Napis","tag_div":"Navaden (DIV)","tag_h1":"Naslov 1","tag_h2":"Naslov 2","tag_h3":"Naslov 3","tag_h4":"Naslov 4","tag_h5":"Naslov 5","tag_h6":"Naslov 6","tag_p":"Navaden","tag_pre":"Oblikovan"},"horizontalrule":{"toolbar":"Vstavi vodoravno črto"},"iframe":{"border":"Pokaži mejo okvira","noUrl":"Prosimo, vnesite iframe URL","scrolling":"Omogoči scrollbars","title":"IFrame Lastnosti","toolbar":"IFrame"},"image":{"alertUrl":"Vnesite URL slike","alt":"Nadomestno besedilo","border":"Obroba","btnUpload":"Pošlji na strežnik","button2Img":"Želiš pretvoriti izbrani gumb s sliko v preprosto sliko?","hSpace":"Vodoravni razmik","img2Button":"Želiš pretvoriti izbrano sliko v gumb s sliko?","infoTab":"Podatki o sliki","linkTab":"Povezava","lockRatio":"Zakleni razmerje","menu":"Lastnosti slike","resetSize":"Ponastavi velikost","title":"Lastnosti slike","titleButton":"Lastnosti gumba s sliko","upload":"Pošlji","urlMissing":"Manjka vir (URL) slike.","vSpace":"Navpični razmik","validateBorder":"Meja mora biti celo število.","validateHSpace":"HSpace mora biti celo število.","validateVSpace":"VSpace mora biti celo število."},"indent":{"indent":"Povečaj zamik","outdent":"Zmanjšaj zamik"},"smiley":{"options":"Možnosti Smeška","title":"Vstavi smeška","toolbar":"Smeško"},"justify":{"block":"Obojestranska poravnava","center":"Sredinska poravnava","left":"Leva poravnava","right":"Desna poravnava"},"language":{"button":"Nastavi jezik","remove":"Odstrani jezik"},"link":{"acccessKey":"Dostopno Geslo","advanced":"Napredno","advisoryContentType":"Predlagani tip vsebine (content-type)","advisoryTitle":"Predlagani naslov","anchor":{"toolbar":"Vstavi/uredi zaznamek","menu":"Lastnosti zaznamka","title":"Lastnosti zaznamka","name":"Ime zaznamka","errorName":"Prosim vnesite ime zaznamka","remove":"Remove Anchor"},"anchorId":"Po ID-ju elementa","anchorName":"Po imenu zaznamka","charset":"Kodna tabela povezanega vira","cssClasses":"Razred stilne predloge","emailAddress":"Elektronski naslov","emailBody":"Vsebina sporočila","emailSubject":"Predmet sporočila","id":"Id","info":"Podatki o povezavi","langCode":"Smer jezika","langDir":"Smer jezika","langDirLTR":"Od leve proti desni (LTR)","langDirRTL":"Od desne proti levi (RTL)","menu":"Uredi povezavo","name":"Ime","noAnchors":"(V tem dokumentu ni zaznamkov)","noEmail":"Vnesite elektronski naslov","noUrl":"Vnesite URL povezave","other":"<drug>","popupDependent":"Podokno (Netscape)","popupFeatures":"Značilnosti pojavnega okna","popupFullScreen":"Celozaslonska slika (IE)","popupLeft":"Lega levo","popupLocationBar":"Naslovna vrstica","popupMenuBar":"Menijska vrstica","popupResizable":"Spremenljive velikosti","popupScrollBars":"Drsniki","popupStatusBar":"Vrstica stanja","popupToolbar":"Orodna vrstica","popupTop":"Lega na vrhu","rel":"Odnos","selectAnchor":"Izberi zaznamek","styles":"Slog","tabIndex":"Številka tabulatorja","target":"Cilj","targetFrame":"<okvir>","targetFrameName":"Ime ciljnega okvirja","targetPopup":"<pojavno okno>","targetPopupName":"Ime pojavnega okna","title":"Povezava","toAnchor":"Zaznamek na tej strani","toEmail":"Elektronski naslov","toUrl":"URL","toolbar":"Vstavi/uredi povezavo","type":"Vrsta povezave","unlink":"Odstrani povezavo","upload":"Prenesi"},"list":{"bulletedlist":"Označen seznam","numberedlist":"Oštevilčen seznam"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Vstavite odstavek tukaj"},"maximize":{"maximize":"Maksimiraj","minimize":"Minimiraj"},"newpage":{"toolbar":"Nova stran"},"pagebreak":{"alt":"Prelom Strani","toolbar":"Vstavi prelom strani"},"pastetext":{"button":"Prilepi kot golo besedilo","title":"Prilepi kot golo besedilo"},"pastefromword":{"confirmCleanup":"Besedilo, ki ga želite prilepiti je kopirano iz Word-a. Ali ga želite očistiti, preden ga prilepite?","error":"Ni bilo mogoče očistiti prilepljenih podatkov zaradi notranje napake","title":"Prilepi iz Worda","toolbar":"Prilepi iz Worda"},"preview":{"preview":"Predogled"},"print":{"toolbar":"Natisni"},"removeformat":{"toolbar":"Odstrani oblikovanje"},"save":{"toolbar":"Shrani"},"selectall":{"toolbar":"Izberi vse"},"showblocks":{"toolbar":"Prikaži ograde"},"sourcearea":{"toolbar":"Izvorna koda"},"specialchar":{"options":"Možnosti Posebnega Znaka","title":"Izberi Posebni Znak","toolbar":"Vstavi posebni znak"},"scayt":{"btn_about":"O storitvi SCAYT","btn_dictionaries":"Slovarji","btn_disable":"Onemogoči SCAYT","btn_enable":"Omogoči SCAYT","btn_langs":"Jeziki","btn_options":"Možnosti","text_title":""},"stylescombo":{"label":"Slog","panelTitle":"Oblikovalni Stili","panelTitle1":"Slogi odstavkov","panelTitle2":"Slogi besedila","panelTitle3":"Slogi objektov"},"table":{"border":"Velikost obrobe","caption":"Naslov","cell":{"menu":"Celica","insertBefore":"Vstavi celico pred","insertAfter":"Vstavi celico za","deleteCell":"Izbriši celice","merge":"Združi celice","mergeRight":"Združi desno","mergeDown":"Druži navzdol","splitHorizontal":"Razdeli celico vodoravno","splitVertical":"Razdeli celico navpično","title":"Lastnosti celice","cellType":"Vrsta celice","rowSpan":"Razpon vrstic","colSpan":"Razpon stolpcev","wordWrap":"Prelom besedila","hAlign":"Vodoravna poravnava","vAlign":"Navpična poravnava","alignBaseline":"Osnovnica","bgColor":"Barva ozadja","borderColor":"Barva obrobe","data":"Podatki","header":"Glava","yes":"Da","no":"Ne","invalidWidth":"Širina celice mora biti število.","invalidHeight":"Višina celice mora biti število.","invalidRowSpan":"Razpon vrstic mora biti celo število.","invalidColSpan":"Razpon stolpcev mora biti celo število.","chooseColor":"Izberi"},"cellPad":"Polnilo med celicami","cellSpace":"Razmik med celicami","column":{"menu":"Stolpec","insertBefore":"Vstavi stolpec pred","insertAfter":"Vstavi stolpec za","deleteColumn":"Izbriši stolpce"},"columns":"Stolpci","deleteTable":"Izbriši tabelo","headers":"Glave","headersBoth":"Oboje","headersColumn":"Prvi stolpec","headersNone":"Brez","headersRow":"Prva vrstica","invalidBorder":"Širina obrobe mora biti število.","invalidCellPadding":"Zamik celic mora biti število","invalidCellSpacing":"Razmik med celicami mora biti število.","invalidCols":"Število stolpcev mora biti večje od 0.","invalidHeight":"Višina tabele mora biti število.","invalidRows":"Število vrstic mora biti večje od 0.","invalidWidth":"Širina tabele mora biti število.","menu":"Lastnosti tabele","row":{"menu":"Vrstica","insertBefore":"Vstavi vrstico pred","insertAfter":"Vstavi vrstico za","deleteRow":"Izbriši vrstice"},"rows":"Vrstice","summary":"Povzetek","title":"Lastnosti tabele","toolbar":"Tabela","widthPc":"procentov","widthPx":"pik","widthUnit":"enota širine"},"undo":{"redo":"Ponovi","undo":"Razveljavi"},"wsc":{"btnIgnore":"Prezri","btnIgnoreAll":"Prezri vse","btnReplace":"Zamenjaj","btnReplaceAll":"Zamenjaj vse","btnUndo":"Razveljavi","changeTo":"Spremeni v","errorLoading":"Napaka pri nalaganju storitve programa na naslovu %s.","ieSpellDownload":"Črkovalnik ni nameščen. Ali ga želite prenesti sedaj?","manyChanges":"Črkovanje je končano: Spremenjenih je bilo %1 besed","noChanges":"Črkovanje je končano: Nobena beseda ni bila spremenjena","noMispell":"Črkovanje je končano: Brez napak","noSuggestions":"- Ni predlogov -","notAvailable":"Oprostite, storitev trenutno ni dosegljiva.","notInDic":"Ni v slovarju","oneChange":"Črkovanje je končano: Spremenjena je bila ena beseda","progress":"Preverjanje črkovanja se izvaja...","title":"Črkovalnik","toolbar":"Preveri črkovanje"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sq.js b/wqflask/wqflask/static/packages/ckeditor/lang/sq.js
deleted file mode 100644
index fff59995..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sq.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sq']={"editor":"Redaktues i Pasur Teksti","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Shtyp ALT 0 për ndihmë","browseServer":"Shfleto në Server","url":"URL","protocol":"Protokolli","upload":"Ngarko","uploadSubmit":"Dërgo në server","image":"Imazh","flash":"Objekt flash","form":"Formular","checkbox":"Checkbox","radio":"Buton radio","textField":"Fushë tekst","textarea":"Hapësirë tekst","hiddenField":"Fushë e fshehur","button":"Buton","select":"Menu zgjedhjeje","imageButton":"Buton imazhi","notSet":"<e pazgjedhur>","id":"Id","name":"Emër","langDir":"Kod gjuhe","langDirLtr":"Nga e majta në të djathtë (LTR)","langDirRtl":"Nga e djathta në të majtë (RTL)","langCode":"Kod gjuhe","longDescr":"Përshkrim i hollësishëm","cssClass":"Klasa stili CSS","advisoryTitle":"Titull","cssStyle":"Stil","ok":"OK","cancel":"Anulo","close":"Mbyll","preview":"Parashiko","resize":"Ripërmaso","generalTab":"Të përgjithshme","advancedTab":"Të përparuara","validateNumberFailed":"Vlera e futur nuk është një numër","confirmNewPage":"Çdo ndryshim që nuk është ruajtur do humbasë. Je i sigurtë që dëshiron të krijosh një faqe të re?","confirmCancel":"Disa opsione kanë ndryshuar. Je i sigurtë që dëshiron ta mbyllësh dritaren?","options":"Opsione","target":"Objektivi","targetNew":"Dritare e re (_blank)","targetTop":"Dritare në plan të parë (_top)","targetSelf":"E njëjta dritare (_self)","targetParent":"Dritarja prind (_parent)","langDirLTR":"Nga e majta në të djathë (LTR)","langDirRTL":"Nga e djathta në të majtë (RTL)","styles":"Stil","cssClasses":"Klasa Stili CSS","width":"Gjerësi","height":"Lartësi","align":"Rreshtim","alignLeft":"Majtas","alignRight":"Djathtas","alignCenter":"Qendër","alignJustify":"Zgjero","alignTop":"Lart","alignMiddle":"Në mes","alignBottom":"Poshtë","alignNone":"None","invalidValue":"Vlerë e pavlefshme","invalidHeight":"Lartësia duhet të jetë një numër","invalidWidth":"Gjerësia duhet të jetë një numër","invalidCssLength":"Vlera e fushës \"%1\" duhet të jetë një numër pozitiv me apo pa njësi matëse të vlefshme CSS (px, %, in, cm, mm, em, ex, pt ose pc).","invalidHtmlLength":"Vlera e fushës \"%1\" duhet të jetë një numër pozitiv me apo pa njësi matëse të vlefshme HTML (px ose %)","invalidInlineStyle":"Stili inline duhet të jetë një apo disa vlera të formatit \"emër: vlerë\", ndarë nga pikëpresje.","cssLengthTooltip":"Fut një numër për vlerën në pixel apo një numër me një njësi të vlefshme CSS (px, %, in, cm, mm, ex, pt, ose pc).","unavailable":"%1<span class=\"cke_accessibility\">, i padisponueshëm</span>"},"about":{"copy":"Të drejtat e kopjimit &copy; $1. Të gjitha të drejtat e rezervuara.","dlgTitle":"Rreth CKEditor","help":"Kontrollo $1 për ndihmë.","moreInfo":"Për informacione rreth licencave shih faqen tonë:","title":"Rreth CKEditor","userGuide":"Udhëzuesi i Shfrytëzuesit të CKEditor"},"basicstyles":{"bold":"Trash","italic":"Pjerrët","strike":"Nëpërmes","subscript":"Nën-skriptë","superscript":"Super-skriptë","underline":"Nënvijëzuar"},"bidi":{"ltr":"Drejtimi i tekstit nga e majta në të djathtë","rtl":"Drejtimi i tekstit nga e djathta në të majtë"},"blockquote":{"toolbar":"Citatet"},"clipboard":{"copy":"Kopjo","copyError":"Të dhënat e sigurisë së shfletuesit tuaj nuk lejojnë që redaktuesi automatikisht të kryej veprimin e kopjimit. Ju lutemi shfrytëzoni tastierën për këtë veprim (Ctrl/Cmd+C).","cut":"Preje","cutError":"Të dhënat e sigurisë së shfletuesit tuaj nuk lejojnë që redaktuesi automatikisht të kryej veprimin e prerjes. Ju lutemi shfrytëzoni tastierën për këtë veprim (Ctrl/Cmd+X).","paste":"Hidhe","pasteArea":"Hapësira Hedhëse","pasteMsg":"Ju lutemi hidhni brenda kutizës në vijim duke shfrytëzuar tastierën (<strong>Ctrl/Cmd+V</strong>) dhe shtypni Mirë.","securityMsg":"Për shkak të dhënave të sigurisë së shfletuesit tuaj, redaktuesi nuk është në gjendje të i qaset drejtpërdrejtë të dhanve të tabelës suaj të punës. Ju duhet të hidhni atë përsëri në këtë dritare.","title":"Hidhe"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatik","bgColorTitle":"Ngjyra e Prapavijës","colors":{"000":"E zezë","800000":"Ngjyrë gështenjë","8B4513":"Ngjyrë Shale Kafe","2F4F4F":"Ngjyrë Gri të errët ardëz","008080":"Ngjyrë bajukë","000080":"Ngjyrë Marine","4B0082":"Indigo","696969":"Gri e Errët","B22222":"Tullë në Flakë","A52A2A":"Ngjytë Kafe","DAA520":"Shkop i Artë","006400":"E Gjelbër e Errët","40E0D0":"Ngjyrë e Bruztë","0000CD":"E Kaltër e Mesme","800080":"Vjollcë","808080":"Gri","F00":"E Kuqe","FF8C00":"E Portokalltë e Errët","FFD700":"Ngjyrë Ari","008000":"E Gjelbërt","0FF":"Cyan","00F":"E Kaltër","EE82EE":"Vjollcë","A9A9A9":"Gri e Zbehtë","FFA07A":"Salmon i Ndritur","FFA500":"E Portokalltë","FFFF00":"E Verdhë","00FF00":"Ngjyrë Gëlqere","AFEEEE":"Ngjyrë e Bruztë e Zbehtë","ADD8E6":"E Kaltër e Ndritur","DDA0DD":"Ngjyrë Llokumi","D3D3D3":"Gri e Ndritur","FFF0F5":"Ngjyrë Purpur e Skuqur","FAEBD7":"E Bardhë Antike","FFFFE0":"E verdhë e Ndritur","F0FFF0":"Ngjyrë Nektari","F0FFFF":"Ngjyrë Qielli","F0F8FF":"E Kaltër Alice","E6E6FA":"Ngjyrë Purpur e Zbetë","FFF":"E bardhë"},"more":"Më Shumë Ngjyra...","panelTitle":"Ngjyrat","textColorTitle":"Ngjyra e Tekstit"},"colordialog":{"clear":"Pastro","highlight":"Thekso","options":"Përzgjedhjet e Ngjyrave","selected":"Ngjyra e Përzgjedhur","title":"Përzgjidh një ngjyrë"},"templates":{"button":"Shabllonet","emptyListMsg":"(Asnjë shabllon nuk është paradefinuar)","insertOption":"Zëvendëso përmbajtjen aktuale","options":"Opsionet e Shabllonit","selectPromptMsg":"Përzgjidhni shabllonin për të hapur tek redaktuesi","title":"Përmbajtja e Shabllonit"},"contextmenu":{"options":"Mundësitë e Menysë së Kontekstit"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Titull","cssClassInputLabel":"Klasa stili CSS","edit":"Redakto Div","inlineStyleInputLabel":"Stili i brendshëm","langDirLTRLabel":"Nga e majta në të djathë (LTR)","langDirLabel":"Drejtim teksti","langDirRTLLabel":"Nga e djathta në të majtë (RTL)","languageCodeInputLabel":"Kodi i Gjuhës","remove":"Largo Div","styleSelectLabel":"Stil","title":"Krijo Div Përmbajtës","toolbar":"Krijo Div Përmbajtës"},"toolbar":{"toolbarCollapse":"Zvogëlo Shiritin","toolbarExpand":"Zgjero Shiritin","toolbarGroups":{"document":"Dokument","clipboard":"Tabela Punës/Ribëje","editing":"Duke Redaktuar","forms":"Formular","basicstyles":"Stili Bazë","paragraph":"Paragraf","links":"Nyjet","insert":"Shto","styles":"Stil","colors":"Ngjyrat","tools":"Mjetet"},"toolbars":"Shiritet e Redaktuesit"},"elementspath":{"eleLabel":"Rruga e elementeve","eleTitle":"%1 element"},"find":{"find":"Gjej","findOptions":"Gjejë Alternativat","findWhat":"Gjej çka:","matchCase":"Rasti i përputhjes","matchCyclic":"Përputh ciklikun","matchWord":"Përputh fjalën e tërë","notFoundMsg":"Teksti i caktuar nuk mundej të gjendet.","replace":"Zëvendëso","replaceAll":"Zëvendëso të gjitha","replaceSuccessMsg":"%1 rast(e) u zëvendësua(n).","replaceWith":"Zëvendëso me:","title":"Gjej dhe Zëvendëso"},"fakeobjects":{"anchor":"Spirancë","flash":"Objekt flash","hiddenfield":"Fushë e fshehur","iframe":"IFrame","unknown":"Objekt i Panjohur"},"flash":{"access":"Qasja në Skriptë","accessAlways":"Gjithnjë","accessNever":"Asnjëherë","accessSameDomain":"Fusha e Njëjtë","alignAbsBottom":"Abs në Fund","alignAbsMiddle":"Abs në Mes","alignBaseline":"Baza","alignTextTop":"Koka e Tekstit","bgcolor":"Ngjyra e Prapavijës","chkFull":"Lejo Ekran të Plotë","chkLoop":"Përsëritje","chkMenu":"Lejo Menynë për Flash","chkPlay":"Auto Play","flashvars":"Variablat për Flash","hSpace":"Hapësira Horizontale","properties":"Karakteristikat për Flash","propertiesTab":"Karakteristikat","quality":"Kualiteti","qualityAutoHigh":"Automatikisht i Lartë","qualityAutoLow":"Automatikisht i Ulët","qualityBest":"Më i Miri","qualityHigh":"I Lartë","qualityLow":"Më i Ulti","qualityMedium":"I Mesëm","scale":"Shkalla","scaleAll":"Shfaq të Gjitha","scaleFit":"Përputhje të Plotë","scaleNoBorder":"Pa Kornizë","title":"Rekuizitat për Flash","vSpace":"Hapësira Vertikale","validateHSpace":"Hapësira Horizontale duhet të është numër.","validateSrc":"URL nuk duhet mbetur zbrazur.","validateVSpace":"Hapësira Vertikale duhet të është numër.","windowMode":"Window mode","windowModeOpaque":"Errët","windowModeTransparent":"Tejdukshëm","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Madhësia","voiceLabel":"Madhësia e Shkronjës","panelTitle":"Madhësia e Shkronjës"},"label":"Shkronja","panelTitle":"Emri i Shkronjës","voiceLabel":"Shkronja"},"forms":{"button":{"title":"Rekuizitat e Pullës","text":"Teskti (Vlera)","type":"LLoji","typeBtn":"Buton","typeSbm":"Dërgo","typeRst":"Rikthe"},"checkboxAndRadio":{"checkboxTitle":"Rekuizitat e Kutizë Përzgjedhëse","radioTitle":"Rekuizitat e Pullës","value":"Vlera","selected":"Përzgjedhur"},"form":{"title":"Rekuizitat e Formës","menu":"Rekuizitat e Formës","action":"Veprim","method":"Metoda","encoding":"Kodimi"},"hidden":{"title":"Rekuizitat e Fushës së Fshehur","name":"Emër","value":"Vlera"},"select":{"title":"Rekuizitat e Fushës së Përzgjedhur","selectInfo":"Përzgjidh Informacionin","opAvail":"Opsionet e Mundshme","value":"Vlera","size":"Madhësia","lines":"rreshtat","chkMulti":"Lejo përzgjidhje të shumëfishta","opText":"Teksti","opValue":"Vlera","btnAdd":"Vendos","btnModify":"Ndrysho","btnUp":"Sipër","btnDown":"Poshtë","btnSetValue":"Bëje si vlerë të përzgjedhur","btnDelete":"Grise"},"textarea":{"title":"Rekuzitat e Fushës së Tekstit","cols":"Kolonat","rows":"Rreshtat"},"textfield":{"title":"Rekuizitat e Fushës së Tekstit","name":"Emër","value":"Vlera","charWidth":"Gjerësia e Karakterit","maxChars":"Numri maksimal i karaktereve","type":"LLoji","typeText":"Teksti","typePass":"Fjalëkalimi","typeEmail":"Posta Elektronike","typeSearch":"Kërko","typeTel":"Numri i Telefonit","typeUrl":"URL"}},"format":{"label":"Formati","panelTitle":"Formati i Paragrafit","tag_address":"Adresa","tag_div":"Normal (DIV)","tag_h1":"Titulli 1","tag_h2":"Titulli 2","tag_h3":"Titulli 3","tag_h4":"Titulli 4","tag_h5":"Titulli 5","tag_h6":"Titulli 6","tag_p":"Normal","tag_pre":"Formatuar"},"horizontalrule":{"toolbar":"Vendos Vijë Horizontale"},"iframe":{"border":"Shfaq kufirin e kornizës","noUrl":"Ju lutemi shkruani URL-në e iframe-it","scrolling":"Lejo shiritët zvarritës","title":"Karakteristikat e IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Ju lutemi shkruani URL-në e fotos","alt":"Tekst Alternativ","border":"Korniza","btnUpload":"Dërgo në server","button2Img":"Dëshironi të e ndërroni pullën e fotos së selektuar në një foto të thjeshtë?","hSpace":"HSpace","img2Button":"Dëshironi të ndryshoni foton e përzgjedhur në pullë?","infoTab":"Informacione mbi Fotografinë","linkTab":"Nyja","lockRatio":"Mbyll Racionin","menu":"Karakteristikat e Fotografisë","resetSize":"Rikthe Madhësinë","title":"Karakteristikat e Fotografisë","titleButton":"Karakteristikat e Pullës së Fotografisë","upload":"Ngarko","urlMissing":"Mungon URL e burimit të fotografisë.","vSpace":"Hapësira Vertikale","validateBorder":"Korniza duhet të jetë numër i plotë.","validateHSpace":"Hapësira horizontale duhet të jetë numër i plotë.","validateVSpace":"Hapësira vertikale duhet të jetë numër i plotë."},"indent":{"indent":"Rrite Identin","outdent":"Zvogëlo Identin"},"smiley":{"options":"Opsionet e Ikonave","title":"Vendos Ikonë","toolbar":"Ikona"},"justify":{"block":"Zgjero","center":"Qendër","left":"Rreshto majtas","right":"Rreshto Djathtas"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Sipas ID-së së Elementit","advanced":"Të përparuara","advisoryContentType":"Lloji i Përmbajtjes Këshillimore","advisoryTitle":"Titull","anchor":{"toolbar":"Spirancë","menu":"Redakto Spirancën","title":"Anchor Properties","name":"Emri i Spirancës","errorName":"Ju lutemi shkruani emrin e spirancës","remove":"Largo Spirancën"},"anchorId":"Sipas ID-së së Elementit","anchorName":"Sipas Emrit të Spirancës","charset":"Seti i Karaktereve të Burimeve të Nëdlidhura","cssClasses":"Klasa stili CSS","emailAddress":"Posta Elektronike","emailBody":"Trupi i Porosisë","emailSubject":"Titulli i Porosisë","id":"Id","info":"Informacione të Nyjes","langCode":"Kod gjuhe","langDir":"Drejtim teksti","langDirLTR":"Nga e majta në të djathë (LTR)","langDirRTL":"Nga e djathta në të majtë (RTL)","menu":"Redakto Nyjen","name":"Emër","noAnchors":"(Nuk ka asnjë spirancë në dokument)","noEmail":"Ju lutemi shkruani postën elektronike","noUrl":"Ju lutemi shkruani URL-në e nyjes","other":"<tjetër>","popupDependent":"E Varur (Netscape)","popupFeatures":"Karakteristikat e Dritares së Dialogut","popupFullScreen":"Ekran i Plotë (IE)","popupLeft":"Pozita Majtas","popupLocationBar":"Shiriti i Lokacionit","popupMenuBar":"Shiriti i Menysë","popupResizable":"I ndryshueshëm","popupScrollBars":"Scroll Bars","popupStatusBar":"Shiriti i Statutit","popupToolbar":"Shiriti i Mejteve","popupTop":"Top Pozita","rel":"Marrëdhëniet","selectAnchor":"Përzgjidh një Spirancë","styles":"Stil","tabIndex":"Tab Index","target":"Objektivi","targetFrame":"<frame>","targetFrameName":"Emri i Kornizës së Synuar","targetPopup":"<popup window>","targetPopupName":"Emri i Dritares së Dialogut","title":"Nyja","toAnchor":"Lidhu me spirancën në tekst","toEmail":"Posta Elektronike","toUrl":"URL","toolbar":"Nyja","type":"Lloji i Nyjes","unlink":"Largo Nyjen","upload":"Ngarko"},"list":{"bulletedlist":"Vendos/Largo Listën me Pika","numberedlist":"Vendos/Largo Listën me Numra"},"liststyle":{"armenian":"Numërim armenian","bulletedTitle":"Karakteristikat e Listës me Pulla","circle":"Rreth","decimal":"Decimal (1, 2, 3, etj.)","decimalLeadingZero":"Decimal me zerro udhëheqëse (01, 02, 03, etj.)","disc":"Disk","georgian":"Numërim gjeorgjian (an, ban, gan, etj.)","lowerAlpha":"Të vogla alfa (a, b, c, d, e, etj.)","lowerGreek":"Të vogla greke (alpha, beta, gamma, etj.)","lowerRoman":"Të vogla romake (i, ii, iii, iv, v, etj.)","none":"Asnjë","notset":"<e pazgjedhur>","numberedTitle":"Karakteristikat e Listës me Numra","square":"Katror","start":"Fillimi","type":"LLoji","upperAlpha":"Të mëdha alfa (A, B, C, D, E, etj.)","upperRoman":"Të mëdha romake (I, II, III, IV, V, etj.)","validateStartNumber":"Numri i fillimit të listës duhet të është numër i plotë."},"magicline":{"title":"Vendos paragraf këtu"},"maximize":{"maximize":"Zmadho","minimize":"Zvogëlo"},"newpage":{"toolbar":"Faqe e Re"},"pagebreak":{"alt":"Thyerja e Faqes","toolbar":"Vendos Thyerje Faqeje për Shtyp"},"pastetext":{"button":"Hidhe si tekst të thjeshtë","title":"Hidhe si Tekst të Thjeshtë"},"pastefromword":{"confirmCleanup":"Teksti që dëshironi të e hidhni siç duket është kopjuar nga Word-i. Dëshironi të e pastroni para se të e hidhni?","error":"Nuk ishte e mundur të fshiheshin të dhënat e hedhura për shkak të një gabimi të brendshëm","title":"Hidhe nga Word-i","toolbar":"Hidhe nga Word-i"},"preview":{"preview":"Parashiko"},"print":{"toolbar":"Shtype"},"removeformat":{"toolbar":"Largo Formatin"},"save":{"toolbar":"Ruaje"},"selectall":{"toolbar":"Përzgjidh të Gjitha"},"showblocks":{"toolbar":"Shfaq Blloqet"},"sourcearea":{"toolbar":"Burimi"},"specialchar":{"options":"Mundësitë për Karaktere Speciale","title":"Përzgjidh Karakter Special","toolbar":"Vendos Karakter Special"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Stilet e Formatimit","panelTitle1":"Stilet e Bllokut","panelTitle2":"Stili i Brendshëm","panelTitle3":"Stilet e Objektit"},"table":{"border":"Madhësia e kornizave","caption":"Titull","cell":{"menu":"Qeli","insertBefore":"Shto Qeli Para","insertAfter":"Shto Qeli Prapa","deleteCell":"Gris Qelitë","merge":"Bashko Qelitë","mergeRight":"Bashko Djathtas","mergeDown":"Bashko Poshtë","splitHorizontal":"Ndaj Qelinë Horizontalisht","splitVertical":"Ndaj Qelinë Vertikalisht","title":"Rekuizitat e Qelisë","cellType":"Lloji i Qelisë","rowSpan":"Bashko Rreshtat","colSpan":"Bashko Kolonat","wordWrap":"Fund i Fjalës","hAlign":"Bashkimi Horizontal","vAlign":"Bashkimi Vertikal","alignBaseline":"Baza","bgColor":"Ngjyra e Prapavijës","borderColor":"Ngjyra e Kornizave","data":"Të dhënat","header":"Koka","yes":"Po","no":"Jo","invalidWidth":"Gjerësia e qelisë duhet të jetë numër.","invalidHeight":"Lartësia e qelisë duhet të jetë numër.","invalidRowSpan":"Hapësira e rreshtave duhet të jetë numër i plotë.","invalidColSpan":"Hapësira e kolonave duhet të jetë numër i plotë.","chooseColor":"Përzgjidh"},"cellPad":"Mbushja e qelisë","cellSpace":"Hapësira e qelisë","column":{"menu":"Kolona","insertBefore":"Vendos Kolonë Para","insertAfter":"Vendos Kolonë Pas","deleteColumn":"Gris Kolonat"},"columns":"Kolonat","deleteTable":"Gris Tabelën","headers":"Kokat","headersBoth":"Së bashku","headersColumn":"Kolona e parë","headersNone":"Asnjë","headersRow":"Rreshti i Parë","invalidBorder":"Madhësia e kufinjve duhet të jetë numër.","invalidCellPadding":"Mbushja e qelisë duhet të jetë numër pozitiv.","invalidCellSpacing":"Hapësira e qelisë duhet të jetë numër pozitiv.","invalidCols":"Numri i kolonave duhet të jetë numër më i madh se 0.","invalidHeight":"Lartësia e tabelës duhet të jetë numër.","invalidRows":"Numri i rreshtave duhet të jetë numër më i madh se 0.","invalidWidth":"Gjerësia e tabelës duhet të jetë numër.","menu":"Karakteristikat e Tabelës","row":{"menu":"Rreshti","insertBefore":"Shto Rresht Para","insertAfter":"Shto Rresht Prapa","deleteRow":"Gris Rreshtat"},"rows":"Rreshtat","summary":"Përmbledhje","title":"Karakteristikat e Tabelës","toolbar":"Tabela","widthPc":"përqind","widthPx":"piksell","widthUnit":"njësia e gjerësisë"},"undo":{"redo":"Ribëje","undo":"Rizhbëje"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sr-latn.js b/wqflask/wqflask/static/packages/ckeditor/lang/sr-latn.js
deleted file mode 100644
index c0dcc320..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sr-latn.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sr-latn']={"editor":"Bogati uređivač teksta","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Pretraži server","url":"URL","protocol":"Protokol","upload":"Pošalji","uploadSubmit":"Pošalji na server","image":"Slika","flash":"Fleš","form":"Forma","checkbox":"Polje za potvrdu","radio":"Radio-dugme","textField":"Tekstualno polje","textarea":"Zona teksta","hiddenField":"Skriveno polje","button":"Dugme","select":"Izborno polje","imageButton":"Dugme sa slikom","notSet":"<nije postavljeno>","id":"Id","name":"Naziv","langDir":"Smer jezika","langDirLtr":"S leva na desno (LTR)","langDirRtl":"S desna na levo (RTL)","langCode":"Kôd jezika","longDescr":"Pun opis URL","cssClass":"Stylesheet klase","advisoryTitle":"Advisory naslov","cssStyle":"Stil","ok":"OK","cancel":"Otkaži","close":"Zatvori","preview":"Izgled stranice","resize":"Resize","generalTab":"Opšte","advancedTab":"Napredni tagovi","validateNumberFailed":"Ova vrednost nije broj.","confirmNewPage":"Nesačuvane promene ovog sadržaja će biti izgubljene. Jeste li sigurni da želita da učitate novu stranu?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Opcije","target":"Meta","targetNew":"Novi prozor (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Isti prozor (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"S leva na desno (LTR)","langDirRTL":"S desna na levo (RTL)","styles":"Stil","cssClasses":"Stylesheet klase","width":"Širina","height":"Visina","align":"Ravnanje","alignLeft":"Levo","alignRight":"Desno","alignCenter":"Sredina","alignJustify":"Obostrano ravnanje","alignTop":"Vrh","alignMiddle":"Sredina","alignBottom":"Dole","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Visina mora biti broj.","invalidWidth":"Širina mora biti broj.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Podebljano","italic":"Kurziv","strike":"Precrtano","subscript":"Indeks","superscript":"Stepen","underline":"Podvučeno"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Kopiraj","copyError":"Sigurnosna podešavanja Vašeg pretraživača ne dozvoljavaju operacije automatskog kopiranja teksta. Molimo Vas da koristite prečicu sa tastature (Ctrl/Cmd+C).","cut":"Iseci","cutError":"Sigurnosna podešavanja Vašeg pretraživača ne dozvoljavaju operacije automatskog isecanja teksta. Molimo Vas da koristite prečicu sa tastature (Ctrl/Cmd+X).","paste":"Zalepi","pasteArea":"Prostor za lepljenje","pasteMsg":"Molimo Vas da zalepite unutar donje povrine koristeći tastaturnu prečicu (<STRONG>Ctrl/Cmd+V</STRONG>) i da pritisnete <STRONG>OK</STRONG>.","securityMsg":"Zbog sigurnosnih postavki vašeg pregledača, editor nije u mogućnosti da direktno pristupi podacima u klipbordu. Potrebno je da zalepite još jednom u ovom prozoru.","title":"Zalepi"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatski","bgColorTitle":"Boja pozadine","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Više boja...","panelTitle":"Colors","textColorTitle":"Boja teksta"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Obrasci","emptyListMsg":"(Nema definisanih obrazaca)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Molimo Vas da odaberete obrazac koji ce biti primenjen na stranicu (trenutni sadržaj ce biti obrisan):","title":"Obrasci za sadržaj"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory naslov","cssClassInputLabel":"Stylesheet klase","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"S leva na desno (LTR)","langDirLabel":"Smer jezika","langDirRTLLabel":"S desna na levo (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Stil","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Suzi alatnu traku","toolbarExpand":"Proširi alatnu traku","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Alatne trake"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Pretraga","findOptions":"Find Options","findWhat":"Pronadi:","matchCase":"Razlikuj mala i velika slova","matchCyclic":"Match cyclic","matchWord":"Uporedi cele reci","notFoundMsg":"Traženi tekst nije pronađen.","replace":"Zamena","replaceAll":"Zameni sve","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Zameni sa:","title":"Find and Replace"},"fakeobjects":{"anchor":"Unesi/izmeni sidro","flash":"Flash Animation","hiddenfield":"Skriveno polje","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs dole","alignAbsMiddle":"Abs sredina","alignBaseline":"Bazno","alignTextTop":"Vrh teksta","bgcolor":"Boja pozadine","chkFull":"Allow Fullscreen","chkLoop":"Ponavljaj","chkMenu":"Uključi fleš meni","chkPlay":"Automatski start","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Osobine fleša","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Skaliraj","scaleAll":"Prikaži sve","scaleFit":"Popuni površinu","scaleNoBorder":"Bez ivice","title":"Osobine fleša","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"Unesite URL linka","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Veličina fonta","voiceLabel":"Font Size","panelTitle":"Veličina fonta"},"label":"Font","panelTitle":"Font","voiceLabel":"Font"},"forms":{"button":{"title":"Osobine dugmeta","text":"Tekst (vrednost)","type":"Tip","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Osobine polja za potvrdu","radioTitle":"Osobine radio-dugmeta","value":"Vrednost","selected":"Označeno"},"form":{"title":"Osobine forme","menu":"Osobine forme","action":"Akcija","method":"Metoda","encoding":"Encoding"},"hidden":{"title":"Osobine skrivenog polja","name":"Naziv","value":"Vrednost"},"select":{"title":"Osobine izbornog polja","selectInfo":"Info","opAvail":"Dostupne opcije","value":"Vrednost","size":"Veličina","lines":"linija","chkMulti":"Dozvoli višestruku selekciju","opText":"Tekst","opValue":"Vrednost","btnAdd":"Dodaj","btnModify":"Izmeni","btnUp":"Gore","btnDown":"Dole","btnSetValue":"Podesi kao označenu vrednost","btnDelete":"Obriši"},"textarea":{"title":"Osobine zone teksta","cols":"Broj kolona","rows":"Broj redova"},"textfield":{"title":"Osobine tekstualnog polja","name":"Naziv","value":"Vrednost","charWidth":"Širina (karaktera)","maxChars":"Maksimalno karaktera","type":"Tip","typeText":"Tekst","typePass":"Lozinka","typeEmail":"Email","typeSearch":"Pretraži","typeTel":"Broj telefona","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Format","tag_address":"Adresa","tag_div":"Normalno (DIV)","tag_h1":"Naslov 1","tag_h2":"Naslov 2","tag_h3":"Naslov 3","tag_h4":"Naslov 4","tag_h5":"Naslov 5","tag_h6":"Naslov 6","tag_p":"Normal","tag_pre":"Formatirano"},"horizontalrule":{"toolbar":"Unesi horizontalnu liniju"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Unesite URL slike","alt":"Alternativni tekst","border":"Okvir","btnUpload":"Pošalji na server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Info slike","linkTab":"Link","lockRatio":"Zaključaj odnos","menu":"Osobine slika","resetSize":"Resetuj veličinu","title":"Osobine slika","titleButton":"Osobine dugmeta sa slikom","upload":"Pošalji","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Uvećaj levu marginu","outdent":"Smanji levu marginu"},"smiley":{"options":"Smiley Options","title":"Unesi smajlija","toolbar":"Smajli"},"justify":{"block":"Obostrano ravnanje","center":"Centriran tekst","left":"Levo ravnanje","right":"Desno ravnanje"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Pristupni taster","advanced":"Napredni tagovi","advisoryContentType":"Advisory vrsta sadržaja","advisoryTitle":"Advisory naslov","anchor":{"toolbar":"Unesi/izmeni sidro","menu":"Osobine sidra","title":"Osobine sidra","name":"Naziv sidra","errorName":"Unesite naziv sidra","remove":"Ukloni sidro"},"anchorId":"Po Id-u elementa","anchorName":"Po nazivu sidra","charset":"Linked Resource Charset","cssClasses":"Stylesheet klase","emailAddress":"E-Mail adresa","emailBody":"Sadržaj poruke","emailSubject":"Naslov","id":"Id","info":"Link Info","langCode":"Smer jezika","langDir":"Smer jezika","langDirLTR":"S leva na desno (LTR)","langDirRTL":"S desna na levo (RTL)","menu":"Izmeni link","name":"Naziv","noAnchors":"(Nema dostupnih sidra)","noEmail":"Otkucajte adresu elektronske pote","noUrl":"Unesite URL linka","other":"<остало>","popupDependent":"Zavisno (Netscape)","popupFeatures":"Mogućnosti popup prozora","popupFullScreen":"Prikaz preko celog ekrana (IE)","popupLeft":"Od leve ivice ekrana (px)","popupLocationBar":"Lokacija","popupMenuBar":"Kontekstni meni","popupResizable":"Promenljive veličine","popupScrollBars":"Scroll bar","popupStatusBar":"Statusna linija","popupToolbar":"Toolbar","popupTop":"Od vrha ekrana (px)","rel":"Odnos","selectAnchor":"Odaberi sidro","styles":"Stil","tabIndex":"Tab indeks","target":"Meta","targetFrame":"<okvir>","targetFrameName":"Naziv odredišnog frejma","targetPopup":"<popup prozor>","targetPopupName":"Naziv popup prozora","title":"Link","toAnchor":"Sidro na ovoj stranici","toEmail":"E-Mail","toUrl":"URL","toolbar":"Unesi/izmeni link","type":"Vrsta linka","unlink":"Ukloni link","upload":"Pošalji"},"list":{"bulletedlist":"Nenabrojiva lista","numberedlist":"Nabrojiva lista"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Nova stranica"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Zalepi kao čist tekst","title":"Zalepi kao čist tekst"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Zalepi iz Worda","toolbar":"Zalepi iz Worda"},"preview":{"preview":"Izgled stranice"},"print":{"toolbar":"Štampa"},"removeformat":{"toolbar":"Ukloni formatiranje"},"save":{"toolbar":"Sačuvaj"},"selectall":{"toolbar":"Označi sve"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Kôd"},"specialchar":{"options":"Special Character Options","title":"Odaberite specijalni karakter","toolbar":"Unesi specijalni karakter"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Stil","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Veličina okvira","caption":"Naslov tabele","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Obriši ćelije","merge":"Spoj celije","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Razmak ćelija","cellSpace":"Ćelijski prostor","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Obriši kolone"},"columns":"Kolona","deleteTable":"Izbriši tabelu","headers":"Zaglavlja","headersBoth":"Oba","headersColumn":"Prva kolona","headersNone":"None","headersRow":"Prvi red","invalidBorder":"Veličina okvira mora biti broj.","invalidCellPadding":"Padding polja mora biti pozitivan broj.","invalidCellSpacing":"Razmak između ćelija mora biti pozitivan broj.","invalidCols":"Broj kolona mora biti broj veći od 0.","invalidHeight":"Visina tabele mora biti broj.","invalidRows":"Broj redova mora biti veći od 0.","invalidWidth":"Širina tabele mora biti broj.","menu":"Osobine tabele","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Obriši redove"},"rows":"Redova","summary":"Sažetak","title":"Osobine tabele","toolbar":"Tabela","widthPc":"procenata","widthPx":"piksela","widthUnit":"jedinica za širinu"},"undo":{"redo":"Ponovi akciju","undo":"Poni�ti akciju"},"wsc":{"btnIgnore":"Ignoriši","btnIgnoreAll":"Ignoriši sve","btnReplace":"Zameni","btnReplaceAll":"Zameni sve","btnUndo":"Vrati akciju","changeTo":"Izmeni","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Provera spelovanja nije instalirana. Da li želite da je skinete sa Interneta?","manyChanges":"Provera spelovanja završena: %1 reč(i) je izmenjeno","noChanges":"Provera spelovanja završena: Nije izmenjena nijedna rec","noMispell":"Provera spelovanja završena: greške nisu pronadene","noSuggestions":"- Bez sugestija -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Nije u rečniku","oneChange":"Provera spelovanja završena: Izmenjena je jedna reč","progress":"Provera spelovanja u toku...","title":"Spell Check","toolbar":"Proveri spelovanje"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sr.js b/wqflask/wqflask/static/packages/ckeditor/lang/sr.js
deleted file mode 100644
index 0161c16d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sr.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sr']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Претражи сервер","url":"УРЛ","protocol":"Протокол","upload":"Пошаљи","uploadSubmit":"Пошаљи на сервер","image":"Слика","flash":"Флеш елемент","form":"Форма","checkbox":"Поље за потврду","radio":"Радио-дугме","textField":"Текстуално поље","textarea":"Зона текста","hiddenField":"Скривено поље","button":"Дугме","select":"Изборно поље","imageButton":"Дугме са сликом","notSet":"<није постављено>","id":"Ид","name":"Назив","langDir":"Смер језика","langDirLtr":"С лева на десно (LTR)","langDirRtl":"С десна на лево (RTL)","langCode":"Kôд језика","longDescr":"Пун опис УРЛ","cssClass":"Stylesheet класе","advisoryTitle":"Advisory наслов","cssStyle":"Стил","ok":"OK","cancel":"Oткажи","close":"Затвори","preview":"Изглед странице","resize":"Resize","generalTab":"Опште","advancedTab":"Напредни тагови","validateNumberFailed":"Ова вредност није цигра.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Опције","target":"Meтa","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"С лева на десно (LTR)","langDirRTL":"С десна на лево (RTL)","styles":"Стил","cssClasses":"Stylesheet класе","width":"Ширина","height":"Висина","align":"Равнање","alignLeft":"Лево","alignRight":"Десно","alignCenter":"Средина","alignJustify":"Обострано равнање","alignTop":"Врх","alignMiddle":"Средина","alignBottom":"Доле","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Подебљано","italic":"Курзив","strike":"Прецртано","subscript":"Индекс","superscript":"Степен","underline":"Подвучено"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Копирај","copyError":"Сигурносна подешавања Вашег претраживача не дозвољавају операције аутоматског копирања текста. Молимо Вас да користите пречицу са тастатуре (Ctrl/Cmd+C).","cut":"Исеци","cutError":"Сигурносна подешавања Вашег претраживача не дозвољавају операције аутоматског исецања текста. Молимо Вас да користите пречицу са тастатуре (Ctrl/Cmd+X).","paste":"Залепи","pasteArea":"Залепи зону","pasteMsg":"Молимо Вас да залепите унутар доње површине користећи тастатурну пречицу (<STRONG>Ctrl/Cmd+V</STRONG>) и да притиснете <STRONG>OK</STRONG>.","securityMsg":"Због сигурносних подешавања претраживача, едитор не може да приступи оставу. Требате да га поново залепите у овом прозору.","title":"Залепи"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Аутоматски","bgColorTitle":"Боја позадине","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"Више боја...","panelTitle":"Colors","textColorTitle":"Боја текста"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Обрасци","emptyListMsg":"(Нема дефинисаних образаца)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Молимо Вас да одаберете образац који ће бити примењен на страницу (тренутни садржај ће бити обрисан):","title":"Обрасци за садржај"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Склопи алатну траку","toolbarExpand":"Прошири алатну траку","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Едитор алатне траке"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Претрага","findOptions":"Find Options","findWhat":"Пронађи:","matchCase":"Разликуј велика и мала слова","matchCyclic":"Match cyclic","matchWord":"Упореди целе речи","notFoundMsg":"Тражени текст није пронађен.","replace":"Замена","replaceAll":"Замени све","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Замени са:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs доле","alignAbsMiddle":"Abs средина","alignBaseline":"Базно","alignTextTop":"Врх текста","bgcolor":"Боја позадине","chkFull":"Allow Fullscreen","chkLoop":"Понављај","chkMenu":"Укључи флеш мени","chkPlay":"Аутоматски старт","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Особине Флеша","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Скалирај","scaleAll":"Прикажи све","scaleFit":"Попуни површину","scaleNoBorder":"Без ивице","title":"Особине флеша","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"Унесите УРЛ линка","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Величина фонта","voiceLabel":"Font Size","panelTitle":"Величина фонта"},"label":"Фонт","panelTitle":"Фонт","voiceLabel":"Фонт"},"forms":{"button":{"title":"Особине дугмета","text":"Текст (вредност)","type":"Tип","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Особине поља за потврду","radioTitle":"Особине радио-дугмета","value":"Вредност","selected":"Означено"},"form":{"title":"Особине форме","menu":"Особине форме","action":"Aкција","method":"Mетода","encoding":"Encoding"},"hidden":{"title":"Особине скривеног поља","name":"Назив","value":"Вредност"},"select":{"title":"Особине изборног поља","selectInfo":"Инфо","opAvail":"Доступне опције","value":"Вредност","size":"Величина","lines":"линија","chkMulti":"Дозволи вишеструку селекцију","opText":"Текст","opValue":"Вредност","btnAdd":"Додај","btnModify":"Измени","btnUp":"Горе","btnDown":"Доле","btnSetValue":"Подеси као означену вредност","btnDelete":"Обриши"},"textarea":{"title":"Особине зоне текста","cols":"Број колона","rows":"Број редова"},"textfield":{"title":"Особине текстуалног поља","name":"Назив","value":"Вредност","charWidth":"Ширина (карактера)","maxChars":"Максимално карактера","type":"Тип","typeText":"Текст","typePass":"Лозинка","typeEmail":"Е-пошта","typeSearch":"Претрага","typeTel":"Број телефона","typeUrl":"УРЛ"}},"format":{"label":"Формат","panelTitle":"Формат","tag_address":"Adresa","tag_div":"Нормално (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatirano"},"horizontalrule":{"toolbar":"Унеси хоризонталну линију"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Унесите УРЛ слике","alt":"Алтернативни текст","border":"Оквир","btnUpload":"Пошаљи на сервер","button2Img":"Да ли желите да промените одабрану слику дугмета као једноставну слику?","hSpace":"HSpace","img2Button":"Да ли желите да промените одабрану слику у слику дугмета?","infoTab":"Инфо слике","linkTab":"Линк","lockRatio":"Закључај однос","menu":"Особине слика","resetSize":"Ресетуј величину","title":"Особине слика","titleButton":"Особине дугмета са сликом","upload":"Пошаљи","urlMissing":"Недостаје УРЛ слике.","vSpace":"VSpace","validateBorder":"Ивица треба да буде цифра.","validateHSpace":"HSpace треба да буде цифра.","validateVSpace":"VSpace треба да буде цифра."},"indent":{"indent":"Увећај леву маргину","outdent":"Смањи леву маргину"},"smiley":{"options":"Smiley Options","title":"Унеси смајлија","toolbar":"Смајли"},"justify":{"block":"Обострано равнање","center":"Центриран текст","left":"Лево равнање","right":"Десно равнање"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Приступни тастер","advanced":"Напредни тагови","advisoryContentType":"Advisory врста садржаја","advisoryTitle":"Advisory наслов","anchor":{"toolbar":"Унеси/измени сидро","menu":"Особине сидра","title":"Особине сидра","name":"Име сидра","errorName":"Молимо Вас да унесете име сидра","remove":"Remove Anchor"},"anchorId":"Пo Ид-jу елемента","anchorName":"По називу сидра","charset":"Linked Resource Charset","cssClasses":"Stylesheet класе","emailAddress":"Адреса електронске поште","emailBody":"Садржај поруке","emailSubject":"Наслов","id":"Ид","info":"Линк инфо","langCode":"Смер језика","langDir":"Смер језика","langDirLTR":"С лева на десно (LTR)","langDirRTL":"С десна на лево (RTL)","menu":"Промени линк","name":"Назив","noAnchors":"(Нема доступних сидра)","noEmail":"Откуцајте адресу електронске поште","noUrl":"Унесите УРЛ линка","other":"<друго>","popupDependent":"Зависно (Netscape)","popupFeatures":"Могућности искачућег прозора","popupFullScreen":"Приказ преко целог екрана (ИE)","popupLeft":"Од леве ивице екрана (пиксела)","popupLocationBar":"Локација","popupMenuBar":"Контекстни мени","popupResizable":"Величина се мења","popupScrollBars":"Скрол бар","popupStatusBar":"Статусна линија","popupToolbar":"Toolbar","popupTop":"Од врха екрана (пиксела)","rel":"Однос","selectAnchor":"Одабери сидро","styles":"Стил","tabIndex":"Таб индекс","target":"Meтa","targetFrame":"<оквир>","targetFrameName":"Назив одредишног фрејма","targetPopup":"<искачући прозор>","targetPopupName":"Назив искачућег прозора","title":"Линк","toAnchor":"Сидро на овој страници","toEmail":"Eлектронска пошта","toUrl":"УРЛ","toolbar":"Унеси/измени линк","type":"Врста линка","unlink":"Уклони линк","upload":"Пошаљи"},"list":{"bulletedlist":"Ненабројива листа","numberedlist":"Набројиву листу"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"Нова страница"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Залепи као чист текст","title":"Залепи као чист текст"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Залепи из Worda","toolbar":"Залепи из Worda"},"preview":{"preview":"Изглед странице"},"print":{"toolbar":"Штампа"},"removeformat":{"toolbar":"Уклони форматирање"},"save":{"toolbar":"Сачувај"},"selectall":{"toolbar":"Означи све"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Kôд"},"specialchar":{"options":"Опције специјалног карактера","title":"Одаберите специјални карактер","toolbar":"Унеси специјални карактер"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Стил","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Величина оквира","caption":"Наслов табеле","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Обриши ћелије","merge":"Спој ћелије","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Размак ћелија","cellSpace":"Ћелијски простор","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Обриши колоне"},"columns":"Kолона","deleteTable":"Обриши таблу","headers":"Поглавља","headersBoth":"Оба","headersColumn":"Прва колона","headersNone":"None","headersRow":"Први ред","invalidBorder":"Величина ивице треба да буде цифра.","invalidCellPadding":"Пуњење ћелије треба да буде позитивна цифра.","invalidCellSpacing":"Размак ћелије треба да буде позитивна цифра.","invalidCols":"Број колона треба да буде цифра већа од 0.","invalidHeight":"Висина табеле треба да буде цифра.","invalidRows":"Број реда треба да буде цифра већа од 0.","invalidWidth":"Ширина табеле треба да буде цифра.","menu":"Особине табеле","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Обриши редове"},"rows":"Редова","summary":"Резиме","title":"Особине табеле","toolbar":"Табела","widthPc":"процената","widthPx":"пиксела","widthUnit":"јединица ширине"},"undo":{"redo":"Понови акцију","undo":"Поништи акцију"},"wsc":{"btnIgnore":"Игнориши","btnIgnoreAll":"Игнориши све","btnReplace":"Замени","btnReplaceAll":"Замени све","btnUndo":"Врати акцију","changeTo":"Измени","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Провера спеловања није инсталирана. Да ли желите да је скинете са Интернета?","manyChanges":"Провера спеловања завршена: %1 реч(и) је измењено","noChanges":"Провера спеловања завршена: Није измењена ниједна реч","noMispell":"Провера спеловања завршена: грешке нису пронађене","noSuggestions":"- Без сугестија -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Није у речнику","oneChange":"Провера спеловања завршена: Измењена је једна реч","progress":"Провера спеловања у току...","title":"Spell Check","toolbar":"Провери спеловање"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/sv.js b/wqflask/wqflask/static/packages/ckeditor/lang/sv.js
deleted file mode 100644
index cf6c0d59..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/sv.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['sv']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Tryck ALT 0 för hjälp","browseServer":"Bläddra på server","url":"URL","protocol":"Protokoll","upload":"Ladda upp","uploadSubmit":"Skicka till server","image":"Bild","flash":"Flash","form":"Formulär","checkbox":"Kryssruta","radio":"Alternativknapp","textField":"Textfält","textarea":"Textruta","hiddenField":"Dolt fält","button":"Knapp","select":"Flervalslista","imageButton":"Bildknapp","notSet":"<ej angivet>","id":"Id","name":"Namn","langDir":"Språkriktning","langDirLtr":"Vänster till Höger (VTH)","langDirRtl":"Höger till Vänster (HTV)","langCode":"Språkkod","longDescr":"URL-beskrivning","cssClass":"Stilmall","advisoryTitle":"Titel","cssStyle":"Stilmall","ok":"OK","cancel":"Avbryt","close":"Stäng","preview":"Förhandsgranska","resize":"Dra för att ändra storlek","generalTab":"Allmänt","advancedTab":"Avancerad","validateNumberFailed":"Värdet är inte ett nummer.","confirmNewPage":"Alla ändringar i innehållet kommer att förloras. Är du säker på att du vill ladda en ny sida?","confirmCancel":"Några av alternativen har ändrats. Är du säker på att du vill stänga dialogrutan?","options":"Alternativ","target":"Mål","targetNew":"Nytt fönster (_blank)","targetTop":"Översta fönstret (_top)","targetSelf":"Samma fönster (_self)","targetParent":"Föregående fönster (_parent)","langDirLTR":"Vänster till höger (LTR)","langDirRTL":"Höger till vänster (RTL)","styles":"Stil","cssClasses":"Stilmallar","width":"Bredd","height":"Höjd","align":"Justering","alignLeft":"Vänster","alignRight":"Höger","alignCenter":"Centrerad","alignJustify":"Justera till marginaler","alignTop":"Överkant","alignMiddle":"Mitten","alignBottom":"Nederkant","alignNone":"Ingen","invalidValue":"Felaktigt värde.","invalidHeight":"Höjd måste vara ett nummer.","invalidWidth":"Bredd måste vara ett nummer.","invalidCssLength":"Värdet för fältet \"%1\" måste vara ett positivt nummer med eller utan CSS-mätenheter (px, %, in, cm, mm, em, ex, pt, eller pc).","invalidHtmlLength":"Värdet för fältet \"%1\" måste vara ett positivt nummer med eller utan godkända HTML-mätenheter (px eller %).","invalidInlineStyle":"Det angivna värdet för style måste innehålla en eller flera tupler separerade med semikolon i följande format: \"name : value\"","cssLengthTooltip":"Ange ett nummer i pixlar eller ett nummer men godkänd CSS-mätenhet (px, %, in, cm, mm, em, ex, pt, eller pc).","unavailable":"%1<span class=\"cke_accessibility\">, Ej tillgänglig</span>"},"about":{"copy":"Copyright &copy; $1. Alla rättigheter reserverade.","dlgTitle":"Om CKEditor","help":"Se $1 för hjälp.","moreInfo":"För information av licensiering besök vår hemsida:","title":"Om CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Fet","italic":"Kursiv","strike":"Genomstruken","subscript":"Nedsänkta tecken","superscript":"Upphöjda tecken","underline":"Understruken"},"bidi":{"ltr":"Text riktning från vänster till höger","rtl":"Text riktning från höger till vänster"},"blockquote":{"toolbar":"Blockcitat"},"clipboard":{"copy":"Kopiera","copyError":"Säkerhetsinställningar i Er webbläsare tillåter inte åtgärden kopiera. Använd (Ctrl/Cmd+C) istället.","cut":"Klipp ut","cutError":"Säkerhetsinställningar i Er webbläsare tillåter inte åtgärden klipp ut. Använd (Ctrl/Cmd+X) istället.","paste":"Klistra in","pasteArea":"Paste Area","pasteMsg":"Var god och klistra in Er text i rutan nedan genom att använda (<strong>Ctrl/Cmd+V</strong>) klicka sen på OK.","securityMsg":"På grund av din webbläsares säkerhetsinställningar kan verktyget inte få åtkomst till urklippsdatan. Var god och använd detta fönster istället.","title":"Klistra in"},"button":{"selectedLabel":"%1 (Vald)"},"colorbutton":{"auto":"Automatisk","bgColorTitle":"Bakgrundsfärg","colors":{"000":"Svart","800000":"Rödbrun","8B4513":"Mörkbrun","2F4F4F":"Skiffergrå","008080":"Kricka","000080":"Marinblå","4B0082":"Indigo","696969":"Mörkgrå","B22222":"Tegelsten","A52A2A":"Brun","DAA520":"Mörk guld","006400":"Mörkgrön","40E0D0":"Turkos","0000CD":"Medium blå","800080":"Lila","808080":"Grå","F00":"Röd","FF8C00":"Mörkorange","FFD700":"Guld","008000":"Grön","0FF":"Turkos","00F":"Blå","EE82EE":"Violett","A9A9A9":"Matt grå","FFA07A":"Laxrosa","FFA500":"Orange","FFFF00":"Gul","00FF00":"Lime","AFEEEE":"Ljusturkos","ADD8E6":"Ljusblå","DDA0DD":"Plommon","D3D3D3":"Ljusgrå","FFF0F5":"Ljus lavendel","FAEBD7":"Antikvit","FFFFE0":"Ljusgul","F0FFF0":"Honungsdagg","F0FFFF":"Azurblå","F0F8FF":"Aliceblå","E6E6FA":"Lavendel","FFF":"Vit"},"more":"Fler färger...","panelTitle":"Färger","textColorTitle":"Textfärg"},"colordialog":{"clear":"Rensa","highlight":"Markera","options":"Färgalternativ","selected":"Vald färg","title":"Välj färg"},"templates":{"button":"Sidmallar","emptyListMsg":"(Ingen mall är vald)","insertOption":"Ersätt aktuellt innehåll","options":"Inställningar för mall","selectPromptMsg":"Var god välj en mall att använda med editorn<br>(allt nuvarande innehåll raderas):","title":"Sidmallar"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Rådgivande titel","cssClassInputLabel":"Stilmallar","edit":"Redigera Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Vänster till höger (LTR)","langDirLabel":"Språkriktning","langDirRTLLabel":"Höger till vänster (RTL)","languageCodeInputLabel":" Språkkod","remove":"Ta bort Div","styleSelectLabel":"Stil","title":"Skapa Div container","toolbar":"Skapa Div container"},"toolbar":{"toolbarCollapse":"Dölj verktygsfält","toolbarExpand":"Visa verktygsfält","toolbarGroups":{"document":"Dokument","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Redigera verktygsfält"},"elementspath":{"eleLabel":"Elementets sökväg","eleTitle":"%1 element"},"find":{"find":"Sök","findOptions":"Sökalternativ","findWhat":"Sök efter:","matchCase":"Skiftläge","matchCyclic":"Matcha cykliska","matchWord":"Inkludera hela ord","notFoundMsg":"Angiven text kunde ej hittas.","replace":"Ersätt","replaceAll":"Ersätt alla","replaceSuccessMsg":"%1 förekomst(er) ersatta.","replaceWith":"Ersätt med:","title":"Sök och ersätt"},"fakeobjects":{"anchor":"Ankare","flash":"Flashanimation","hiddenfield":"Gömt fält","iframe":"iFrame","unknown":"Okänt objekt"},"flash":{"access":"Script-tillgång","accessAlways":"Alltid","accessNever":"Aldrig","accessSameDomain":"Samma domän","alignAbsBottom":"Absolut nederkant","alignAbsMiddle":"Absolut centrering","alignBaseline":"Baslinje","alignTextTop":"Text överkant","bgcolor":"Bakgrundsfärg","chkFull":"Tillåt helskärm","chkLoop":"Upprepa/Loopa","chkMenu":"Aktivera Flashmeny","chkPlay":"Automatisk uppspelning","flashvars":"Variabler för Flash","hSpace":"Horis. marginal","properties":"Flashegenskaper","propertiesTab":"Egenskaper","quality":"Kvalitet","qualityAutoHigh":"Auto Hög","qualityAutoLow":"Auto Låg","qualityBest":"Bäst","qualityHigh":"Hög","qualityLow":"Låg","qualityMedium":"Medium","scale":"Skala","scaleAll":"Visa allt","scaleFit":"Exakt passning","scaleNoBorder":"Ingen ram","title":"Flashegenskaper","vSpace":"Vert. marginal","validateHSpace":"HSpace måste vara ett nummer.","validateSrc":"Var god ange länkens URL","validateVSpace":"VSpace måste vara ett nummer.","windowMode":"Fönsterläge","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Fönster"},"font":{"fontSize":{"label":"Storlek","voiceLabel":"Teckenstorlek","panelTitle":"Teckenstorlek"},"label":"Typsnitt","panelTitle":"Typsnitt","voiceLabel":"Typsnitt"},"forms":{"button":{"title":"Egenskaper för knapp","text":"Text (värde)","type":"Typ","typeBtn":"Knapp","typeSbm":"Skicka","typeRst":"Återställ"},"checkboxAndRadio":{"checkboxTitle":"Egenskaper för kryssruta","radioTitle":"Egenskaper för alternativknapp","value":"Värde","selected":"Vald"},"form":{"title":"Egenskaper för formulär","menu":"Egenskaper för formulär","action":"Funktion","method":"Metod","encoding":"Kodning"},"hidden":{"title":"Egenskaper för dolt fält","name":"Namn","value":"Värde"},"select":{"title":"Egenskaper för flervalslista","selectInfo":"Information","opAvail":"Befintliga val","value":"Värde","size":"Storlek","lines":"Linjer","chkMulti":"Tillåt flerval","opText":"Text","opValue":"Värde","btnAdd":"Lägg till","btnModify":"Redigera","btnUp":"Upp","btnDown":"Ner","btnSetValue":"Markera som valt värde","btnDelete":"Radera"},"textarea":{"title":"Egenskaper för textruta","cols":"Kolumner","rows":"Rader"},"textfield":{"title":"Egenskaper för textfält","name":"Namn","value":"Värde","charWidth":"Teckenbredd","maxChars":"Max antal tecken","type":"Typ","typeText":"Text","typePass":"Lösenord","typeEmail":"E-post","typeSearch":"Sök","typeTel":"Telefonnummer","typeUrl":"URL"}},"format":{"label":"Teckenformat","panelTitle":"Teckenformat","tag_address":"Adress","tag_div":"Normal (DIV)","tag_h1":"Rubrik 1","tag_h2":"Rubrik 2","tag_h3":"Rubrik 3","tag_h4":"Rubrik 4","tag_h5":"Rubrik 5","tag_h6":"Rubrik 6","tag_p":"Normal","tag_pre":"Formaterad"},"horizontalrule":{"toolbar":"Infoga horisontal linje"},"iframe":{"border":"Visa ramkant","noUrl":"Skriv in URL för iFrame","scrolling":"Aktivera rullningslister","title":"iFrame Egenskaper","toolbar":"iFrame"},"image":{"alertUrl":"Var god och ange bildens URL","alt":"Alternativ text","border":"Kant","btnUpload":"Skicka till server","button2Img":"Vill du omvandla den valda bildknappen på en enkel bild?","hSpace":"Horis. marginal","img2Button":"Vill du omvandla den valda bildknappen på en enkel bild?","infoTab":"Bildinformation","linkTab":"Länk","lockRatio":"Lås höjd/bredd förhållanden","menu":"Bildegenskaper","resetSize":"Återställ storlek","title":"Bildegenskaper","titleButton":"Egenskaper för bildknapp","upload":"Ladda upp","urlMissing":"Bildkällans URL saknas.","vSpace":"Vert. marginal","validateBorder":"Kantlinje måste vara ett heltal.","validateHSpace":"HSpace måste vara ett heltal.","validateVSpace":"VSpace måste vara ett heltal."},"indent":{"indent":"Öka indrag","outdent":"Minska indrag"},"smiley":{"options":"Smileyinställningar","title":"Infoga smiley","toolbar":"Smiley"},"justify":{"block":"Justera till marginaler","center":"Centrera","left":"Vänsterjustera","right":"Högerjustera"},"language":{"button":"Sätt språk","remove":"Ta bort språk"},"link":{"acccessKey":"Behörighetsnyckel","advanced":"Avancerad","advisoryContentType":"Innehållstyp","advisoryTitle":"Titel","anchor":{"toolbar":"Infoga/Redigera ankarlänk","menu":"Egenskaper för ankarlänk","title":"Egenskaper för ankarlänk","name":"Ankarnamn","errorName":"Var god ange ett ankarnamn","remove":"Radera ankare"},"anchorId":"Efter element-id","anchorName":"Efter ankarnamn","charset":"Teckenuppställning","cssClasses":"Stilmall","emailAddress":"E-postadress","emailBody":"Innehåll","emailSubject":"Ämne","id":"Id","info":"Länkinformation","langCode":"Språkkod","langDir":"Språkriktning","langDirLTR":"Vänster till höger (VTH)","langDirRTL":"Höger till vänster (HTV)","menu":"Redigera länk","name":"Namn","noAnchors":"(Inga ankare kunde hittas)","noEmail":"Var god ange e-postadress","noUrl":"Var god ange länkens URL","other":"<annan>","popupDependent":"Beroende (endast Netscape)","popupFeatures":"Popup-fönstrets egenskaper","popupFullScreen":"Helskärm (endast IE)","popupLeft":"Position från vänster","popupLocationBar":"Adressfält","popupMenuBar":"Menyfält","popupResizable":"Resizable","popupScrollBars":"Scrolllista","popupStatusBar":"Statusfält","popupToolbar":"Verktygsfält","popupTop":"Position från sidans topp","rel":"Förhållande","selectAnchor":"Välj ett ankare","styles":"Stilmall","tabIndex":"Tabindex","target":"Mål","targetFrame":"<ram>","targetFrameName":"Målets ramnamn","targetPopup":"<popup-fönster>","targetPopupName":"Popup-fönstrets namn","title":"Länk","toAnchor":"Länk till ankare i texten","toEmail":"E-post","toUrl":"URL","toolbar":"Infoga/Redigera länk","type":"Länktyp","unlink":"Radera länk","upload":"Ladda upp"},"list":{"bulletedlist":"Punktlista","numberedlist":"Numrerad lista"},"liststyle":{"armenian":"Armenisk numrering","bulletedTitle":"Egenskaper för punktlista","circle":"Cirkel","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal nolla (01, 02, 03, etc.)","disc":"Disk","georgian":"Georgisk numrering (an, ban, gan, etc.)","lowerAlpha":"Alpha gemener (a, b, c, d, e, etc.)","lowerGreek":"Grekiska gemener (alpha, beta, gamma, etc.)","lowerRoman":"Romerska gemener (i, ii, iii, iv, v, etc.)","none":"Ingen","notset":"<ej angiven>","numberedTitle":"Egenskaper för punktlista","square":"Fyrkant","start":"Start","type":"Typ","upperAlpha":"Alpha versaler (A, B, C, D, E, etc.)","upperRoman":"Romerska versaler (I, II, III, IV, V, etc.)","validateStartNumber":"Listans startnummer måste vara ett heltal."},"magicline":{"title":"Infoga paragraf här"},"maximize":{"maximize":"Maximera","minimize":"Minimera"},"newpage":{"toolbar":"Ny sida"},"pagebreak":{"alt":"Sidbrytning","toolbar":"Infoga sidbrytning för utskrift"},"pastetext":{"button":"Klistra in som vanlig text","title":"Klistra in som vanlig text"},"pastefromword":{"confirmCleanup":"Texten du vill klistra in verkar vara kopierad från Word. Vill du rensa den innan du klistrar in den?","error":"Det var inte möjligt att städa upp den inklistrade data på grund av ett internt fel","title":"Klistra in från Word","toolbar":"Klistra in från Word"},"preview":{"preview":"Förhandsgranska"},"print":{"toolbar":"Skriv ut"},"removeformat":{"toolbar":"Radera formatering"},"save":{"toolbar":"Spara"},"selectall":{"toolbar":"Markera allt"},"showblocks":{"toolbar":"Visa block"},"sourcearea":{"toolbar":"Källa"},"specialchar":{"options":"Alternativ för utökade tecken","title":"Välj utökat tecken","toolbar":"Klistra in utökat tecken"},"scayt":{"btn_about":"Om SCAYT","btn_dictionaries":"Ordlistor","btn_disable":"Inaktivera SCAYT","btn_enable":"Aktivera SCAYT","btn_langs":"Språk","btn_options":"Inställningar","text_title":""},"stylescombo":{"label":"Anpassad stil","panelTitle":"Formatmallar","panelTitle1":"Blockstil","panelTitle2":"Inbäddad stil","panelTitle3":"Objektets stil"},"table":{"border":"Kantstorlek","caption":"Rubrik","cell":{"menu":"Cell","insertBefore":"Lägg till cell före","insertAfter":"Lägg till cell efter","deleteCell":"Radera celler","merge":"Sammanfoga celler","mergeRight":"Sammanfoga höger","mergeDown":"Sammanfoga ner","splitHorizontal":"Dela cell horisontellt","splitVertical":"Dela cell vertikalt","title":"Egenskaper för cell","cellType":"Celltyp","rowSpan":"Rad spann","colSpan":"Kolumnen spann","wordWrap":"Radbrytning","hAlign":"Horisontell justering","vAlign":"Vertikal justering","alignBaseline":"Baslinje","bgColor":"Bakgrundsfärg","borderColor":"Ramfärg","data":"Data","header":"Rubrik","yes":"Ja","no":"Nej","invalidWidth":"Cellens bredd måste vara ett nummer.","invalidHeight":"Cellens höjd måste vara ett nummer.","invalidRowSpan":"Radutvidgning måste vara ett heltal.","invalidColSpan":"Kolumn måste vara ett heltal.","chooseColor":"Välj"},"cellPad":"Cellutfyllnad","cellSpace":"Cellavstånd","column":{"menu":"Kolumn","insertBefore":"Lägg till kolumn före","insertAfter":"Lägg till kolumn efter","deleteColumn":"Radera kolumn"},"columns":"Kolumner","deleteTable":"Radera tabell","headers":"Rubriker","headersBoth":"Båda","headersColumn":"Första kolumnen","headersNone":"Ingen","headersRow":"Första raden","invalidBorder":"Ram måste vara ett nummer.","invalidCellPadding":"Luft i cell måste vara ett nummer.","invalidCellSpacing":"Luft i cell måste vara ett nummer.","invalidCols":"Antal kolumner måste vara ett nummer större än 0.","invalidHeight":"Tabellens höjd måste vara ett nummer.","invalidRows":"Antal rader måste vara större än 0.","invalidWidth":"Tabell måste vara ett nummer.","menu":"Tabellegenskaper","row":{"menu":"Rad","insertBefore":"Lägg till rad före","insertAfter":"Lägg till rad efter","deleteRow":"Radera rad"},"rows":"Rader","summary":"Sammanfattning","title":"Tabellegenskaper","toolbar":"Tabell","widthPc":"procent","widthPx":"pixlar","widthUnit":"enhet bredd"},"undo":{"redo":"Gör om","undo":"Ångra"},"wsc":{"btnIgnore":"Ignorera","btnIgnoreAll":"Ignorera alla","btnReplace":"Ersätt","btnReplaceAll":"Ersätt alla","btnUndo":"Ångra","changeTo":"Ändra till","errorLoading":"Tjänsten är ej tillgänglig: %s.","ieSpellDownload":"Stavningskontrollen är ej installerad. Vill du göra det nu?","manyChanges":"Stavningskontroll slutförd: %1 ord rättades.","noChanges":"Stavningskontroll slutförd: Inga ord rättades.","noMispell":"Stavningskontroll slutförd: Inga stavfel påträffades.","noSuggestions":"- Förslag saknas -","notAvailable":"Tyvärr är tjänsten ej tillgänglig nu","notInDic":"Saknas i ordlistan","oneChange":"Stavningskontroll slutförd: Ett ord rättades.","progress":"Stavningskontroll pågår...","title":"Kontrollera stavning","toolbar":"Stavningskontroll"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/th.js b/wqflask/wqflask/static/packages/ckeditor/lang/th.js
deleted file mode 100644
index c1456a76..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/th.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['th']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"กด ALT 0 หากต้องการความช่วยเหลือ","browseServer":"เปิดหน้าต่างจัดการไฟล์อัพโหลด","url":"ที่อยู่อ้างอิง URL","protocol":"โปรโตคอล","upload":"อัพโหลดไฟล์","uploadSubmit":"อัพโหลดไฟล์ไปเก็บไว้ที่เครื่องแม่ข่าย (เซิร์ฟเวอร์)","image":"รูปภาพ","flash":"ไฟล์ Flash","form":"แบบฟอร์ม","checkbox":"เช็คบ๊อก","radio":"เรดิโอบัตตอน","textField":"เท็กซ์ฟิลด์","textarea":"เท็กซ์แอเรีย","hiddenField":"ฮิดเดนฟิลด์","button":"ปุ่ม","select":"แถบตัวเลือก","imageButton":"ปุ่มแบบรูปภาพ","notSet":"<ไม่ระบุ>","id":"ไอดี","name":"ชื่อ","langDir":"การเขียน-อ่านภาษา","langDirLtr":"จากซ้ายไปขวา (LTR)","langDirRtl":"จากขวามาซ้าย (RTL)","langCode":"รหัสภาษา","longDescr":"คำอธิบายประกอบ URL","cssClass":"คลาสของไฟล์กำหนดลักษณะการแสดงผล","advisoryTitle":"คำเกริ่นนำ","cssStyle":"ลักษณะการแสดงผล","ok":"ตกลง","cancel":"ยกเลิก","close":"ปิด","preview":"ดูหน้าเอกสารตัวอย่าง","resize":"ปรับขนาด","generalTab":"ทั่วไป","advancedTab":"ขั้นสูง","validateNumberFailed":"ค่านี้ไม่ใช่ตัวเลข","confirmNewPage":"การเปลี่ยนแปลงใดๆ ในเนื้อหานี้ ที่ไม่ได้ถูกบันทึกไว้ จะสูญหายทั้งหมด คุณแน่ใจว่าจะเรียกหน้าใหม่?","confirmCancel":"ตัวเลือกบางตัวมีการเปลี่ยนแปลง คุณแน่ใจว่าจะปิดกล่องโต้ตอบนี้?","options":"ตัวเลือก","target":"การเปิดหน้าลิงค์","targetNew":"หน้าต่างใหม่ (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"หน้าต่างเดียวกัน (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"จากซ้ายไปขวา (LTR)","langDirRTL":"จากขวามาซ้าย (RTL)","styles":"ลักษณะการแสดงผล","cssClasses":"คลาสของไฟล์กำหนดลักษณะการแสดงผล","width":"ความกว้าง","height":"ความสูง","align":"การจัดวาง","alignLeft":"ชิดซ้าย","alignRight":"ชิดขวา","alignCenter":"กึ่งกลาง","alignJustify":"நியாயப்படுத்தவும்","alignTop":"บนสุด","alignMiddle":"กึ่งกลางแนวตั้ง","alignBottom":"ชิดด้านล่าง","alignNone":"None","invalidValue":"ค่าไม่ถูกต้อง","invalidHeight":"ความสูงต้องเป็นตัวเลข","invalidWidth":"ความกว้างต้องเป็นตัวเลข","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"ตัวหนา","italic":"ตัวเอียง","strike":"ตัวขีดเส้นทับ","subscript":"ตัวห้อย","superscript":"ตัวยก","underline":"ตัวขีดเส้นใต้"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"สำเนา","copyError":"ไม่สามารถสำเนาข้อความที่เลือกไว้ได้เนื่องจากการกำหนดค่าระดับความปลอดภัย. กรุณาใช้ปุ่มลัดเพื่อวางข้อความแทน (กดปุ่ม Ctrl/Cmd และตัว C พร้อมกัน).","cut":"ตัด","cutError":"ไม่สามารถตัดข้อความที่เลือกไว้ได้เนื่องจากการกำหนดค่าระดับความปลอดภัย. กรุณาใช้ปุ่มลัดเพื่อวางข้อความแทน (กดปุ่ม Ctrl/Cmd และตัว X พร้อมกัน).","paste":"วาง","pasteArea":"Paste Area","pasteMsg":"กรุณาใช้คีย์บอร์ดเท่านั้น โดยกดปุ๋ม (<strong>Ctrl/Cmd และ V</strong>)พร้อมๆกัน และกด <strong>OK</strong>.","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"วาง"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"สีอัตโนมัติ","bgColorTitle":"สีพื้นหลัง","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"เลือกสีอื่นๆ...","panelTitle":"Colors","textColorTitle":"สีตัวอักษร"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"เทมเพลต","emptyListMsg":"(ยังไม่มีการกำหนดเทมเพลต)","insertOption":"แทนที่เนื้อหาเว็บไซต์ที่เลือก","options":"ตัวเลือกเกี่ยวกับเทมเพลท","selectPromptMsg":"กรุณาเลือก เทมเพลต เพื่อนำไปแก้ไขในอีดิตเตอร์<br />(เนื้อหาส่วนนี้จะหายไป):","title":"เทมเพลตของส่วนเนื้อหาเว็บไซต์"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"ไอดี","advisoryTitleInputLabel":"คำเกริ่นนำ","cssClassInputLabel":"คลาสของไฟล์กำหนดลักษณะการแสดงผล","edit":"แก้ไข Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"จากซ้ายไปขวา (LTR)","langDirLabel":"การเขียน-อ่านภาษา","langDirRTLLabel":"จากขวามาซ้าย (RTL)","languageCodeInputLabel":"รหัสภาษา","remove":"ลบ Div","styleSelectLabel":"ลักษณะการแสดงผล","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"ซ่อนแถบเครื่องมือ","toolbarExpand":"เปิดแถบเครื่องมือ","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"แถบเครื่องมือช่วยพิมพ์ข้อความ"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"ค้นหา","findOptions":"Find Options","findWhat":"ค้นหาคำว่า:","matchCase":"ตัวโหญ่-เล็ก ต้องตรงกัน","matchCyclic":"Match cyclic","matchWord":"ต้องตรงกันทุกคำ","notFoundMsg":"ไม่พบคำที่ค้นหา.","replace":"ค้นหาและแทนที่","replaceAll":"แทนที่ทั้งหมดที่พบ","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"แทนที่ด้วย:","title":"Find and Replace"},"fakeobjects":{"anchor":"แทรก/แก้ไข Anchor","flash":"ภาพอนิเมชั่นแฟลช","hiddenfield":"ฮิดเดนฟิลด์","iframe":"IFrame","unknown":"วัตถุไม่ทราบชนิด"},"flash":{"access":"การเข้าถึงสคริปต์","accessAlways":"ตลอดไป","accessNever":"ไม่เลย","accessSameDomain":"โดเมนเดียวกัน","alignAbsBottom":"ชิดด้านล่างสุด","alignAbsMiddle":"กึ่งกลาง","alignBaseline":"ชิดบรรทัด","alignTextTop":"ใต้ตัวอักษร","bgcolor":"สีพื้นหลัง","chkFull":"อนุญาตให้แสดงเต็มหน้าจอได้","chkLoop":"เล่นวนรอบ Loop","chkMenu":"ให้ใช้งานเมนูของ Flash","chkPlay":"เล่นอัตโนมัติ Auto Play","flashvars":"ตัวแปรสำหรับ Flas","hSpace":"ระยะแนวนอน","properties":"คุณสมบัติของไฟล์ Flash","propertiesTab":"คุณสมบัติ","quality":"คุณภาพ","qualityAutoHigh":"ปรับคุณภาพสูงอัตโนมัติ","qualityAutoLow":"ปรับคุณภาพต่ำอัตโนมัติ","qualityBest":"ดีที่สุด","qualityHigh":"สูง","qualityLow":"ต่ำ","qualityMedium":"ปานกลาง","scale":"อัตราส่วน Scale","scaleAll":"แสดงให้เห็นทั้งหมด Show all","scaleFit":"แสดงให้พอดีกับพื้นที่ Exact Fit","scaleNoBorder":"ไม่แสดงเส้นขอบ No Border","title":"คุณสมบัติของไฟล์ Flash","vSpace":"ระยะแนวตั้ง","validateHSpace":"HSpace ต้องเป็นจำนวนตัวเลข","validateSrc":"กรุณาระบุที่อยู่อ้างอิงออนไลน์ (URL)","validateVSpace":"VSpace ต้องเป็นจำนวนตัวเลข","windowMode":"โหมดหน้าต่าง","windowModeOpaque":"ความทึบแสง","windowModeTransparent":"ความโปรงแสง","windowModeWindow":"หน้าต่าง"},"font":{"fontSize":{"label":"ขนาด","voiceLabel":"Font Size","panelTitle":"ขนาด"},"label":"แบบอักษร","panelTitle":"แบบอักษร","voiceLabel":"แบบอักษร"},"forms":{"button":{"title":"รายละเอียดของ ปุ่ม","text":"ข้อความ (ค่าตัวแปร)","type":"ข้อความ","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"คุณสมบัติของ เช็คบ๊อก","radioTitle":"คุณสมบัติของ เรดิโอบัตตอน","value":"ค่าตัวแปร","selected":"เลือกเป็นค่าเริ่มต้น"},"form":{"title":"คุณสมบัติของ แบบฟอร์ม","menu":"คุณสมบัติของ แบบฟอร์ม","action":"แอคชั่น","method":"เมธอด","encoding":"Encoding"},"hidden":{"title":"คุณสมบัติของ ฮิดเดนฟิลด์","name":"ชื่อ","value":"ค่าตัวแปร"},"select":{"title":"คุณสมบัติของ แถบตัวเลือก","selectInfo":"อินโฟ","opAvail":"รายการตัวเลือก","value":"ค่าตัวแปร","size":"ขนาด","lines":"บรรทัด","chkMulti":"เลือกหลายค่าได้","opText":"ข้อความ","opValue":"ค่าตัวแปร","btnAdd":"เพิ่ม","btnModify":"แก้ไข","btnUp":"บน","btnDown":"ล่าง","btnSetValue":"เลือกเป็นค่าเริ่มต้น","btnDelete":"ลบ"},"textarea":{"title":"คุณสมบัติของ เท็กแอเรีย","cols":"สดมภ์","rows":"แถว"},"textfield":{"title":"คุณสมบัติของ เท็กซ์ฟิลด์","name":"ชื่อ","value":"ค่าตัวแปร","charWidth":"ความกว้าง","maxChars":"จำนวนตัวอักษรสูงสุด","type":"ชนิด","typeText":"ข้อความ","typePass":"รหัสผ่าน","typeEmail":"อีเมล","typeSearch":"ค้นหาก","typeTel":"หมายเลขโทรศัพท์","typeUrl":"ที่อยู่อ้างอิง URL"}},"format":{"label":"รูปแบบ","panelTitle":"รูปแบบ","tag_address":"Address","tag_div":"Paragraph (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"แทรกเส้นคั่นบรรทัด"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"กรุณาระบุที่อยู่อ้างอิงออนไลน์ของไฟล์รูปภาพ (URL)","alt":"คำประกอบรูปภาพ","border":"ขนาดขอบรูป","btnUpload":"อัพโหลดไฟล์ไปเก็บไว้ที่เครื่องแม่ข่าย (เซิร์ฟเวอร์)","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"ระยะแนวนอน","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"ข้อมูลของรูปภาพ","linkTab":"ลิ้งค์","lockRatio":"กำหนดอัตราส่วน กว้าง-สูง แบบคงที่","menu":"คุณสมบัติของ รูปภาพ","resetSize":"กำหนดรูปเท่าขนาดจริง","title":"คุณสมบัติของ รูปภาพ","titleButton":"คุณสมบัติของ ปุ่มแบบรูปภาพ","upload":"อัพโหลดไฟล์","urlMissing":"Image source URL is missing.","vSpace":"ระยะแนวตั้ง","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"เพิ่มระยะย่อหน้า","outdent":"ลดระยะย่อหน้า"},"smiley":{"options":"ตัวเลือกไอคอนแสดงอารมณ์","title":"แทรกสัญลักษณ์สื่ออารมณ์","toolbar":"รูปสื่ออารมณ์"},"justify":{"block":"จัดพอดีหน้ากระดาษ","center":"จัดกึ่งกลาง","left":"จัดชิดซ้าย","right":"จัดชิดขวา"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"แอคเซส คีย์","advanced":"ขั้นสูง","advisoryContentType":"ชนิดของคำเกริ่นนำ","advisoryTitle":"คำเกริ่นนำ","anchor":{"toolbar":"แทรก/แก้ไข Anchor","menu":"รายละเอียด Anchor","title":"รายละเอียด Anchor","name":"ชื่อ Anchor","errorName":"กรุณาระบุชื่อของ Anchor","remove":"Remove Anchor"},"anchorId":"ไอดี","anchorName":"ชื่อ","charset":"ลิงค์เชื่อมโยงไปยังชุดตัวอักษร","cssClasses":"คลาสของไฟล์กำหนดลักษณะการแสดงผล","emailAddress":"อีเมล์ (E-Mail)","emailBody":"ข้อความ","emailSubject":"หัวเรื่อง","id":"ไอดี","info":"รายละเอียด","langCode":"การเขียน-อ่านภาษา","langDir":"การเขียน-อ่านภาษา","langDirLTR":"จากซ้ายไปขวา (LTR)","langDirRTL":"จากขวามาซ้าย (RTL)","menu":"แก้ไข ลิงค์","name":"ชื่อ","noAnchors":"(ยังไม่มีจุดเชื่อมโยงภายในหน้าเอกสารนี้)","noEmail":"กรุณาระบุอีเมล์ (E-mail)","noUrl":"กรุณาระบุที่อยู่อ้างอิงออนไลน์ (URL)","other":"<อื่น ๆ>","popupDependent":"แสดงเต็มหน้าจอ (Netscape)","popupFeatures":"คุณสมบัติของหน้าจอเล็ก (Pop-up)","popupFullScreen":"แสดงเต็มหน้าจอ (IE5.5++ เท่านั้น)","popupLeft":"พิกัดซ้าย (Left Position)","popupLocationBar":"แสดงที่อยู่ของไฟล์","popupMenuBar":"แสดงแถบเมนู","popupResizable":"สามารถปรับขนาดได้","popupScrollBars":"แสดงแถบเลื่อน","popupStatusBar":"แสดงแถบสถานะ","popupToolbar":"แสดงแถบเครื่องมือ","popupTop":"พิกัดบน (Top Position)","rel":"ความสัมพันธ์","selectAnchor":"ระบุข้อมูลของจุดเชื่อมโยง (Anchor)","styles":"ลักษณะการแสดงผล","tabIndex":"ลำดับของ แท็บ","target":"การเปิดหน้าลิงค์","targetFrame":"<เปิดในเฟรม>","targetFrameName":"ชื่อทาร์เก็ตเฟรม","targetPopup":"<เปิดหน้าจอเล็ก (Pop-up)>","targetPopupName":"ระบุชื่อหน้าจอเล็ก (Pop-up)","title":"ลิงค์เชื่อมโยงเว็บ อีเมล์ รูปภาพ หรือไฟล์อื่นๆ","toAnchor":"จุดเชื่อมโยง (Anchor)","toEmail":"ส่งอีเมล์ (E-Mail)","toUrl":"ที่อยู่อ้างอิง URL","toolbar":"แทรก/แก้ไข ลิงค์","type":"ประเภทของลิงค์","unlink":"ลบ ลิงค์","upload":"อัพโหลดไฟล์"},"list":{"bulletedlist":"ลำดับรายการแบบสัญลักษณ์","numberedlist":"ลำดับรายการแบบตัวเลข"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"ขยายใหญ่","minimize":"ย่อขนาด"},"newpage":{"toolbar":"สร้างหน้าเอกสารใหม่"},"pagebreak":{"alt":"ตัวแบ่งหน้า","toolbar":"แทรกตัวแบ่งหน้า Page Break"},"pastetext":{"button":"วางแบบตัวอักษรธรรมดา","title":"วางแบบตัวอักษรธรรมดา"},"pastefromword":{"confirmCleanup":"ข้อความที่คุณต้องการวางลงไปเป็นข้อความที่คัดลอกมาจากโปรแกรมไมโครซอฟท์เวิร์ด คุณต้องการล้างค่าข้อความดังกล่าวก่อนวางลงไปหรือไม่?","error":"ไม่สามารถล้างข้อมูลที่ต้องการวางได้เนื่องจากเกิดข้อผิดพลาดภายในระบบ","title":"วางสำเนาจากตัวอักษรเวิร์ด","toolbar":"วางสำเนาจากตัวอักษรเวิร์ด"},"preview":{"preview":"ดูหน้าเอกสารตัวอย่าง"},"print":{"toolbar":"สั่งพิมพ์"},"removeformat":{"toolbar":"ล้างรูปแบบ"},"save":{"toolbar":"บันทึก"},"selectall":{"toolbar":"เลือกทั้งหมด"},"showblocks":{"toolbar":"แสดงบล็อคข้อมูล"},"sourcearea":{"toolbar":"ดูรหัส HTML"},"specialchar":{"options":"Special Character Options","title":"แทรกตัวอักษรพิเศษ","toolbar":"แทรกตัวอักษรพิเศษ"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"ลักษณะ","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"ขนาดเส้นขอบ","caption":"หัวเรื่องของตาราง","cell":{"menu":"ช่องตาราง","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"ลบช่อง","merge":"ผสานช่อง","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"ระยะแนวตั้ง","cellSpace":"ระยะแนวนอนน","column":{"menu":"คอลัมน์","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"ลบสดมน์"},"columns":"สดมน์","deleteTable":"ลบตาราง","headers":"ส่วนหัว","headersBoth":"ทั้งสองอย่าง","headersColumn":"คอลัมน์แรก","headersNone":"None","headersRow":"แถวแรก","invalidBorder":"ขนาดเส้นกรอบต้องเป็นจำนวนตัวเลข","invalidCellPadding":"ช่องว่างภายในเซลล์ต้องเลขจำนวนบวก","invalidCellSpacing":"ช่องว่างภายในเซลล์ต้องเป็นเลขจำนวนบวก","invalidCols":"จำนวนคอลัมน์ต้องเป็นจำนวนมากกว่า 0","invalidHeight":"ส่วนสูงของตารางต้องเป็นตัวเลข","invalidRows":"จำนวนของแถวต้องเป็นจำนวนมากกว่า 0","invalidWidth":"ความกว้างตารางต้องเป็นตัวเลข","menu":"คุณสมบัติของ ตาราง","row":{"menu":"แถว","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"ลบแถว"},"rows":"แถว","summary":"สรุปความ","title":"คุณสมบัติของ ตาราง","toolbar":"ตาราง","widthPc":"เปอร์เซ็น","widthPx":"จุดสี","widthUnit":"หน่วยความกว้าง"},"undo":{"redo":"ทำซ้ำคำสั่ง","undo":"ยกเลิกคำสั่ง"},"wsc":{"btnIgnore":"ยกเว้น","btnIgnoreAll":"ยกเว้นทั้งหมด","btnReplace":"แทนที่","btnReplaceAll":"แทนที่ทั้งหมด","btnUndo":"ยกเลิก","changeTo":"แก้ไขเป็น","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"ไม่ได้ติดตั้งระบบตรวจสอบคำสะกด. ต้องการติดตั้งไหมครับ?","manyChanges":"ตรวจสอบคำสะกดเสร็จสิ้น:: แก้ไข %1 คำ","noChanges":"ตรวจสอบคำสะกดเสร็จสิ้น: ไม่มีการแก้คำใดๆ","noMispell":"ตรวจสอบคำสะกดเสร็จสิ้น: ไม่พบคำสะกดผิด","noSuggestions":"- ไม่มีคำแนะนำใดๆ -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"ไม่พบในดิกชันนารี","oneChange":"ตรวจสอบคำสะกดเสร็จสิ้น: แก้ไข1คำ","progress":"กำลังตรวจสอบคำสะกด...","title":"Spell Check","toolbar":"ตรวจการสะกดคำ"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/tr.js b/wqflask/wqflask/static/packages/ckeditor/lang/tr.js
deleted file mode 100644
index 089b1454..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/tr.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['tr']={"editor":"Zengin Metin Editörü","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Yardım için ALT 0 tuşlarına basın","browseServer":"Sunucuya Gözat","url":"URL","protocol":"Protokol","upload":"Karşıya Yükle","uploadSubmit":"Sunucuya Gönder","image":"Resim","flash":"Flash","form":"Form","checkbox":"Onay Kutusu","radio":"Seçenek Düğmesi","textField":"Metin Kutusu","textarea":"Metin Alanı","hiddenField":"Gizli Alan","button":"Düğme","select":"Seçme Alanı","imageButton":"Resim Düğmesi","notSet":"<tanımlanmamış>","id":"Kimlik","name":"İsim","langDir":"Dil Yönü","langDirLtr":"Soldan Sağa (LTR)","langDirRtl":"Sağdan Sola (RTL)","langCode":"Dil Kodlaması","longDescr":"Uzun Tanımlı URL","cssClass":"Biçem Sayfası Sınıfları","advisoryTitle":"Öneri Başlığı","cssStyle":"Biçem","ok":"Tamam","cancel":"İptal","close":"Kapat","preview":"Önizleme","resize":"Yeniden Boyutlandır","generalTab":"Genel","advancedTab":"Gelişmiş","validateNumberFailed":"Bu değer bir sayı değildir.","confirmNewPage":"Bu içerikle ilgili kaydedilmemiş tüm bilgiler kaybolacaktır. Yeni bir sayfa yüklemek istediğinizden emin misiniz?","confirmCancel":"Bazı seçenekleri değiştirdiniz. İletişim penceresini kapatmak istediğinizden emin misiniz?","options":"Seçenekler","target":"Hedef","targetNew":"Yeni Pencere (_blank)","targetTop":"En Üstteki Pencere (_top)","targetSelf":"Aynı Pencere (_self)","targetParent":"Üst Pencere (_parent)","langDirLTR":"Soldan Sağa (LTR)","langDirRTL":"Sağdan Sola (RTL)","styles":"Biçem","cssClasses":"Biçem Sayfası Sınıfları","width":"Genişlik","height":"Yükseklik","align":"Hizalama","alignLeft":"Sol","alignRight":"Sağ","alignCenter":"Ortala","alignJustify":"İki Kenara Yaslanmış","alignTop":"Üst","alignMiddle":"Orta","alignBottom":"Alt","alignNone":"Hiçbiri","invalidValue":"Geçersiz değer.","invalidHeight":"Yükseklik değeri bir sayı olmalıdır.","invalidWidth":"Genişlik değeri bir sayı olmalıdır.","invalidCssLength":"\"%1\" alanı için verilen değer, geçerli bir CSS ölçü birimi (px, %, in, cm, mm, em, ex, pt, veya pc) içeren veya içermeyen pozitif bir sayı olmalıdır.","invalidHtmlLength":"Belirttiğiniz sayı \"%1\" alanı için pozitif bir sayı HTML birim değeri olmalıdır (px veya %).","invalidInlineStyle":"Satıriçi biçem için verilen değer, \"isim : değer\" biçiminde birbirinden noktalı virgüllerle ayrılan bir veya daha fazla değişkenler grubundan oluşmalıdır.","cssLengthTooltip":"Piksel türünde bir sayı veya geçerli bir CSS ölçü birimi (px, %, in, cm, mm, em, ex, pt veya pc) içeren bir sayı girin.","unavailable":"%1<span class=\"cke_accessibility\">, kullanılamaz</span>"},"about":{"copy":"Copyright &copy; $1. Tüm hakları saklıdır.","dlgTitle":"CKEditor Hakkında","help":"Yardım için $1 kontrol edin.","moreInfo":"Lisanslama hakkında daha fazla bilgi almak için lütfen sitemizi ziyaret edin:","title":"CKEditor Hakkında","userGuide":"CKEditor Kullanıcı Kılavuzu"},"basicstyles":{"bold":"Kalın","italic":"İtalik","strike":"Üstü Çizgili","subscript":"Alt Simge","superscript":"Üst Simge","underline":"Altı Çizgili"},"bidi":{"ltr":"Metin yönü soldan sağa","rtl":"Metin yönü sağdan sola"},"blockquote":{"toolbar":"Blok Oluştur"},"clipboard":{"copy":"Kopyala","copyError":"Gezgin yazılımınızın güvenlik ayarları düzenleyicinin otomatik kopyalama işlemine izin vermiyor. İşlem için (Ctrl/Cmd+C) tuşlarını kullanın.","cut":"Kes","cutError":"Gezgin yazılımınızın güvenlik ayarları düzenleyicinin otomatik kesme işlemine izin vermiyor. İşlem için (Ctrl/Cmd+X) tuşlarını kullanın.","paste":"Yapıştır","pasteArea":"Yapıştırma Alanı","pasteMsg":"Lütfen aşağıdaki kutunun içine yapıştırın. (<STRONG>Ctrl/Cmd+V</STRONG>) ve <STRONG>Tamam</STRONG> butonunu tıklayın.","securityMsg":"Gezgin yazılımınızın güvenlik ayarları düzenleyicinin direkt olarak panoya erişimine izin vermiyor. Bu pencere içine tekrar yapıştırmalısınız..","title":"Yapıştır"},"button":{"selectedLabel":"%1 (Seçilmiş)"},"colorbutton":{"auto":"Otomatik","bgColorTitle":"Arka Renk","colors":{"000":"Siyah","800000":"Kestane","8B4513":"Koyu Kahverengi","2F4F4F":"Koyu Kurşuni Gri","008080":"Teal","000080":"Mavi","4B0082":"Çivit Mavisi","696969":"Silik Gri","B22222":"Ateş Tuğlası","A52A2A":"Kahverengi","DAA520":"Altun Sırık","006400":"Koyu Yeşil","40E0D0":"Turkuaz","0000CD":"Orta Mavi","800080":"Pembe","808080":"Gri","F00":"Kırmızı","FF8C00":"Koyu Portakal","FFD700":"Altın","008000":"Yeşil","0FF":"Ciyan","00F":"Mavi","EE82EE":"Menekşe","A9A9A9":"Koyu Gri","FFA07A":"Açık Sarımsı","FFA500":"Portakal","FFFF00":"Sarı","00FF00":"Açık Yeşil","AFEEEE":"Sönük Turkuaz","ADD8E6":"Açık Mavi","DDA0DD":"Mor","D3D3D3":"Açık Gri","FFF0F5":"Eflatun Pembe","FAEBD7":"Antik Beyaz","FFFFE0":"Açık Sarı","F0FFF0":"Balsarısı","F0FFFF":"Gök Mavisi","F0F8FF":"Reha Mavi","E6E6FA":"Eflatun","FFF":"Beyaz"},"more":"Diğer renkler...","panelTitle":"Renkler","textColorTitle":"Yazı Rengi"},"colordialog":{"clear":"Temizle","highlight":"İşaretle","options":"Renk Seçenekleri","selected":"Seçilmiş","title":"Renk seç"},"templates":{"button":"Şablonlar","emptyListMsg":"(Belirli bir şablon seçilmedi)","insertOption":"Mevcut içerik ile değiştir","options":"Şablon Seçenekleri","selectPromptMsg":"Düzenleyicide açmak için lütfen bir şablon seçin.<br>(hali hazırdaki içerik kaybolacaktır.):","title":"İçerik Şablonları"},"contextmenu":{"options":"İçerik Menüsü Seçenekleri"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Tavsiye Başlığı","cssClassInputLabel":"Stilltipi Sınıfı","edit":"Div Düzenle","inlineStyleInputLabel":"Inline Stili","langDirLTRLabel":"Soldan sağa (LTR)","langDirLabel":"Dil Yönü","langDirRTLLabel":"Sağdan sola (RTL)","languageCodeInputLabel":" Dil Kodu","remove":"Div Kaldır","styleSelectLabel":"Stil","title":"Div İçeriği Oluştur","toolbar":"Div İçeriği Oluştur"},"toolbar":{"toolbarCollapse":"Araç çubuklarını topla","toolbarExpand":"Araç çubuklarını aç","toolbarGroups":{"document":"Belge","clipboard":"Pano/Geri al","editing":"Düzenleme","forms":"Formlar","basicstyles":"Temel Stiller","paragraph":"Paragraf","links":"Bağlantılar","insert":"Ekle","styles":"Stiller","colors":"Renkler","tools":"Araçlar"},"toolbars":"Araç çubukları Editörü"},"elementspath":{"eleLabel":"Elementlerin yolu","eleTitle":"%1 elementi"},"find":{"find":"Bul","findOptions":"Seçenekleri Bul","findWhat":"Aranan:","matchCase":"Büyük/küçük harf duyarlı","matchCyclic":"Eşleşen döngü","matchWord":"Kelimenin tamamı uysun","notFoundMsg":"Belirtilen yazı bulunamadı.","replace":"Değiştir","replaceAll":"Tümünü Değiştir","replaceSuccessMsg":"%1 bulunanlardan değiştirildi.","replaceWith":"Bununla değiştir:","title":"Bul ve Değiştir"},"fakeobjects":{"anchor":"Bağlantı","flash":"Flash Animasyonu","hiddenfield":"Gizli Alan","iframe":"IFrame","unknown":"Bilinmeyen Nesne"},"flash":{"access":"Kod İzni","accessAlways":"Herzaman","accessNever":"Asla","accessSameDomain":"Aynı domain","alignAbsBottom":"Tam Altı","alignAbsMiddle":"Tam Ortası","alignBaseline":"Taban Çizgisi","alignTextTop":"Yazı Tepeye","bgcolor":"Arka Renk","chkFull":"Tam ekrana İzinver","chkLoop":"Döngü","chkMenu":"Flash Menüsünü Kullan","chkPlay":"Otomatik Oynat","flashvars":"Flash Değerleri","hSpace":"Yatay Boşluk","properties":"Flash Özellikleri","propertiesTab":"Özellikler","quality":"Kalite","qualityAutoHigh":"Otomatik Yükseklik","qualityAutoLow":"Otomatik Düşüklük","qualityBest":"En iyi","qualityHigh":"Yüksek","qualityLow":"Düşük","qualityMedium":"Orta","scale":"Boyutlandır","scaleAll":"Hepsini Göster","scaleFit":"Tam Sığdır","scaleNoBorder":"Kenar Yok","title":"Flash Özellikleri","vSpace":"Dikey Boşluk","validateHSpace":"HSpace sayı olmalıdır.","validateSrc":"Lütfen köprü URL'sini yazın","validateVSpace":"VSpace sayı olmalıdır.","windowMode":"Pencere modu","windowModeOpaque":"Opak","windowModeTransparent":"Şeffaf","windowModeWindow":"Pencere"},"font":{"fontSize":{"label":"Boyut","voiceLabel":"Font Size","panelTitle":"Boyut"},"label":"Yazı Türü","panelTitle":"Yazı Türü","voiceLabel":"Font"},"forms":{"button":{"title":"Düğme Özellikleri","text":"Metin (Değer)","type":"Tip","typeBtn":"Düğme","typeSbm":"Gönder","typeRst":"Sıfırla"},"checkboxAndRadio":{"checkboxTitle":"Onay Kutusu Özellikleri","radioTitle":"Seçenek Düğmesi Özellikleri","value":"Değer","selected":"Seçili"},"form":{"title":"Form Özellikleri","menu":"Form Özellikleri","action":"İşlem","method":"Yöntem","encoding":"Kodlama"},"hidden":{"title":"Gizli Veri Özellikleri","name":"Ad","value":"Değer"},"select":{"title":"Seçim Menüsü Özellikleri","selectInfo":"Bilgi","opAvail":"Mevcut Seçenekler","value":"Değer","size":"Boyut","lines":"satır","chkMulti":"Çoklu seçime izin ver","opText":"Metin","opValue":"Değer","btnAdd":"Ekle","btnModify":"Düzenle","btnUp":"Yukarı","btnDown":"Aşağı","btnSetValue":"Seçili değer olarak ata","btnDelete":"Sil"},"textarea":{"title":"Çok Satırlı Metin Özellikleri","cols":"Sütunlar","rows":"Satırlar"},"textfield":{"title":"Metin Girişi Özellikleri","name":"Ad","value":"Değer","charWidth":"Karakter Genişliği","maxChars":"En Fazla Karakter","type":"Tür","typeText":"Metin","typePass":"Şifre","typeEmail":"E-posta","typeSearch":"Ara","typeTel":"Telefon Numarası","typeUrl":"URL"}},"format":{"label":"Biçim","panelTitle":"Biçim","tag_address":"Adres","tag_div":"Paragraf (DIV)","tag_h1":"Başlık 1","tag_h2":"Başlık 2","tag_h3":"Başlık 3","tag_h4":"Başlık 4","tag_h5":"Başlık 5","tag_h6":"Başlık 6","tag_p":"Normal","tag_pre":"Biçimli"},"horizontalrule":{"toolbar":"Yatay Satır Ekle"},"iframe":{"border":"Çerceve sınırlarını göster","noUrl":"Lütfen IFrame köprü (URL) bağlantısını yazın","scrolling":"Kaydırma çubuklarını aktif et","title":"IFrame Özellikleri","toolbar":"IFrame"},"image":{"alertUrl":"Lütfen resmin URL'sini yazınız","alt":"Alternatif Yazı","border":"Kenar","btnUpload":"Sunucuya Yolla","button2Img":"Seçili resim butonunu basit resime çevirmek istermisiniz?","hSpace":"Yatay Boşluk","img2Button":"Seçili olan resimi, resimli butona çevirmek istermisiniz?","infoTab":"Resim Bilgisi","linkTab":"Köprü","lockRatio":"Oranı Kilitle","menu":"Resim Özellikleri","resetSize":"Boyutu Başa Döndür","title":"Resim Özellikleri","titleButton":"Resimli Düğme Özellikleri","upload":"Karşıya Yükle","urlMissing":"Resmin URL kaynağı eksiktir.","vSpace":"Dikey Boşluk","validateBorder":"Çerçeve tam sayı olmalıdır.","validateHSpace":"HSpace tam sayı olmalıdır.","validateVSpace":"VSpace tam sayı olmalıdır."},"indent":{"indent":"Sekme Arttır","outdent":"Sekme Azalt"},"smiley":{"options":"İfade Seçenekleri","title":"İfade Ekle","toolbar":"İfade"},"justify":{"block":"İki Kenara Yaslanmış","center":"Ortalanmış","left":"Sola Dayalı","right":"Sağa Dayalı"},"language":{"button":"Dili seç","remove":"Dili kaldır"},"link":{"acccessKey":"Erişim Tuşu","advanced":"Gelişmiş","advisoryContentType":"Danışma İçerik Türü","advisoryTitle":"Danışma Başlığı","anchor":{"toolbar":"Bağlantı Ekle/Düzenle","menu":"Bağlantı Özellikleri","title":"Bağlantı Özellikleri","name":"Bağlantı Adı","errorName":"Lütfen bağlantı için ad giriniz","remove":"Bağlantıyı Kaldır"},"anchorId":"Eleman Kimlik Numarası ile","anchorName":"Bağlantı Adı ile","charset":"Bağlı Kaynak Karakter Gurubu","cssClasses":"Biçem Sayfası Sınıfları","emailAddress":"E-Posta Adresi","emailBody":"İleti Gövdesi","emailSubject":"İleti Konusu","id":"Id","info":"Link Bilgisi","langCode":"Dil Yönü","langDir":"Dil Yönü","langDirLTR":"Soldan Sağa (LTR)","langDirRTL":"Sağdan Sola (RTL)","menu":"Link Düzenle","name":"Ad","noAnchors":"(Bu belgede hiç çapa yok)","noEmail":"Lütfen E-posta adresini yazın","noUrl":"Lütfen Link URL'sini yazın","other":"<diğer>","popupDependent":"Bağımlı (Netscape)","popupFeatures":"Yeni Açılan Pencere Özellikleri","popupFullScreen":"Tam Ekran (IE)","popupLeft":"Sola Göre Konum","popupLocationBar":"Yer Çubuğu","popupMenuBar":"Menü Çubuğu","popupResizable":"Resizable","popupScrollBars":"Kaydırma Çubukları","popupStatusBar":"Durum Çubuğu","popupToolbar":"Araç Çubuğu","popupTop":"Yukarıya Göre Konum","rel":"İlişki","selectAnchor":"Bağlantı Seç","styles":"Biçem","tabIndex":"Sekme İndeksi","target":"Hedef","targetFrame":"<çerçeve>","targetFrameName":"Hedef Çerçeve Adı","targetPopup":"<yeni açılan pencere>","targetPopupName":"Yeni Açılan Pencere Adı","title":"Link","toAnchor":"Bu sayfada çapa","toEmail":"E-Posta","toUrl":"URL","toolbar":"Link Ekle/Düzenle","type":"Link Türü","unlink":"Köprü Kaldır","upload":"Karşıya Yükle"},"list":{"bulletedlist":"Simgeli Liste","numberedlist":"Numaralı Liste"},"liststyle":{"armenian":"Ermenice sayılandırma","bulletedTitle":"Simgeli Liste Özellikleri","circle":"Daire","decimal":"Ondalık (1, 2, 3, vs.)","decimalLeadingZero":"Başı sıfırlı ondalık (01, 02, 03, vs.)","disc":"Disk","georgian":"Gürcüce numaralandırma (an, ban, gan, vs.)","lowerAlpha":"Küçük Alpha (a, b, c, d, e, vs.)","lowerGreek":"Küçük Greek (alpha, beta, gamma, vs.)","lowerRoman":"Küçük Roman (i, ii, iii, iv, v, vs.)","none":"Yok","notset":"<ayarlanmamış>","numberedTitle":"Sayılandırılmış Liste Özellikleri","square":"Kare","start":"Başla","type":"Tipi","upperAlpha":"Büyük Alpha (A, B, C, D, E, vs.)","upperRoman":"Büyük Roman (I, II, III, IV, V, vs.)","validateStartNumber":"Liste başlangıcı tam sayı olmalıdır."},"magicline":{"title":"Parağrafı buraya ekle"},"maximize":{"maximize":"Büyült","minimize":"Küçült"},"newpage":{"toolbar":"Yeni Sayfa"},"pagebreak":{"alt":"Sayfa Sonu","toolbar":"Sayfa Sonu Ekle"},"pastetext":{"button":"Düz Metin Olarak Yapıştır","title":"Düz Metin Olarak Yapıştır"},"pastefromword":{"confirmCleanup":"Yapıştırmaya çalıştığınız metin Word'den kopyalanmıştır. Yapıştırmadan önce silmek istermisiniz?","error":"Yapıştırmadaki veri bilgisi hata düzelene kadar silinmeyecektir","title":"Word'den Yapıştır","toolbar":"Word'den Yapıştır"},"preview":{"preview":"Ön İzleme"},"print":{"toolbar":"Yazdır"},"removeformat":{"toolbar":"Biçimi Kaldır"},"save":{"toolbar":"Kaydet"},"selectall":{"toolbar":"Tümünü Seç"},"showblocks":{"toolbar":"Blokları Göster"},"sourcearea":{"toolbar":"Kaynak"},"specialchar":{"options":"Özel Karakter Seçenekleri","title":"Özel Karakter Seç","toolbar":"Özel Karakter Ekle"},"scayt":{"btn_about":"SCAYT'ı hakkında","btn_dictionaries":"Sözlükler","btn_disable":"SCAYT'ı pasifleştir","btn_enable":"SCAYT'ı etkinleştir","btn_langs":"Diller","btn_options":"Seçenekler","text_title":""},"stylescombo":{"label":"Biçem","panelTitle":"Stilleri Düzenliyor","panelTitle1":"Blok Stilleri","panelTitle2":"Inline Stilleri","panelTitle3":"Nesne Stilleri"},"table":{"border":"Kenar Kalınlığı","caption":"Başlık","cell":{"menu":"Hücre","insertBefore":"Hücre Ekle - Önce","insertAfter":"Hücre Ekle - Sonra","deleteCell":"Hücre Sil","merge":"Hücreleri Birleştir","mergeRight":"Birleştir - Sağdaki İle ","mergeDown":"Birleştir - Aşağıdaki İle ","splitHorizontal":"Hücreyi Yatay Böl","splitVertical":"Hücreyi Dikey Böl","title":"Hücre Özellikleri","cellType":"Hücre Tipi","rowSpan":"Satırlar Mesafesi (Span)","colSpan":"Sütünlar Mesafesi (Span)","wordWrap":"Kelime Kaydırma","hAlign":"Düşey Hizalama","vAlign":"Yataş Hizalama","alignBaseline":"Tabana","bgColor":"Arkaplan Rengi","borderColor":"Çerçeve Rengi","data":"Veri","header":"Başlık","yes":"Evet","no":"Hayır","invalidWidth":"Hücre genişliği sayı olmalıdır.","invalidHeight":"Hücre yüksekliği sayı olmalıdır.","invalidRowSpan":"Satırların mesafesi tam sayı olmalıdır.","invalidColSpan":"Sütünların mesafesi tam sayı olmalıdır.","chooseColor":"Seçiniz"},"cellPad":"Izgara yazı arası","cellSpace":"Izgara kalınlığı","column":{"menu":"Sütun","insertBefore":"Kolon Ekle - Önce","insertAfter":"Kolon Ekle - Sonra","deleteColumn":"Sütun Sil"},"columns":"Sütunlar","deleteTable":"Tabloyu Sil","headers":"Başlıklar","headersBoth":"Her İkisi","headersColumn":"İlk Sütun","headersNone":"Yok","headersRow":"İlk Satır","invalidBorder":"Çerceve büyüklüklüğü sayı olmalıdır.","invalidCellPadding":"Hücre aralığı (padding) sayı olmalıdır.","invalidCellSpacing":"Hücre boşluğu (spacing) sayı olmalıdır.","invalidCols":"Sütün sayısı 0 sayısından büyük olmalıdır.","invalidHeight":"Tablo yüksekliği sayı olmalıdır.","invalidRows":"Satır sayısı 0 sayısından büyük olmalıdır.","invalidWidth":"Tablo genişliği sayı olmalıdır.","menu":"Tablo Özellikleri","row":{"menu":"Satır","insertBefore":"Satır Ekle - Önce","insertAfter":"Satır Ekle - Sonra","deleteRow":"Satır Sil"},"rows":"Satırlar","summary":"Özet","title":"Tablo Özellikleri","toolbar":"Tablo","widthPc":"yüzde","widthPx":"piksel","widthUnit":"genişlik birimi"},"undo":{"redo":"Tekrarla","undo":"Geri Al"},"wsc":{"btnIgnore":"Yoksay","btnIgnoreAll":"Tümünü Yoksay","btnReplace":"Değiştir","btnReplaceAll":"Tümünü Değiştir","btnUndo":"Geri Al","changeTo":"Şuna değiştir:","errorLoading":"Uygulamada yüklerken hata oluştu: %s.","ieSpellDownload":"Yazım denetimi yüklenmemiş. Şimdi yüklemek ister misiniz?","manyChanges":"Yazım denetimi tamamlandı: %1 kelime değiştirildi","noChanges":"Yazım denetimi tamamlandı: Hiçbir kelime değiştirilmedi","noMispell":"Yazım denetimi tamamlandı: Yanlış yazıma rastlanmadı","noSuggestions":"- Öneri Yok -","notAvailable":"Üzügünüz, bu servis şuanda hizmet dışıdır.","notInDic":"Sözlükte Yok","oneChange":"Yazım denetimi tamamlandı: Bir kelime değiştirildi","progress":"Yazım denetimi işlemde...","title":"Yazımı Denetle","toolbar":"Yazım Denetimi"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/tt.js b/wqflask/wqflask/static/packages/ckeditor/lang/tt.js
deleted file mode 100644
index 6811d6b1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/tt.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['tt']={"editor":"Форматлаулы текст өлкәсе","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Ярдәм өчен ALT 0 басыгыз","browseServer":"Сервер карап чыгу","url":"Сылталама","protocol":"Протокол","upload":"Йөкләү","uploadSubmit":"Серверга җибәрү","image":"Рәсем","flash":"Флеш","form":"Форма","checkbox":"Чекбокс","radio":"Радио төймә","textField":"Текст кыры","textarea":"Текст мәйданы","hiddenField":"Яшерен кыр","button":"Төймə","select":"Сайлау кыры","imageButton":"Рәсемле төймə","notSet":"<билгеләнмәгән>","id":"Id","name":"Исем","langDir":"Язылыш юнəлеше","langDirLtr":"Сулдан уңга язылыш (LTR)","langDirRtl":"Уңнан сулга язылыш (RTL)","langCode":"Тел коды","longDescr":"Җентекле тасвирламага сылталама","cssClass":"Стильләр класслары","advisoryTitle":"Киңәш исем","cssStyle":"Стиль","ok":"Тәмам","cancel":"Баш тарту","close":"Чыгу","preview":"Карап алу","resize":"Зурлыкны үзгәртү","generalTab":"Төп","advancedTab":"Киңәйтелгән көйләүләр","validateNumberFailed":"Әлеге кыйммәт сан түгел","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Үзлекләр","target":"Максат","targetNew":"Яңа тәрәзә (_blank)","targetTop":"Өске тәрәзә (_top)","targetSelf":"Шул үк тәрәзә (_self)","targetParent":"Ана тәрәзә (_parent)","langDirLTR":"Сулдан уңга язылыш (LTR)","langDirRTL":"Уңнан сулга язылыш (RTL)","styles":"Стиль","cssClasses":"Стильләр класслары","width":"Киңлек","height":"Биеклек","align":"Тигезләү","alignLeft":"Сул якка","alignRight":"Уң якка","alignCenter":"Үзәккә","alignJustify":"Киңлеккә карап тигезләү","alignTop":"Өскә","alignMiddle":"Уртага","alignBottom":"Аска","alignNone":"None","invalidValue":"Дөрес булмаган кыйммәт","invalidHeight":"Биеклек сан булырга тиеш","invalidWidth":"Киңлек сан булырга тиеш","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. Бар хокуклар сакланган","dlgTitle":"CKEditor турында","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"CKEditor турында","userGuide":"CKEditor кулланмасы"},"basicstyles":{"bold":"Калын","italic":"Курсив","strike":"Сызылган","subscript":"Аскы индекс","superscript":"Өске индекс","underline":"Астына сызылган"},"bidi":{"ltr":"Сулдан уңга язылыш","rtl":"Уңнан сулга язылыш"},"blockquote":{"toolbar":"Өземтә блогы"},"clipboard":{"copy":"Күчермәләү","copyError":"Браузерыгызның иминлек үзлекләре автоматик рәвештә күчермәләү үтәүне тыя. Тиз төймәләрне (Ctrl/Cmd+C) кулланыгыз.","cut":"Кисеп алу","cutError":"Браузерыгызның иминлек үзлекләре автоматик рәвештә күчермәләү үтәүне тыя. Тиз төймәләрне (Ctrl/Cmd+C) кулланыгыз.","paste":"Өстәү","pasteArea":"Өстәү мәйданы","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Өстәү"},"button":{"selectedLabel":"%1 (Сайланган)"},"colorbutton":{"auto":"Автоматик","bgColorTitle":"Фон төсе","colors":{"000":"Кара","800000":"Бордо","8B4513":"Дарчин","2F4F4F":"Аспид соры","008080":"Күкле-яшелле","000080":"Куе күк","4B0082":"Индиго","696969":"Куе соры","B22222":"Кармин","A52A2A":"Чия кызыл","DAA520":"Алтын каен","006400":"Үлән","40E0D0":"Фирәзә","0000CD":"Фарсы күк","800080":"Шәмәхә","808080":"Соры","F00":"Кызыл","FF8C00":"Кабак","FFD700":"Алтын","008000":"Яшел","0FF":"Ачык зәңгәр","00F":"Зәңгәр","EE82EE":"Миләүшә","A9A9A9":"Ачык соры","FFA07A":"Кызгылт сары алсу","FFA500":"Кызгылт сары","FFFF00":"Сары","00FF00":"Лайм","AFEEEE":"Тонык күк","ADD8E6":"Тонык күкбаш","DDA0DD":"Аксыл шәмәхә","D3D3D3":"Ачык соры","FFF0F5":"Ал ала миләүшә","FAEBD7":"Җитен","FFFFE0":"Ачык сары","F0FFF0":"Аксыл көрән","F0FFFF":"Ап-ак","F0F8FF":"Аксыл зәңгәр диңгез","E6E6FA":"Ала миләүшә","FFF":"Ак"},"more":"Башка төсләр","panelTitle":"Төсләр","textColorTitle":"Текст төсе"},"colordialog":{"clear":"Бушату","highlight":"Билгеләү","options":"Төс көйләүләре","selected":"Сайланган төсләр","title":"Төс сайлау"},"templates":{"button":"Шаблоннар","emptyListMsg":"(Шаблоннар билгеләнмәгән)","insertOption":"Әлеге эчтәлекне алмаштыру","options":"Шаблон үзлекләре","selectPromptMsg":"Please select the template to open in the editor","title":"Эчтәлек шаблоннары"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Идентификатор","advisoryTitleInputLabel":"Киңәш исем","cssClassInputLabel":"Стильләр класслары","edit":"Edit Div","inlineStyleInputLabel":"Эчке стиль","langDirLTRLabel":"Сулдан уңга язылыш (LTR)","langDirLabel":"Язылыш юнəлеше","langDirRTLLabel":"Уңнан сулга язылыш (RTL)","languageCodeInputLabel":"Тел коды","remove":"Remove Div","styleSelectLabel":"Стиль","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Документ","clipboard":"Алмашу буферы/Кайтару","editing":"Төзәтү","forms":"Формалар","basicstyles":"Төп стильләр","paragraph":"Параграф","links":"Сылталамалар","insert":"Өстәү","styles":"Стильләр","colors":"Төсләр","tools":"Кораллар"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Эзләү","findOptions":"Эзләү көйләүләре","findWhat":"Нәрсә эзләргә:","matchCase":"Баш һәм юл хәрефләрен исәпкә алу","matchCyclic":"Кабатлап эзләргә","matchWord":"Сүзләрне тулысынча гына эзләү","notFoundMsg":"Эзләнгән текст табылмады.","replace":"Алмаштыру","replaceAll":"Барысын да алмаштыру","replaceSuccessMsg":"%1 урында(ларда) алмаштырылган.","replaceWith":"Нәрсәгә алмаштыру:","title":"Эзләп табу һәм алмаштыру"},"fakeobjects":{"anchor":"Якорь","flash":"Флеш анимациясы","hiddenfield":"Яшерен кыр","iframe":"IFrame","unknown":"Танылмаган объект"},"flash":{"access":"Script Access","accessAlways":"Һəрвакыт","accessNever":"Беркайчан да","accessSameDomain":"Same domain","alignAbsBottom":"Иң аска","alignAbsMiddle":"Төгәл уртада","alignBaseline":"Таяныч сызыгы","alignTextTop":"Text Top","bgcolor":"Фон төсе","chkFull":"Allow Fullscreen","chkLoop":"Әйләнеш","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Флеш үзлекләре","propertiesTab":"Үзлекләр","quality":"Сыйфат","qualityAutoHigh":"Авто югары сыйфат","qualityAutoLow":"Авто түбән сыйфат","qualityBest":"Иң югары сыйфат","qualityHigh":"Югары","qualityLow":"Түбəн","qualityMedium":"Уртача","scale":"Scale","scaleAll":"Барысын күрсәтү","scaleFit":"Exact Fit","scaleNoBorder":"Чиксез","title":"Флеш үзлекләре","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Тəрəзə тәртибе","windowModeOpaque":"Үтә күренмәле","windowModeTransparent":"Үтə күренмəле","windowModeWindow":"Тəрəзə"},"font":{"fontSize":{"label":"Зурлык","voiceLabel":"Шрифт зурлыклары","panelTitle":"Шрифт зурлыклары"},"label":"Шрифт","panelTitle":"Шрифт исеме","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Төймә үзлекләре","text":"Text (Value)","type":"Төр","typeBtn":"Төймә","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Сайланган"},"form":{"title":"Форма үзлекләре","menu":"Форма үзлекләре","action":"Гамәл","method":"Ысул","encoding":"Кодировка"},"hidden":{"title":"Яшерен кыр үзлекләре","name":"Исем","value":"Күләм"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Күләм","size":"Зурлык","lines":"юллар","chkMulti":"Allow multiple selections","opText":"Текст","opValue":"Күләм","btnAdd":"Кушу","btnModify":"Үзгәртү","btnUp":"Өскә","btnDown":"Аска","btnSetValue":"Set as selected value","btnDelete":"Бетерү"},"textarea":{"title":"Текст мәйданы үзлекләре","cols":"Баганалар","rows":"Юллар"},"textfield":{"title":"Текст кыры үзлекләре","name":"Исем","value":"Күләм","charWidth":"Символлар киңлеге","maxChars":"Maximum Characters","type":"Төр","typeText":"Текст","typePass":"Сер сүз","typeEmail":"Эл. почта","typeSearch":"Эзләү","typeTel":"Телефон номеры","typeUrl":"Сылталама"}},"format":{"label":"Форматлау","panelTitle":"Параграф форматлавы","tag_address":"Адрес","tag_div":"Гади (DIV)","tag_h1":"Башлам 1","tag_h2":"Башлам 2","tag_h3":"Башлам 3","tag_h4":"Башлам 4","tag_h5":"Башлам 5","tag_h6":"Башлам 6","tag_p":"Гади","tag_pre":"Форматлаулы"},"horizontalrule":{"toolbar":"Ятма сызык өстәү"},"iframe":{"border":"Frame чикләрен күрсәтү","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame үзлекләре","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Альтернатив текст","border":"Чик","btnUpload":"Серверга җибәрү","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Рәсем тасвирламасы","linkTab":"Сылталама","lockRatio":"Lock Ratio","menu":"Рәсем үзлекләре","resetSize":"Reset Size","title":"Рәсем үзлекләре","titleButton":"Рәсемле төймə үзлекләре","upload":"Йөкләү","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Чик киңлеге сан булырга тиеш","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Отступны арттыру","outdent":"Отступны кечерәйтү"},"smiley":{"options":"Смайл көйләүләре","title":"Смайл өстәү","toolbar":"Смайл"},"justify":{"block":"Киңлеккә карап тигезләү","center":"Үзәккә тигезләү","left":"Сул як кырыйдан тигезләү","right":"Уң як кырыйдан тигезләү"},"language":{"button":"Тел сайлау","remove":"Телне бетерү"},"link":{"acccessKey":"Access Key","advanced":"Киңәйтелгән көйләүләр","advisoryContentType":"Advisory Content Type","advisoryTitle":"Киңәш исем","anchor":{"toolbar":"Якорь","menu":"Якорьне үзгәртү","title":"Якорь үзлекләре","name":"Якорь исеме","errorName":"Якорьнең исемен языгыз","remove":"Якорьне бетерү"},"anchorId":"Элемент идентификаторы буенча","anchorName":"Якорь исеме буенча","charset":"Linked Resource Charset","cssClasses":"Стильләр класслары","emailAddress":"Электрон почта адресы","emailBody":"Хат эчтәлеге","emailSubject":"Хат темасы","id":"Идентификатор","info":"Сылталама тасвирламасы","langCode":"Тел коды","langDir":"Язылыш юнəлеше","langDirLTR":"Сулдан уңга язылыш (LTR)","langDirRTL":"Уңнан сулга язылыш (RTL)","menu":"Сылталамаyны үзгәртү","name":"Исем","noAnchors":"(Әлеге документта якорьләр табылмады)","noEmail":"Электрон почта адресын языгыз","noUrl":"Сылталаманы языгыз","other":"<бүтән>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Бәйләнеш","selectAnchor":"Якорьне сайлау","styles":"Стиль","tabIndex":"Tab Index","target":"Максат","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Сылталама","toAnchor":"Якорьне текст белән бәйләү","toEmail":"Электрон почта","toUrl":"Сылталама","toolbar":"Сылталама","type":"Сылталама төре","unlink":"Сылталаманы бетерү","upload":"Йөкләү"},"list":{"bulletedlist":"Маркерлы тезмә өстәү/бетерү","numberedlist":" Номерланган тезмә өстәү/бетерү"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Маркерлы тезмә үзлекләре","circle":"Түгәрәк","decimal":"Унарлы (1, 2, 3, ...)","decimalLeadingZero":"Ноль белән башланган унарлы (01, 02, 03, ...)","disc":"Диск","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"Һичбер","notset":"<билгеләнмәгән>","numberedTitle":"Numbered List Properties","square":"Шакмак","start":"Башлау","type":"Төр","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Бирегә параграф өстәү"},"maximize":{"maximize":"Зурайту","minimize":"Кечерәйтү"},"newpage":{"toolbar":"Яңа бит"},"pagebreak":{"alt":"Бит бүлгече","toolbar":"Бастыру өчен бит бүлгечен өстәү"},"pastetext":{"button":"Форматлаусыз текст өстәү","title":"Форматлаусыз текст өстәү"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Word'тан өстәү","toolbar":"Word'тан өстәү"},"preview":{"preview":"Карап алу"},"print":{"toolbar":"Бастыру"},"removeformat":{"toolbar":"Форматлауны бетерү"},"save":{"toolbar":"Саклау"},"selectall":{"toolbar":"Барысын сайлау"},"showblocks":{"toolbar":"Блокларны күрсәтү"},"sourcearea":{"toolbar":"Чыганак"},"specialchar":{"options":"Махсус символ үзлекләре","title":"Махсус символ сайлау","toolbar":"Махсус символ өстәү"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Стильләр","panelTitle":"Форматлау стильләре","panelTitle1":"Блоклар стильләре","panelTitle2":"Эчке стильләр","panelTitle3":"Объектлар стильләре"},"table":{"border":"Чик калынлыгы","caption":"Исем","cell":{"menu":"Күзәнәк","insertBefore":"Алдына күзәнәк өстәү","insertAfter":"Артына күзәнәк өстәү","deleteCell":"Күзәнәкләрне бетерү","merge":"Күзәнәкләрне берләштерү","mergeRight":"Уң яктагы белән берләштерү","mergeDown":"Астагы белән берләштерү","splitHorizontal":"Күзәнәкне юлларга бүлү","splitVertical":"Күзәнәкне баганаларга бүлү","title":"Күзәнәк үзлекләре","cellType":"Күзәнәк төре","rowSpan":"Юлларны берләштерү","colSpan":"Баганаларны берләштерү","wordWrap":"Текстны күчерү","hAlign":"Ятма тигезләү","vAlign":"Асма тигезләү","alignBaseline":"Таяныч сызыгы","bgColor":"Фон төсе","borderColor":"Чик төсе","data":"Мәгълүмат","header":"Башлык","yes":"Әйе","no":"Юк","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Сайлау"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Багана","insertBefore":"Сулдан баганалар өстәү","insertAfter":"Уңнан баганалар өстәү","deleteColumn":"Баганаларны бетерү"},"columns":"Баганалар","deleteTable":"Таблицаны бетерү","headers":"Башлыклар","headersBoth":"Икесе дә","headersColumn":"Беренче багана","headersNone":"Һичбер","headersRow":"Беренче юл","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Таблица үзлекләре","row":{"menu":"Юл","insertBefore":"Өстән юллар өстәү","insertAfter":"Астан юллар өстәү","deleteRow":"Юлларны бетерү"},"rows":"Юллар","summary":"Йомгаклау","title":"Таблица үзлекләре","toolbar":"Таблица","widthPc":"процент","widthPx":"Нокталар","widthUnit":"киңлек берәмлеге"},"undo":{"redo":"Кабатлау","undo":"Кайтару"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/ug.js b/wqflask/wqflask/static/packages/ckeditor/lang/ug.js
deleted file mode 100644
index 42b93990..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/ug.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['ug']={"editor":"تەھرىرلىگۈچ","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"ALT+0 نى بېسىپ ياردەمنى كۆرۈڭ","browseServer":"كۆرسىتىش مۇلازىمېتىر","url":"ئەسلى ھۆججەت","protocol":"كېلىشىم","upload":"يۈكلە","uploadSubmit":"مۇلازىمېتىرغا يۈكلە","image":"سۈرەت","flash":"Flash","form":"جەدۋەل","checkbox":"كۆپ تاللاش رامكىسى","radio":"يەككە تاللاش توپچىسى","textField":"يەككە قۇر تېكىست","textarea":"كۆپ قۇر تېكىست","hiddenField":"يوشۇرۇن دائىرە","button":"توپچا","select":"تىزىم/تىزىملىك","imageButton":"سۈرەت دائىرە","notSet":"‹تەڭشەلمىگەن›","id":"ID","name":"ئات","langDir":"تىل يۆنىلىشى","langDirLtr":"سولدىن ئوڭغا (LTR)","langDirRtl":"ئوڭدىن سولغا (RTL)","langCode":"تىل كودى","longDescr":"تەپسىلىي چۈشەندۈرۈش ئادرېسى","cssClass":"ئۇسلۇب خىلىنىڭ ئاتى","advisoryTitle":"ماۋزۇ","cssStyle":"قۇر ئىچىدىكى ئۇسلۇبى","ok":"جەزملە","cancel":"ۋاز كەچ","close":"تاقا","preview":"ئالدىن كۆزەت","resize":"چوڭلۇقىنى ئۆزگەرت","generalTab":"ئادەتتىكى","advancedTab":"ئالىي","validateNumberFailed":"سان پىچىمىدا كىرگۈزۈش زۆرۈر","confirmNewPage":"نۆۋەتتىكى پۈتۈك مەزمۇنى ساقلانمىدى، يېڭى پۈتۈك قۇرامسىز؟","confirmCancel":"قىسمەن ئۆزگەرتىش ساقلانمىدى، بۇ سۆزلەشكۈنى تاقامسىز؟","options":"تاللانما","target":"نىشان كۆزنەك","targetNew":"يېڭى كۆزنەك (_blank)","targetTop":"پۈتۈن بەت (_top)","targetSelf":"مەزكۇر كۆزنەك (_self)","targetParent":"ئاتا كۆزنەك (_parent)","langDirLTR":"سولدىن ئوڭغا (LTR)","langDirRTL":"ئوڭدىن سولغا (RTL)","styles":"ئۇسلۇبلار","cssClasses":"ئۇسلۇب خىللىرى","width":"كەڭلىك","height":"ئېگىزلىك","align":"توغرىلىنىشى","alignLeft":"سول","alignRight":"ئوڭ","alignCenter":"ئوتتۇرا","alignJustify":"ئىككى تەرەپتىن توغرىلا","alignTop":"ئۈستى","alignMiddle":"ئوتتۇرا","alignBottom":"ئاستى","alignNone":"None","invalidValue":"ئىناۋەتسىز قىممەت.","invalidHeight":"ئېگىزلىك چوقۇم رەقەم پىچىمىدا بولۇشى زۆرۈر","invalidWidth":"كەڭلىك چوقۇم رەقەم پىچىمىدا بولۇشى زۆرۈر","invalidCssLength":"بۇ سۆز بۆلىكى چوقۇم مۇۋاپىق بولغان CSS ئۇزۇنلۇق قىممىتى بولۇشى زۆرۈر، بىرلىكى (px, %, in, cm, mm, em, ex, pt ياكى pc)","invalidHtmlLength":"بۇ سۆز بۆلىكى چوقۇم بىرىكمە HTML ئۇزۇنلۇق قىممىتى بولۇشى كېرەك. ئۆز ئىچىگە ئالىدىغان بىرلىك (px ياكى %)","invalidInlineStyle":"ئىچكى باغلانما ئۇسلۇبى چوقۇم چېكىتلىك پەش بىلەن ئايرىلغان بىر ياكى كۆپ «خاسلىق ئاتى:خاسلىق قىممىتى» پىچىمىدا بولۇشى لازىم","cssLengthTooltip":"بۇ سۆز بۆلىكى بىرىكمە CSS ئۇزۇنلۇق قىممىتى بولۇشى كېرەك. ئۆز ئىچىگە ئالىدىغان بىرلىك (px, %, in, cm, mm, em, ex, pt ياكى pc)","unavailable":"%1<span class=\\\\\"cke_accessibility\\\\\">، ئىشلەتكىلى بولمايدۇ</span>"},"about":{"copy":"Copyright &copy; $1. نەشر ھوقۇقىغا ئىگە","dlgTitle":"CKEditor ھەققىدە","help":"$1 نى زىيارەت قىلىپ ياردەمگە ئېرىشىڭ","moreInfo":"تور تۇرايىمىزنى زىيارەت قىلىپ كېلىشىمگە ئائىت تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىڭ","title":"CKEditor ھەققىدە","userGuide":"CKEditor ئىشلەتكۈچى قوللانمىسى"},"basicstyles":{"bold":"توم","italic":"يانتۇ","strike":"ئۆچۈرۈش سىزىقى","subscript":"تۆۋەن ئىندېكس","superscript":"يۇقىرى ئىندېكس","underline":"ئاستى سىزىق"},"bidi":{"ltr":"تېكىست يۆنىلىشى سولدىن ئوڭغا","rtl":"تېكىست يۆنىلىشى ئوڭدىن سولغا"},"blockquote":{"toolbar":"بۆلەك نەقىل"},"clipboard":{"copy":"نەشر ھوقۇقىغا ئىگە بەلگىسى","copyError":"تور كۆرگۈڭىزنىڭ بىخەتەرلىك تەڭشىكى تەھرىرلىگۈچنىڭ كۆچۈر مەشغۇلاتىنى ئۆزلۈكىدىن ئىجرا قىلىشىغا يول قويمايدۇ، ھەرپتاختا تېز كۇنۇپكا (Ctrl/Cmd+C) ئارقىلىق تاماملاڭ","cut":"كەس","cutError":"تور كۆرگۈڭىزنىڭ بىخەتەرلىك تەڭشىكى تەھرىرلىگۈچنىڭ كەس مەشغۇلاتىنى ئۆزلۈكىدىن ئىجرا قىلىشىغا يول قويمايدۇ، ھەرپتاختا تېز كۇنۇپكا (Ctrl/Cmd+X) ئارقىلىق تاماملاڭ","paste":"چاپلا","pasteArea":"چاپلاش دائىرىسى","pasteMsg":"ھەرپتاختا تېز كۇنۇپكا (<STRONG>Ctrl/Cmd+V</STRONG>) نى ئىشلىتىپ مەزمۇننى تۆۋەندىكى رامكىغا كۆچۈرۈڭ، ئاندىن <STRONG>جەزملە</STRONG>نى بېسىڭ","securityMsg":"توركۆرگۈڭىزنىڭ بىخەتەرلىك تەڭشىكى سەۋەبىدىن بۇ تەھرىرلىگۈچ چاپلاش تاختىسىدىكى مەزمۇننى بىۋاستە زىيارەت قىلالمايدۇ، بۇ كۆزنەكتە قايتا بىر قېتىم چاپلىشىڭىز كېرەك.","title":"چاپلا"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"ئۆزلۈكىدىن","bgColorTitle":"تەگلىك رەڭگى","colors":{"000":"قارا","800000":"قىزغۇچ سېرىق","8B4513":"توق قوڭۇر","2F4F4F":"قارامتۇل يېشىل","008080":"كۆكۈش يېشىل","000080":"قارامتۇل كۆك","4B0082":"كۆكۈش كۈلرەڭ","696969":"قارامتۇل كۈلرەڭ","B22222":"خىش قىزىل","A52A2A":"قوڭۇر","DAA520":"ئالتۇن سېرىق","006400":"توق يېشىل","40E0D0":"كۆكۈچ يېشىل","0000CD":"ئوتتۇراھال كۆك","800080":"بىنەپشە","808080":"كۈلرەڭ","F00":"قىزىل","FF8C00":"توق قىزغۇچ سېرىق","FFD700":"ئالتۇن","008000":"يېشىل","0FF":"يېشىل كۆك","00F":"كۆك","EE82EE":"قىزغۇچ بىنەپشە","A9A9A9":"توق كۈلرەڭ","FFA07A":"كاۋا چېچىكى سېرىق","FFA500":"قىزغۇچ سېرىق","FFFF00":"سېرىق","00FF00":"Lime","AFEEEE":"سۇس ھاۋا رەڭ","ADD8E6":"ئوچۇق كۆك","DDA0DD":"قىزغۇچ بىنەپشە","D3D3D3":"سۇس كۆكۈچ كۈلرەڭ","FFF0F5":"سۇس قىزغۇچ بىنەپشە","FAEBD7":"Antique White","FFFFE0":"سۇس سېرىق","F0FFF0":"Honeydew","F0FFFF":"ئاسمان كۆكى","F0F8FF":"سۇس كۆك","E6E6FA":"سۇس بىنەپشە","FFF":"ئاق"},"more":"باشقا رەڭ","panelTitle":"رەڭ","textColorTitle":"تېكىست رەڭگى"},"colordialog":{"clear":"تازىلا","highlight":"يورۇت","options":"رەڭ تاللانمىسى","selected":"رەڭ تاللاڭ","title":"رەڭ تاللاڭ"},"templates":{"button":"قېلىپ","emptyListMsg":"(قېلىپ يوق)","insertOption":"نۆۋەتتىكى مەزمۇننى ئالماشتۇر","options":"قېلىپ تاللانمىسى","selectPromptMsg":"تەھرىرلىگۈچنىڭ مەزمۇن قېلىپىنى تاللاڭ:","title":"مەزمۇن قېلىپى"},"contextmenu":{"options":"قىسقا يول تىزىملىك تاللانمىسى"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"ماۋزۇ","cssClassInputLabel":"ئۇسلۇب تىپىنىڭ ئاتى","edit":"DIV تەھرىر","inlineStyleInputLabel":"قۇر ئىچىدىكى ئۇسلۇبى","langDirLTRLabel":"سولدىن ئوڭغا (LTR)","langDirLabel":"تىل يۆنىلىشى","langDirRTLLabel":"ئوڭدىن سولغا (RTL)","languageCodeInputLabel":"تىل كودى","remove":"DIV چىقىرىۋەت","styleSelectLabel":"ئۇسلۇب","title":"DIV قاچا قۇر","toolbar":"DIV قاچا قۇر"},"toolbar":{"toolbarCollapse":"قورال بالداقنى قاتلا","toolbarExpand":"قورال بالداقنى ياي","toolbarGroups":{"document":"پۈتۈك","clipboard":"چاپلاش تاختىسى/يېنىۋال","editing":"تەھرىر","forms":"جەدۋەل","basicstyles":"ئاساسىي ئۇسلۇب","paragraph":"ئابزاس","links":"ئۇلانما","insert":"قىستۇر","styles":"ئۇسلۇب","colors":"رەڭ","tools":"قورال"},"toolbars":"قورال بالداق"},"elementspath":{"eleLabel":"ئېلېمېنت يولى","eleTitle":"%1 ئېلېمېنت"},"find":{"find":"ئىزدە","findOptions":"ئىزدەش تاللانمىسى","findWhat":"ئىزدە:","matchCase":"چوڭ كىچىك ھەرپنى پەرقلەندۈر","matchCyclic":"ئايلانما ماسلىشىش","matchWord":"پۈتۈن سۆز ماسلىشىش","notFoundMsg":"بەلگىلەنگەن تېكىستنى تاپالمىدى","replace":"ئالماشتۇر","replaceAll":"ھەممىنى ئالماشتۇر","replaceSuccessMsg":"جەمئى %1 جايدىكى ئالماشتۇرۇش تاماملاندى","replaceWith":"ئالماشتۇر:","title":"ئىزدەپ ئالماشتۇر"},"fakeobjects":{"anchor":"لەڭگەرلىك نۇقتا","flash":"Flash جانلاندۇرۇم","hiddenfield":"يوشۇرۇن دائىرە","iframe":"IFrame","unknown":"يوچۇن نەڭ"},"flash":{"access":"قوليازما زىيارەتكە يول قوي","accessAlways":"ھەمىشە","accessNever":"ھەرگىز","accessSameDomain":"ئوخشاش دائىرىدە","alignAbsBottom":"مۇتلەق ئاستى","alignAbsMiddle":"مۇتلەق ئوتتۇرا","alignBaseline":"ئاساسىي سىزىق","alignTextTop":"تېكىست ئۈستىدە","bgcolor":"تەگلىك رەڭگى","chkFull":"پۈتۈن ئېكراننى قوزغات","chkLoop":"دەۋرىي","chkMenu":"Flash تىزىملىكنى قوزغات","chkPlay":"ئۆزلۈكىدىن چال","flashvars":"Flash ئۆزگەرگۈچى","hSpace":"توغرىسىغا ئارىلىق","properties":"Flash خاسلىق","propertiesTab":"خاسلىق","quality":"سۈپەت","qualityAutoHigh":"يۇقىرى (ئاپتوماتىك)","qualityAutoLow":"تۆۋەن (ئاپتوماتىك)","qualityBest":"ئەڭ ياخشى","qualityHigh":"يۇقىرى","qualityLow":"تۆۋەن","qualityMedium":"ئوتتۇرا (ئاپتوماتىك)","scale":"نىسبىتى","scaleAll":"ھەممىنى كۆرسەت","scaleFit":"قەتئىي ماسلىشىش","scaleNoBorder":"گىرۋەك يوق","title":"ماۋزۇ","vSpace":"بويىغا ئارىلىق","validateHSpace":"توغرىسىغا ئارىلىق چوقۇم سان بولىدۇ","validateSrc":"ئەسلى ھۆججەت ئادرېسىنى كىرگۈزۈڭ","validateVSpace":"بويىغا ئارىلىق چوقۇم سان بولىدۇ","windowMode":"كۆزنەك ھالىتى","windowModeOpaque":"خىرە","windowModeTransparent":"سۈزۈك","windowModeWindow":"كۆزنەك گەۋدىسى"},"font":{"fontSize":{"label":"چوڭلۇقى","voiceLabel":"خەت چوڭلۇقى","panelTitle":"چوڭلۇقى"},"label":"خەت نۇسخا","panelTitle":"خەت نۇسخا","voiceLabel":"خەت نۇسخا"},"forms":{"button":{"title":"توپچا خاسلىقى","text":"بەلگە (قىممەت)","type":"تىپى","typeBtn":"توپچا","typeSbm":"تاپشۇر","typeRst":"ئەسلىگە قايتۇر"},"checkboxAndRadio":{"checkboxTitle":"كۆپ تاللاش خاسلىقى","radioTitle":"تاق تاللاش توپچا خاسلىقى","value":"تاللىغان قىممەت","selected":"تاللانغان"},"form":{"title":"جەدۋەل خاسلىقى","menu":"جەدۋەل خاسلىقى","action":"مەشغۇلات","method":"ئۇسۇل","encoding":"جەدۋەل كودلىنىشى"},"hidden":{"title":"يوشۇرۇن دائىرە خاسلىقى","name":"ئات","value":"دەسلەپكى قىممىتى"},"select":{"title":"جەدۋەل/تىزىم خاسلىقى","selectInfo":"ئۇچۇر تاللاڭ","opAvail":"تاللاش تۈرلىرى","value":"قىممەت","size":"ئېگىزلىكى","lines":"قۇر","chkMulti":"كۆپ تاللاشچان","opText":"تاللانما تېكىستى","opValue":"تاللانما قىممىتى","btnAdd":"قوش","btnModify":"ئۆزگەرت","btnUp":"ئۈستىگە","btnDown":"ئاستىغا","btnSetValue":"دەسلەپكى تاللانما قىممىتىگە تەڭشە","btnDelete":"ئۆچۈر"},"textarea":{"title":" كۆپ قۇرلۇق تېكىست خاسلىقى","cols":"ھەرپ كەڭلىكى","rows":"قۇر سانى"},"textfield":{"title":"تاق قۇرلۇق تېكىست خاسلىقى","name":"ئات","value":"دەسلەپكى قىممىتى","charWidth":"ھەرپ كەڭلىكى","maxChars":"ئەڭ كۆپ ھەرپ سانى","type":"تىپى","typeText":"تېكىست","typePass":"ئىم","typeEmail":"تورخەت","typeSearch":"ئىزدە","typeTel":"تېلېفون نومۇر","typeUrl":"ئادرېس"}},"format":{"label":"پىچىم","panelTitle":"پىچىم","tag_address":"ئادرېس","tag_div":"ئابزاس (DIV)","tag_h1":"ماۋزۇ 1","tag_h2":"ماۋزۇ 2","tag_h3":"ماۋزۇ 3","tag_h4":"ماۋزۇ 4","tag_h5":"ماۋزۇ 5","tag_h6":"ماۋزۇ 6","tag_p":"ئادەتتىكى","tag_pre":"تىزىلغان پىچىم"},"horizontalrule":{"toolbar":"توغرا سىزىق قىستۇر"},"iframe":{"border":"كاندۇك گىرۋەكلىرىنى كۆرسەت","noUrl":"كاندۇكنىڭ ئادرېسى(Url)نى كىرگۈزۈڭ","scrolling":"دومىلىما سۈرگۈچكە يول قوي","title":"IFrame خاسلىق","toolbar":"IFrame "},"image":{"alertUrl":"سۈرەت ئادرېسىنى كىرگۈزۈڭ","alt":"تېكىست ئالماشتۇر","border":"گىرۋەك چوڭلۇقى","btnUpload":"مۇلازىمېتىرغا يۈكلە","button2Img":"نۆۋەتتىكى توپچىنى سۈرەتكە ئۆزگەرتەمسىز؟","hSpace":"توغرىسىغا ئارىلىقى","img2Button":"نۆۋەتتىكى سۈرەتنى توپچىغا ئۆزگەرتەمسىز؟","infoTab":"سۈرەت","linkTab":"ئۇلانما","lockRatio":"نىسبەتنى قۇلۇپلا","menu":"سۈرەت خاسلىقى","resetSize":"ئەسلى چوڭلۇق","title":"سۈرەت خاسلىقى","titleButton":"سۈرەت دائىرە خاسلىقى","upload":"يۈكلە","urlMissing":"سۈرەتنىڭ ئەسلى ھۆججەت ئادرېسى كەم","vSpace":"بويىغا ئارىلىقى","validateBorder":"گىرۋەك چوڭلۇقى چوقۇم سان بولىدۇ","validateHSpace":"توغرىسىغا ئارىلىق چوقۇم پۈتۈن سان بولىدۇ","validateVSpace":"بويىغا ئارىلىق چوقۇم پۈتۈن سان بولىدۇ"},"indent":{"indent":"تارايت","outdent":"كەڭەيت"},"smiley":{"options":"چىراي ئىپادە سىنبەلگە تاللانمىسى","title":"چىراي ئىپادە سىنبەلگە قىستۇر","toolbar":"چىراي ئىپادە"},"justify":{"block":"ئىككى تەرەپتىن توغرىلا","center":"ئوتتۇرىغا توغرىلا","left":"سولغا توغرىلا","right":"ئوڭغا توغرىلا"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"زىيارەت كۇنۇپكا","advanced":"ئالىي","advisoryContentType":"مەزمۇن تىپى","advisoryTitle":"ماۋزۇ","anchor":{"toolbar":"لەڭگەرلىك نۇقتا ئۇلانمىسى قىستۇر/تەھرىرلە","menu":"لەڭگەرلىك نۇقتا ئۇلانما خاسلىقى","title":"لەڭگەرلىك نۇقتا ئۇلانما خاسلىقى","name":"لەڭگەرلىك نۇقتا ئاتى","errorName":"لەڭگەرلىك نۇقتا ئاتىنى كىرگۈزۈڭ","remove":"لەڭگەرلىك نۇقتا ئۆچۈر"},"anchorId":"لەڭگەرلىك نۇقتا ID سى بويىچە","anchorName":"لەڭگەرلىك نۇقتا ئاتى بويىچە","charset":"ھەرپ كودلىنىشى","cssClasses":"ئۇسلۇب خىلى ئاتى","emailAddress":"ئادرېس","emailBody":"مەزمۇن","emailSubject":"ماۋزۇ","id":"ID","info":"ئۇلانما ئۇچۇرى","langCode":"تىل كودى","langDir":"تىل يۆنىلىشى","langDirLTR":"سولدىن ئوڭغا (LTR)","langDirRTL":"ئوڭدىن سولغا (RTL)","menu":"ئۇلانما تەھرىر","name":"ئات","noAnchors":"(بۇ پۈتۈكتە ئىشلەتكىلى بولىدىغان لەڭگەرلىك نۇقتا يوق)","noEmail":"ئېلخەت ئادرېسىنى كىرگۈزۈڭ","noUrl":"ئۇلانما ئادرېسىنى كىرگۈزۈڭ","other":"‹باشقا›","popupDependent":"تەۋە (NS)","popupFeatures":"قاڭقىش كۆزنەك خاسلىقى","popupFullScreen":"پۈتۈن ئېكران (IE)","popupLeft":"سول","popupLocationBar":"ئادرېس بالداق","popupMenuBar":"تىزىملىك بالداق","popupResizable":"چوڭلۇقى ئۆزگەرتىشچان","popupScrollBars":"دومىلىما سۈرگۈچ","popupStatusBar":"ھالەت بالداق","popupToolbar":"قورال بالداق","popupTop":"ئوڭ","rel":"باغلىنىش","selectAnchor":"بىر لەڭگەرلىك نۇقتا تاللاڭ","styles":"قۇر ئىچىدىكى ئۇسلۇبى","tabIndex":"Tab تەرتىپى","target":"نىشان","targetFrame":"‹كاندۇك›","targetFrameName":"نىشان كاندۇك ئاتى","targetPopup":"‹قاڭقىش كۆزنەك›","targetPopupName":"قاڭقىش كۆزنەك ئاتى","title":"ئۇلانما","toAnchor":"بەت ئىچىدىكى لەڭگەرلىك نۇقتا ئۇلانمىسى","toEmail":"ئېلخەت","toUrl":"ئادرېس","toolbar":"ئۇلانما قىستۇر/تەھرىرلە","type":"ئۇلانما تىپى","unlink":"ئۇلانما بىكار قىل","upload":"يۈكلە"},"list":{"bulletedlist":"تۈر بەلگە تىزىمى","numberedlist":"تەرتىپ نومۇر تىزىمى"},"liststyle":{"armenian":"قەدىمكى ئەرمىنىيە تەرتىپ نومۇرى شەكلى","bulletedTitle":"تۈر بەلگە تىزىم خاسلىقى","circle":"بوش چەمبەر","decimal":"سان (1, 2, 3 قاتارلىق)","decimalLeadingZero":"نۆلدىن باشلانغان سان بەلگە (01, 02, 03 قاتارلىق)","disc":"تولدۇرۇلغان چەمبەر","georgian":"قەدىمكى جورجىيە تەرتىپ نومۇرى شەكلى (an, ban, gan قاتارلىق)","lowerAlpha":"ئىنگلىزچە كىچىك ھەرپ (a, b, c, d, e قاتارلىق)","lowerGreek":"گرېكچە كىچىك ھەرپ (alpha, beta, gamma قاتارلىق)","lowerRoman":"كىچىك ھەرپلىك رىم رەقىمى (i, ii, iii, iv, v قاتارلىق)","none":"بەلگە يوق","notset":"‹تەڭشەلمىگەن›","numberedTitle":"تەرتىپ نومۇر تىزىم خاسلىقى","square":"تولدۇرۇلغان تۆت چاسا","start":"باشلىنىش نومۇرى","type":"بەلگە تىپى","upperAlpha":"ئىنگلىزچە چوڭ ھەرپ (A, B, C, D, E قاتارلىق)","upperRoman":"چوڭ ھەرپلىك رىم رەقىمى (I, II, III, IV, V قاتارلىق)","validateStartNumber":"تىزىم باشلىنىش تەرتىپ نومۇرى چوقۇم پۈتۈن سان پىچىمىدا بولۇشى لازىم"},"magicline":{"title":"بۇ جايغا ئابزاس قىستۇر"},"maximize":{"maximize":"چوڭايت","minimize":"كىچىكلەت"},"newpage":{"toolbar":"يېڭى بەت"},"pagebreak":{"alt":"بەت ئايرىغۇچ","toolbar":"بەت ئايرىغۇچ قىستۇر"},"pastetext":{"button":"پىچىمى يوق تېكىست سۈپىتىدە چاپلا","title":"پىچىمى يوق تېكىست سۈپىتىدە چاپلا"},"pastefromword":{"confirmCleanup":"سىز چاپلىماقچى بولغان مەزمۇن MS Word تىن كەلگەندەك قىلىدۇ، MS Word پىچىمىنى تازىلىۋەتكەندىن كېيىن ئاندىن چاپلامدۇ؟","error":"ئىچكى خاتالىق سەۋەبىدىن چاپلايدىغان سانلىق مەلۇماتنى تازىلىيالمايدۇ","title":"MS Word تىن چاپلا","toolbar":"MS Word تىن چاپلا"},"preview":{"preview":"ئالدىن كۆزەت"},"print":{"toolbar":"باس "},"removeformat":{"toolbar":"پىچىمنى چىقىرىۋەت"},"save":{"toolbar":"ساقلا"},"selectall":{"toolbar":"ھەممىنى تاللا"},"showblocks":{"toolbar":"بۆلەكنى كۆرسەت"},"sourcearea":{"toolbar":"مەنبە"},"specialchar":{"options":"ئالاھىدە ھەرپ تاللانمىسى","title":"ئالاھىدە ھەرپ تاللاڭ","toolbar":"ئالاھىدە ھەرپ قىستۇر"},"scayt":{"btn_about":"شۇئان ئىملا تەكشۈرۈش ھەققىدە","btn_dictionaries":"لۇغەت","btn_disable":"شۇئان ئىملا تەكشۈرۈشنى چەكلە","btn_enable":"شۇئان ئىملا تەكشۈرۈشنى قوزغات","btn_langs":"تىل","btn_options":"تاللانما","text_title":""},"stylescombo":{"label":"ئۇسلۇب","panelTitle":"ئۇسلۇب","panelTitle1":"بۆلەك دەرىجىسىدىكى ئېلېمېنت ئۇسلۇبى","panelTitle2":"ئىچكى باغلانما ئېلېمېنت ئۇسلۇبى","panelTitle3":"نەڭ (Object) ئېلېمېنت ئۇسلۇبى"},"table":{"border":"گىرۋەك","caption":"ماۋزۇ","cell":{"menu":"كاتەكچە","insertBefore":"سولغا كاتەكچە قىستۇر","insertAfter":"ئوڭغا كاتەكچە قىستۇر","deleteCell":"كەتەكچە ئۆچۈر","merge":"كاتەكچە بىرلەشتۈر","mergeRight":"كاتەكچىنى ئوڭغا بىرلەشتۈر","mergeDown":"كاتەكچىنى ئاستىغا بىرلەشتۈر","splitHorizontal":"كاتەكچىنى توغرىسىغا بىرلەشتۈر","splitVertical":"كاتەكچىنى بويىغا بىرلەشتۈر","title":"كاتەكچە خاسلىقى","cellType":"كاتەكچە تىپى","rowSpan":"بويىغا چات ئارىسى قۇر سانى","colSpan":"توغرىسىغا چات ئارىسى ئىستون سانى","wordWrap":"ئۆزلۈكىدىن قۇر قاتلا","hAlign":"توغرىسىغا توغرىلا","vAlign":"بويىغا توغرىلا","alignBaseline":"ئاساسىي سىزىق","bgColor":"تەگلىك رەڭگى","borderColor":"گىرۋەك رەڭگى","data":"سانلىق مەلۇمات","header":"جەدۋەل باشى","yes":"ھەئە","no":"ياق","invalidWidth":"كاتەكچە كەڭلىكى چوقۇم سان بولىدۇ","invalidHeight":"كاتەكچە ئېگىزلىكى چوقۇم سان بولىدۇ","invalidRowSpan":"قۇر چات ئارىسى چوقۇم پۈتۈن سان بولىدۇ ","invalidColSpan":"ئىستون چات ئارىسى چوقۇم پۈتۈن سان بولىدۇ","chooseColor":"تاللاڭ"},"cellPad":"يان ئارىلىق","cellSpace":"ئارىلىق","column":{"menu":"ئىستون","insertBefore":"سولغا ئىستون قىستۇر","insertAfter":"ئوڭغا ئىستون قىستۇر","deleteColumn":"ئىستون ئۆچۈر"},"columns":"ئىستون سانى","deleteTable":"جەدۋەل ئۆچۈر","headers":"ماۋزۇ كاتەكچە","headersBoth":"بىرىنچى ئىستون ۋە بىرىنچى قۇر","headersColumn":"بىرىنچى ئىستون","headersNone":"يوق","headersRow":"بىرىنچى قۇر","invalidBorder":"گىرۋەك توملۇقى چوقۇم سان بولىدۇ","invalidCellPadding":"كاتەكچىگە چوقۇم سان تولدۇرۇلىدۇ","invalidCellSpacing":"كاتەكچە ئارىلىقى چوقۇم سان بولىدۇ","invalidCols":"بەلگىلەنگەن قۇر سانى چوقۇم نۆلدىن چوڭ بولىدۇ","invalidHeight":"جەدۋەل ئېگىزلىكى چوقۇم سان بولىدۇ","invalidRows":"بەلگىلەنگەن ئىستون سانى چوقۇم نۆلدىن چوڭ بولىدۇ","invalidWidth":"جەدۋەل كەڭلىكى چوقۇم سان بولىدۇ","menu":"جەدۋەل خاسلىقى","row":{"menu":"قۇر","insertBefore":"ئۈستىگە قۇر قىستۇر","insertAfter":"ئاستىغا قۇر قىستۇر","deleteRow":"قۇر ئۆچۈر"},"rows":"قۇر سانى","summary":"ئۈزۈندە","title":"جەدۋەل خاسلىقى","toolbar":"جەدۋەل","widthPc":"پىرسەنت","widthPx":"پىكسېل","widthUnit":"كەڭلىك بىرلىكى"},"undo":{"redo":"قايتىلا ","undo":"يېنىۋال"},"wsc":{"btnIgnore":"پەرۋا قىلما","btnIgnoreAll":"ھەممىگە پەرۋا قىلما","btnReplace":"ئالماشتۇر","btnReplaceAll":"ھەممىنى ئالماشتۇر","btnUndo":"يېنىۋال","changeTo":"ئۆزگەرت","errorLoading":"لازىملىق مۇلازىمېتىرنى يۈكلىگەندە خاتالىق كۆرۈلدى: %s.","ieSpellDownload":"ئىملا تەكشۈرۈش قىستۇرمىسى تېخى ئورنىتىلمىغان، ھازىرلا چۈشۈرەمسىز؟","manyChanges":"ئىملا تەكشۈرۈش تامام: %1 سۆزنى ئۆزگەرتتى","noChanges":"ئىملا تەكشۈرۈش تامام: ھېچقانداق سۆزنى ئۆزگەرتمىدى","noMispell":"ئىملا تەكشۈرۈش تامام: ئىملا خاتالىقى بايقالمىدى","noSuggestions":"-تەكلىپ يوق-","notAvailable":"كەچۈرۈڭ، مۇلازىمېتىرنى ۋاقتىنچە ئىشلەتكىلى بولمايدۇ","notInDic":"لۇغەتتە يوق","oneChange":"ئىملا تەكشۈرۈش تامام: بىر سۆزنى ئۆزگەرتتى","progress":"ئىملا تەكشۈرۈۋاتىدۇ…","title":"ئىملا تەكشۈر","toolbar":"ئىملا تەكشۈر"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/uk.js b/wqflask/wqflask/static/packages/ckeditor/lang/uk.js
deleted file mode 100644
index e69e2dea..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/uk.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['uk']={"editor":"Текстовий редактор","editorPanel":"Панель текстового редактора","common":{"editorHelp":"натисніть ALT 0 для довідки","browseServer":"Огляд Сервера","url":"URL","protocol":"Протокол","upload":"Надіслати","uploadSubmit":"Надіслати на сервер","image":"Зображення","flash":"Flash","form":"Форма","checkbox":"Галочка","radio":"Кнопка вибору","textField":"Текстове поле","textarea":"Текстова область","hiddenField":"Приховане поле","button":"Кнопка","select":"Список","imageButton":"Кнопка із зображенням","notSet":"<не визначено>","id":"Ідентифікатор","name":"Ім'я","langDir":"Напрямок мови","langDirLtr":"Зліва направо (LTR)","langDirRtl":"Справа наліво (RTL)","langCode":"Код мови","longDescr":"Довгий опис URL","cssClass":"Клас CSS","advisoryTitle":"Заголовок","cssStyle":"Стиль CSS","ok":"ОК","cancel":"Скасувати","close":"Закрити","preview":"Попередній перегляд","resize":"Потягніть для зміни розмірів","generalTab":"Основне","advancedTab":"Додаткове","validateNumberFailed":"Значення не є цілим числом.","confirmNewPage":"Всі незбережені зміни будуть втрачені. Ви впевнені, що хочете завантажити нову сторінку?","confirmCancel":"Деякі опції змінено. Закрити вікно без збереження змін?","options":"Опції","target":"Ціль","targetNew":"Нове вікно (_blank)","targetTop":"Поточне вікно (_top)","targetSelf":"Поточний фрейм/вікно (_self)","targetParent":"Батьківський фрейм/вікно (_parent)","langDirLTR":"Зліва направо (LTR)","langDirRTL":"Справа наліво (RTL)","styles":"Стиль CSS","cssClasses":"Клас CSS","width":"Ширина","height":"Висота","align":"Вирівнювання","alignLeft":"По лівому краю","alignRight":"По правому краю","alignCenter":"По центру","alignJustify":"По ширині","alignTop":"По верхньому краю","alignMiddle":"По середині","alignBottom":"По нижньому краю","alignNone":"Нема","invalidValue":"Невірне значення.","invalidHeight":"Висота повинна бути цілим числом.","invalidWidth":"Ширина повинна бути цілим числом.","invalidCssLength":"Значення, вказане для \"%1\" в полі повинно бути позитивним числом або без дійсного виміру CSS блоку (px, %, in, cm, mm, em, ex, pt або pc).","invalidHtmlLength":"Значення, вказане для \"%1\" в полі повинно бути позитивним числом або без дійсного виміру HTML блоку (px або %).","invalidInlineStyle":"Значення, вказане для вбудованого стилю повинне складатися з одного чи кількох кортежів у форматі \"ім'я : значення\", розділених крапкою з комою.","cssLengthTooltip":"Введіть номер значення в пікселях або число з дійсною одиниці CSS (px, %, in, cm, mm, em, ex, pt або pc).","unavailable":"%1<span class=\"cke_accessibility\">, не доступне</span>"},"about":{"copy":"Copyright &copy; $1. Всі права застережено.","dlgTitle":"Про CKEditor","help":"Перевірте $1 для допомоги.","moreInfo":"Щодо інформації з ліцензування завітайте на наш сайт:","title":"Про CKEditor","userGuide":"Інструкція Користувача для CKEditor"},"basicstyles":{"bold":"Жирний","italic":"Курсив","strike":"Закреслений","subscript":"Нижній індекс","superscript":"Верхній індекс","underline":"Підкреслений"},"bidi":{"ltr":"Напрямок тексту зліва направо","rtl":"Напрямок тексту справа наліво"},"blockquote":{"toolbar":"Цитата"},"clipboard":{"copy":"Копіювати","copyError":"Налаштування безпеки Вашого браузера не дозволяють редактору автоматично виконувати операції копіювання. Будь ласка, використовуйте клавіатуру для цього (Ctrl/Cmd+C).","cut":"Вирізати","cutError":"Налаштування безпеки Вашого браузера не дозволяють редактору автоматично виконувати операції вирізування. Будь ласка, використовуйте клавіатуру для цього (Ctrl/Cmd+X)","paste":"Вставити","pasteArea":"Область вставки","pasteMsg":"Будь ласка, вставте інформацію з буфера обміну в цю область, користуючись комбінацією клавіш (<STRONG>Ctrl/Cmd+V</STRONG>), та натисніть <STRONG>OK</STRONG>.","securityMsg":"Редактор не може отримати прямий доступ до буферу обміну у зв'язку з налаштуваннями Вашого браузера. Вам потрібно вставити інформацію в це вікно.","title":"Вставити"},"button":{"selectedLabel":"%1 (Вибрано)"},"colorbutton":{"auto":"Авто","bgColorTitle":"Колір фону","colors":{"000":"Чорний","800000":"Бордовий","8B4513":"Коричневий","2F4F4F":"Темний сіро-зелений","008080":"Морської хвилі","000080":"Сливовий","4B0082":"Індиго","696969":"Темносірий","B22222":"Темночервоний","A52A2A":"Каштановий","DAA520":"Бежевий","006400":"Темнозелений","40E0D0":"Бірюзовий","0000CD":"Темносиній","800080":"Пурпурний","808080":"Сірий","F00":"Червоний","FF8C00":"Темнооранжевий","FFD700":"Жовтий","008000":"Зелений","0FF":"Синьо-зелений","00F":"Синій","EE82EE":"Фіолетовий","A9A9A9":"Світлосірий","FFA07A":"Рожевий","FFA500":"Оранжевий","FFFF00":"Яскравожовтий","00FF00":"Салатовий","AFEEEE":"Світлобірюзовий","ADD8E6":"Блакитний","DDA0DD":"Світлофіолетовий","D3D3D3":"Сріблястий","FFF0F5":"Світлорожевий","FAEBD7":"Світлооранжевий","FFFFE0":"Світложовтий","F0FFF0":"Світлозелений","F0FFFF":"Світлий синьо-зелений","F0F8FF":"Світлоблакитний","E6E6FA":"Лавандовий","FFF":"Білий"},"more":"Кольори...","panelTitle":"Кольори","textColorTitle":"Колір тексту"},"colordialog":{"clear":"Очистити","highlight":"Колір, на який вказує курсор","options":"Опції кольорів","selected":"Обраний колір","title":"Обрати колір"},"templates":{"button":"Шаблони","emptyListMsg":"(Не знайдено жодного шаблону)","insertOption":"Замінити поточний вміст","options":"Опції шаблону","selectPromptMsg":"Оберіть, будь ласка, шаблон для відкриття в редакторі<br>(поточний зміст буде втрачено):","title":"Шаблони змісту"},"contextmenu":{"options":"Опції контекстного меню"},"div":{"IdInputLabel":"Ідентифікатор","advisoryTitleInputLabel":"Зміст випливаючої підказки","cssClassInputLabel":"Клас CSS","edit":"Редагувати блок","inlineStyleInputLabel":"Вписаний стиль","langDirLTRLabel":"Зліва направо (LTR)","langDirLabel":"Напрямок мови","langDirRTLLabel":"Справа наліво (RTL)","languageCodeInputLabel":"Код мови","remove":"Видалити блок","styleSelectLabel":"Стиль CSS","title":"Створити блок-контейнер","toolbar":"Створити блок-контейнер"},"toolbar":{"toolbarCollapse":"Згорнути панель інструментів","toolbarExpand":"Розгорнути панель інструментів","toolbarGroups":{"document":"Документ","clipboard":"Буфер обміну / Скасувати","editing":"Редагування","forms":"Форми","basicstyles":"Основний Стиль","paragraph":"Параграф","links":"Посилання","insert":"Вставити","styles":"Стилі","colors":"Кольори","tools":"Інструменти"},"toolbars":"Панель інструментів редактора"},"elementspath":{"eleLabel":"Шлях","eleTitle":"%1 елемент"},"find":{"find":"Пошук","findOptions":"Параметри Пошуку","findWhat":"Шукати:","matchCase":"Враховувати регістр","matchCyclic":"Циклічна заміна","matchWord":"Збіг цілих слів","notFoundMsg":"Вказаний текст не знайдено.","replace":"Заміна","replaceAll":"Замінити все","replaceSuccessMsg":"%1 співпадінь(ня) замінено.","replaceWith":"Замінити на:","title":"Знайти і замінити"},"fakeobjects":{"anchor":"Якір","flash":"Flash-анімація","hiddenfield":"Приховані Поля","iframe":"IFrame","unknown":"Невідомий об'єкт"},"flash":{"access":"Доступ до скрипта","accessAlways":"Завжди","accessNever":"Ніколи","accessSameDomain":"З того ж домена","alignAbsBottom":"По нижньому краю (abs)","alignAbsMiddle":"По середині (abs)","alignBaseline":"По базовій лінії","alignTextTop":"Текст по верхньому краю","bgcolor":"Колір фону","chkFull":"Дозволити повноекранний перегляд","chkLoop":"Циклічно","chkMenu":"Дозволити меню Flash","chkPlay":"Автопрогравання","flashvars":"Змінні Flash","hSpace":"Гориз. відступ","properties":"Властивості Flash","propertiesTab":"Властивості","quality":"Якість","qualityAutoHigh":"Автом. відмінна","qualityAutoLow":"Автом. низька","qualityBest":"Відмінна","qualityHigh":"Висока","qualityLow":"Низька","qualityMedium":"Середня","scale":"Масштаб","scaleAll":"Показати все","scaleFit":"Поч. розмір","scaleNoBorder":"Без рамки","title":"Властивості Flash","vSpace":"Верт. відступ","validateHSpace":"Гориз. відступ повинен бути цілим числом.","validateSrc":"Будь ласка, вкажіть URL посилання","validateVSpace":"Верт. відступ повинен бути цілим числом.","windowMode":"Віконний режим","windowModeOpaque":"Непрозорість","windowModeTransparent":"Прозорість","windowModeWindow":"Вікно"},"font":{"fontSize":{"label":"Розмір","voiceLabel":"Розмір шрифту","panelTitle":"Розмір"},"label":"Шрифт","panelTitle":"Шрифт","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Властивості кнопки","text":"Значення","type":"Тип","typeBtn":"Кнопка (button)","typeSbm":"Надіслати (submit)","typeRst":"Очистити (reset)"},"checkboxAndRadio":{"checkboxTitle":"Властивості галочки","radioTitle":"Властивості кнопки вибору","value":"Значення","selected":"Обрана"},"form":{"title":"Властивості форми","menu":"Властивості форми","action":"Дія","method":"Метод","encoding":"Кодування"},"hidden":{"title":"Властивості прихованого поля","name":"Ім'я","value":"Значення"},"select":{"title":"Властивості списку","selectInfo":"Інфо","opAvail":"Доступні варіанти","value":"Значення","size":"Кількість","lines":"видимих позицій у списку","chkMulti":"Список з мультивибором","opText":"Текст","opValue":"Значення","btnAdd":"Добавити","btnModify":"Змінити","btnUp":"Вгору","btnDown":"Вниз","btnSetValue":"Встановити як обране значення","btnDelete":"Видалити"},"textarea":{"title":"Властивості текстової області","cols":"Стовбці","rows":"Рядки"},"textfield":{"title":"Властивості текстового поля","name":"Ім'я","value":"Значення","charWidth":"Ширина","maxChars":"Макс. к-ть символів","type":"Тип","typeText":"Текст","typePass":"Пароль","typeEmail":"Пошта","typeSearch":"Пошук","typeTel":"Мобільний","typeUrl":"URL"}},"format":{"label":"Форматування","panelTitle":"Форматування параграфа","tag_address":"Адреса","tag_div":"Нормальний (div)","tag_h1":"Заголовок 1","tag_h2":"Заголовок 2","tag_h3":"Заголовок 3","tag_h4":"Заголовок 4","tag_h5":"Заголовок 5","tag_h6":"Заголовок 6","tag_p":"Нормальний","tag_pre":"Форматований"},"horizontalrule":{"toolbar":"Горизонтальна лінія"},"iframe":{"border":"Показати рамки фрейму","noUrl":"Будь ласка введіть посилання для IFrame","scrolling":"Увімкнути прокрутку","title":"Налаштування для IFrame","toolbar":"IFrame"},"image":{"alertUrl":"Будь ласка, вкажіть URL зображення","alt":"Альтернативний текст","border":"Рамка","btnUpload":"Надіслати на сервер","button2Img":"Бажаєте перетворити обрану кнопку-зображення на просте зображення?","hSpace":"Гориз. відступ","img2Button":"Бажаєте перетворити обране зображення на кнопку-зображення?","infoTab":"Інформація про зображення","linkTab":"Посилання","lockRatio":"Зберегти пропорції","menu":"Властивості зображення","resetSize":"Очистити поля розмірів","title":"Властивості зображення","titleButton":"Властивості кнопки із зображенням","upload":"Надіслати","urlMissing":"Вкажіть URL зображення.","vSpace":"Верт. відступ","validateBorder":"Ширина рамки повинна бути цілим числом.","validateHSpace":"Гориз. відступ повинен бути цілим числом.","validateVSpace":"Верт. відступ повинен бути цілим числом."},"indent":{"indent":"Збільшити відступ","outdent":"Зменшити відступ"},"smiley":{"options":"Опції смайликів","title":"Вставити смайлик","toolbar":"Смайлик"},"justify":{"block":"По ширині","center":"По центру","left":"По лівому краю","right":"По правому краю"},"language":{"button":"Установити мову","remove":"Вилучити мову"},"link":{"acccessKey":"Гаряча клавіша","advanced":"Додаткове","advisoryContentType":"Тип вмісту","advisoryTitle":"Заголовок","anchor":{"toolbar":"Вставити/Редагувати якір","menu":"Властивості якоря","title":"Властивості якоря","name":"Ім'я якоря","errorName":"Будь ласка, вкажіть ім'я якоря","remove":"Прибрати якір"},"anchorId":"За ідентифікатором елементу","anchorName":"За ім'ям елементу","charset":"Кодування","cssClasses":"Клас CSS","emailAddress":"Адреса ел. пошти","emailBody":"Тіло повідомлення","emailSubject":"Тема листа","id":"Ідентифікатор","info":"Інформація посилання","langCode":"Код мови","langDir":"Напрямок мови","langDirLTR":"Зліва направо (LTR)","langDirRTL":"Справа наліво (RTL)","menu":"Вставити посилання","name":"Ім'я","noAnchors":"(В цьому документі немає якорів)","noEmail":"Будь ласка, вкажіть адрес ел. пошти","noUrl":"Будь ласка, вкажіть URL посилання","other":"<інший>","popupDependent":"Залежний (Netscape)","popupFeatures":"Властивості випливаючого вікна","popupFullScreen":"Повний екран (IE)","popupLeft":"Позиція зліва","popupLocationBar":"Панель локації","popupMenuBar":"Панель меню","popupResizable":"Масштабоване","popupScrollBars":"Стрічки прокрутки","popupStatusBar":"Рядок статусу","popupToolbar":"Панель інструментів","popupTop":"Позиція зверху","rel":"Зв'язок","selectAnchor":"Оберіть якір","styles":"Стиль CSS","tabIndex":"Послідовність переходу","target":"Ціль","targetFrame":"<фрейм>","targetFrameName":"Ім'я цільового фрейму","targetPopup":"<випливаюче вікно>","targetPopupName":"Ім'я випливаючого вікна","title":"Посилання","toAnchor":"Якір на цю сторінку","toEmail":"Ел. пошта","toUrl":"URL","toolbar":"Вставити/Редагувати посилання","type":"Тип посилання","unlink":"Видалити посилання","upload":"Надіслати"},"list":{"bulletedlist":"Маркірований список","numberedlist":"Нумерований список"},"liststyle":{"armenian":"Вірменська нумерація","bulletedTitle":"Опції маркованого списку","circle":"Кільце","decimal":"Десяткові (1, 2, 3 і т.д.)","decimalLeadingZero":"Десяткові з нулем (01, 02, 03 і т.д.)","disc":"Кружечок","georgian":"Грузинська нумерація (an, ban, gan і т.д.)","lowerAlpha":"Малі лат. букви (a, b, c, d, e і т.д.)","lowerGreek":"Малі гр. букви (альфа, бета, гамма і т.д.)","lowerRoman":"Малі римські (i, ii, iii, iv, v і т.д.)","none":"Нема","notset":"<не вказано>","numberedTitle":"Опції нумерованого списку","square":"Квадратик","start":"Почати з...","type":"Тип","upperAlpha":"Великі лат. букви (A, B, C, D, E і т.д.)","upperRoman":"Великі римські (I, II, III, IV, V і т.д.)","validateStartNumber":"Початковий номер списку повинен бути цілим числом."},"magicline":{"title":"Вставити абзац"},"maximize":{"maximize":"Максимізувати","minimize":"Мінімізувати"},"newpage":{"toolbar":"Нова сторінка"},"pagebreak":{"alt":"Розрив Сторінки","toolbar":"Вставити розрив сторінки"},"pastetext":{"button":"Вставити тільки текст","title":"Вставити тільки текст"},"pastefromword":{"confirmCleanup":"Текст, що Ви намагаєтесь вставити, схожий на скопійований з Word. Бажаєте очистити його форматування перед вставлянням?","error":"Неможливо очистити форматування через внутрішню помилку.","title":"Вставити з Word","toolbar":"Вставити з Word"},"preview":{"preview":"Попередній перегляд"},"print":{"toolbar":"Друк"},"removeformat":{"toolbar":"Очистити форматування"},"save":{"toolbar":"Зберегти"},"selectall":{"toolbar":"Виділити все"},"showblocks":{"toolbar":"Показувати блоки"},"sourcearea":{"toolbar":"Джерело"},"specialchar":{"options":"Опції","title":"Оберіть спеціальний символ","toolbar":"Спеціальний символ"},"scayt":{"btn_about":"Про SCAYT","btn_dictionaries":"Словники","btn_disable":"Вимкнути SCAYT","btn_enable":"Ввімкнути SCAYT","btn_langs":"Мови","btn_options":"Опції","text_title":""},"stylescombo":{"label":"Стиль","panelTitle":"Стилі форматування","panelTitle1":"Блочні стилі","panelTitle2":"Рядкові стилі","panelTitle3":"Об'єктні стилі"},"table":{"border":"Розмір рамки","caption":"Заголовок таблиці","cell":{"menu":"Комірки","insertBefore":"Вставити комірку перед","insertAfter":"Вставити комірку після","deleteCell":"Видалити комірки","merge":"Об'єднати комірки","mergeRight":"Об'єднати справа","mergeDown":"Об'єднати донизу","splitHorizontal":"Розділити комірку по горизонталі","splitVertical":"Розділити комірку по вертикалі","title":"Властивості комірки","cellType":"Тип комірки","rowSpan":"Об'єднання рядків","colSpan":"Об'єднання стовпців","wordWrap":"Автоперенесення тексту","hAlign":"Гориз. вирівнювання","vAlign":"Верт. вирівнювання","alignBaseline":"По базовій лінії","bgColor":"Колір фону","borderColor":"Колір рамки","data":"Дані","header":"Заголовок","yes":"Так","no":"Ні","invalidWidth":"Ширина комірки повинна бути цілим числом.","invalidHeight":"Висота комірки повинна бути цілим числом.","invalidRowSpan":"Кількість об'єднуваних рядків повинна бути цілим числом.","invalidColSpan":"Кількість об'єднуваних стовбців повинна бути цілим числом.","chooseColor":"Обрати"},"cellPad":"Внутр. відступ","cellSpace":"Проміжок","column":{"menu":"Стовбці","insertBefore":"Вставити стовбець перед","insertAfter":"Вставити стовбець після","deleteColumn":"Видалити стовбці"},"columns":"Стовбці","deleteTable":"Видалити таблицю","headers":"Заголовки стовбців/рядків","headersBoth":"Стовбці і рядки","headersColumn":"Стовбці","headersNone":"Без заголовків","headersRow":"Рядки","invalidBorder":"Розмір рамки повинен бути цілим числом.","invalidCellPadding":"Внутр. відступ комірки повинен бути цілим числом.","invalidCellSpacing":"Проміжок між комірками повинен бути цілим числом.","invalidCols":"Кількість стовбців повинна бути більшою 0.","invalidHeight":"Висота таблиці повинна бути цілим числом.","invalidRows":"Кількість рядків повинна бути більшою 0.","invalidWidth":"Ширина таблиці повинна бути цілим числом.","menu":"Властивості таблиці","row":{"menu":"Рядки","insertBefore":"Вставити рядок перед","insertAfter":"Вставити рядок після","deleteRow":"Видалити рядки"},"rows":"Рядки","summary":"Детальний опис заголовку таблиці","title":"Властивості таблиці","toolbar":"Таблиця","widthPc":"відсотків","widthPx":"пікселів","widthUnit":"Одиниці вимір."},"undo":{"redo":"Повторити","undo":"Повернути"},"wsc":{"btnIgnore":"Пропустити","btnIgnoreAll":"Пропустити все","btnReplace":"Замінити","btnReplaceAll":"Замінити все","btnUndo":"Назад","changeTo":"Замінити на","errorLoading":"Помилка завантаження : %s.","ieSpellDownload":"Модуль перевірки орфографії не встановлено. Бажаєте завантажити його зараз?","manyChanges":"Перевірку орфографії завершено: 1% слів(ова) змінено","noChanges":"Перевірку орфографії завершено: жодне слово не змінено","noMispell":"Перевірку орфографії завершено: помилок не знайдено","noSuggestions":"- немає варіантів -","notAvailable":"Вибачте, але сервіс наразі недоступний.","notInDic":"Немає в словнику","oneChange":"Перевірку орфографії завершено: змінено одне слово","progress":"Виконується перевірка орфографії...","title":"Перевірка орфографії","toolbar":"Перевірити орфографію"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/vi.js b/wqflask/wqflask/static/packages/ckeditor/lang/vi.js
deleted file mode 100644
index 661cd7d3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/vi.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['vi']={"editor":"Bộ soạn thảo văn bản có định dạng","editorPanel":"Bảng điều khiển Rich Text Editor","common":{"editorHelp":"Nhấn ALT + 0 để được giúp đỡ","browseServer":"Duyệt máy chủ","url":"URL","protocol":"Giao thức","upload":"Tải lên","uploadSubmit":"Tải lên máy chủ","image":"Hình ảnh","flash":"Flash","form":"Biểu mẫu","checkbox":"Nút kiểm","radio":"Nút chọn","textField":"Trường văn bản","textarea":"Vùng văn bản","hiddenField":"Trường ẩn","button":"Nút","select":"Ô chọn","imageButton":"Nút hình ảnh","notSet":"<không thiết lập>","id":"Định danh","name":"Tên","langDir":"Hướng ngôn ngữ","langDirLtr":"Trái sang phải (LTR)","langDirRtl":"Phải sang trái (RTL)","langCode":"Mã ngôn ngữ","longDescr":"Mô tả URL","cssClass":"Lớp Stylesheet","advisoryTitle":"Nhan đề hướng dẫn","cssStyle":"Kiểu ","ok":"Đồng ý","cancel":"Bỏ qua","close":"Đóng","preview":"Xem trước","resize":"Kéo rê để thay đổi kích cỡ","generalTab":"Tab chung","advancedTab":"Tab mở rộng","validateNumberFailed":"Giá trị này không phải là số.","confirmNewPage":"Mọi thay đổi không được lưu lại, nội dung này sẽ bị mất. Bạn có chắc chắn muốn tải một trang mới?","confirmCancel":"Một vài tùy chọn đã bị thay đổi. Bạn có chắc chắn muốn đóng hộp thoại?","options":"Tùy chọn","target":"Đích đến","targetNew":"Cửa sổ mới (_blank)","targetTop":"Cửa sổ trên cùng (_top)","targetSelf":"Tại trang (_self)","targetParent":"Cửa sổ cha (_parent)","langDirLTR":"Trái sang phải (LTR)","langDirRTL":"Phải sang trái (RTL)","styles":"Kiểu","cssClasses":"Lớp CSS","width":"Chiều rộng","height":"Chiều cao","align":"Vị trí","alignLeft":"Trái","alignRight":"Phải","alignCenter":"Giữa","alignJustify":"Sắp chữ","alignTop":"Trên","alignMiddle":"Giữa","alignBottom":"Dưới","alignNone":"Không","invalidValue":"Giá trị không hợp lệ.","invalidHeight":"Chiều cao phải là số nguyên.","invalidWidth":"Chiều rộng phải là số nguyên.","invalidCssLength":"Giá trị quy định cho trường \"%1\" phải là một số dương có hoặc không có một đơn vị đo CSS hợp lệ (px, %, in, cm, mm, em, ex, pt, hoặc pc).","invalidHtmlLength":"Giá trị quy định cho trường \"%1\" phải là một số dương có hoặc không có một đơn vị đo HTML hợp lệ (px hoặc %).","invalidInlineStyle":"Giá trị quy định cho kiểu nội tuyến phải bao gồm một hoặc nhiều dữ liệu với định dạng \"tên:giá trị\", cách nhau bằng dấu chấm phẩy.","cssLengthTooltip":"Nhập một giá trị theo pixel hoặc một số với một đơn vị CSS hợp lệ (px, %, in, cm, mm, em, ex, pt, hoặc pc).","unavailable":"%1<span class=\"cke_accessibility\">, không có</span>"},"about":{"copy":"Bản quyền &copy; $1. Giữ toàn quyền.","dlgTitle":"Thông tin về CKEditor","help":"Kiểm tra $1 để được giúp đỡ.","moreInfo":"Vui lòng ghé thăm trang web của chúng tôi để có thông tin về giấy phép:","title":"Thông tin về CKEditor","userGuide":"Hướng dẫn sử dụng CKEditor"},"basicstyles":{"bold":"Đậm","italic":"Nghiêng","strike":"Gạch xuyên ngang","subscript":"Chỉ số dưới","superscript":"Chỉ số trên","underline":"Gạch chân"},"bidi":{"ltr":"Văn bản hướng từ trái sang phải","rtl":"Văn bản hướng từ phải sang trái"},"blockquote":{"toolbar":"Khối trích dẫn"},"clipboard":{"copy":"Sao chép","copyError":"Các thiết lập bảo mật của trình duyệt không cho phép trình biên tập tự động thực thi lệnh sao chép. Hãy sử dụng bàn phím cho lệnh này (Ctrl/Cmd+C).","cut":"Cắt","cutError":"Các thiết lập bảo mật của trình duyệt không cho phép trình biên tập tự động thực thi lệnh cắt. Hãy sử dụng bàn phím cho lệnh này (Ctrl/Cmd+X).","paste":"Dán","pasteArea":"Khu vực dán","pasteMsg":"Hãy dán nội dung vào trong khung bên dưới, sử dụng tổ hợp phím (<STRONG>Ctrl/Cmd+V</STRONG>) và nhấn vào nút <STRONG>Đồng ý</STRONG>.","securityMsg":"Do thiết lập bảo mật của trình duyệt nên trình biên tập không thể truy cập trực tiếp vào nội dung đã sao chép. Bạn cần phải dán lại nội dung vào cửa sổ này.","title":"Dán"},"button":{"selectedLabel":"%1 (Đã chọn)"},"colorbutton":{"auto":"Tự động","bgColorTitle":"Màu nền","colors":{"000":"Đen","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Nâu","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Xám","F00":"Đỏ","FF8C00":"Dark Orange","FFD700":"Vàng","008000":"Xanh lá cây","0FF":"Cyan","00F":"Xanh da trời","EE82EE":"Tím","A9A9A9":"Xám tối","FFA07A":"Light Salmon","FFA500":"Màu cam","FFFF00":"Vàng","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"Trắng"},"more":"Màu khác...","panelTitle":"Màu sắc","textColorTitle":"Màu chữ"},"colordialog":{"clear":"Xóa bỏ","highlight":"Màu chọn","options":"Tùy chọn màu","selected":"Màu đã chọn","title":"Chọn màu"},"templates":{"button":"Mẫu dựng sẵn","emptyListMsg":"(Không có mẫu dựng sẵn nào được định nghĩa)","insertOption":"Thay thế nội dung hiện tại","options":"Tùy chọn mẫu dựng sẵn","selectPromptMsg":"Hãy chọn mẫu dựng sẵn để mở trong trình biên tập<br>(nội dung hiện tại sẽ bị mất):","title":"Nội dung Mẫu dựng sẵn"},"contextmenu":{"options":"Tùy chọn menu bổ xung"},"div":{"IdInputLabel":"Định danh (id)","advisoryTitleInputLabel":"Nhan đề hướng dẫn","cssClassInputLabel":"Các lớp CSS","edit":"Chỉnh sửa","inlineStyleInputLabel":"Kiểu nội dòng","langDirLTRLabel":"Trái sang phải (LTR)","langDirLabel":"Hướng ngôn ngữ","langDirRTLLabel":"Phải qua trái (RTL)","languageCodeInputLabel":"Mã ngôn ngữ","remove":"Xóa bỏ","styleSelectLabel":"Kiểu (style)","title":"Tạo khối các thành phần","toolbar":"Tạo khối các thành phần"},"toolbar":{"toolbarCollapse":"Thu gọn thanh công cụ","toolbarExpand":"Mở rộng thnah công cụ","toolbarGroups":{"document":"Tài liệu","clipboard":"Clipboard/Undo","editing":"Chỉnh sửa","forms":"Bảng biểu","basicstyles":"Kiểu cơ bản","paragraph":"Đoạn","links":"Liên kết","insert":"Chèn","styles":"Kiểu","colors":"Màu sắc","tools":"Công cụ"},"toolbars":"Thanh công cụ"},"elementspath":{"eleLabel":"Nhãn thành phần","eleTitle":"%1 thành phần"},"find":{"find":"Tìm kiếm","findOptions":"Tìm tùy chọn","findWhat":"Tìm chuỗi:","matchCase":"Phân biệt chữ hoa/thường","matchCyclic":"Giống một phần","matchWord":"Giống toàn bộ từ","notFoundMsg":"Không tìm thấy chuỗi cần tìm.","replace":"Thay thế","replaceAll":"Thay thế tất cả","replaceSuccessMsg":"%1 vị trí đã được thay thế.","replaceWith":"Thay bằng:","title":"Tìm kiếm và thay thế"},"fakeobjects":{"anchor":"Điểm neo","flash":"Flash","hiddenfield":"Trường ẩn","iframe":"IFrame","unknown":"Đối tượng không rõ ràng"},"flash":{"access":"Truy cập mã","accessAlways":"Luôn luôn","accessNever":"Không bao giờ","accessSameDomain":"Cùng tên miền","alignAbsBottom":"Dưới tuyệt đối","alignAbsMiddle":"Giữa tuyệt đối","alignBaseline":"Đường cơ sở","alignTextTop":"Phía trên chữ","bgcolor":"Màu nền","chkFull":"Cho phép toàn màn hình","chkLoop":"Lặp","chkMenu":"Cho phép bật menu của Flash","chkPlay":"Tự động chạy","flashvars":"Các biến số dành cho Flash","hSpace":"Khoảng đệm ngang","properties":"Thuộc tính Flash","propertiesTab":"Thuộc tính","quality":"Chất lượng","qualityAutoHigh":"Cao tự động","qualityAutoLow":"Thấp tự động","qualityBest":"Tốt nhất","qualityHigh":"Cao","qualityLow":"Thấp","qualityMedium":"Trung bình","scale":"Tỷ lệ","scaleAll":"Hiển thị tất cả","scaleFit":"Vừa vặn","scaleNoBorder":"Không đường viền","title":"Thuộc tính Flash","vSpace":"Khoảng đệm dọc","validateHSpace":"Khoảng đệm ngang phải là số nguyên.","validateSrc":"Hãy đưa vào đường dẫn liên kết","validateVSpace":"Khoảng đệm dọc phải là số nguyên.","windowMode":"Chế độ cửa sổ","windowModeOpaque":"Mờ đục","windowModeTransparent":"Trong suốt","windowModeWindow":"Cửa sổ"},"font":{"fontSize":{"label":"Cỡ chữ","voiceLabel":"Kích cỡ phông","panelTitle":"Cỡ chữ"},"label":"Phông","panelTitle":"Phông","voiceLabel":"Phông"},"forms":{"button":{"title":"Thuộc tính của nút","text":"Chuỗi hiển thị (giá trị)","type":"Kiểu","typeBtn":"Nút bấm","typeSbm":"Nút gửi","typeRst":"Nút nhập lại"},"checkboxAndRadio":{"checkboxTitle":"Thuộc tính nút kiểm","radioTitle":"Thuộc tính nút chọn","value":"Giá trị","selected":"Được chọn"},"form":{"title":"Thuộc tính biểu mẫu","menu":"Thuộc tính biểu mẫu","action":"Hành động","method":"Phương thức","encoding":"Bảng mã"},"hidden":{"title":"Thuộc tính trường ẩn","name":"Tên","value":"Giá trị"},"select":{"title":"Thuộc tính ô chọn","selectInfo":"Thông tin","opAvail":"Các tùy chọn có thể sử dụng","value":"Giá trị","size":"Kích cỡ","lines":"dòng","chkMulti":"Cho phép chọn nhiều","opText":"Văn bản","opValue":"Giá trị","btnAdd":"Thêm","btnModify":"Thay đổi","btnUp":"Lên","btnDown":"Xuống","btnSetValue":"Giá trị được chọn","btnDelete":"Nút xoá"},"textarea":{"title":"Thuộc tính vùng văn bản","cols":"Số cột","rows":"Số hàng"},"textfield":{"title":"Thuộc tính trường văn bản","name":"Tên","value":"Giá trị","charWidth":"Độ rộng của ký tự","maxChars":"Số ký tự tối đa","type":"Kiểu","typeText":"Ký tự","typePass":"Mật khẩu","typeEmail":"Email","typeSearch":"Tìm kiếm","typeTel":"Số điện thoại","typeUrl":"URL"}},"format":{"label":"Định dạng","panelTitle":"Định dạng","tag_address":"Address","tag_div":"Bình thường (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Bình thường (P)","tag_pre":"Đã thiết lập"},"horizontalrule":{"toolbar":"Chèn đường phân cách ngang"},"iframe":{"border":"Hiển thị viền khung","noUrl":"Vui lòng nhập địa chỉ iframe","scrolling":"Kích hoạt thanh cuộn","title":"Thuộc tính iframe","toolbar":"Iframe"},"image":{"alertUrl":"Hãy đưa vào đường dẫn của ảnh","alt":"Chú thích ảnh","border":"Đường viền","btnUpload":"Tải lên máy chủ","button2Img":"Bạn có muốn chuyển nút bấm bằng ảnh được chọn thành ảnh?","hSpace":"Khoảng đệm ngang","img2Button":"Bạn có muốn chuyển đổi ảnh được chọn thành nút bấm bằng ảnh?","infoTab":"Thông tin của ảnh","linkTab":"Tab liên kết","lockRatio":"Giữ nguyên tỷ lệ","menu":"Thuộc tính của ảnh","resetSize":"Kích thước gốc","title":"Thuộc tính của ảnh","titleButton":"Thuộc tính nút của ảnh","upload":"Tải lên","urlMissing":"Thiếu đường dẫn hình ảnh","vSpace":"Khoảng đệm dọc","validateBorder":"Chiều rộng của đường viền phải là một số nguyên dương","validateHSpace":"Khoảng đệm ngang phải là một số nguyên dương","validateVSpace":"Khoảng đệm dọc phải là một số nguyên dương"},"indent":{"indent":"Dịch vào trong","outdent":"Dịch ra ngoài"},"smiley":{"options":"Tùy chọn hình biểu lộ cảm xúc","title":"Chèn hình biểu lộ cảm xúc (mặt cười)","toolbar":"Hình biểu lộ cảm xúc (mặt cười)"},"justify":{"block":"Canh đều","center":"Canh giữa","left":"Canh trái","right":"Canh phải"},"language":{"button":"Thiết lập ngôn ngữ","remove":"Loại bỏ ngôn ngữ"},"link":{"acccessKey":"Phím hỗ trợ truy cập","advanced":"Mở rộng","advisoryContentType":"Nội dung hướng dẫn","advisoryTitle":"Nhan đề hướng dẫn","anchor":{"toolbar":"Chèn/Sửa điểm neo","menu":"Thuộc tính điểm neo","title":"Thuộc tính điểm neo","name":"Tên của điểm neo","errorName":"Hãy nhập vào tên của điểm neo","remove":"Xóa neo"},"anchorId":"Theo định danh thành phần","anchorName":"Theo tên điểm neo","charset":"Bảng mã của tài nguyên được liên kết đến","cssClasses":"Lớp Stylesheet","emailAddress":"Thư điện tử","emailBody":"Nội dung thông điệp","emailSubject":"Tiêu đề thông điệp","id":"Định danh","info":"Thông tin liên kết","langCode":"Mã ngôn ngữ","langDir":"Hướng ngôn ngữ","langDirLTR":"Trái sang phải (LTR)","langDirRTL":"Phải sang trái (RTL)","menu":"Sửa liên kết","name":"Tên","noAnchors":"(Không có điểm neo nào trong tài liệu)","noEmail":"Hãy đưa vào địa chỉ thư điện tử","noUrl":"Hãy đưa vào đường dẫn liên kết (URL)","other":"<khác>","popupDependent":"Phụ thuộc (Netscape)","popupFeatures":"Đặc điểm của cửa sổ Popup","popupFullScreen":"Toàn màn hình (IE)","popupLeft":"Vị trí bên trái","popupLocationBar":"Thanh vị trí","popupMenuBar":"Thanh Menu","popupResizable":"Có thể thay đổi kích cỡ","popupScrollBars":"Thanh cuộn","popupStatusBar":"Thanh trạng thái","popupToolbar":"Thanh công cụ","popupTop":"Vị trí phía trên","rel":"Quan hệ","selectAnchor":"Chọn một điểm neo","styles":"Kiểu (style)","tabIndex":"Chỉ số của Tab","target":"Đích","targetFrame":"<khung>","targetFrameName":"Tên khung đích","targetPopup":"<cửa sổ popup>","targetPopupName":"Tên cửa sổ Popup","title":"Liên kết","toAnchor":"Neo trong trang này","toEmail":"Thư điện tử","toUrl":"URL","toolbar":"Chèn/Sửa liên kết","type":"Kiểu liên kết","unlink":"Xoá liên kết","upload":"Tải lên"},"list":{"bulletedlist":"Chèn/Xoá Danh sách không thứ tự","numberedlist":"Chèn/Xoá Danh sách có thứ tự"},"liststyle":{"armenian":"Số theo kiểu Armenian","bulletedTitle":"Thuộc tính danh sách không thứ tự","circle":"Khuyên tròn","decimal":"Kiểu số (1, 2, 3 ...)","decimalLeadingZero":"Kiểu số (01, 02, 03...)","disc":"Hình đĩa","georgian":"Số theo kiểu Georgian (an, ban, gan...)","lowerAlpha":"Kiểu abc thường (a, b, c, d, e...)","lowerGreek":"Kiểu Hy Lạp (alpha, beta, gamma...)","lowerRoman":"Số La Mã kiểu thường (i, ii, iii, iv, v...)","none":"Không gì cả","notset":"<không thiết lập>","numberedTitle":"Thuộc tính danh sách có thứ tự","square":"Hình vuông","start":"Bắt đầu","type":"Kiểu loại","upperAlpha":"Kiểu ABC HOA (A, B, C, D, E...)","upperRoman":"Số La Mã kiểu HOA (I, II, III, IV, V...)","validateStartNumber":"Số bắt đầu danh sách phải là một số nguyên."},"magicline":{"title":"Chèn đoạn vào đây"},"maximize":{"maximize":"Phóng to tối đa","minimize":"Thu nhỏ"},"newpage":{"toolbar":"Trang mới"},"pagebreak":{"alt":"Ngắt trang","toolbar":"Chèn ngắt trang"},"pastetext":{"button":"Dán theo định dạng văn bản thuần","title":"Dán theo định dạng văn bản thuần"},"pastefromword":{"confirmCleanup":"Văn bản bạn muốn dán có kèm định dạng của Word. Bạn có muốn loại bỏ định dạng Word trước khi dán?","error":"Không thể để làm sạch các dữ liệu dán do một lỗi nội bộ","title":"Dán với định dạng Word","toolbar":"Dán với định dạng Word"},"preview":{"preview":"Xem trước"},"print":{"toolbar":"In"},"removeformat":{"toolbar":"Xoá định dạng"},"save":{"toolbar":"Lưu"},"selectall":{"toolbar":"Chọn tất cả"},"showblocks":{"toolbar":"Hiển thị các khối"},"sourcearea":{"toolbar":"Mã HTML"},"specialchar":{"options":"Tùy chọn các ký tự đặc biệt","title":"Hãy chọn ký tự đặc biệt","toolbar":"Chèn ký tự đặc biệt"},"scayt":{"btn_about":"Thông tin về SCAYT","btn_dictionaries":"Từ điển","btn_disable":"Tắt SCAYT","btn_enable":"Bật SCAYT","btn_langs":"Ngôn ngữ","btn_options":"Tùy chọn","text_title":""},"stylescombo":{"label":"Kiểu","panelTitle":"Phong cách định dạng","panelTitle1":"Kiểu khối","panelTitle2":"Kiểu trực tiếp","panelTitle3":"Kiểu đối tượng"},"table":{"border":"Kích thước đường viền","caption":"Đầu đề","cell":{"menu":"Ô","insertBefore":"Chèn ô Phía trước","insertAfter":"Chèn ô Phía sau","deleteCell":"Xoá ô","merge":"Kết hợp ô","mergeRight":"Kết hợp sang phải","mergeDown":"Kết hợp xuống dưới","splitHorizontal":"Phân tách ô theo chiều ngang","splitVertical":"Phân tách ô theo chiều dọc","title":"Thuộc tính của ô","cellType":"Kiểu của ô","rowSpan":"Kết hợp hàng","colSpan":"Kết hợp cột","wordWrap":"Chữ liền hàng","hAlign":"Canh lề ngang","vAlign":"Canh lề dọc","alignBaseline":"Đường cơ sở","bgColor":"Màu nền","borderColor":"Màu viền","data":"Dữ liệu","header":"Đầu đề","yes":"Có","no":"Không","invalidWidth":"Chiều rộng của ô phải là một số nguyên.","invalidHeight":"Chiều cao của ô phải là một số nguyên.","invalidRowSpan":"Số hàng kết hợp phải là một số nguyên.","invalidColSpan":"Số cột kết hợp phải là một số nguyên.","chooseColor":"Chọn màu"},"cellPad":"Khoảng đệm giữ ô và nội dung","cellSpace":"Khoảng cách giữa các ô","column":{"menu":"Cột","insertBefore":"Chèn cột phía trước","insertAfter":"Chèn cột phía sau","deleteColumn":"Xoá cột"},"columns":"Số cột","deleteTable":"Xóa bảng","headers":"Đầu đề","headersBoth":"Cả hai","headersColumn":"Cột đầu tiên","headersNone":"Không có","headersRow":"Hàng đầu tiên","invalidBorder":"Kích cỡ của đường biên phải là một số nguyên.","invalidCellPadding":"Khoảng đệm giữa ô và nội dung phải là một số nguyên.","invalidCellSpacing":"Khoảng cách giữa các ô phải là một số nguyên.","invalidCols":"Số lượng cột phải là một số lớn hơn 0.","invalidHeight":"Chiều cao của bảng phải là một số nguyên.","invalidRows":"Số lượng hàng phải là một số lớn hơn 0.","invalidWidth":"Chiều rộng của bảng phải là một số nguyên.","menu":"Thuộc tính bảng","row":{"menu":"Hàng","insertBefore":"Chèn hàng phía trước","insertAfter":"Chèn hàng phía sau","deleteRow":"Xoá hàng"},"rows":"Số hàng","summary":"Tóm lược","title":"Thuộc tính bảng","toolbar":"Bảng","widthPc":"Phần trăm (%)","widthPx":"Điểm ảnh (px)","widthUnit":"Đơn vị"},"undo":{"redo":"Làm lại thao tác","undo":"Khôi phục thao tác"},"wsc":{"btnIgnore":"Bỏ qua","btnIgnoreAll":"Bỏ qua tất cả","btnReplace":"Thay thế","btnReplaceAll":"Thay thế tất cả","btnUndo":"Phục hồi lại","changeTo":"Chuyển thành","errorLoading":"Lỗi khi đang nạp dịch vụ ứng dụng: %s.","ieSpellDownload":"Chức năng kiểm tra chính tả chưa được cài đặt. Bạn có muốn tải về ngay bây giờ?","manyChanges":"Hoàn tất kiểm tra chính tả: %1 từ đã được thay đổi","noChanges":"Hoàn tất kiểm tra chính tả: Không có từ nào được thay đổi","noMispell":"Hoàn tất kiểm tra chính tả: Không có lỗi chính tả","noSuggestions":"- Không đưa ra gợi ý về từ -","notAvailable":"Xin lỗi, dịch vụ này hiện tại không có.","notInDic":"Không có trong từ điển","oneChange":"Hoàn tất kiểm tra chính tả: Một từ đã được thay đổi","progress":"Đang tiến hành kiểm tra chính tả...","title":"Kiểm tra chính tả","toolbar":"Kiểm tra chính tả"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/zh-cn.js b/wqflask/wqflask/static/packages/ckeditor/lang/zh-cn.js
deleted file mode 100644
index d16e960f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/zh-cn.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['zh-cn']={"editor":"所见即所得编辑器","editorPanel":"所见即所得编辑器面板","common":{"editorHelp":"按 ALT+0 获得帮助","browseServer":"浏览服务器","url":"URL","protocol":"协议","upload":"上传","uploadSubmit":"上传到服务器","image":"图像","flash":"Flash","form":"表单","checkbox":"复选框","radio":"单选按钮","textField":"单行文本","textarea":"多行文本","hiddenField":"隐藏域","button":"按钮","select":"列表/菜单","imageButton":"图像按钮","notSet":"<没有设置>","id":"ID","name":"名称","langDir":"语言方向","langDirLtr":"从左到右 (LTR)","langDirRtl":"从右到左 (RTL)","langCode":"语言代码","longDescr":"详细说明 URL","cssClass":"样式类名称","advisoryTitle":"标题","cssStyle":"行内样式","ok":"确定","cancel":"取消","close":"关闭","preview":"预览","resize":"拖拽以改变大小","generalTab":"常规","advancedTab":"高级","validateNumberFailed":"需要输入数字格式","confirmNewPage":"当前文档内容未保存,是否确认新建文档?","confirmCancel":"部分修改尚未保存,是否确认关闭对话框?","options":"选项","target":"目标窗口","targetNew":"新窗口 (_blank)","targetTop":"整页 (_top)","targetSelf":"本窗口 (_self)","targetParent":"父窗口 (_parent)","langDirLTR":"从左到右 (LTR)","langDirRTL":"从右到左 (RTL)","styles":"样式","cssClasses":"样式类","width":"宽度","height":"高度","align":"对齐方式","alignLeft":"左对齐","alignRight":"右对齐","alignCenter":"居中","alignJustify":"两端对齐","alignTop":"顶端","alignMiddle":"居中","alignBottom":"底部","alignNone":"None","invalidValue":"无效的值。","invalidHeight":"高度必须为数字格式","invalidWidth":"宽度必须为数字格式","invalidCssLength":"此“%1”字段的值必须为正数,可以包含或不包含一个有效的 CSS 长度单位(px, %, in, cm, mm, em, ex, pt 或 pc)","invalidHtmlLength":"此“%1”字段的值必须为正数,可以包含或不包含一个有效的 HTML 长度单位(px 或 %)","invalidInlineStyle":"内联样式必须为格式是以分号分隔的一个或多个“属性名 : 属性值”。","cssLengthTooltip":"输入一个表示像素值的数字,或加上一个有效的 CSS 长度单位(px, %, in, cm, mm, em, ex, pt 或 pc)。","unavailable":"%1<span class=\"cke_accessibility\">,不可用</span>"},"about":{"copy":"版权所有 &copy; $1。<br />保留所有权利。","dlgTitle":"关于 CKEditor","help":"访问 $1 以获取帮助。","moreInfo":"相关授权许可信息请访问我们的网站:","title":"关于 CKEditor","userGuide":"CKEditor 用户向导"},"basicstyles":{"bold":"加粗","italic":"倾斜","strike":"删除线","subscript":"下标","superscript":"上标","underline":"下划线"},"bidi":{"ltr":"文字方向为从左至右","rtl":"文字方向为从右至左"},"blockquote":{"toolbar":"块引用"},"clipboard":{"copy":"复制","copyError":"您的浏览器安全设置不允许编辑器自动执行复制操作,请使用键盘快捷键(Ctrl/Cmd+C)来完成。","cut":"剪切","cutError":"您的浏览器安全设置不允许编辑器自动执行剪切操作,请使用键盘快捷键(Ctrl/Cmd+X)来完成。","paste":"粘贴","pasteArea":"粘贴区域","pasteMsg":"请使用键盘快捷键(<STRONG>Ctrl/Cmd+V</STRONG>)把内容粘贴到下面的方框里,再按 <STRONG>确定</STRONG>","securityMsg":"因为您的浏览器的安全设置原因,本编辑器不能直接访问您的剪贴板内容,你需要在本窗口重新粘贴一次。","title":"粘贴"},"button":{"selectedLabel":"已选中 %1 项"},"colorbutton":{"auto":"自动","bgColorTitle":"背景颜色","colors":{"000":"黑","800000":"褐红","8B4513":"深褐","2F4F4F":"墨绿","008080":"绿松石","000080":"海军蓝","4B0082":"靛蓝","696969":"暗灰","B22222":"砖红","A52A2A":"褐","DAA520":"金黄","006400":"深绿","40E0D0":"蓝绿","0000CD":"中蓝","800080":"紫","808080":"灰","F00":"红","FF8C00":"深橙","FFD700":"金","008000":"绿","0FF":"青","00F":"蓝","EE82EE":"紫罗兰","A9A9A9":"深灰","FFA07A":"亮橙","FFA500":"橙","FFFF00":"黄","00FF00":"水绿","AFEEEE":"粉蓝","ADD8E6":"亮蓝","DDA0DD":"梅红","D3D3D3":"淡灰","FFF0F5":"淡紫红","FAEBD7":"古董白","FFFFE0":"淡黄","F0FFF0":"蜜白","F0FFFF":"天蓝","F0F8FF":"淡蓝","E6E6FA":"淡紫","FFF":"白"},"more":"其它颜色...","panelTitle":"颜色","textColorTitle":"文本颜色"},"colordialog":{"clear":"清除","highlight":"高亮","options":"颜色选项","selected":"选择颜色","title":"选择颜色"},"templates":{"button":"模板","emptyListMsg":"(没有模板)","insertOption":"替换当前内容","options":"模板选项","selectPromptMsg":"请选择要在编辑器中使用的模板:","title":"内容模板"},"contextmenu":{"options":"快捷菜单选项"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"标题","cssClassInputLabel":"样式类名称","edit":"编辑 DIV","inlineStyleInputLabel":"行内样式","langDirLTRLabel":"从左到右 (LTR)","langDirLabel":"语言方向","langDirRTLLabel":"从右到左 (RTL)","languageCodeInputLabel":"语言代码","remove":"移除 DIV","styleSelectLabel":"样式","title":"创建 DIV 容器","toolbar":"创建 DIV 容器"},"toolbar":{"toolbarCollapse":"折叠工具栏","toolbarExpand":"展开工具栏","toolbarGroups":{"document":"文档","clipboard":"剪贴板/撤销","editing":"编辑","forms":"表单","basicstyles":"基本格式","paragraph":"段落","links":"链接","insert":"插入","styles":"样式","colors":"颜色","tools":"工具"},"toolbars":"工具栏"},"elementspath":{"eleLabel":"元素路径","eleTitle":"%1 元素"},"find":{"find":"查找","findOptions":"查找选项","findWhat":"查找:","matchCase":"区分大小写","matchCyclic":"循环匹配","matchWord":"全字匹配","notFoundMsg":"指定的文本没有找到。","replace":"替换","replaceAll":"全部替换","replaceSuccessMsg":"共完成 %1 处替换。","replaceWith":"替换:","title":"查找和替换"},"fakeobjects":{"anchor":"锚点","flash":"Flash 动画","hiddenfield":"隐藏域","iframe":"IFrame","unknown":"未知对象"},"flash":{"access":"允许脚本访问","accessAlways":"总是","accessNever":"从不","accessSameDomain":"同域","alignAbsBottom":"绝对底部","alignAbsMiddle":"绝对居中","alignBaseline":"基线","alignTextTop":"文本上方","bgcolor":"背景颜色","chkFull":"启用全屏","chkLoop":"循环","chkMenu":"启用 Flash 菜单","chkPlay":"自动播放","flashvars":"Flash 变量","hSpace":"水平间距","properties":"Flash 属性","propertiesTab":"属性","quality":"质量","qualityAutoHigh":"高(自动)","qualityAutoLow":"低(自动)","qualityBest":"最好","qualityHigh":"高","qualityLow":"低","qualityMedium":"中(自动)","scale":"缩放","scaleAll":"全部显示","scaleFit":"严格匹配","scaleNoBorder":"无边框","title":"标题","vSpace":"垂直间距","validateHSpace":"水平间距必须为数字格式","validateSrc":"请输入源文件地址","validateVSpace":"垂直间距必须为数字格式","windowMode":"窗体模式","windowModeOpaque":"不透明","windowModeTransparent":"透明","windowModeWindow":"窗体"},"font":{"fontSize":{"label":"大小","voiceLabel":"文字大小","panelTitle":"大小"},"label":"字体","panelTitle":"字体","voiceLabel":"字体"},"forms":{"button":{"title":"按钮属性","text":"标签(值)","type":"类型","typeBtn":"按钮","typeSbm":"提交","typeRst":"重设"},"checkboxAndRadio":{"checkboxTitle":"复选框属性","radioTitle":"单选按钮属性","value":"选定值","selected":"已勾选"},"form":{"title":"表单属性","menu":"表单属性","action":"动作","method":"方法","encoding":"表单编码"},"hidden":{"title":"隐藏域属性","name":"名称","value":"初始值"},"select":{"title":"菜单/列表属性","selectInfo":"选择信息","opAvail":"可选项","value":"值","size":"高度","lines":"行","chkMulti":"允许多选","opText":"选项文本","opValue":"选项值","btnAdd":"添加","btnModify":"修改","btnUp":"上移","btnDown":"下移","btnSetValue":"设为初始选定","btnDelete":"删除"},"textarea":{"title":"多行文本属性","cols":"字符宽度","rows":"行数"},"textfield":{"title":"单行文本属性","name":"名称","value":"初始值","charWidth":"字符宽度","maxChars":"最多字符数","type":"类型","typeText":"文本","typePass":"密码","typeEmail":"Email","typeSearch":"搜索","typeTel":"电话号码","typeUrl":"地址"}},"format":{"label":"格式","panelTitle":"格式","tag_address":"地址","tag_div":"段落(DIV)","tag_h1":"标题 1","tag_h2":"标题 2","tag_h3":"标题 3","tag_h4":"标题 4","tag_h5":"标题 5","tag_h6":"标题 6","tag_p":"普通","tag_pre":"已编排格式"},"horizontalrule":{"toolbar":"插入水平线"},"iframe":{"border":"显示框架边框","noUrl":"请输入框架的 URL","scrolling":"允许滚动条","title":"IFrame 属性","toolbar":"IFrame"},"image":{"alertUrl":"请输入图像地址","alt":"替换文本","border":"边框大小","btnUpload":"上传到服务器","button2Img":"确定要把当前图像按钮转换为普通图像吗?","hSpace":"水平间距","img2Button":"确定要把当前图像改变为图像按钮吗?","infoTab":"图像信息","linkTab":"链接","lockRatio":"锁定比例","menu":"图像属性","resetSize":"原始尺寸","title":"图像属性","titleButton":"图像域属性","upload":"上传","urlMissing":"缺少图像源文件地址","vSpace":"垂直间距","validateBorder":"边框大小必须为整数格式","validateHSpace":"水平间距必须为整数格式","validateVSpace":"垂直间距必须为整数格式"},"indent":{"indent":"增加缩进量","outdent":"减少缩进量"},"smiley":{"options":"表情图标选项","title":"插入表情图标","toolbar":"表情符"},"justify":{"block":"两端对齐","center":"居中","left":"左对齐","right":"右对齐"},"language":{"button":"设置语言","remove":"移除语言"},"link":{"acccessKey":"访问键","advanced":"高级","advisoryContentType":"内容类型","advisoryTitle":"标题","anchor":{"toolbar":"插入/编辑锚点链接","menu":"锚点链接属性","title":"锚点链接属性","name":"锚点名称","errorName":"请输入锚点名称","remove":"删除锚点"},"anchorId":"按锚点 ID","anchorName":"按锚点名称","charset":"字符编码","cssClasses":"样式类名称","emailAddress":"地址","emailBody":"内容","emailSubject":"主题","id":"ID","info":"超链接信息","langCode":"语言代码","langDir":"语言方向","langDirLTR":"从左到右 (LTR)","langDirRTL":"从右到左 (RTL)","menu":"编辑超链接","name":"名称","noAnchors":"(此文档没有可用的锚点)","noEmail":"请输入电子邮件地址","noUrl":"请输入超链接地址","other":"<其他>","popupDependent":"依附 (NS)","popupFeatures":"弹出窗口属性","popupFullScreen":"全屏 (IE)","popupLeft":"左","popupLocationBar":"地址栏","popupMenuBar":"菜单栏","popupResizable":"可缩放","popupScrollBars":"滚动条","popupStatusBar":"状态栏","popupToolbar":"工具栏","popupTop":"右","rel":"关联","selectAnchor":"选择一个锚点","styles":"行内样式","tabIndex":"Tab 键次序","target":"目标","targetFrame":"<框架>","targetFrameName":"目标框架名称","targetPopup":"<弹出窗口>","targetPopupName":"弹出窗口名称","title":"超链接","toAnchor":"页内锚点链接","toEmail":"电子邮件","toUrl":"地址","toolbar":"插入/编辑超链接","type":"超链接类型","unlink":"取消超链接","upload":"上传"},"list":{"bulletedlist":"项目列表","numberedlist":"编号列表"},"liststyle":{"armenian":"传统的亚美尼亚编号方式","bulletedTitle":"项目列表属性","circle":"空心圆","decimal":"数字 (1, 2, 3, 等)","decimalLeadingZero":"0开头的数字标记(01, 02, 03, 等)","disc":"实心圆","georgian":"传统的乔治亚编号方式(an, ban, gan, 等)","lowerAlpha":"小写英文字母(a, b, c, d, e, 等)","lowerGreek":"小写希腊字母(alpha, beta, gamma, 等)","lowerRoman":"小写罗马数字(i, ii, iii, iv, v, 等)","none":"无标记","notset":"<没有设置>","numberedTitle":"编号列表属性","square":"实心方块","start":"开始序号","type":"标记类型","upperAlpha":"大写英文字母(A, B, C, D, E, 等)","upperRoman":"大写罗马数字(I, II, III, IV, V, 等)","validateStartNumber":"列表开始序号必须为整数格式"},"magicline":{"title":"在这插入段落"},"maximize":{"maximize":"全屏","minimize":"最小化"},"newpage":{"toolbar":"新建"},"pagebreak":{"alt":"分页符","toolbar":"插入打印分页符"},"pastetext":{"button":"粘贴为无格式文本","title":"粘贴为无格式文本"},"pastefromword":{"confirmCleanup":"您要粘贴的内容好像是来自 MS Word,是否要清除 MS Word 格式后再粘贴?","error":"由于内部错误无法清理要粘贴的数据","title":"从 MS Word 粘贴","toolbar":"从 MS Word 粘贴"},"preview":{"preview":"预览"},"print":{"toolbar":"打印"},"removeformat":{"toolbar":"清除格式"},"save":{"toolbar":"保存"},"selectall":{"toolbar":"全选"},"showblocks":{"toolbar":"显示区块"},"sourcearea":{"toolbar":"源码"},"specialchar":{"options":"特殊符号选项","title":"选择特殊符号","toolbar":"插入特殊符号"},"scayt":{"btn_about":"关于即时拼写检查","btn_dictionaries":"字典","btn_disable":"禁用即时拼写检查","btn_enable":"启用即时拼写检查","btn_langs":"语言","btn_options":"选项","text_title":""},"stylescombo":{"label":"样式","panelTitle":"样式","panelTitle1":"块级元素样式","panelTitle2":"内联元素样式","panelTitle3":"对象元素样式"},"table":{"border":"边框","caption":"标题","cell":{"menu":"单元格","insertBefore":"在左侧插入单元格","insertAfter":"在右侧插入单元格","deleteCell":"删除单元格","merge":"合并单元格","mergeRight":"向右合并单元格","mergeDown":"向下合并单元格","splitHorizontal":"水平拆分单元格","splitVertical":"垂直拆分单元格","title":"单元格属性","cellType":"单元格类型","rowSpan":"纵跨行数","colSpan":"横跨列数","wordWrap":"自动换行","hAlign":"水平对齐","vAlign":"垂直对齐","alignBaseline":"基线","bgColor":"背景颜色","borderColor":"边框颜色","data":"数据","header":"表头","yes":"是","no":"否","invalidWidth":"单元格宽度必须为数字格式","invalidHeight":"单元格高度必须为数字格式","invalidRowSpan":"行跨度必须为整数格式","invalidColSpan":"列跨度必须为整数格式","chooseColor":"选择"},"cellPad":"边距","cellSpace":"间距","column":{"menu":"列","insertBefore":"在左侧插入列","insertAfter":"在右侧插入列","deleteColumn":"删除列"},"columns":"列数","deleteTable":"删除表格","headers":"标题单元格","headersBoth":"第一列和第一行","headersColumn":"第一列","headersNone":"无","headersRow":"第一行","invalidBorder":"边框粗细必须为数字格式","invalidCellPadding":"单元格填充必须为数字格式","invalidCellSpacing":"单元格间距必须为数字格式","invalidCols":"指定的行数必须大于零","invalidHeight":"表格高度必须为数字格式","invalidRows":"指定的列数必须大于零","invalidWidth":"表格宽度必须为数字格式","menu":"表格属性","row":{"menu":"行","insertBefore":"在上方插入行","insertAfter":"在下方插入行","deleteRow":"删除行"},"rows":"行数","summary":"摘要","title":"表格属性","toolbar":"表格","widthPc":"百分比","widthPx":"像素","widthUnit":"宽度单位"},"undo":{"redo":"重做","undo":"撤消"},"wsc":{"btnIgnore":"忽略","btnIgnoreAll":"全部忽略","btnReplace":"替换","btnReplaceAll":"全部替换","btnUndo":"撤消","changeTo":"更改为","errorLoading":"加载应该服务主机时出错: %s.","ieSpellDownload":"拼写检查插件还没安装, 您是否想现在就下载?","manyChanges":"拼写检查完成: 更改了 %1 个单词","noChanges":"拼写检查完成: 没有更改任何单词","noMispell":"拼写检查完成: 没有发现拼写错误","noSuggestions":"- 没有建议 -","notAvailable":"抱歉, 服务目前暂不可用","notInDic":"没有在字典里","oneChange":"拼写检查完成: 更改了一个单词","progress":"正在进行拼写检查...","title":"拼写检查","toolbar":"拼写检查"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/lang/zh.js b/wqflask/wqflask/static/packages/ckeditor/lang/zh.js
deleted file mode 100644
index 65490f2f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/lang/zh.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.lang['zh']={"editor":"RTF 編輯器","editorPanel":"RTF 編輯器面板","common":{"editorHelp":"按下 ALT 0 取得說明。","browseServer":"瀏覽伺服器","url":"URL","protocol":"通訊協定","upload":"上傳","uploadSubmit":"傳送至伺服器","image":"圖像","flash":"Flash","form":"表格","checkbox":"核取方塊","radio":"選項按鈕","textField":"文字欄位","textarea":"文字區域","hiddenField":"隱藏欄位","button":"按鈕","select":"選取欄位","imageButton":"影像按鈕","notSet":"<未設定>","id":"ID","name":"名稱","langDir":"語言方向","langDirLtr":"由左至右 (LTR)","langDirRtl":"由右至左 (RTL)","langCode":"語言代碼","longDescr":"完整描述 URL","cssClass":"樣式表類別","advisoryTitle":"標題","cssStyle":"樣式","ok":"確定","cancel":"取消","close":"關閉","preview":"預覽","resize":"調整大小","generalTab":"一般","advancedTab":"進階","validateNumberFailed":"此值不是數值。","confirmNewPage":"現存的修改尚未儲存,要開新檔案?","confirmCancel":"部份選項尚未儲存,要關閉對話框?","options":"選項","target":"目標","targetNew":"開新視窗 (_blank)","targetTop":"最上層視窗 (_top)","targetSelf":"相同視窗 (_self)","targetParent":"父視窗 (_parent)","langDirLTR":"由左至右 (LTR)","langDirRTL":"由右至左 (RTL)","styles":"樣式","cssClasses":"樣式表類別","width":"寬度","height":"高度","align":"對齊方式","alignLeft":"靠左對齊","alignRight":"靠右對齊","alignCenter":"置中對齊","alignJustify":"左右對齊","alignTop":"頂端","alignMiddle":"中間對齊","alignBottom":"底端","alignNone":"無","invalidValue":"無效值。","invalidHeight":"高度必須為數字。","invalidWidth":"寬度必須為數字。","invalidCssLength":"「%1」的值應為正數,並可包含有效的 CSS 單位 (px, %, in, cm, mm, em, ex, pt, 或 pc)。","invalidHtmlLength":"「%1」的值應為正數,並可包含有效的 HTML 單位 (px 或 %)。","invalidInlineStyle":"行內樣式的值應包含一個以上的變數值組,其格式如「名稱:值」,並以分號區隔之。","cssLengthTooltip":"請輸入數值,單位是像素或有效的 CSS 單位 (px, %, in, cm, mm, em, ex, pt, 或 pc)。","unavailable":"%1<span class=\"cke_accessibility\">,無法使用</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"關於 CKEditor","help":"檢閱 $1 尋求幫助。","moreInfo":"關於授權資訊,請參閱我們的網站:","title":"關於 CKEditor","userGuide":"CKEditor 使用者手冊"},"basicstyles":{"bold":"粗體","italic":"斜體","strike":"刪除線","subscript":"下標","superscript":"上標","underline":"底線"},"bidi":{"ltr":"文字方向從左至右","rtl":"文字方向從右至左"},"blockquote":{"toolbar":"引用段落"},"clipboard":{"copy":"複製","copyError":"瀏覽器的安全性設定不允許編輯器自動執行複製動作。請使用鍵盤快捷鍵 (Ctrl/Cmd+C) 複製。","cut":"剪下","cutError":"瀏覽器的安全性設定不允許編輯器自動執行剪下動作。請使用鏐盤快捷鍵 (Ctrl/Cmd+X) 剪下。","paste":"貼上","pasteArea":"貼上區","pasteMsg":"請使用鍵盤快捷鍵 (<strong>Ctrl/Cmd+V</strong>) 貼到下方區域中並按下「確定」。","securityMsg":"因為瀏覽器的安全性設定,本編輯器無法直接存取您的剪貼簿資料,請您自行在本視窗進行貼上動作。","title":"貼上"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"自動","bgColorTitle":"背景顏色","colors":{"000":"黑色","800000":"栗色","8B4513":"鞍褐色","2F4F4F":"暗瓦灰色","008080":"水壓色","000080":"丈青澀","4B0082":"靛青","696969":"深灰色","B22222":"磚紅色","A52A2A":"褐色","DAA520":"金黃色","006400":"深綠色","40E0D0":"青綠色","0000CD":"藍色","800080":"紫色","808080":"灰色","F00":"紅色","FF8C00":"深橘色","FFD700":"金色","008000":"綠色","0FF":"藍綠色","00F":"藍色","EE82EE":"紫色","A9A9A9":"暗灰色","FFA07A":"亮鮭紅","FFA500":"橘色","FFFF00":"黃色","00FF00":"鮮綠色","AFEEEE":"綠松色","ADD8E6":"淺藍色","DDA0DD":"枚紅色","D3D3D3":"淺灰色","FFF0F5":"淺紫色","FAEBD7":"骨董白","FFFFE0":"淺黃色","F0FFF0":"蜜瓜綠","F0FFFF":"天藍色","F0F8FF":"愛麗斯蘭","E6E6FA":"淺紫色","FFF":"白色"},"more":"更多顏色","panelTitle":"顏色","textColorTitle":"文字顏色"},"colordialog":{"clear":"清除","highlight":"高亮","options":"色彩選項","selected":"選取的色彩","title":"選取色彩"},"templates":{"button":"範本","emptyListMsg":"(尚未定義任何範本)","insertOption":"替代實際內容","options":"範本選項","selectPromptMsg":"請選擇要在編輯器中開啟的範本。","title":"內容範本"},"contextmenu":{"options":"內容功能表選項"},"div":{"IdInputLabel":"ID","advisoryTitleInputLabel":"標題","cssClassInputLabel":"樣式表類別","edit":"編輯 Div","inlineStyleInputLabel":"行內樣式","langDirLTRLabel":"由左至右 (LTR)","langDirLabel":"語言方向","langDirRTLLabel":"由右至左 (RTL)","languageCodeInputLabel":"語言碼","remove":"移除 Div","styleSelectLabel":"樣式","title":"建立 Div 容器","toolbar":"建立 Div 容器"},"toolbar":{"toolbarCollapse":"摺疊工具列","toolbarExpand":"展開工具列","toolbarGroups":{"document":"文件","clipboard":"剪貼簿/復原","editing":"編輯選項","forms":"格式","basicstyles":"基本樣式","paragraph":"段落","links":"連結","insert":"插入","styles":"樣式","colors":"顏色","tools":"工具"},"toolbars":"編輯器工具列"},"elementspath":{"eleLabel":"元件路徑","eleTitle":"%1 個元件"},"find":{"find":"尋找","findOptions":"尋找選項","findWhat":"尋找目標:","matchCase":"大小寫須相符","matchCyclic":"循環搜尋","matchWord":"全字拼寫須相符","notFoundMsg":"找不到指定的文字。","replace":"取代","replaceAll":"全部取代","replaceSuccessMsg":"已取代 %1 個指定項目。","replaceWith":"取代成:","title":"尋找及取代"},"fakeobjects":{"anchor":"錨點","flash":"Flash 動畫","hiddenfield":"隱藏欄位","iframe":"IFrame","unknown":"無法辨識的物件"},"flash":{"access":"腳本存取","accessAlways":"永遠","accessNever":"從不","accessSameDomain":"相同網域","alignAbsBottom":"絕對下方","alignAbsMiddle":"絕對置中","alignBaseline":"基準線","alignTextTop":"上層文字","bgcolor":"背景顏色","chkFull":"允許全螢幕","chkLoop":"重複播放","chkMenu":"啟用 Flash 選單","chkPlay":"自動播放","flashvars":"Flash 變數","hSpace":"HSpace","properties":"Flash 屬性​​","propertiesTab":"屬性","quality":"品質","qualityAutoHigh":"自動高","qualityAutoLow":"自動低","qualityBest":"最佳","qualityHigh":"高","qualityLow":"低","qualityMedium":"中","scale":"縮放比例","scaleAll":"全部顯示","scaleFit":"最適化","scaleNoBorder":"無框線","title":"Flash 屬性​​","vSpace":"VSpace","validateHSpace":"HSpace 必須為數字。","validateSrc":"URL 不可為空白。","validateVSpace":"VSpace 必須為數字。","windowMode":"視窗模式","windowModeOpaque":"不透明","windowModeTransparent":"透明","windowModeWindow":"視窗"},"font":{"fontSize":{"label":"大小","voiceLabel":"字型大小","panelTitle":"字型大小"},"label":"字型","panelTitle":"字型名稱","voiceLabel":"字型"},"forms":{"button":{"title":"按鈕內容","text":"顯示文字 (值)","type":"類型","typeBtn":"按鈕","typeSbm":"送出","typeRst":"重設"},"checkboxAndRadio":{"checkboxTitle":"核取方塊內容","radioTitle":"選項按鈕內容","value":"數值","selected":"已選"},"form":{"title":"表單內容","menu":"表單內容","action":"動作","method":"方式","encoding":"編碼"},"hidden":{"title":"隱藏欄位內容","name":"名稱","value":"數值"},"select":{"title":"選取欄位內容","selectInfo":"選擇資訊","opAvail":"可用選項","value":"數值","size":"大小","lines":"行數","chkMulti":"允許多選","opText":"文字","opValue":"數值","btnAdd":"新增","btnModify":"修改","btnUp":"向上","btnDown":"向下","btnSetValue":"設為已選","btnDelete":"刪除"},"textarea":{"title":"文字區域內容","cols":"列","rows":"行"},"textfield":{"title":"文字欄位內容","name":"名字","value":"數值","charWidth":"字元寬度","maxChars":"最大字元數","type":"類型","typeText":"文字","typePass":"密碼","typeEmail":"電子郵件","typeSearch":"搜尋","typeTel":"電話號碼","typeUrl":"URL"}},"format":{"label":"格式","panelTitle":"段落格式","tag_address":"地址","tag_div":"標準 (DIV)","tag_h1":"標題 1","tag_h2":"標題 2","tag_h3":"標題 3","tag_h4":"標題 4","tag_h5":"標題 5","tag_h6":"標題 6","tag_p":"標準","tag_pre":"格式設定"},"horizontalrule":{"toolbar":"插入水平線"},"iframe":{"border":"顯示框架框線","noUrl":"請輸入 iframe URL","scrolling":"啟用捲軸列","title":"IFrame 屬性","toolbar":"IFrame"},"image":{"alertUrl":"請輸入圖片 URL","alt":"替代文字","border":"框線","btnUpload":"傳送到伺服器","button2Img":"請問您確定要將「圖片按鈕」轉換成「圖片」嗎?","hSpace":"HSpace","img2Button":"請問您確定要將「圖片」轉換成「圖片按鈕」嗎?","infoTab":"影像資訊","linkTab":"連結","lockRatio":"固定比例","menu":"影像屬性","resetSize":"重設大小","title":"影像屬性","titleButton":"影像按鈕屬性","upload":"上傳","urlMissing":"遺失圖片來源之 URL ","vSpace":"VSpace","validateBorder":"框線必須是整數。","validateHSpace":"HSpace 必須是整數。","validateVSpace":"VSpace 必須是整數。"},"indent":{"indent":"增加縮排","outdent":"減少縮排"},"smiley":{"options":"表情符號選項","title":"插入表情符號","toolbar":"表情符號"},"justify":{"block":"左右對齊","center":"置中","left":"靠左對齊","right":"靠右對齊"},"language":{"button":"設定語言","remove":"移除語言"},"link":{"acccessKey":"便捷鍵","advanced":"進階","advisoryContentType":"建議內容類型","advisoryTitle":"標題","anchor":{"toolbar":"錨點","menu":"編輯錨點","title":"錨點內容","name":"錨點名稱","errorName":"請輸入錨點名稱","remove":"移除錨點"},"anchorId":"依元件編號","anchorName":"依錨點名稱","charset":"連結資源的字元集","cssClasses":"樣式表類別","emailAddress":"電子郵件地址","emailBody":"郵件本文","emailSubject":"郵件主旨","id":"ID","info":"連結資訊","langCode":"語言碼","langDir":"語言方向","langDirLTR":"由左至右 (LTR)","langDirRTL":"由右至左 (RTL)","menu":"編輯連結","name":"名稱","noAnchors":"(本文件中無可用之錨點)","noEmail":"請輸入電子郵件","noUrl":"請輸入連結 URL","other":"<其他>","popupDependent":"獨立 (Netscape)","popupFeatures":"快顯視窗功能","popupFullScreen":"全螢幕 (IE)","popupLeft":"左側位置","popupLocationBar":"位置列","popupMenuBar":"功能表列","popupResizable":"可調大小","popupScrollBars":"捲軸","popupStatusBar":"狀態列","popupToolbar":"工具列","popupTop":"頂端位置","rel":"關係","selectAnchor":"選取一個錨點","styles":"樣式","tabIndex":"定位順序","target":"目標","targetFrame":"<框架>","targetFrameName":"目標框架名稱","targetPopup":"<快顯視窗>","targetPopupName":"快顯視窗名稱","title":"連結","toAnchor":"文字中的錨點連結","toEmail":"電子郵件","toUrl":"網址","toolbar":"連結","type":"連結類型","unlink":"取消連結","upload":"上傳"},"list":{"bulletedlist":"插入/移除項目符號清單","numberedlist":"插入/移除編號清單清單"},"liststyle":{"armenian":"亞美尼亞數字","bulletedTitle":"項目符號清單屬性","circle":"圓圈","decimal":"小數點 (1, 2, 3, etc.)","decimalLeadingZero":"前綴 0 十位數字 (01, 02, 03, 等)","disc":"圓點","georgian":"喬治王時代數字 (an, ban, gan, 等)","lowerAlpha":"小寫字母 (a, b, c, d, e 等)","lowerGreek":"小寫希臘字母 (alpha, beta, gamma, 等)","lowerRoman":"小寫羅馬數字 (i, ii, iii, iv, v 等)","none":"無","notset":"<未設定>","numberedTitle":"編號清單屬性","square":"方塊","start":"開始","type":"類型","upperAlpha":"大寫字母 (A, B, C, D, E 等)","upperRoman":"大寫羅馬數字 (I, II, III, IV, V 等)","validateStartNumber":"清單起始號碼須為一完整數字。"},"magicline":{"title":"在此插入段落"},"maximize":{"maximize":"最大化","minimize":"最小化"},"newpage":{"toolbar":"新增網頁"},"pagebreak":{"alt":"換頁","toolbar":"插入換頁符號以便列印"},"pastetext":{"button":"貼成純文字","title":"貼成純文字"},"pastefromword":{"confirmCleanup":"您想貼上的文字似乎是自 Word 複製而來,請問您是否要先清除 Word 的格式後再行貼上?","error":"由於發生內部錯誤,無法清除清除 Word 的格式。","title":"自 Word 貼上","toolbar":"自 Word 貼上"},"preview":{"preview":"預覽"},"print":{"toolbar":"列印"},"removeformat":{"toolbar":"移除格式"},"save":{"toolbar":"儲存"},"selectall":{"toolbar":"全選"},"showblocks":{"toolbar":"顯示區塊"},"sourcearea":{"toolbar":"原始碼"},"specialchar":{"options":"特殊字元選項","title":"選取特殊字元","toolbar":"插入特殊字元"},"scayt":{"btn_about":"關於即時拼寫檢查","btn_dictionaries":"字典","btn_disable":"關閉即時拼寫檢查","btn_enable":"啟用即時拼寫檢查","btn_langs":"語言","btn_options":"選項","text_title":""},"stylescombo":{"label":"樣式","panelTitle":"Formatting Styles","panelTitle1":"區塊樣式","panelTitle2":"內嵌樣式","panelTitle3":"物件樣式"},"table":{"border":"框線大小","caption":"標題","cell":{"menu":"儲存格","insertBefore":"前方插入儲存格","insertAfter":"後方插入儲存格","deleteCell":"刪除儲存格","merge":"合併儲存格","mergeRight":"向右合併","mergeDown":"向下合併","splitHorizontal":"水平分割儲存格","splitVertical":"垂直分割儲存格","title":"儲存格屬性","cellType":"儲存格類型","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"自動斷行","hAlign":"水平對齊","vAlign":"垂直對齊","alignBaseline":"基準線","bgColor":"背景顏色","borderColor":"框線顏色","data":"資料","header":"Header","yes":"是","no":"否","invalidWidth":"儲存格寬度必須為數字。","invalidHeight":"儲存格高度必須為數字。","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"選擇"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"行","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"行","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"無","headersRow":"First Row","invalidBorder":"框線大小必須是整數。","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"行數須為大於 0 的正整數。","invalidHeight":"表格高度必須為數字。","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"表格寬度必須為數字。","menu":"表格屬性","row":{"menu":"列","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"列","summary":"Summary","title":"表格屬性","toolbar":"表格","widthPc":"百分比","widthPx":"像素","widthUnit":"寬度單位"},"undo":{"redo":"取消復原","undo":"復原"},"wsc":{"btnIgnore":"忽略","btnIgnoreAll":"全部忽略","btnReplace":"取代","btnReplaceAll":"全部取代","btnUndo":"復原","changeTo":"更改為","errorLoading":"無法聯系侍服器: %s.","ieSpellDownload":"尚未安裝拼字檢查元件。您是否想要現在下載?","manyChanges":"拼字檢查完成:更改了 %1 個單字","noChanges":"拼字檢查完成:未更改任何單字","noMispell":"拼字檢查完成:未發現拼字錯誤","noSuggestions":"- 無建議值 -","notAvailable":"抱歉,服務目前暫不可用","notInDic":"不在字典中","oneChange":"拼字檢查完成:更改了 1 個單字","progress":"進行拼字檢查中…","title":"拼字檢查","toolbar":"拼字檢查"}}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js
deleted file mode 100644
index 32c14faf..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("a11yHelp",function(j){var a=j.lang.a11yhelp,l=CKEDITOR.tools.getNextId(),e={8:a.backspace,9:a.tab,13:a.enter,16:a.shift,17:a.ctrl,18:a.alt,19:a.pause,20:a.capslock,27:a.escape,33:a.pageUp,34:a.pageDown,35:a.end,36:a.home,37:a.leftArrow,38:a.upArrow,39:a.rightArrow,40:a.downArrow,45:a.insert,46:a["delete"],91:a.leftWindowKey,92:a.rightWindowKey,93:a.selectKey,96:a.numpad0,97:a.numpad1,98:a.numpad2,99:a.numpad3,100:a.numpad4,101:a.numpad5,102:a.numpad6,103:a.numpad7,104:a.numpad8,
-105:a.numpad9,106:a.multiply,107:a.add,109:a.subtract,110:a.decimalPoint,111:a.divide,112:a.f1,113:a.f2,114:a.f3,115:a.f4,116:a.f5,117:a.f6,118:a.f7,119:a.f8,120:a.f9,121:a.f10,122:a.f11,123:a.f12,144:a.numLock,145:a.scrollLock,186:a.semiColon,187:a.equalSign,188:a.comma,189:a.dash,190:a.period,191:a.forwardSlash,192:a.graveAccent,219:a.openBracket,220:a.backSlash,221:a.closeBracket,222:a.singleQuote};e[CKEDITOR.ALT]=a.alt;e[CKEDITOR.SHIFT]=a.shift;e[CKEDITOR.CTRL]=a.ctrl;var f=[CKEDITOR.ALT,CKEDITOR.SHIFT,
-CKEDITOR.CTRL],m=/\$\{(.*?)\}/g,p=function(){var a=j.keystrokeHandler.keystrokes,g={},c;for(c in a)g[a[c]]=c;return function(a,c){var b;if(g[c]){b=g[c];for(var h,i,k=[],d=0;d<f.length;d++)i=f[d],h=b/f[d],1<h&&2>=h&&(b-=i,k.push(e[i]));k.push(e[b]||String.fromCharCode(b));b=k.join("+")}else b=a;return b}}();return{title:a.title,minWidth:600,minHeight:400,contents:[{id:"info",label:j.lang.common.generalTab,expand:!0,elements:[{type:"html",id:"legends",style:"white-space:normal;",focus:function(){this.getElement().focus()},
-html:function(){for(var e='<div class="cke_accessibility_legend" role="document" aria-labelledby="'+l+'_arialbl" tabIndex="-1">%1</div><span id="'+l+'_arialbl" class="cke_voice_label">'+a.contents+" </span>",g=[],c=a.legend,j=c.length,f=0;f<j;f++){for(var b=c[f],h=[],i=b.items,k=i.length,d=0;d<k;d++){var n=i[d],o=n.legend.replace(m,p);o.match(m)||h.push("<dt>%1</dt><dd>%2</dd>".replace("%1",n.name).replace("%2",o))}g.push("<h1>%1</h1><dl>%2</dl>".replace("%1",b.name).replace("%2",h.join("")))}return e.replace("%1",
-g.join(""))}()+'<style type="text/css">.cke_accessibility_legend{width:600px;height:400px;padding-right:5px;overflow-y:auto;overflow-x:hidden;}.cke_browser_quirks .cke_accessibility_legend,{height:390px}.cke_accessibility_legend *{white-space:normal;}.cke_accessibility_legend h1{font-size: 20px;border-bottom: 1px solid #AAA;margin: 5px 0px 15px;}.cke_accessibility_legend dl{margin-left: 5px;}.cke_accessibility_legend dt{font-size: 13px;font-weight: bold;}.cke_accessibility_legend dd{margin:10px}</style>'}]}],
-buttons:[CKEDITOR.dialog.cancelButton]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt
deleted file mode 100644
index c760b6f9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-
-cs.js Found: 30 Missing: 0
-cy.js Found: 30 Missing: 0
-da.js Found: 12 Missing: 18
-de.js Found: 30 Missing: 0
-el.js Found: 25 Missing: 5
-eo.js Found: 30 Missing: 0
-fa.js Found: 30 Missing: 0
-fi.js Found: 30 Missing: 0
-fr.js Found: 30 Missing: 0
-gu.js Found: 12 Missing: 18
-he.js Found: 30 Missing: 0
-it.js Found: 30 Missing: 0
-mk.js Found: 5 Missing: 25
-nb.js Found: 30 Missing: 0
-nl.js Found: 30 Missing: 0
-no.js Found: 30 Missing: 0
-pt-br.js Found: 30 Missing: 0
-ro.js Found: 6 Missing: 24
-tr.js Found: 30 Missing: 0
-ug.js Found: 27 Missing: 3
-vi.js Found: 6 Missing: 24
-zh-cn.js Found: 30 Missing: 0
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js
deleted file mode 100644
index 49f816f1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ar",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"عام",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"إضافة",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"تقسيم",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"فاصلة",dash:"Dash",period:"نقطة",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js
deleted file mode 100644
index bddf534f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","bg",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Общо",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js
deleted file mode 100644
index 04f705ba..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ca",{title:"Instruccions d'Accessibilitat",contents:"Continguts de l'Ajuda. Per tancar aquest quadre de diàleg premi ESC.",legend:[{name:"General",items:[{name:"Editor de barra d'eines",legend:"Premi ${toolbarFocus} per desplaçar-se per la barra d'eines. Vagi en el següent i anterior grup de barra d'eines amb TAB i SHIFT-TAB. Vagi en el següent i anterior botó de la barra d'eines amb RIGHT ARROW i LEFT ARROW. Premi SPACE o ENTER per activar el botó de la barra d'eines."},
-{name:"Editor de quadre de diàleg",legend:"Dins d'un quadre de diàleg, premi la tecla TAB per desplaçar-se al següent camp del quadre de diàleg, premi SHIFT + TAB per desplaçar-se a l'anterior camp, premi ENTER per acceptar el quadre de diàleg, premi ESC per cancel·lar el quadre de diàleg. Per els quadres de diàleg que tenen diverses pestanyes, premi ALT + F10 per anar a la llista de pestanyes. Després podrà desplaçar-se a la següent pestanya amb TAB o RIGHT ARROW. Anar a la pestanya anterior amb SHIFT + TAB o LEFT ARROW. Premi SPACE o ENTER per seleccionar la pestanya."},
-{name:"Editor de menú contextual",legend:"Premi ${contextMenu} o APPLICATION KEY per obrir el menú contextual. Després desplacis a la següent opció del menú amb TAB o DOWN ARROW. Desplacis a l'anterior opció amb SHIFT+TAB o UP ARROW. Premi SPACE o ENTER per seleccionar l'opció del menú. Obri el submenú de l'actual opció utilitzant SPACE o ENTER o RIGHT ARROW. Pot tornar a l'opció del menú pare amb ESC o LEFT ARROW. Tanqui el menú contextual amb ESC."},{name:"Editor de caixa de llista",legend:"Dins d'un quadre de llista, desplacis al següent element de la llista amb TAB o DOWN ARROW. Desplacis a l'anterior element de la llista amb SHIFT + TAB o UP ARROW. Premi SPACE o ENTER per seleccionar l'opció de la llista. Premi ESC per tancar el quadre de llista."},
-{name:"Editor de barra de ruta de l'element",legend:"Premi ${elementsPathFocus} per anar als elements de la barra de ruta. Desplacis al botó de l'element següent amb TAB o RIGHT ARROW. Desplacis a l'anterior botó amb SHIFT+TAB o LEFT ARROW. Premi SPACE o ENTER per seleccionar l'element a l'editor."}]},{name:"Ordres",items:[{name:"Desfer ordre",legend:"Premi ${undo}"},{name:"Refer ordre",legend:"Premi ${redo}"},{name:"Ordre negreta",legend:"Premi ${bold}"},{name:"Ordre cursiva",legend:"Premi ${italic}"},
-{name:"Ordre subratllat",legend:"Premi ${underline}"},{name:"Ordre enllaç",legend:"Premi ${link}"},{name:"Ordre amagar barra d'eines",legend:"Premi ${toolbarCollapse}"},{name:"Ordre per accedir a l'anterior espai enfocat",legend:"Premi ${accessPreviousSpace} per accedir a l'enfocament d'espai més proper inabastable abans del símbol d'intercalació, per exemple: dos elements HR adjacents. Repetiu la combinació de tecles per arribar a enfocaments d'espais distants."},{name:"Ordre per accedir al següent espai enfocat",
-legend:"Premi ${accessNextSpace} per accedir a l'enfocament d'espai més proper inabastable després del símbol d'intercalació, per exemple: dos elements HR adjacents. Repetiu la combinació de tecles per arribar a enfocaments d'espais distants."},{name:"Ajuda d'accessibilitat",legend:"Premi ${a11yHelp}"}]}],backspace:"Retrocés",tab:"Tabulació",enter:"Intro",shift:"Majúscules",ctrl:"Ctrl",alt:"Alt",pause:"Pausa",capslock:"Bloqueig de majúscules",escape:"Escape",pageUp:"Pàgina Amunt",pageDown:"Pàgina Avall",
-end:"Fi",home:"Inici",leftArrow:"Fletxa Esquerra",upArrow:"Fletxa Amunt",rightArrow:"Fletxa Dreta",downArrow:"Fletxa Avall",insert:"Inserir","delete":"Eliminar",leftWindowKey:"Tecla Windows Esquerra",rightWindowKey:"Tecla Windows Dreta",selectKey:"Tecla Seleccionar",numpad0:"Teclat Numèric 0",numpad1:"Teclat Numèric 1",numpad2:"Teclat Numèric 2",numpad3:"Teclat Numèric 3",numpad4:"Teclat Numèric 4",numpad5:"Teclat Numèric 5",numpad6:"Teclat Numèric 6",numpad7:"Teclat Numèric 7",numpad8:"Teclat Numèric 8",
-numpad9:"Teclat Numèric 9",multiply:"Multiplicació",add:"Suma",subtract:"Resta",decimalPoint:"Punt Decimal",divide:"Divisió",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Bloqueig Teclat Numèric",scrollLock:"Bloqueig de Desplaçament",semiColon:"Punt i Coma",equalSign:"Símbol Igual",comma:"Coma",dash:"Guió",period:"Punt",forwardSlash:"Barra Diagonal",graveAccent:"Accent Obert",openBracket:"Claudàtor Obert",backSlash:"Barra Invertida",
-closeBracket:"Claudàtor Tancat",singleQuote:"Cometa Simple"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js
deleted file mode 100644
index ed61622e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","cs",{title:"Instrukce pro přístupnost",contents:"Obsah nápovědy. Pro uzavření tohoto dialogu stiskněte klávesu ESC.",legend:[{name:"Obecné",items:[{name:"Panel nástrojů editoru",legend:"Stiskněte${toolbarFocus} k procházení panelu nástrojů. Přejděte na další a předchozí skupiny pomocí TAB a SHIFT-TAB. Přechod na další a předchozí tlačítko panelu nástrojů je pomocí ŠIPKA VPRAVO nebo ŠIPKA VLEVO. Stisknutím mezerníku nebo klávesy ENTER tlačítko aktivujete."},{name:"Dialogové okno editoru",
-legend:"Uvnitř dialogového okna stiskněte TAB pro přesunutí na další pole, stiskněte SHIFT + TAB pro přesun na předchozí pole, stiskněte ENTER pro odeslání dialogu, stiskněte ESC pro jeho zrušení. Pro dialogová okna, která mají mnoho karet stiskněte ALT + F10 pr oprocházení seznamu karet. Pak se přesuňte na další kartu pomocí TAB nebo ŠIPKA VPRAVO. Pro přesun na předchozí stiskněte SHIFT + TAB nebo ŠIPKA VLEVO. Stiskněte MEZERNÍK nebo ENTER pro vybrání stránky karet."},{name:"Kontextové menu editoru",
-legend:"Stiskněte ${contextMenu} nebo klávesu APPLICATION k otevření kontextového menu. Pak se přesuňte na další možnost menu pomocí TAB nebo ŠIPKY DOLŮ. Přesuňte se na předchozí možnost pomocí SHIFT+TAB nebo ŠIPKY NAHORU. Stiskněte MEZERNÍK nebo ENTER pro zvolení možnosti menu. Podmenu současné možnosti otevřete pomocí MEZERNÍKU nebo ENTER či ŠIPKY DOLEVA. Kontextové menu uzavřete stiskem ESC."},{name:"Rámeček seznamu editoru",legend:"Uvnitř rámečku seznamu se přesunete na další položku menu pomocí TAB nebo ŠIPKA DOLŮ. Na předchozí položku se přesunete SHIFT + TAB nebo ŠIPKA NAHORU. Stiskněte MEZERNÍK nebo ENTER pro zvolení možnosti seznamu. Stiskněte ESC pro uzavření seznamu."},
-{name:"Lišta cesty prvku v editoru",legend:"Stiskněte ${elementsPathFocus} pro procházení lišty cesty prvku. Na další tlačítko prvku se přesunete pomocí TAB nebo ŠIPKA VPRAVO. Na předchozí položku se přesunete pomocí SHIFT + TAB nebo ŠIPKA VLEVO. Stiskněte MEZERNÍK nebo ENTER pro vybrání prvku v editoru."}]},{name:"Příkazy",items:[{name:" Příkaz Zpět",legend:"Stiskněte ${undo}"},{name:" Příkaz Znovu",legend:"Stiskněte ${redo}"},{name:" Příkaz Tučné",legend:"Stiskněte ${bold}"},{name:" Příkaz Kurzíva",
-legend:"Stiskněte ${italic}"},{name:" Příkaz Podtržení",legend:"Stiskněte ${underline}"},{name:" Příkaz Odkaz",legend:"Stiskněte ${link}"},{name:" Příkaz Skrýt panel nástrojů",legend:"Stiskněte ${toolbarCollapse}"},{name:"Příkaz pro přístup k předchozímu prostoru zaměření",legend:"Stiskněte ${accessPreviousSpace} pro přístup k nejbližšímu nedosažitelnému prostoru zaměření před stříškou, například: dva přilehlé prvky HR. Pro dosažení vzdálených prostorů zaměření tuto kombinaci kláves opakujte."},{name:"Příkaz pro přístup k dalšímu prostoru zaměření",
-legend:"Stiskněte ${accessNextSpace} pro přístup k nejbližšímu nedosažitelnému prostoru zaměření po stříšce, například: dva přilehlé prvky HR. Pro dosažení vzdálených prostorů zaměření tuto kombinaci kláves opakujte."},{name:" Nápověda přístupnosti",legend:"Stiskněte ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tabulátor",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pauza",capslock:"Caps lock",escape:"Escape",pageUp:"Stránka nahoru",pageDown:"Stránka dolů",end:"Konec",home:"Domů",leftArrow:"Šipka vlevo",
-upArrow:"Šipka nahoru",rightArrow:"Šipka vpravo",downArrow:"Šipka dolů",insert:"Vložit","delete":"Smazat",leftWindowKey:"Levá klávesa Windows",rightWindowKey:"Pravá klávesa Windows",selectKey:"Vyberte klávesu",numpad0:"Numerická klávesa 0",numpad1:"Numerická klávesa 1",numpad2:"Numerická klávesa 2",numpad3:"Numerická klávesa 3",numpad4:"Numerická klávesa 4",numpad5:"Numerická klávesa 5",numpad6:"Numerická klávesa 6",numpad7:"Numerická klávesa 7",numpad8:"Numerická klávesa 8",numpad9:"Numerická klávesa 9",
-multiply:"Numerická klávesa násobení",add:"Přidat",subtract:"Numerická klávesa odečítání",decimalPoint:"Desetinná tečka",divide:"Numerická klávesa dělení",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num lock",scrollLock:"Scroll lock",semiColon:"Středník",equalSign:"Rovnítko",comma:"Čárka",dash:"Pomlčka",period:"Tečka",forwardSlash:"Lomítko",graveAccent:"Přízvuk",openBracket:"Otevřená hranatá závorka",backSlash:"Obrácené lomítko",closeBracket:"Uzavřená hranatá závorka",
-singleQuote:"Jednoduchá uvozovka"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js
deleted file mode 100644
index 86bd79d7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","cy",{title:"Canllawiau Hygyrchedd",contents:"Cynnwys Cymorth. I gau y deialog hwn, pwyswch ESC.",legend:[{name:"Cyffredinol",items:[{name:"Bar Offer y Golygydd",legend:"Pwyswch $ {toolbarFocus} i fynd at y bar offer. Symudwch i'r grŵp bar offer nesaf a blaenorol gyda TAB a SHIFT-TAB. Symudwch i'r botwm bar offer nesaf a blaenorol gyda SAETH DDE neu SAETH CHWITH. Pwyswch SPACE neu ENTER i wneud botwm y bar offer yn weithredol."},{name:"Deialog y Golygydd",legend:"Tu mewn i'r deialog, pwyswch TAB i fynd i'r maes nesaf ar y deialog, pwyswch SHIFT + TAB i symud i faes blaenorol, pwyswch ENTER i gyflwyno'r deialog, pwyswch ESC i ddiddymu'r deialog. Ar gyfer deialogau sydd â thudalennau aml-tab, pwyswch ALT + F10 i lywio'r tab-restr. Yna symudwch i'r tab nesaf gyda TAB neu SAETH DDE. Symudwch i dab blaenorol gyda SHIFT + TAB neu'r SAETH CHWITH. Pwyswch SPACE neu ENTER i ddewis y dudalen tab."},
-{name:"Dewislen Cyd-destun y Golygydd",legend:"Pwyswch $ {contextMenu} neu'r ALLWEDD 'APPLICATION' i agor y ddewislen cyd-destun. Yna symudwch i'r opsiwn ddewislen nesaf gyda'r TAB neu'r SAETH I LAWR. Symudwch i'r opsiwn blaenorol gyda SHIFT + TAB neu'r SAETH I FYNY. Pwyswch SPACE neu ENTER i ddewis yr opsiwn ddewislen. Agorwch is-dewislen yr opsiwn cyfredol gyda SPACE neu ENTER neu SAETH DDE. Ewch yn ôl i'r eitem ar y ddewislen uwch gydag ESC neu SAETH CHWITH. Ceuwch y ddewislen cyd-destun gydag ESC."},
-{name:"Blwch Rhestr y Golygydd",legend:"Tu mewn y blwch rhestr, ewch i'r eitem rhestr nesaf gyda TAB neu'r SAETH I LAWR. Symudwch i restr eitem flaenorol gyda SHIFT + TAB neu SAETH I FYNY. Pwyswch SPACE neu ENTER i ddewis yr opsiwn o'r rhestr. Pwyswch ESC i gau'r rhestr."},{name:"Bar Llwybr Elfen y Golygydd",legend:"Pwyswch ${elementsPathFocus} i fynd i'r bar llwybr elfennau. Symudwch i fotwm yr elfen nesaf gyda TAB neu SAETH DDE. Symudwch i fotwm blaenorol gyda SHIFT + TAB neu SAETH CHWITH. Pwyswch SPACE neu ENTER i ddewis yr elfen yn y golygydd."}]},
-{name:"Gorchmynion",items:[{name:"Gorchymyn dadwneud",legend:"Pwyswch ${undo}"},{name:"Gorchymyn ailadrodd",legend:"Pwyswch ${redo}"},{name:"Gorchymyn Bras",legend:"Pwyswch ${bold}"},{name:"Gorchymyn italig",legend:"Pwyswch ${italig}"},{name:"Gorchymyn tanlinellu",legend:"Pwyso ${underline}"},{name:"Gorchymyn dolen",legend:"Pwyswch ${link}"},{name:"Gorchymyn Cwympo'r Dewislen",legend:"Pwyswch ${toolbarCollapse}"},{name:"Myned i orchymyn bwlch ffocws blaenorol",legend:"Pwyswch ${accessPreviousSpace} i fyned i'r \"blwch ffocws sydd methu ei gyrraedd\" cyn y caret, er enghraifft: dwy elfen HR drws nesaf i'w gilydd. AIladroddwch y cyfuniad allwedd i gyrraedd bylchau ffocws pell."},
-{name:"Ewch i'r gorchymyn blwch ffocws nesaf",legend:"Pwyswch ${accessNextSpace} i fyned i'r blwch ffocws agosaf nad oes modd ei gyrraedd ar ôl y caret, er enghraifft: dwy elfen HR drws nesaf i'w gilydd. Ailadroddwch y cyfuniad allwedd i gyrraedd blychau ffocws pell."},{name:"Cymorth Hygyrchedd",legend:"Pwyswch ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",
-divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/da.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/da.js
deleted file mode 100644
index 2be9ece1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/da.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","da",{title:"Tilgængelighedsinstrukser",contents:"Onlinehjælp. For at lukke dette vindue klik ESC",legend:[{name:"Generelt",items:[{name:"Editor værktøjslinje",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Kommandoer",items:[{name:"Fortryd kommando",legend:"Klik på ${undo}"},{name:"Gentag kommando",legend:"Klik ${redo}"},{name:" Bold command",legend:"Klik ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Klik ${underline}"},{name:" Link command",legend:"Klik ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Kilk ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/de.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/de.js
deleted file mode 100644
index 2a1e6f49..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/de.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","de",{title:"Barrierefreiheitinformationen",contents:"Hilfeinhalt. Um den Dialog zu schliessen die Taste 'ESC' drücken.",legend:[{name:"Allgemein",items:[{name:"Editor Symbolleiste",legend:"Drücken Sie ${toolbarFocus} auf der Symbolleiste. Gehen Sie zur nächsten oder vorherigen Symbolleistengruppe mit TAB und SHIFT-TAB. Gehen Sie zur nächsten oder vorherigen Symbolleiste auf die Schaltfläche mit dem RECHTS- oder LINKS-Pfeil. Drücken Sie die Leertaste oder Eingabetaste, um die Schaltfläche in der Symbolleiste aktivieren."},
-{name:"Editor Dialog",legend:"Innerhalb des Dialogs drücken Sie TAB um zum nächsten Dialogfeld zu gelangen, drücken Sie SHIFT-TAG um zum vorherigen Feld zu wechseln, drücken Sie ENTER um den Dialog abzusenden und ESC um den Dialog zu abzubrechen. Um zwischen den Reitern innerhalb eines Dialogs zu wechseln drücken sie ALT-F10. Um zum nächsten Reiter zu gelangen können Sie TAB oder die rechte Pfeiltaste. Zurück gelangt man mit SHIFT-TAB oder der linken Pfeiltaste. Mit der Leertaste oder Enter kann man den Reiter auswählen."},
-{name:"Editor Kontextmenü",legend:"Dürcken Sie ${contextMenu} oder die Anwendungstaste um das Kontextmenü zu öffnen. Man kann die Pfeiltasten zum Wechsel benutzen. Mit der Leertaste oder der Enter-Taste kann man den Menüpunkt aufrufen. Schliessen Sie das Kontextmenü mit der ESC-Taste."},{name:"Editor Listen",legend:"Innerhalb einer Listenbox kann man mit der TAB-Taste oder den Pfeilrunter-Taste den nächsten Menüeintrag wählen. Mit der Shift-TAB Tastenkombination oder der Pfeilhoch-Taste gelangt man zum vorherigen Menüpunkt. Mit der Leertaste oder Enter kann man den Menüpunkt auswählen. Drücken Sie ESC zum Verlassen des Menüs."},
-{name:"Editor Elementpfadleiste",legend:"Drücken Sie ${elementsPathFocus} um sich durch die Pfadleiste zu bewegen. Um zum nächsten Element zu gelangen drücken Sie TAB oder die Pfeilrechts-Taste. Zum vorherigen Element gelangen Sie mit der SHIFT-TAB oder der Pfeillinks-Taste. Drücken Sie die Leertaste oder Enter um das Element auszuwählen."}]},{name:"Befehle",items:[{name:"Wiederholen Befehl",legend:"Drücken Sie ${undo}"},{name:"Rückgängig Befehl",legend:"Drücken Sie ${redo}"},{name:"Fettschrift Befehl",
-legend:"Drücken Sie ${bold}"},{name:"Italic Befehl",legend:"Drücken Sie ${italic}"},{name:"Unterstreichung Befehl",legend:"Drücken Sie ${underline}"},{name:"Link Befehl",legend:"Drücken Sie ${link}"},{name:"Symbolleiste zuammenklappen Befehl",legend:"Drücken Sie ${toolbarCollapse}"},{name:"Zugang bisheriger Fokussierung Raumbefehl ",legend:"Drücken Sie ${accessPreviousSpace} auf den am nächsten nicht erreichbar Fokus-Abstand vor die Einfügemarke zugreifen: zwei benachbarte HR-Elemente. Wiederholen Sie die Tastenkombination um entfernte Fokusräume zu erreichen. "},
-{name:"Zugang nächster Schwerpunkt Raumbefehl ",legend:"Drücken Sie $ { accessNextSpace }, um den nächsten unerreichbar Fokus Leerzeichen nach dem Cursor zum Beispiel auf: zwei benachbarten HR Elemente. Wiederholen Sie die Tastenkombination zum fernen Fokus Bereiche zu erreichen. "},{name:"Eingabehilfen",legend:"Drücken Sie ${a11yHelp}"}]}],backspace:"Rücklöschtaste",tab:"Tab",enter:"Eingabe",shift:"Umschalt",ctrl:"Strg",alt:"Alt",pause:"Pause",capslock:"Feststell",escape:"Escape",pageUp:"Bild auf",
-pageDown:"Bild ab",end:"Ende",home:"Pos1",leftArrow:"Linke Pfeiltaste",upArrow:"Obere Pfeiltaste",rightArrow:"Rechte Pfeiltaste",downArrow:"Untere Pfeiltaste",insert:"Einfügen","delete":"Entfernen",leftWindowKey:"Linke Windowstaste",rightWindowKey:"Rechte Windowstaste",selectKey:"Taste auswählen",numpad0:"Ziffernblock 0",numpad1:"Ziffernblock 1",numpad2:"Ziffernblock 2",numpad3:"Ziffernblock 3",numpad4:"Ziffernblock 4",numpad5:"Ziffernblock 5",numpad6:"Ziffernblock 6",numpad7:"Ziffernblock 7",numpad8:"Ziffernblock 8",
-numpad9:"Ziffernblock 9",multiply:"Multiplizieren",add:"Addieren",subtract:"Subtrahieren",decimalPoint:"Punkt",divide:"Dividieren",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Ziffernblock feststellen",scrollLock:"Rollen",semiColon:"Semikolon",equalSign:"Gleichheitszeichen",comma:"Komma",dash:"Bindestrich",period:"Punkt",forwardSlash:"Schrägstrich",graveAccent:"Gravis",openBracket:"Öffnende eckige Klammer",backSlash:"Rückwärtsgewandter Schrägstrich",
-closeBracket:"Schließende eckige Klammer",singleQuote:"Einfaches Anführungszeichen"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/el.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/el.js
deleted file mode 100644
index f2065da4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/el.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","el",{title:"Οδηγίες Προσβασιμότητας",contents:"Περιεχόμενα Βοήθειας. Πατήστε ESC για κλείσιμο.",legend:[{name:"Γενικά",items:[{name:"Εργαλειοθήκη Επεξεργαστή",legend:"Πατήστε ${toolbarFocus} για να περιηγηθείτε στην γραμμή εργαλείων. Μετακινηθείτε ανάμεσα στις ομάδες της γραμμής εργαλείων με TAB και SHIFT-TAB. Μετακινηθείτε ανάμεσα στα κουμπιά εργαλείων με το ΔΕΞΙ ή ΑΡΙΣΤΕΡΟ ΒΕΛΑΚΙ. Πατήστε ΔΙΑΣΤΗΜΑ ή ENTER για να ενεργοποιήσετε το ενεργό κουμπί εργαλείου."},{name:"Παράθυρο Διαλόγου Επεξεργαστή",
-legend:"Μέσα σε ένα παράθυρο διαλόγου, πατήστε TAB για να μεταβείτε στο επόμενο πεδίο ή SHIFT + TAB για να μεταβείτε στο προηγούμενο. Πατήστε ENTER για να υποβάλετε την φόρμα. Πατήστε ESC για να ακυρώσετε την διαδικασία της φόρμας. Για παράθυρα διαλόγων που έχουν πολλές σελίδες σε καρτέλες πατήστε ALT + F10 για να μεταβείτε στην λίστα των καρτελών. Στην συνέχεια μπορείτε να μεταβείτε στην επόμενη καρτέλα πατώντας το TAB ή το ΔΕΞΙ ΒΕΛΑΚΙ. Μπορείτε να μεταβείτε στην προηγούμενη καρτέλα πατώντας SHIFT + TAB ή το ΑΡΙΣΤΕΡΟ ΒΕΛΑΚΙ. Πατήστε ΔΙΑΣΤΗΜΑ ή ENTER για να επιλέξτε την καρτέλα για προβολή."},
-{name:"Αναδυόμενο Μενού Επεξεργαστή",legend:"Πατήστε ${contextMenu} ή APPLICATION KEY για να ανοίξετε το αναδυόμενο μενού. Μετά μετακινηθείτε στην επόμενη επιλογή του μενού με TAB ή ΚΑΤΩ ΒΕΛΑΚΙ. Μετακινηθείτε στην προηγούμενη επιλογή με SHIFT+TAB ή το ΠΑΝΩ ΒΕΛΑΚΙ. Πατήστε ΔΙΑΣΤΗΜΑ ή ENTER για να επιλέξτε το τρέχων στοιχείο. Ανοίξτε το αναδυόμενο μενού της τρέχουσας επιλογής με ΔΙΑΣΤΗΜΑ ή ENTER ή το ΔΕΞΙ ΒΕΛΑΚΙ. Μεταβείτε πίσω στο αρχικό στοιχείο μενού με το ESC ή το ΑΡΙΣΤΕΡΟ ΒΕΛΑΚΙ. Κλείστε το αναδυόμενο μενού με ESC."},
-{name:"Κουτί Λίστας Επεξεργαστών",legend:"Μέσα σε ένα κουτί λίστας, μετακινηθείτε στο επόμενο στοιχείο με TAB ή ΚΑΤΩ ΒΕΛΑΚΙ. Μετακινηθείτε στο προηγούμενο στοιχείο με SHIFT + TAB ή το ΠΑΝΩ ΒΕΛΑΚΙ. Πατήστε ΔΙΑΣΤΗΜΑ ή ENTER για να επιλέξετε ένα στοιχείο. Πατήστε ESC για να κλείσετε το κουτί της λίστας."},{name:"Μπάρα Διαδρομών Στοιχείων Επεξεργαστή",legend:"Πατήστε ${elementsPathFocus} για να περιηγηθείτε στην μπάρα διαδρομών στοιχείων του επεξεργαστή. Μετακινηθείτε στο κουμπί του επόμενου στοιχείου με το TAB ή το ΔΕΞΙ ΒΕΛΑΚΙ. Μετακινηθείτε στο κουμπί του προηγούμενου στοιχείου με το SHIFT+TAB ή το ΑΡΙΣΤΕΡΟ ΒΕΛΑΚΙ. Πατήστε ΔΙΑΣΤΗΜΑ ή ENTER για να επιλέξετε το στοιχείο στον επεξεργαστή."}]},
-{name:"Εντολές",items:[{name:"Εντολή αναίρεσης",legend:"Πατήστε ${undo}"},{name:"Εντολή επανάληψης",legend:"Πατήστε ${redo}"},{name:"Εντολή έντονης γραφής",legend:"Πατήστε ${bold}"},{name:"Εντολή πλάγιας γραφής",legend:"Πατήστε ${italic}"},{name:"Εντολή υπογράμμισης",legend:"Πατήστε ${underline}"},{name:"Εντολή συνδέσμου",legend:"Πατήστε ${link}"},{name:"Εντολή Σύμπτηξης Εργαλειοθήκης",legend:"Πατήστε ${toolbarCollapse}"},{name:"Πρόσβαση στην προηγούμενη εντολή του χώρου εστίασης ",legend:"Πατήστε ${accessPreviousSpace} για να έχετε πρόσβαση στον πιο κοντινό χώρο εστίασης πριν το δρομέα, για παράδειγμα: δύο παρακείμενα στοιχεία ΥΕ. Επαναλάβετε το συνδυασμό πλήκτρων για να φθάσετε στους χώρους μακρινής εστίασης. "},
-{name:"Πρόσβαση στην επόμενη εντολή του χώρου εστίασης",legend:"Πατήστε ${accessNextSpace} για να έχετε πρόσβαση στον πιο κοντινό χώρο εστίασης μετά το δρομέα, για παράδειγμα: δύο παρακείμενα στοιχεία ΥΕ. Επαναλάβετε το συνδυασμό πλήκτρων για τους χώρους μακρινής εστίασης. "},{name:"Βοήθεια Προσβασιμότητας",legend:"Πατήστε ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Αριστερό Βέλος",upArrow:"Πάνω Βέλος",rightArrow:"Δεξί Βέλος",downArrow:"Κάτω Βέλος",insert:"Insert ","delete":"Delete",leftWindowKey:"Αριστερό Πλήκτρο Windows",rightWindowKey:"Δεξί Πλήκτρο Windows",selectKey:"Πλήκτρο Select",numpad0:"Αριθμητικό πληκτρολόγιο 0",numpad1:"Αριθμητικό Πληκτρολόγιο 1",numpad2:"Αριθμητικό πληκτρολόγιο 2",numpad3:"Αριθμητικό πληκτρολόγιο 3",numpad4:"Αριθμητικό πληκτρολόγιο 4",numpad5:"Αριθμητικό πληκτρολόγιο 5",numpad6:"Αριθμητικό πληκτρολόγιο 6",
-numpad7:"Αριθμητικό πληκτρολόγιο 7",numpad8:"Αριθμητικό πληκτρολόγιο 8",numpad9:"Αριθμητικό πληκτρολόγιο 9",multiply:"Πολλαπλασιασμός",add:"Πρόσθεση",subtract:"Αφαίρεση",decimalPoint:"Υποδιαστολή",divide:"Διαίρεση",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"6",f7:"7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Ερωτηματικό",equalSign:"Σύμβολο Ισότητας",comma:"Κόμμα",dash:"Παύλα",period:"Τελεία",forwardSlash:"Κάθετος",graveAccent:"Βαρεία",openBracket:"Άνοιγμα Παρένθεσης",
-backSlash:"Ανάστροφη Κάθετος",closeBracket:"Κλείσιμο Παρένθεσης",singleQuote:"Απόστροφος"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js
deleted file mode 100644
index 4182e6c2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","en-gb",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"General",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en.js
deleted file mode 100644
index ae9b3385..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/en.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","en",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"General",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js
deleted file mode 100644
index 081cc7e7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","eo",{title:"Uzindikoj pri atingeblo",contents:"Helpilenhavo. Por fermi tiun dialogon, premu la ESKAPAN klavon.",legend:[{name:"Ĝeneralaĵoj",items:[{name:"Ilbreto de la redaktilo",legend:"Premu ${toolbarFocus} por atingi la ilbreton. Moviĝu al la sekva aŭ antaŭa grupoj de la ilbreto per la klavoj TABA kaj MAJUSKLIGA-TABA. Moviĝu al la sekva aŭ antaŭa butonoj de la ilbreto per la klavoj SAGO DEKSTREN kaj SAGO MALDEKSTREN. Premu la SPACETklavon aŭ la ENENklavon por aktivigi la ilbretbutonon."},
-{name:"Redaktildialogo",legend:"En dialogo, premu la TABAN klavon por navigi al la sekva dialogkampo, premu la MAJUSKLIGAN + TABAN klavojn por reveni al la antaŭa kampo, premu la ENENklavon por sendi la dialogon, premu la ESKAPAN klavon por nuligi la dialogon. Por dialogoj kun pluraj retpaĝoj sub langetoj, premu ALT + F10 por navigi al la langetlisto. Poste moviĝu al la sekva langeto per la klavo TABA aŭ SAGO DEKSTREN. Moviĝu al la antaŭa langeto per la klavoj MAJUSKLIGA + TABA aŭ SAGO MALDEKSTREN. Premu la SPACETklavon aŭ la ENENklavon por selekti la langetretpaĝon."},
-{name:"Kunteksta menuo de la redaktilo",legend:"Premu ${contextMenu} aŭ entajpu la KLAVKOMBINAĴON por malfermi la kuntekstan menuon. Poste moviĝu al la sekva opcio de la menuo per la klavoj TABA aŭ SAGO SUBEN. Moviĝu al la antaŭa opcio per la klavoj MAJUSKLGA + TABA aŭ SAGO SUPREN. Premu la SPACETklavon aŭ ENENklavon por selekti la menuopcion. Malfermu la submenuon de la kuranta opcio per la SPACETklavo aŭ la ENENklavo aŭ la SAGO DEKSTREN. Revenu al la elemento de la patra menuo per la klavoj ESKAPA aŭ SAGO MALDEKSTREN. Fermu la kuntekstan menuon per la ESKAPA klavo."},
-{name:"Fallisto de la redaktilo",legend:"En fallisto, moviĝu al la sekva listelemento per la klavoj TABA aŭ SAGO SUBEN. Moviĝu al la antaŭa listelemento per la klavoj MAJUSKLIGA + TABA aŭ SAGO SUPREN. Premu la SPACETklavon aŭ ENENklavon por selekti la opcion en la listo. Premu la ESKAPAN klavon por fermi la falmenuon."},{name:"Breto indikanta la vojon al la redaktilelementoj",legend:"Premu ${elementsPathFocus} por navigi al la breto indikanta la vojon al la redaktilelementoj. Moviĝu al la butono de la sekva elemento per la klavoj TABA aŭ SAGO DEKSTREN. Moviĝu al la butono de la antaŭa elemento per la klavoj MAJUSKLIGA + TABA aŭ SAGO MALDEKSTREN. Premu la SPACETklavon aŭ ENENklavon por selekti la elementon en la redaktilo."}]},
-{name:"Komandoj",items:[{name:"Komando malfari",legend:"Premu ${undo}"},{name:"Komando refari",legend:"Premu ${redo}"},{name:"Komando grasa",legend:"Premu ${bold}"},{name:"Komando kursiva",legend:"Premu ${italic}"},{name:"Komando substreki",legend:"Premu ${underline}"},{name:"Komando ligilo",legend:"Premu ${link}"},{name:"Komando faldi la ilbreton",legend:"Premu ${toolbarCollapse}"},{name:"Komando por atingi la antaŭan fokusan spacon",legend:"Press ${accessPreviousSpace} por atingi la plej proksiman neatingeblan fokusan spacon antaŭ la kursoro, ekzemple : du kuntuŝiĝajn HR elementojn. Ripetu la klavkombinaĵon por atingi malproksimajn fokusajn spacojn."},
-{name:"Komando por atingi la sekvan fokusan spacon",legend:"Press ${accessNextSpace} por atingi la plej proksiman neatingeblan fokusan spacon post la kursoro, ekzemple : du kuntuŝiĝajn HR elementojn. Ripetu la klavkombinajôn por atingi malproksimajn fokusajn spacojn"},{name:"Helpilo pri atingeblo",legend:"Premu ${a11yHelp}"}]}],backspace:"Retropaŝo",tab:"Tabo",enter:"Enigi",shift:"Registrumo",ctrl:"Stirklavo",alt:"Alt-klavo",pause:"Paŭzo",capslock:"Majuskla baskulo",escape:"Eskapa klavo",pageUp:"Antaŭa Paĝo",
-pageDown:"Sekva Paĝo",end:"Fino",home:"Hejmo",leftArrow:"Sago Maldekstren",upArrow:"Sago Supren",rightArrow:"Sago Dekstren",downArrow:"Sago Suben",insert:"Enmeti","delete":"Forigi",leftWindowKey:"Maldekstra Windows-klavo",rightWindowKey:"Dekstra Windows-klavo",selectKey:"Selektklavo",numpad0:"Nombra Klavaro 0",numpad1:"Nombra Klavaro 1",numpad2:"Nombra Klavaro 2",numpad3:"Nombra Klavaro 3",numpad4:"Nombra Klavaro 4",numpad5:"Nombra Klavaro 5",numpad6:"Nombra Klavaro 6",numpad7:"Nombra Klavaro 7",
-numpad8:"Nombra Klavaro 8",numpad9:"Nombra Klavaro 9",multiply:"Obligi",add:"Almeti",subtract:"Subtrahi",decimalPoint:"Dekuma Punkto",divide:"Dividi",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Nombra Baskulo",scrollLock:"Ruluma Baskulo",semiColon:"Punktokomo",equalSign:"Egalsigno",comma:"Komo",dash:"Haltostreko",period:"Punkto",forwardSlash:"Oblikvo",graveAccent:"Malakuto",openBracket:"Malferma Krampo",backSlash:"Retroklino",closeBracket:"Ferma Krampo",
-singleQuote:"Citilo"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/es.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/es.js
deleted file mode 100644
index eb30d5ee..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/es.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","es",{title:"Instrucciones de accesibilidad",contents:"Ayuda. Para cerrar presione ESC.",legend:[{name:"General",items:[{name:"Barra de herramientas del editor",legend:'Presiona ${toolbarFocus} para navegar por la barra de herramientas. Para moverse por los distintos grupos de herramientas usa las teclas TAB y MAY-TAB. Para moverse por las distintas herramientas usa FLECHA DERECHA o FECHA IZQUIERDA. Presiona "espacio" o "intro" para activar la herramienta.'},{name:"Editor de diálogo",
-legend:"Dentro de un cuadro de diálogo, presione la tecla TAB para desplazarse al campo siguiente del cuadro de diálogo, pulse SHIFT + TAB para desplazarse al campo anterior, pulse ENTER para presentar cuadro de diálogo, pulse la tecla ESC para cancelar el diálogo. Para los diálogos que tienen varias páginas, presione ALT + F10 para navegar a la pestaña de la lista. Luego pasar a la siguiente pestaña con TAB o FLECHA DERECHA. Para ir a la ficha anterior con SHIFT + TAB o FLECHA IZQUIERDA. Presione ESPACIO o ENTRAR para seleccionar la página de ficha."},
-{name:"Editor del menú contextual",legend:"Presiona ${contextMenu} o TECLA MENÚ para abrir el menú contextual. Entonces muévete a la siguiente opción del menú con TAB o FLECHA ABAJO. Muévete a la opción previa con SHIFT + TAB o FLECHA ARRIBA. Presiona ESPACIO o ENTER para seleccionar la opción del menú. Abre el submenú de la opción actual con ESPACIO o ENTER o FLECHA DERECHA. Regresa al elemento padre del menú con ESC o FLECHA IZQUIERDA. Cierra el menú contextual con ESC."},{name:"Lista del Editor",
-legend:"Dentro de una lista, te mueves al siguiente elemento de la lista con TAB o FLECHA ABAJO. Te mueves al elemento previo de la lista con SHIFT + TAB o FLECHA ARRIBA. Presiona ESPACIO o ENTER para elegir la opción de la lista. Presiona ESC para cerrar la lista."},{name:"Barra de Ruta del Elemento en el Editor",legend:"Presiona ${elementsPathFocus} para navegar a los elementos de la barra de ruta. Te mueves al siguiente elemento botón con TAB o FLECHA DERECHA. Te mueves al botón previo con SHIFT + TAB o FLECHA IZQUIERDA. Presiona ESPACIO o ENTER para seleccionar el elemento en el editor."}]},
-{name:"Comandos",items:[{name:"Comando deshacer",legend:"Presiona ${undo}"},{name:"Comando rehacer",legend:"Presiona ${redo}"},{name:"Comando negrita",legend:"Presiona ${bold}"},{name:"Comando itálica",legend:"Presiona ${italic}"},{name:"Comando subrayar",legend:"Presiona ${underline}"},{name:"Comando liga",legend:"Presiona ${liga}"},{name:"Comando colapsar barra de herramientas",legend:"Presiona ${toolbarCollapse}"},{name:"Comando accesar el anterior espacio de foco",legend:"Presiona ${accessPreviousSpace} para accesar el espacio de foco no disponible más cercano anterior al cursor, por ejemplo: dos elementos HR adyacentes. Repite la combinación de teclas para alcanzar espacios de foco distantes."},
-{name:"Comando accesar el siguiente spacio de foco",legend:"Presiona ${accessNextSpace} para accesar el espacio de foco no disponible más cercano después del cursor, por ejemplo: dos elementos HR adyacentes. Repite la combinación de teclas para alcanzar espacios de foco distantes."},{name:"Ayuda de Accesibilidad",legend:"Presiona ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",
-divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/et.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/et.js
deleted file mode 100644
index 4a893b0e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/et.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","et",{title:"Accessibility Instructions",contents:"Abi sisu. Selle dialoogi sulgemiseks vajuta ESC klahvi.",legend:[{name:"Üldine",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js
deleted file mode 100644
index a0a8ae55..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","fa",{title:"دستورالعمل‌های دسترسی",contents:"راهنمای فهرست مطالب. برای بستن این کادر محاوره‌ای ESC را فشار دهید.",legend:[{name:"عمومی",items:[{name:"نوار ابزار ویرایشگر",legend:"${toolbarFocus} را برای باز کردن نوار ابزار بفشارید. با کلید Tab و Shif-Tab در مجموعه نوار ابزار بعدی و قبلی حرکت کنید. برای حرکت در کلید نوار ابزار قبلی و بعدی با کلید جهت‌نمای راست و چپ جابجا شوید. کلید Space یا Enter را برای فعال کردن کلید نوار ابزار بفشارید."},{name:"پنجره محاورهای ویرایشگر",
-legend:"در داخل یک پنجره محاورهای، کلید Tab را بفشارید تا به پنجرهی بعدی بروید، Shift+Tab برای حرکت به فیلد قبلی، فشردن Enter برای ثبت اطلاعات پنجره، فشردن Esc برای لغو پنجره محاورهای و برای پنجرههایی که چندین برگه دارند، فشردن Alt+F10 جهت رفتن به Tab-List. در نهایت حرکت به برگه بعدی با Tab یا کلید جهتنمای راست. حرکت به برگه قبلی با Shift+Tab یا کلید جهتنمای چپ. فشردن Space یا Enter برای انتخاب یک برگه."},{name:"منوی متنی ویرایشگر",legend:"${contextMenu} یا کلید برنامههای کاربردی را برای باز کردن منوی متن را بفشارید. سپس میتوانید برای حرکت به گزینه بعدی منو با کلید Tab و یا کلید جهتنمای پایین جابجا شوید. حرکت به گزینه قبلی با Shift+Tab یا کلید جهتنمای بالا. فشردن Space یا Enter برای انتخاب یک گزینه از منو. باز کردن زیر شاخه گزینه منو جاری با کلید Space یا Enter و یا کلید جهتنمای راست و چپ. بازگشت به منوی والد با کلید Esc یا کلید جهتنمای چپ. بستن منوی متن با Esc."},
-{name:"جعبه فهرست ویرایشگر",legend:"در داخل جعبه لیست، قلم دوم از اقلام لیست بعدی را با TAB و یا Arrow Down حرکت دهید. انتقال به قلم دوم از اقلام لیست قبلی را با SHIFT + TAB یا UP ARROW. کلید Space یا ENTER را برای انتخاب گزینه لیست بفشارید. کلید ESC را برای بستن جعبه لیست بفشارید."},{name:"ویرایشگر عنصر نوار راه",legend:"برای رفتن به مسیر عناصر ${elementsPathFocus} را بفشارید. حرکت به کلید عنصر بعدی با کلید Tab یا کلید جهت‌نمای راست. برگشت به کلید قبلی با Shift+Tab یا کلید جهت‌نمای چپ. فشردن Space یا Enter برای انتخاب یک عنصر در ویرایشگر."}]},
-{name:"فرمان‌ها",items:[{name:"بازگشت به آخرین فرمان",legend:"فشردن ${undo}"},{name:"انجام مجدد فرمان",legend:"فشردن ${redo}"},{name:"فرمان درشت کردن متن",legend:"فشردن ${bold}"},{name:"فرمان کج کردن متن",legend:"فشردن ${italic}"},{name:"فرمان زیرخطدار کردن متن",legend:"فشردن ${underline}"},{name:"فرمان پیوند دادن",legend:"فشردن ${link}"},{name:"بستن نوار ابزار فرمان",legend:"فشردن ${toolbarCollapse}"},{name:"دسترسی به فرمان محل تمرکز قبلی",legend:"فشردن ${accessPreviousSpace} برای دسترسی به نزدیک‌ترین فضای قابل دسترسی تمرکز قبل از هشتک، برای مثال: دو عنصر مجاور HR -خط افقی-. تکرار کلید ترکیبی برای رسیدن به فضاهای تمرکز از راه دور."},
-{name:"دسترسی به فضای دستور بعدی",legend:"برای دسترسی به نزدیک‌ترین فضای تمرکز غیر قابل دسترس، ${accessNextSpace} را پس از علامت هشتک بفشارید، برای مثال: دو عنصر مجاور HR -خط افقی-. کلید ترکیبی را برای رسیدن به فضای تمرکز تکرار کنید."},{name:"راهنمای دسترسی",legend:"فشردن ${a11yHelp}"}]}],backspace:"عقبگرد",tab:"برگه",enter:"ورود",shift:"تعویض",ctrl:"کنترل",alt:"دگرساز",pause:"توقف",capslock:"Caps Lock",escape:"گریز",pageUp:"صفحه به بالا",pageDown:"صفحه به پایین",end:"پایان",home:"خانه",leftArrow:"پیکان چپ",
-upArrow:"پیکان بالا",rightArrow:"پیکان راست",downArrow:"پیکان پایین",insert:"ورود","delete":"حذف",leftWindowKey:"کلید چپ ویندوز",rightWindowKey:"کلید راست ویندوز",selectKey:"انتخاب کلید",numpad0:"کلید شماره 0",numpad1:"کلید شماره 1",numpad2:"کلید شماره 2",numpad3:"کلید شماره 3",numpad4:"کلید شماره 4",numpad5:"کلید شماره 5",numpad6:"کلید شماره 6",numpad7:"کلید شماره 7",numpad8:"کلید شماره 8",numpad9:"کلید شماره 9",multiply:"ضرب",add:"افزودن",subtract:"تفریق",decimalPoint:"نقطه‌ی اعشار",divide:"جدا کردن",
-f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"علامت تساوی",comma:"کاما",dash:"خط تیره",period:"دوره",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js
deleted file mode 100644
index 644d45bd..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","fi",{title:"Saavutettavuus ohjeet",contents:"Ohjeen sisällöt. Sulkeaksesi tämän dialogin paina ESC.",legend:[{name:"Yleinen",items:[{name:"Editorin työkalupalkki",legend:"Paina ${toolbarFocus} siirtyäksesi työkalupalkkiin. Siirry seuraavaan ja edelliseen työkalupalkin ryhmään TAB ja SHIFT-TAB näppäimillä. Siirry seuraavaan ja edelliseen työkalupainikkeeseen käyttämällä NUOLI OIKEALLE tai NUOLI VASEMMALLE näppäimillä. Paina VÄLILYÖNTI tai ENTER näppäintä aktivoidaksesi työkalupainikkeen."},
-{name:"Editorin dialogi",legend:"Dialogin sisällä, painamalla TAB siirryt seuraavaan dialogin kenttään, painamalla SHIFT+TAB siirryt aiempaan kenttään, painamalla ENTER lähetät dialogin, painamalla ESC peruutat dialogin. Dialogeille joissa on useita välilehtiä, paina ALT+F10 siirtyäksesi välillehtilistaan. Siirtyäksesi seuraavaan välilehteen paina TAB tai NUOLI OIKEALLE. Siirry edelliseen välilehteen painamalla SHIFT+TAB tai nuoli vasemmalle. Paina VÄLILYÖNTI tai ENTER valitaksesi välilehden."},{name:"Editorin oheisvalikko",
-legend:"Paina ${contextMenu} tai SOVELLUSPAINIKETTA avataksesi oheisvalikon. Liiku seuraavaan valikon vaihtoehtoon TAB tai NUOLI ALAS näppäimillä. Siirry edelliseen vaihtoehtoon SHIFT+TAB tai NUOLI YLÖS näppäimillä. Paina VÄLILYÖNTI tai ENTER valitaksesi valikon kohdan. Avataksesi nykyisen kohdan alivalikon paina VÄLILYÖNTI tai ENTER tai NUOLI OIKEALLE painiketta. Siirtyäksesi takaisin valikon ylemmälle tasolle paina ESC tai NUOLI vasemmalle. Oheisvalikko suljetaan ESC painikkeella."},{name:"Editorin listalaatikko",
-legend:"Listalaatikon sisällä siirry seuraavaan listan kohtaan TAB tai NUOLI ALAS painikkeilla. Siirry edelliseen listan kohtaan SHIFT+TAB tai NUOLI YLÖS painikkeilla. Paina VÄLILYÖNTI tai ENTER valitaksesi listan vaihtoehdon. Paina ESC sulkeaksesi listalaatikon."},{name:"Editorin elementtipolun palkki",legend:"Paina ${elementsPathFocus} siirtyäksesi elementtipolun palkkiin. Siirry seuraavaan elementtipainikkeeseen TAB tai NUOLI OIKEALLE painikkeilla. Siirry aiempaan painikkeeseen SHIFT+TAB tai NUOLI VASEMMALLE painikkeilla. Paina VÄLILYÖNTI tai ENTER valitaksesi elementin editorissa."}]},
-{name:"Komennot",items:[{name:"Peruuta komento",legend:"Paina ${undo}"},{name:"Tee uudelleen komento",legend:"Paina ${redo}"},{name:"Lihavoi komento",legend:"Paina ${bold}"},{name:"Kursivoi komento",legend:"Paina ${italic}"},{name:"Alleviivaa komento",legend:"Paina ${underline}"},{name:"Linkki komento",legend:"Paina ${link}"},{name:"Pienennä työkalupalkki komento",legend:"Paina ${toolbarCollapse}"},{name:"Siirry aiempaan fokustilaan komento",legend:"Paina ${accessPreviousSpace} siiryäksesi lähimpään kursorin edellä olevaan saavuttamattomaan fokustilaan, esimerkiksi: kaksi vierekkäistä HR elementtiä. Toista näppäinyhdistelmää päästäksesi kauempana oleviin fokustiloihin."},
-{name:"Siirry seuraavaan fokustilaan komento",legend:"Paina ${accessPreviousSpace} siiryäksesi lähimpään kursorin jälkeen olevaan saavuttamattomaan fokustilaan, esimerkiksi: kaksi vierekkäistä HR elementtiä. Toista näppäinyhdistelmää päästäksesi kauempana oleviin fokustiloihin."},{name:"Saavutettavuus ohjeet",legend:"Paina ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numeronäppäimistö 0",numpad1:"Numeronäppäimistö 1",numpad2:"Numeronäppäimistö 2",numpad3:"Numeronäppäimistö 3",numpad4:"Numeronäppäimistö 4",numpad5:"Numeronäppäimistö 5",numpad6:"Numeronäppäimistö 6",numpad7:"Numeronäppäimistö 7",numpad8:"Numeronäppäimistö 8",
-numpad9:"Numeronäppäimistö 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Puolipiste",equalSign:"Equal Sign",comma:"Pilkku",dash:"Dash",period:"Piste",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js
deleted file mode 100644
index 15c3c4eb..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","fr-ca",{title:"Instructions d'accessibilité",contents:"Contenu de l'aide. Pour fermer cette fenêtre, appuyez sur ESC.",legend:[{name:"Général",items:[{name:"Barre d'outil de l'éditeur",legend:"Appuyer sur ${toolbarFocus} pour accéder à la barre d'outils. Se déplacer vers les groupes suivant ou précédent de la barre d'outil avec les touches TAB et SHIFT-TAB. Se déplacer vers les boutons suivant ou précédent de la barre d'outils avec les touches FLECHE DROITE et FLECHE GAUCHE. Appuyer sur la barre d'espace ou la touche ENTRER pour activer le bouton de barre d'outils."},
-{name:"Dialogue de l'éditeur",legend:"A l'intérieur d'un dialogue, appuyer sur la touche TAB pour naviguer jusqu'au champ de dalogue suivant, appuyez sur les touches SHIFT + TAB pour revenir au champ précédent, appuyez sur la touche ENTRER pour soumettre le dialogue, appuyer sur la touche ESC pour annuler le dialogue. Pour les dialogues avec plusieurs pages d'onglets, appuyer sur ALT + F10 pour naviguer jusqu'à la liste des onglets. Puis se déplacer vers l'onglet suivant avec la touche TAB ou FLECHE DROITE. Se déplacer vers l'onglet précédent avec les touches SHIFT + TAB ou FLECHE GAUCHE. Appuyer sur la barre d'espace ou la touche ENTRER pour sélectionner la page de l'onglet."},
-{name:"Menu contextuel de l'éditeur",legend:"Appuyer sur ${contextMenu} ou entrer le RACCOURCI CLAVIER pour ouvrir le menu contextuel. Puis se déplacer vers l'option suivante du menu avec les touches TAB ou FLECHE BAS. Se déplacer vers l'option précédente avec les touches SHIFT+TAB ou FLECHE HAUT. appuyer sur la BARRE D'ESPACE ou la touche ENTREE pour sélectionner l'option du menu. Oovrir le sous-menu de l'option courante avec la BARRE D'ESPACE ou les touches ENTREE ou FLECHE DROITE. Revenir à l'élément de menu parent avec les touches ESC ou FLECHE GAUCHE. Fermer le menu contextuel avec ESC."},
-{name:"Menu déroulant de l'éditeur",legend:"A l'intérieur d'une liste en menu déroulant, se déplacer vers l'élément suivant de la liste avec les touches TAB ou FLECHE BAS. Se déplacer vers l'élément précédent de la liste avec les touches SHIFT + TAB ou FLECHE HAUT. Appuyer sur la BARRE D'ESPACE ou sur ENTREE pour sélectionner l'option dans la liste. Appuyer sur ESC pour fermer le menu déroulant."},{name:"Barre d'emplacement des éléments de l'éditeur",legend:"Appuyer sur ${elementsPathFocus} pour naviguer vers la barre d'emplacement des éléments de léditeur. Se déplacer vers le bouton d'élément suivant avec les touches TAB ou FLECHE DROITE. Se déplacer vers le bouton d'élément précédent avec les touches SHIFT+TAB ou FLECHE GAUCHE. Appuyer sur la BARRE D'ESPACE ou sur ENTREE pour sélectionner l'élément dans l'éditeur."}]},
-{name:"Commandes",items:[{name:"Annuler",legend:"Appuyer sur ${undo}"},{name:"Refaire",legend:"Appuyer sur ${redo}"},{name:"Gras",legend:"Appuyer sur ${bold}"},{name:"Italique",legend:"Appuyer sur ${italic}"},{name:"Souligné",legend:"Appuyer sur ${underline}"},{name:"Lien",legend:"Appuyer sur ${link}"},{name:"Enrouler la barre d'outils",legend:"Appuyer sur ${toolbarCollapse}"},{name:"Accéder à l'objet de focus précédent",legend:"Appuyer ${accessPreviousSpace} pour accéder au prochain espace disponible avant le curseur, par exemple: deux éléments HR adjacents. Répéter la combinaison pour joindre les éléments d'espaces distantes."},
-{name:"Accéder au prochain objet de focus",legend:"Appuyer ${accessNextSpace} pour accéder au prochain espace disponible après le curseur, par exemple: deux éléments HR adjacents. Répéter la combinaison pour joindre les éléments d'espaces distantes."},{name:"Aide d'accessibilité",legend:"Appuyer sur ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",
-leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",
-f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js
deleted file mode 100644
index a7de279a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","fr",{title:"Instructions d'accessibilité",contents:"Contenu de l'aide. Pour fermer ce dialogue, appuyez sur la touche Ech (Echappement).",legend:[{name:"Général",items:[{name:"Barre d'outils de l'éditeur",legend:"Appuyer sur ${toolbarFocus} pour accéder à la barre d'outils. Se déplacer vers les groupes suivant ou précédent de la barre d'outil avec les touches TAB et SHIFT-TAB. Se déplacer vers les boutons suivant ou précédent de la barre d'outils avec les touches FLECHE DROITE et FLECHE GAUCHE. Appuyer sur la barre d'espace ou la touche ENTRER pour activer le bouton de barre d'outils."},
-{name:"Dialogue de l'éditeur",legend:"A l'intérieur d'un dialogue, appuyer sur la touche TAB pour naviguer jusqu'au champ de dalogue suivant, appuyez sur les touches SHIFT + TAB pour revenir au champ précédent, appuyez sur la touche ENTRER pour soumettre le dialogue, appuyer sur la touche ESC pour annuler le dialogue. Pour les dialogues avec plusieurs pages d'onglets, appuyer sur ALT + F10 pour naviguer jusqu'à la liste des onglets. Puis se déplacer vers l'onglet suivant avec la touche TAB ou FLECHE DROITE. Se déplacer vers l'onglet précédent avec les touches SHIFT + TAB ou FLECHE GAUCHE. Appuyer sur la barre d'espace ou la touche ENTRER pour sélectionner la page de l'onglet."},
-{name:"Menu contextuel de l'éditeur",legend:"Appuyer sur ${contextMenu} ou entrer le RACCOURCI CLAVIER pour ouvrir le menu contextuel. Puis se déplacer vers l'option suivante du menu avec les touches TAB ou FLECHE BAS. Se déplacer vers l'option précédente avec les touches SHIFT+TAB ou FLECHE HAUT. appuyer sur la BARRE D'ESPACE ou la touche ENTREE pour sélectionner l'option du menu. Oovrir le sous-menu de l'option courante avec la BARRE D'ESPACE ou les touches ENTREE ou FLECHE DROITE. Revenir à l'élément de menu parent avec les touches Ech ou FLECHE GAUCHE. Fermer le menu contextuel avec Ech."},
-{name:"Zone de liste de l'éditeur",legend:"Dans la liste en menu déroulant, se déplacer vers l'élément suivant de la liste avec les touches TAB ou FLECHE BAS. Se déplacer vers l'élément précédent de la liste avec les touches MAJ + TAB ou FLECHE HAUT. Appuyer sur la BARRE D'ESPACE ou sur ENTREE pour sélectionner l'option dans la liste. Appuyer sur ESC pour fermer le menu déroulant."},{name:"Barre d'emplacement des éléments de l'éditeur",legend:"Appuyer sur ${elementsPathFocus} pour naviguer vers la barre d'emplacement des éléments de l'éditeur. Se déplacer vers le bouton d'élément suivant avec les touches TAB ou FLECHE DROITE. Se déplacer vers le bouton d'élément précédent avec les touches MAJ+TAB ou FLECHE GAUCHE. Appuyer sur la BARRE D'ESPACE ou sur ENTREE pour sélectionner l'élément dans l'éditeur."}]},
-{name:"Commandes",items:[{name:" Annuler la commande",legend:"Appuyer sur ${undo}"},{name:"Refaire la commande",legend:"Appuyer sur ${redo}"},{name:" Commande gras",legend:"Appuyer sur ${bold}"},{name:" Commande italique",legend:"Appuyer sur ${italic}"},{name:" Commande souligné",legend:"Appuyer sur ${underline}"},{name:" Commande lien",legend:"Appuyer sur ${link}"},{name:" Commande enrouler la barre d'outils",legend:"Appuyer sur ${toolbarCollapse}"},{name:"Accéder à la précédente commande d'espace de mise au point",
-legend:"Appuyez sur ${accessPreviousSpace} pour accéder à l'espace hors d'atteinte le plus proche avant le caret, par exemple: deux éléments HR adjacents. Répétez la combinaison de touches pour atteindre les espaces de mise au point distants."},{name:"Accès à la prochaine commande de l'espace de mise au point",legend:"Appuyez sur ${accessNextSpace} pour accéder au plus proche espace de mise au point hors d'atteinte après le caret, par exemple: deux éléments HR adjacents. répétez la combinaison de touches pour atteindre les espace de mise au point distants."},
-{name:" Aide Accessibilité",legend:"Appuyer sur ${a11yHelp}"}]}],backspace:"Retour arrière",tab:"Tabulation",enter:"Entrée",shift:"Majuscule",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Verr. Maj.",escape:"Echap",pageUp:"Page supérieure",pageDown:"Page inférieure",end:"Fin",home:"Retour",leftArrow:"Flèche gauche",upArrow:"Flèche haute",rightArrow:"Flèche droite",downArrow:"Flèche basse",insert:"Insertion","delete":"Supprimer",leftWindowKey:"Touche Windows gauche",rightWindowKey:"Touche Windows droite",
-selectKey:"Touche menu",numpad0:"Pavé numérique 0",numpad1:"Pavé numérique 1",numpad2:"Pavé numérique 2",numpad3:"Pavé numérique 3",numpad4:"Pavé numérique 4",numpad5:"Pavé numérique 5",numpad6:"Pavé numérique 6",numpad7:"Pavé numérique 7",numpad8:"Pavé numérique 8",numpad9:"Pavé numérique 9",multiply:"Multiplier",add:"Addition",subtract:"Soustraire",decimalPoint:"Point décimal",divide:"Diviser",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",
-numLock:"Verrouillage numérique",scrollLock:"Arrêt défilement",semiColon:"Point virgule",equalSign:"Signe égal",comma:"Virgule",dash:"Tiret",period:"Point",forwardSlash:"Barre oblique",graveAccent:"Accent grave",openBracket:"Parenthèse ouvrante",backSlash:"Barre oblique inverse",closeBracket:"Parenthèse fermante",singleQuote:"Apostrophe"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js
deleted file mode 100644
index 37fea83b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","gl",{title:"Instrucións de accesibilidade",contents:"Axuda. Para pechar este diálogo prema ESC.",legend:[{name:"Xeral",items:[{name:"Barra de ferramentas do editor",legend:"Prema ${toolbarFocus} para navegar pola barra de ferramentas. Para moverse polos distintos grupos de ferramentas use as teclas TAB e MAIÚS+TAB. Para moverse polas distintas ferramentas use FRECHA DEREITA ou FRECHA ESQUERDA. Prema ESPAZO ou INTRO para activar o botón da barra de ferramentas."},
-{name:"Editor de diálogo",legend:"Dentro dun cadro de diálogo, prema a tecla TAB para desprazarse ao campo seguinte do cadro de diálogo, prema MAIÚS + TAB para desprazarse ao campo anterior, prema INTRO para presentar o cadro de diálogo, prema a tecla ESC para cancelar o diálogo. Para os diálogos que teñen varias páxinas, prema ALT + F10 para navegar á lapela da lista. Despois pasar á seguinte lapela con TAB ou FRECHA DEREITA. Para ir á lapela anterior con SHIFT + TAB ou FRECHA ESQUERDA. Prema ESPAZO ou INTRO para seleccionar a lapela da páxina."},
-{name:"Editor do menú contextual",legend:"Prema ${contextMenu} ou a TECLA MENÚ para abrir o menú contextual. A seguir móvase á seguinte opción do menú con TAB ou FRECHA ABAIXO. Móvase á opción anterior con MAIÚS + TAB ou FRECHA ARRIBA. Prema ESPAZO ou INTRO para seleccionar a opción do menú. Abra o submenú da opción actual con ESPAZO ou INTRO ou FRECHA DEREITA. Regrese ao elemento principal do menú con ESC ou FRECHA ESQUERDA. Peche o menú contextual con ESC."},{name:"Lista do editor",legend:"Dentro dunha lista, móvase ao seguinte elemento da lista con TAB ou FRECHA ABAIXO. Móvase ao elemento anterior da lista con MAIÚS + TAB ou FRECHA ARRIBA. Prema ESPAZO ou INTRO para escoller a opción da lista. Prema ESC para pechar a lista."},
-{name:"Barra da ruta ao elemento no editor",legend:"Prema ${elementsPathFocus} para navegar ata os elementos da barra de ruta. Móvase ao seguinte elemento botón con TAB ou FRECHA DEREITA. Móvase ao botón anterior con MAIÚS + TAB ou FRECHA ESQUERDA. Prema ESPAZO ou INTRO para seleccionar o elemento no editor."}]},{name:"Ordes",items:[{name:"Orde «desfacer»",legend:"Prema ${undo}"},{name:"Orde «refacer»",legend:"Prema ${redo}"},{name:"Orde «negra»",legend:"Prema ${bold}"},{name:"Orde «cursiva»",legend:"Prema ${italic}"},
-{name:"Orde «subliñar»",legend:"Prema ${underline}"},{name:"Orde «ligazón»",legend:"Prema ${link}"},{name:"Orde «contraer a barra de ferramentas»",legend:"Prema ${toolbarCollapse}"},{name:"Orde «acceder ao anterior espazo en foco»",legend:"Prema ${accessPreviousSpace} para acceder ao espazo máis próximo de foco inalcanzábel anterior ao cursor, por exemplo: dous elementos HR adxacentes. Repita a combinación de teclas para chegar a espazos de foco distantes."},{name:"Orde «acceder ao seguinte espazo en foco»",
-legend:"Prema ${accessNextSpace} para acceder ao espazo máis próximo de foco inalcanzábel posterior ao cursor, por exemplo: dous elementos HR adxacentes. Repita a combinación de teclas para chegar a espazos de foco distantes."},{name:"Axuda da accesibilidade",legend:"Prema ${a11yHelp}"}]}],backspace:"Ir atrás",tab:"Tabulador",enter:"Intro",shift:"Maiús",ctrl:"Ctrl",alt:"Alt",pause:"Pausa",capslock:"Bloq. Maiús",escape:"Escape",pageUp:"Páxina arriba",pageDown:"Páxina abaixo",end:"Fin",home:"Inicio",
-leftArrow:"Frecha esquerda",upArrow:"Frecha arriba",rightArrow:"Frecha dereita",downArrow:"Frecha abaixo",insert:"Inserir","delete":"Supr",leftWindowKey:"Tecla Windows esquerda",rightWindowKey:"Tecla Windows dereita",selectKey:"Escolla a tecla",numpad0:"Tec. numérico 0",numpad1:"Tec. numérico 1",numpad2:"Tec. numérico 2",numpad3:"Tec. numérico 3",numpad4:"Tec. numérico 4",numpad5:"Tec. numérico 5",numpad6:"Tec. numérico 6",numpad7:"Tec. numérico 7",numpad8:"Tec. numérico 8",numpad9:"Tec. numérico 9",
-multiply:"Multiplicar",add:"Sumar",subtract:"Restar",decimalPoint:"Punto decimal",divide:"Dividir",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Bloq. num.",scrollLock:"Bloq. despraz.",semiColon:"Punto e coma",equalSign:"Signo igual",comma:"Coma",dash:"Guión",period:"Punto",forwardSlash:"Barra inclinada",graveAccent:"Acento grave",openBracket:"Abrir corchete",backSlash:"Barra invertida",closeBracket:"Pechar corchete",singleQuote:"Comiña simple"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js
deleted file mode 100644
index 2982b4f7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","gu",{title:"એક્ક્ષેબિલિટી ની વિગતો",contents:"હેલ્પ. આ બંધ કરવા ESC દબાવો.",legend:[{name:"જનરલ",items:[{name:"એડિટર ટૂલબાર",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"એડિટર ડાયલોગ",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"કમાંડસ",items:[{name:"અન્ડું કમાંડ",legend:"$ દબાવો {undo}"},{name:"ફરી કરો કમાંડ",legend:"$ દબાવો {redo}"},{name:"બોલ્દનો કમાંડ",legend:"$ દબાવો {bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/he.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/he.js
deleted file mode 100644
index 6be2191c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/he.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","he",{title:"הוראות נגישות",contents:"הוראות נגישות. לסגירה לחץ אסקייפ (ESC).",legend:[{name:"כללי",items:[{name:"סרגל הכלים",legend:"לחץ על ${toolbarFocus} כדי לנווט לסרגל הכלים. עבור לכפתור הבא עם מקש הטאב (TAB) או חץ שמאלי. עבור לכפתור הקודם עם מקש השיפט (SHIFT) + טאב (TAB) או חץ ימני. לחץ רווח או אנטר (ENTER) כדי להפעיל את הכפתור הנבחר."},{name:"דיאלוגים (חלונות תשאול)",legend:"בתוך דיאלוג, לחץ טאב (TAB) כדי לנווט לשדה הבא, לחץ שיפט (SHIFT) + טאב (TAB) כדי לנווט לשדה הקודם, לחץ אנטר (ENTER) כדי לשלוח את הדיאלוג, לחץ אסקייפ (ESC) כדי לבטל. בתוך דיאלוגים בעלי מספר טאבים (לשוניות), לחץ אלט (ALT) + F10 כדי לנווט לשורת הטאבים. נווט לטאב הבא עם טאב (TAB) או חץ שמאלי. עבור לטאב הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי להיכנס לטאב."},
-{name:"תפריט ההקשר (Context Menu)",legend:"לחץ ${contextMenu} או APPLICATION KEYכדי לפתוח את תפריט ההקשר. עבור לאפשרות הבאה עם טאב (TAB) או חץ למטה. עבור לאפשרות הקודמת עם שיפט (SHIFT) + טאב (TAB) או חץ למעלה. לחץ רווח או אנטר (ENTER) כדי לבחור את האפשרות. פתח את תת התפריט (Sub-menu) של האפשרות הנוכחית עם רווח או אנטר (ENTER) או חץ שמאלי. חזור לתפריט האב עם אסקייפ (ESC) או חץ שמאלי. סגור את תפריט ההקשר עם אסקייפ (ESC)."},{name:"תפריטים צפים (List boxes)",legend:"בתוך תפריט צף, עבור לפריט הבא עם טאב (TAB) או חץ למטה. עבור לתפריט הקודם עם שיפט (SHIFT) + טאב (TAB) or חץ עליון. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"עץ אלמנטים (Elements Path)",legend:"לחץ ${elementsPathFocus} כדי לנווט לעץ האלמנטים. עבור לפריט הבא עם טאב (TAB) או חץ ימני. עבור לפריט הקודם עם שיפט (SHIFT) + טאב (TAB) או חץ שמאלי. לחץ רווח או אנטר (ENTER) כדי לבחור את האלמנט בעורך."}]},{name:"פקודות",items:[{name:" ביטול צעד אחרון",legend:"לחץ ${undo}"},{name:" חזרה על צעד אחרון",legend:"לחץ ${redo}"},{name:" הדגשה",legend:"לחץ ${bold}"},{name:" הטייה",legend:"לחץ ${italic}"},{name:" הוספת קו תחתון",legend:"לחץ ${underline}"},{name:" הוספת לינק",
-legend:"לחץ ${link}"},{name:" כיווץ סרגל הכלים",legend:"לחץ ${toolbarCollapse}"},{name:"גישה למיקום המיקוד הקודם",legend:"לחץ ${accessPreviousSpace} כדי לגשת למיקום המיקוד הלא-נגיש הקרוב לפני הסמן, למשל בין שני אלמנטים סמוכים מסוג HR. חזור על צירוף מקשים זה כדי להגיע למקומות מיקוד רחוקים יותר."},{name:"גישה למיקום המיקוד הבא",legend:"לחץ ${accessNextSpace} כדי לגשת למיקום המיקוד הלא-נגיש הקרוב אחרי הסמן, למשל בין שני אלמנטים סמוכים מסוג HR. חזור על צירוף מקשים זה כדי להגיע למקומות מיקוד רחוקים יותר."},
-{name:" הוראות נגישות",legend:"לחץ ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"חץ שמאלה",upArrow:"חץ למעלה",rightArrow:"חץ ימינה",downArrow:"חץ למטה",insert:"הכנס","delete":"מחק",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"בחר מקש",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",
-numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"הוסף",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"סלאש",graveAccent:"Grave Accent",
-openBracket:"Open Bracket",backSlash:"סלאש הפוך",closeBracket:"Close Bracket",singleQuote:"ציטוט יחיד"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js
deleted file mode 100644
index 2e50a82a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","hi",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"सामान्य",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js
deleted file mode 100644
index 3cf43663..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","hr",{title:"Upute dostupnosti",contents:"Sadržaj pomoći. Za zatvaranje pritisnite ESC.",legend:[{name:"Općenito",items:[{name:"Alatna traka",legend:"Pritisni ${toolbarFocus} za navigaciju do alatne trake. Pomicanje do prethodne ili sljedeće alatne grupe vrši se pomoću SHIFT-TAB i TAB. Pomicanje do prethodnog ili sljedećeg gumba u alatnoj traci vrši se pomoću lijeve i desne strelice kursora. Pritisnite SPACE ili ENTER za aktivaciju alatne trake."},{name:"Dijalog",
-legend:"Unutar dijaloga, pritisnite TAB za navigaciju do sljedećeg polja, pritisnite SHIFT + TAB za vraćanje na prethodno polje, pritisnite ENTER za slanje dijaloga ili ESC za zatvaranje dijaloga. Za dijaloge koji imaju višestruke kartice, pritisnite ALT + F10 za na navigaciju i zatim TAB ili lijeva strelica kursora ili SHIFT + TAB i desna strelica kursora. SPACE ili ENTER odabiru karticu."},{name:"Kontekstni izbornik",legend:"Pritisnite ${contextMenu} ili APPLICATION tipku za otvaranje kontekstnog izbornika. Pomicanje se vrši TAB ili strelicom kursora prema dolje ili SHIFT+TAB ili strelica kursora prema gore. SPACE ili ENTER odabiru opciju izbornika. Otvorite podizbornik trenutne opcije sa SPACE, ENTER ili desna strelica kursora. Povratak na prethodni izbornik vrši se sa ESC ili lijevom strelicom kursora. Zatvaranje se vrši pritiskom na tipku ESC."},
-{name:"Lista",legend:"Unutar list-boxa, pomicanje na sljedeću stavku vrši se sa TAB ili strelica kursora prema dolje. Na prethodnu sa SHIFT + TAB ili strelica prema gore. Pritiskom na SPACE ili ENTER odabire se stavka ili ESC za zatvaranje."},{name:"Traka putanje elemenata",legend:"Pritisnite ${elementsPathFocus} za navigaciju po putanji elemenata. Pritisnite TAB ili desnu strelicu kursora za pomicanje na sljedeći element ili SHIFT + TAB ili lijeva strelica kursora za pomicanje na prethodni element. Pritiskom na SPACE ili ENTER vrši se odabir elementa."}]},
-{name:"Naredbe",items:[{name:"Vrati naredbu",legend:"Pritisni ${undo}"},{name:"Ponovi naredbu",legend:"Pritisni ${redo}"},{name:"Bold naredba",legend:"Pritisni ${bold}"},{name:"Italic naredba",legend:"Pritisni ${italic}"},{name:"Underline naredba",legend:"Pritisni ${underline}"},{name:"Link naredba",legend:"Pritisni ${link}"},{name:"Smanji alatnu traku naredba",legend:"Pritisni ${toolbarCollapse}"},{name:"Access previous focus space naredba",legend:"Pritisni ${accessPreviousSpace} za pristup najbližem nedostupnom razmaku prije kursora, npr.: dva spojena HR elementa. Ponovnim pritiskom dohvatiti će se sljedeći nedostupni razmak."},
-{name:"Access next focus space naredba",legend:"Pritisni ${accessNextSpace} za pristup najbližem nedostupnom razmaku nakon kursora, npr.: dva spojena HR elementa. Ponovnim pritiskom dohvatiti će se sljedeći nedostupni razmak."},{name:"Pomoć za dostupnost",legend:"Pritisni ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",
-upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",
-f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js
deleted file mode 100644
index 41d64897..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","hu",{title:"Kisegítő utasítások",contents:"Súgó tartalmak. A párbeszédablak bezárásához nyomjon ESC-et.",legend:[{name:"Általános",items:[{name:"Szerkesztő Eszköztár",legend:"Nyomjon ${toolbarFocus} hogy kijelölje az eszköztárat. A következő és előző eszköztár csoporthoz a TAB és SHIFT TAB-al juthat el. A következő és előző eszköztár gombhoz a BAL NYÍL vagy JOBB NYÍL gombbal juthat el. Nyomjon SPACE-t vagy ENTER-t hogy aktiválja az eszköztár gombot."},{name:"Szerkesző párbeszéd ablak",
-legend:"Párbeszédablakban nyomjon TAB-ot a következő párbeszédmezőhöz ugráshoz, nyomjon SHIFT + TAB-ot az előző mezőhöz ugráshoz, nyomjon ENTER-t a párbeszédablak elfogadásához, nyomjon ESC-et a párbeszédablak elvetéséhez. Azokhoz a párbeszédablakokhoz, amik több fület tartalmaznak, nyomjon ALT + F10-et hogy a fülekre ugorjon. Ezután a TAB-al vagy a JOBB NYÍLLAL a következő fülre ugorhat. Az előző fülre ugráshoz használja a SHIFT + TAB-ot vagy a BAL NYILAT. Nyomjon SPACE-t vagy ENTER-t hogy kijelölje a fület."},
-{name:"Szerkesztő helyi menü",legend:"Nyomjon ${contextMenu}-t vagy ALKALMAZÁS BILLENTYŰT a helyi menü megnyitásához. Ezután a következő menüpontra léphet a TAB vagy LEFELÉ NYÍLLAL. Az előző opciót a SHIFT+TAB vagy FELFELÉ NYÍLLAL érheti el. Nyomjon SPACE-t vagy ENTER-t a menüpont kiválasztásához. A jelenlegi menüpont almenüjének megnyitásához nyomjon SPACE-t vagy ENTER-t, vagy JOBB NYILAT. A főmenühöz való visszatéréshez nyomjon ESC-et vagy BAL NYILAT. A helyi menü bezárása az ESC billentyűvel lehetséges."},
-{name:"Szerkesztő lista",legend:"A listán belül a következő elemre a TAB vagy LEFELÉ NYÍLLAL mozoghat. Az előző elem kiválasztásához nyomjon SHIFT+TAB-ot vagy FELFELÉ NYILAT. Nyomjon SPACE-t vagy ENTER-t az elem kiválasztásához. Az ESC billentyű megnyomásával bezárhatja a listát."},{name:"Szerkesztő elem utak sáv",legend:"Nyomj ${elementsPathFocus} hogy kijelöld a elemek út sávját. A következő elem gombhoz a TAB-al vagy a JOBB NYÍLLAL juthatsz el. Az előző gombhoz a SHIFT+TAB vagy BAL NYÍLLAL mehetsz. A SPACE vagy ENTER billentyűvel kiválaszthatod az elemet a szerkesztőben."}]},
-{name:"Parancsok",items:[{name:"Parancs visszavonása",legend:"Nyomj ${undo}"},{name:"Parancs megismétlése",legend:"Nyomjon ${redo}"},{name:"Félkövér parancs",legend:"Nyomjon ${bold}"},{name:"Dőlt parancs",legend:"Nyomjon ${italic}"},{name:"Aláhúzott parancs",legend:"Nyomjon ${underline}"},{name:"Link parancs",legend:"Nyomjon ${link}"},{name:"Szerkesztősáv összecsukása parancs",legend:"Nyomjon ${toolbarCollapse}"},{name:"Hozzáférés az előző fókusz helyhez parancs",legend:"Nyomj ${accessNextSpace} hogy hozzáférj a legközelebbi elérhetetlen fókusz helyhez a hiányjel előtt, például: két szomszédos HR elemhez. Ismételd meg a billentyűkombinációt hogy megtaláld a távolabbi fókusz helyeket."},
-{name:"Hozzáférés a következő fókusz helyhez parancs",legend:"Nyomj ${accessNextSpace} hogy hozzáférj a legközelebbi elérhetetlen fókusz helyhez a hiányjel után, például: két szomszédos HR elemhez. Ismételd meg a billentyűkombinációt hogy megtaláld a távolabbi fókusz helyeket."},{name:"Kisegítő súgó",legend:"Nyomjon ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"balra nyíl",upArrow:"felfelé nyíl",rightArrow:"jobbra nyíl",downArrow:"lefelé nyíl",insert:"Insert","delete":"Delete",leftWindowKey:"bal Windows-billentyű",rightWindowKey:"jobb Windows-billentyű",selectKey:"Billentyű választása",numpad0:"Számbillentyűk 0",numpad1:"Számbillentyűk 1",numpad2:"Számbillentyűk 2",numpad3:"Számbillentyűk 3",numpad4:"Számbillentyűk 4",numpad5:"Számbillentyűk 5",numpad6:"Számbillentyűk 6",numpad7:"Számbillentyűk 7",numpad8:"Számbillentyűk 8",
-numpad9:"Számbillentyűk 9",multiply:"Szorzás",add:"Hozzáadás",subtract:"Kivonás",decimalPoint:"Tizedespont",divide:"Osztás",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Pontosvessző",equalSign:"Egyenlőségjel",comma:"Vessző",dash:"Kötőjel",period:"Pont",forwardSlash:"Perjel",graveAccent:"Visszafelé dőlő ékezet",openBracket:"Nyitó szögletes zárójel",backSlash:"fordított perjel",closeBracket:"Záró szögletes zárójel",
-singleQuote:"szimpla idézőjel"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/id.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/id.js
deleted file mode 100644
index bf14b8a3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/id.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","id",{title:"Accessibility Instructions",contents:"Bantuan. Tekan ESC untuk menutup dialog ini.",legend:[{name:"Umum",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/it.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/it.js
deleted file mode 100644
index 4166252b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/it.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","it",{title:"Istruzioni di Accessibilità",contents:"Contenuti di Aiuto. Per chiudere questa finestra premi ESC.",legend:[{name:"Generale",items:[{name:"Barra degli strumenti Editor",legend:"Premi ${toolbarFocus} per navigare fino alla barra degli strumenti. Muoviti tra i gruppi della barra degli strumenti con i tasti Tab e Maiusc-Tab. Spostati tra il successivo ed il precedente pulsante della barra degli strumenti usando le frecce direzionali Destra e Sinistra. Premi Spazio o Invio per attivare il pulsante della barra degli strumenti."},
-{name:"Finestra Editor",legend:"All'interno di una finestra di dialogo, premi Tab per navigare fino al campo successivo della finestra di dialogo, premi Maiusc-Tab per tornare al campo precedente, premi Invio per inviare la finestra di dialogo, premi Esc per uscire. Per le finestre che hanno schede multiple, premi Alt+F10 per navigare nella lista delle schede. Quindi spostati alla scheda successiva con il tasto Tab oppure con la Freccia Destra. Torna alla scheda precedente con Maiusc+Tab oppure con la Freccia Sinistra. Premi Spazio o Invio per scegliere la scheda."},
-{name:"Menù contestuale Editor",legend:"Premi ${contextMenu} o TASTO APPLICAZIONE per aprire il menu contestuale. Dunque muoviti all'opzione successiva del menu con il tasto TAB o con la Freccia Sotto. Muoviti all'opzione precedente con MAIUSC+TAB o con Freccia Sopra. Premi SPAZIO o INVIO per scegliere l'opzione di menu. Apri il sottomenu dell'opzione corrente con SPAZIO o INVIO oppure con la Freccia Destra. Torna indietro al menu superiore con ESC oppure Freccia Sinistra. Chiudi il menu contestuale con ESC."},
-{name:"Box Lista Editor",legend:"Dentro un box-lista, muoviti al prossimo elemento della lista con TAB o con la Freccia direzionale giù. Spostati all'elemento precedente con MAIUSC+TAB oppure con Freccia direzionale sopra. Premi SPAZIO o INVIO per scegliere l'opzione della lista. Premi ESC per chiudere il box-lista."},{name:"Barra percorso elementi editor",legend:"Premi ${elementsPathFocus} per navigare tra gli elementi della barra percorso. Muoviti al prossimo pulsante di elemento con TAB o la Freccia direzionale destra. Muoviti al pulsante precedente con MAIUSC+TAB o la Freccia Direzionale Sinistra. Premi SPAZIO o INVIO per scegliere l'elemento nell'editor."}]},
-{name:"Comandi",items:[{name:" Annulla comando",legend:"Premi ${undo}"},{name:" Ripeti comando",legend:"Premi ${redo}"},{name:" Comando Grassetto",legend:"Premi ${bold}"},{name:" Comando Corsivo",legend:"Premi ${italic}"},{name:" Comando Sottolineato",legend:"Premi ${underline}"},{name:" Comando Link",legend:"Premi ${link}"},{name:" Comando riduci barra degli strumenti",legend:"Premi ${toolbarCollapse}"},{name:"Comando di accesso al precedente spazio di focus",legend:"Premi ${accessPreviousSpace} per accedere il più vicino spazio di focus non raggiungibile prima del simbolo caret, per esempio due elementi HR adiacenti. Ripeti la combinazione di tasti per raggiungere spazi di focus distanti."},
-{name:"Comando di accesso al prossimo spazio di focus",legend:"Premi ${accessNextSpace} per accedere il più vicino spazio di focus non raggiungibile dopo il simbolo caret, per esempio due elementi HR adiacenti. Ripeti la combinazione di tasti per raggiungere spazi di focus distanti."},{name:" Aiuto Accessibilità",legend:"Premi ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Invio",shift:"Maiusc",ctrl:"Ctrl",alt:"Alt",pause:"Pausa",capslock:"Bloc Maiusc",escape:"Esc",pageUp:"Pagina sù",pageDown:"Pagina giù",
-end:"Fine",home:"Inizio",leftArrow:"Freccia sinistra",upArrow:"Freccia su",rightArrow:"Freccia destra",downArrow:"Freccia giù",insert:"Ins","delete":"Canc",leftWindowKey:"Tasto di Windows sinistro",rightWindowKey:"Tasto di Windows destro",selectKey:"Tasto di selezione",numpad0:"0 sul tastierino numerico",numpad1:"1 sul tastierino numerico",numpad2:"2 sul tastierino numerico",numpad3:"3 sul tastierino numerico",numpad4:"4 sul tastierino numerico",numpad5:"5 sul tastierino numerico",numpad6:"6 sul tastierino numerico",
-numpad7:"7 sul tastierino numerico",numpad8:"8 sul tastierino numerico",numpad9:"9 sul tastierino numerico",multiply:"Moltiplicazione",add:"Più",subtract:"Sottrazione",decimalPoint:"Punto decimale",divide:"Divisione",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Bloc Num",scrollLock:"Bloc Scorr",semiColon:"Punto-e-virgola",equalSign:"Segno di uguale",comma:"Virgola",dash:"Trattino",period:"Punto",forwardSlash:"Barra",graveAccent:"Accento grave",
-openBracket:"Parentesi quadra aperta",backSlash:"Barra rovesciata",closeBracket:"Parentesi quadra chiusa",singleQuote:"Apostrofo"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js
deleted file mode 100644
index 4a6b4c7a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ja",{title:"ユーザー補助の説明",contents:"ヘルプ このダイアログを閉じるには ESCを押してください。",legend:[{name:"全般",items:[{name:"エディターツールバー",legend:"${toolbarFocus} を押すとツールバーのオン/オフ操作ができます。カーソルをツールバーのグループで移動させるにはTabかSHIFT+Tabを押します。グループ内でカーソルを移動させるには、右カーソルか左カーソルを押します。スペースキーやエンターを押すとボタンを有効/無効にすることができます。"},{name:"編集ダイアログ",legend:"ダイヤログ内では、ダイアログの次の選択肢に移動するにはTabを押します。前の選択肢に移動するには、SHIFT+Tabを押します。ダイアログを決定するには、ENTERを押します。ESCでダイアログをキャンセルできます。複数のタブがあるダイアログではタブリストを操作するにはALT+F10を押します。次のタブに移動するにはTabか右カーソル、前のタブに戻るにはSHIFT+Tabか左カーソルです。タブページを決定するにはスペースもしくは、ENTERキーを押してください。"},
-{name:"エディターのメニュー",legend:"${contextMenu} キーかAPPLICATION KEYを押すとコンテキストメニューが開きます。Tabか下カーソルでメニューのオプション選択が下に移動します。戻るには、SHIFT+Tabか上カーソルです。スペースもしくはENTERキーでメニューオプションを決定できます。現在選んでいるオプションのサブメニューを開くには、スペース、もしくは右カーソルを押します。サブメニューから親メニューに戻るには、ESCか左カーソルを押してください。ESCでコンテキストメニュー自体をキャンセルできます。"},{name:"エディターリストボックス",legend:"リストボックス内で移動するには、Tabか下カーソルで次のアイテムへ移動します。SHIFT+Tabで前のアイテムに戻ります。リストのオプションを選択するには、スペースもしくは、ENTERを押してください。リストボックスを閉じるには、ESCを押してください。"},{name:"エディター要素パスバー",legend:"${elementsPathFocus} を押すとエレメントパスバーを操作出来ます。Tabか右カーソルで次のエレメントを選択できます。前のエレメントを選択するには、SHIFT+Tabか左カーソルです。スペースもしくは、ENTERでエディタ内の対象エレメントを選択出来ます。"}]},
-{name:"コマンド",items:[{name:"元に戻す",legend:"${undo} をクリック"},{name:"やり直し",legend:"${redo} をクリック"},{name:"太字",legend:"${bold} をクリック"},{name:"斜体 ",legend:"${italic} をクリック"},{name:"下線",legend:"${underline} をクリック"},{name:"リンク",legend:"${link} をクリック"},{name:"ツールバーを縮める",legend:"${toolbarCollapse} をクリック"},{name:"前のカーソル移動のできないポイントへ",legend:"${accessPreviousSpace} を押すとカーソルより前にあるカーソルキーで入り込めないスペースへ移動できます。例えば、HRエレメントが2つ接している場合などです。離れた場所へは、複数回キーを押します。"},{name:"次のカーソル移動のできないポイントへ",legend:"${accessNextSpace} を押すとカーソルより後ろにあるカーソルキーで入り込めないスペースへ移動できます。例えば、HRエレメントが2つ接している場合などです。離れた場所へは、複数回キーを押します。"},
-{name:"ユーザー補助ヘルプ",legend:"${a11yHelp} をクリック"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"左矢印",upArrow:"上矢印",rightArrow:"右矢印",downArrow:"下矢印",insert:"Insert","delete":"Delete",leftWindowKey:"左Windowキー",rightWindowKey:"右のWindowキー",selectKey:"Select",numpad0:"Num 0",numpad1:"Num 1",numpad2:"Num 2",numpad3:"Num 3",numpad4:"Num 4",numpad5:"Num 5",
-numpad6:"Num 6",numpad7:"Num 7",numpad8:"Num 8",numpad9:"Num 9",multiply:"掛ける",add:"足す",subtract:"引く",decimalPoint:"小数点",divide:"割る",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"セミコロン",equalSign:"イコール記号",comma:"カンマ",dash:"ダッシュ",period:"ピリオド",forwardSlash:"フォワードスラッシュ",graveAccent:"グレイヴアクセント",openBracket:"開きカッコ",backSlash:"バックスラッシュ",closeBracket:"閉じカッコ",singleQuote:"シングルクォート"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/km.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/km.js
deleted file mode 100644
index 649e5054..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/km.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","km",{title:"Accessibility Instructions",contents:"មាតិកា​ជំនួយ។ ដើម្បី​បិទ​ផ្ទាំង​នេះ សូម​ចុច ESC ។",legend:[{name:"ទូទៅ",items:[{name:"របារ​ឧបករណ៍​កម្មវិធី​និពន្ធ",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"ផ្ទាំង​កម្មវិធីនិពន្ធ",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"ម៉ីនុយបរិបទអ្នកកែសម្រួល",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"ប្រអប់បញ្ជីអ្នកកែសម្រួល",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"ពាក្យបញ្ជា",items:[{name:"ការ​បញ្ជា​មិនធ្វើវិញ",legend:"ចុច ${undo}"},{name:"ការបញ្ជា​ធ្វើវិញ",legend:"ចុច ${redo}"},{name:"ការបញ្ជា​អក្សរ​ដិត",legend:"ចុច ${bold}"},{name:"ការបញ្ជា​អក្សរ​ទ្រេត",legend:"ចុច ${italic}"},{name:"ពាក្យបញ្ជា​បន្ទាត់​ពីក្រោម",
-legend:"ចុច ${underline}"},{name:"ពាក្យបញ្ជា​តំណ",legend:"ចុច ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:"ជំនួយ​ពី​ភាព​ងាយស្រួល",legend:"ជួយ ${a11yHelp}"}]}],backspace:"លុបថយក្រោយ",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"ផ្អាក",capslock:"Caps Lock",escape:"ចាកចេញ",pageUp:"ទំព័រ​លើ",pageDown:"ទំព័រ​ក្រោម",end:"ចុង",home:"ផ្ទះ",leftArrow:"ព្រួញ​ឆ្វេង",upArrow:"ព្រួញ​លើ",rightArrow:"ព្រួញ​ស្ដាំ",downArrow:"ព្រួញ​ក្រោម",insert:"បញ្ចូល","delete":"លុប",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"ជ្រើស​គ្រាប់​ចុច",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"គុណ",add:"បន្ថែម",subtract:"ដក",decimalPoint:"ចំណុចទសភាគ",divide:"ចែក",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"បិទ​រំកិល",semiColon:"ចុច​ក្បៀស",equalSign:"សញ្ញា​អឺរ៉ូ",comma:"ក្បៀស",dash:"Dash",period:"ចុច",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",
-openBracket:"តង្កៀប​បើក",backSlash:"Backslash",closeBracket:"តង្កៀប​បិទ",singleQuote:"បន្តក់​មួយ"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js
deleted file mode 100644
index 8337ee88..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ko",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"일반",items:[{name:"편집기 툴바",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"편집기 다이얼로그",legend:"다이얼로그 내부에서 TAB"},{name:"편집기 환경 메뉴",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},
-{name:"편집기 목록 박스",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},
-{name:"명령",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",
-upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",
-f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js
deleted file mode 100644
index 96412248..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ku",{title:"ڕێنمای لەبەردەستدابوون",contents:"پێکهاتەی یارمەتی. کلیك ESC بۆ داخستنی ئەم دیالۆگه.",legend:[{name:"گشتی",items:[{name:"تووڵامرازی دەستكاریكەر",legend:"کلیك ${toolbarFocus} بۆ ڕابەری تووڵامراز. بۆ گواستنەوەی پێشوو داهاتووی گرووپی تووڵامرازی داگرتنی کلیلی TAB لەگەڵ‌ SHIFT-TAB. بۆ گواستنەوەی پێشوو داهاتووی دووگمەی تووڵامرازی لەڕێی کلیلی تیری دەستی ڕاست یان کلیلی تیری دەستی چەپ. کلیکی کلیلی SPACE یان ENTER بۆ چالاککردنی دووگمەی تووڵامراز."},{name:"دیالۆگی دەستكاریكەر",
-legend:"لەهەمانکاتدا کە تۆ لەدیالۆگی, کلیکی کلیلی TAB بۆ ڕابەری خانەی دیالۆگێکی تر, داگرتنی کلیلی SHIFT + TAB بۆ گواستنەوەی بۆ خانەی پێشووتر, کلیكی کلیلی ENTER بۆ ڕازیکردنی دیالۆگەکە, کلیكی کلیلی ESC بۆ هەڵوەشاندنەوەی دیالۆگەکە. بۆ دیالۆگی لەبازدەری (تابی) زیاتر, کلیكی کلیلی ALT + F10 بۆ ڕابەری لیستی بازدەرەکان. بۆ چوونە بازدەری تابی داهاتوو کلیكی کلیلی TAB یان کلیلی تیری دەستی ڕاست. بۆچوونە بازدەری تابی پێشوو داگرتنی کلیلی SHIFT + TAB یان کلیلی تیری دەستی چەپ. کلیی کلیلی SPACE یان ENTER بۆ هه‌ڵبژاردنی بازدەر (تاب)."},
-{name:"پێڕستی سەرنووسەر",legend:"کلیك ${contextMenu} یان دوگمەی لیسته‌(Menu) بۆ کردنەوەی لیستەی دەق. بۆ چوونە هەڵبژاردەیەکی تر له‌ لیسته‌ کلیکی کلیلی TAB یان کلیلی تیری ڕوو لەخوارەوه‌ بۆ چوون بۆ هەڵبژاردەی پێشوو کلیکی کلیلی SHIFT+TAB یان کلیلی تیری ڕوو له‌ سەرەوە. داگرتنی کلیلی SPACE یان ENTER بۆ هەڵبژاردنی هەڵبژاردەی لیسته‌. بۆ کردنەوەی لقی ژێر لیسته‌ لەهەڵبژاردەی لیستە کلیکی کلیلی SPACE یان ENTER یان کلیلی تیری دەستی ڕاست. بۆ گەڕانەوه بۆ سەرەوەی لیسته‌ کلیکی کلیلی ESC یان کلیلی تیری دەستی چەپ. بۆ داخستنی لیستە کلیكی کلیلی ESC بکە."},
-{name:"لیستی سنووقی سەرنووسەر",legend:"لەناو سنوقی لیست, چۆن بۆ هەڵنبژاردەی لیستێکی تر کلیکی کلیلی TAB یان کلیلی تیری ڕوو لەخوار. چوون بۆ هەڵبژاردەی لیستی پێشوو کلیکی کلیلی SHIFT + TAB یان کلیلی تیری ڕوو لەسەرەوه‌. کلیکی کلیلی SPACE یان ENTER بۆ دیاریکردنی ‌هەڵبژاردەی لیست. کلیکی کلیلی ESC بۆ داخستنی سنوقی لیست."},{name:"تووڵامرازی توخم",legend:"کلیك ${elementsPathFocus} بۆ ڕابەری تووڵامرازی توخمەکان. چوون بۆ دوگمەی توخمێکی تر کلیکی کلیلی TAB یان کلیلی تیری دەستی ڕاست. چوون بۆ دوگمەی توخمی پێشوو کلیلی SHIFT+TAB یان کلیکی کلیلی تیری دەستی چەپ. داگرتنی کلیلی SPACE یان ENTER بۆ دیاریکردنی توخمەکه‌ لەسەرنووسه."}]},
-{name:"فەرمانەکان",items:[{name:"پووچکردنەوەی فەرمان",legend:"کلیك ${undo}"},{name:"هەڵگەڕانەوەی فەرمان",legend:"کلیك ${redo}"},{name:"فەرمانی دەقی قەڵەو",legend:"کلیك ${bold}"},{name:"فەرمانی دەقی لار",legend:"کلیك ${italic}"},{name:"فەرمانی ژێرهێڵ",legend:"کلیك ${underline}"},{name:"فەرمانی به‌ستەر",legend:"کلیك ${link}"},{name:"شاردەنەوەی تووڵامراز",legend:"کلیك ${toolbarCollapse}"},{name:"چوونەناو سەرنجدانی پێشوی فەرمانی بۆشایی",legend:"کلیک ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:"چوونەناو سەرنجدانی داهاتووی فەرمانی بۆشایی",legend:"کلیک ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:"دەستپێگەیشتنی یارمەتی",legend:"کلیك ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",
-upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",
-f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js
deleted file mode 100644
index 04d50a94..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","lt",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Bendros savybės",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js
deleted file mode 100644
index 36ad0cdb..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","lv",{title:"Pieejamības instrukcija",contents:"Palīdzības saturs. Lai aizvērtu ciet šo dialogu nospiediet ESC.",legend:[{name:"Galvenais",items:[{name:"Redaktora rīkjosla",legend:"Nospiediet ${toolbarFocus} lai pārvietotos uz rīkjoslu. Lai pārvietotos uz nākošo vai iepriekšējo rīkjoslas grupu izmantojiet pogu TAB un SHIFT+TAB. Lai pārvietotos uz nākošo vai iepriekšējo rīkjoslas pogu izmantojiet Kreiso vai Labo bultiņu. Nospiediet Atstarpi vai ENTER lai aktivizētu rīkjosla pogu."},
-{name:"Redaktora dialoga logs",legend:"Dialoga logā nospiediet pogu TAB lai pārvietotos uz nākošo dialoga loga lauku, nospiediet SHIFT+TAB lai atgrieztos iepriekšējā laukā, nospiediet ENTER lai apstiprinātu dialoga datus, nospiediet ESC lai aizvērtu šo dialogu. Dialogam kuram ir vairākas cilnes, nospiediet ALT+F10 lai pārvietotos uz nepieciešamo cilni. Lai pārvietotos uz nākošo cilni izmantojiet pogu TAB vai Labo bultiņu. Lai pārvietotos uz iepriekšējo cilni nospiediet SHIFT+TAB vai kreiso bultiņu. Nospiediet SPACE vai ENTER lai izvēlētos lapas cilni."},
-{name:"Redaktora satura izvēle",legend:"Nospiediet ${contextMenu} vai APPLICATION KEY lai atvērtu satura izvēlni. Lai pārvietotos uz nākošo izvēlnes opciju izmantojiet pogu TAB vai pogu Bultiņu uz leju. Lai pārvietotos uz iepriekšējo opciju izmantojiet SHIFT+TAB vai pogu Bultiņa uz augšu. Nospiediet SPACE vai ENTER lai izvelētos izvēlnes opciju. Atveriet tekošajā opcija apakšizvēlni ar SAPCE vai ENTER ka ari to var izdarīt ar Labo bultiņu. Lai atgrieztos atpakaļ uz sakuma izvēlni nospiediet ESC vai Kreiso bultiņu. Lai aizvērtu ciet izvēlnes saturu nospiediet ESC."},
-{name:"Redaktora saraksta lauks",legend:"Saraksta laukā, lai pārvietotos uz nākošo saraksta elementu nospiediet TAB vai pogu Bultiņa uz leju. Lai pārvietotos uz iepriekšējo saraksta elementu nospiediet SHIFT+TAB vai pogu Bultiņa uz augšu. Nospiediet SPACE vai ENTER lai izvēlētos saraksta opcijas. Nospiediet ESC lai aizvērtu saraksta lauku. "},{name:"Redaktora elementa ceļa josla",legend:"Nospiediet ${elementsPathFocus} lai pārvietotos uz elementa ceļa joslu. Lai pārvietotos uz nākošo elementa pogu izmantojiet TAB vai Labo bultiņu. Lai pārvietotos uz iepriekšējo elementa pogu izmantojiet SHIFT + TAB vai Kreiso bultiņu. Nospiediet SPACE vai ENTER lai izvēlētos elementu redaktorā."}]},
-{name:"Komandas",items:[{name:"Komanda atcelt darbību",legend:"Nospiediet ${undo}"},{name:"Komanda atkārtot darbību",legend:"Nospiediet ${redo}"},{name:"Treknraksta komanda",legend:"Nospiediet ${bold}"},{name:"Kursīva komanda",legend:"Nospiediet ${italic}"},{name:"Apakšsvītras komanda ",legend:"Nospiediet ${underline}"},{name:"Hipersaites komanda",legend:"Nospiediet ${link}"},{name:"Rīkjoslas aizvēršanas komanda",legend:"Nospiediet ${toolbarCollapse}"},{name:"Piekļūt iepriekšējai fokusa vietas komandai",
-legend:"Nospiediet ${accessPreviousSpace} lai piekļūtu tuvākajai nepieejamajai fokusa vietai pirms kursora. Piemēram: diviem blakus esošiem līnijas HR elementiem. Atkārtojiet taustiņu kombināciju lai piekļūtu pie tālākām vietām."},{name:"Piekļūt nākošā fokusa apgabala komandai",legend:"Nospiediet ${accessNextSpace} lai piekļūtu tuvākajai nepieejamajai fokusa vietai pēc kursora. Piemēram: diviem blakus esošiem līnijas HR elementiem. Atkārtojiet taustiņu kombināciju lai piekļūtu pie tālākām vietām."},
-{name:"Pieejamības palīdzība",legend:"Nospiediet ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js
deleted file mode 100644
index fa1b2ef3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","mk",{title:"Инструкции за пристапност",contents:"Содржина на делот за помош. За да го затворите овој дијалот притиснете ESC.",legend:[{name:"Општо",items:[{name:"Мени за едиторот",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Дијалот за едиторот",
-legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},
-{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},
-{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",
-upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",
-f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js
deleted file mode 100644
index d40e4d3d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","mn",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Ерөнхий",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js
deleted file mode 100644
index c86ef4ab..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","nb",{title:"Instruksjoner for tilgjengelighet",contents:"Innhold for hjelp. Trykk ESC for å lukke denne dialogen.",legend:[{name:"Generelt",items:[{name:"Verktøylinje for editor",legend:"Trykk ${toolbarFocus} for å navigere til verktøylinjen. Flytt til neste og forrige verktøylinjegruppe med TAB og SHIFT-TAB. Flytt til neste og forrige verktøylinjeknapp med HØYRE PILTAST og VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å aktivere verktøylinjeknappen."},{name:"Dialog for editor",
-legend:"Mens du er i en dialog, trykk TAB for å navigere til neste dialogfelt, press SHIFT + TAB for å flytte til forrige felt, trykk ENTER for å akseptere dialogen, trykk ESC for å avbryte dialogen. For dialoger med flere faner, trykk ALT + F10 for å navigere til listen over faner. Gå til neste fane med TAB eller HØYRE PILTAST. Gå til forrige fane med SHIFT + TAB eller VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å velge fanen."},{name:"Kontekstmeny for editor",legend:"Trykk ${contextMenu} eller MENYKNAPP for å åpne kontekstmeny. Gå til neste alternativ i menyen med TAB eller PILTAST NED. Gå til forrige alternativ med SHIFT+TAB eller PILTAST OPP. Trykk MELLOMROM eller ENTER for å velge menyalternativet. Åpne undermenyen på valgt alternativ med MELLOMROM eller ENTER eller HØYRE PILTAST. Gå tilbake til overordnet menyelement med ESC eller VENSTRE PILTAST. Lukk kontekstmenyen med ESC."},
-{name:"Listeboks for editor",legend:"I en listeboks, gå til neste alternativ i listen med TAB eller PILTAST NED. Gå til forrige alternativ i listen med SHIFT + TAB eller PILTAST OPP. Trykk MELLOMROM eller ENTER for å velge alternativet i listen. Trykk ESC for å lukke listeboksen."},{name:"Verktøylinje for elementsti",legend:"Trykk ${elementsPathFocus} for å navigere til verktøylinjen som viser elementsti. Gå til neste elementknapp med TAB eller HØYRE PILTAST. Gå til forrige elementknapp med SHIFT+TAB eller VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å velge elementet i editoren."}]},
-{name:"Hurtigtaster",items:[{name:"Angre",legend:"Trykk ${undo}"},{name:"Gjør om",legend:"Trykk ${redo}"},{name:"Fet tekst",legend:"Trykk ${bold}"},{name:"Kursiv tekst",legend:"Trykk ${italic}"},{name:"Understreking",legend:"Trykk ${underline}"},{name:"Lenke",legend:"Trykk ${link}"},{name:"Skjul verktøylinje",legend:"Trykk ${toolbarCollapse}"},{name:"Gå til forrige fokusområde",legend:"Trykk ${accessPreviousSpace} for å komme til nærmeste fokusområde før skrivemarkøren som ikke kan nås på vanlig måte, for eksempel to tilstøtende HR-elementer. Gjenta tastekombinasjonen for å komme til fokusområder lenger unna i dokumentet."},
-{name:"Gå til neste fokusområde",legend:"Trykk ${accessNextSpace} for å komme til nærmeste fokusområde etter skrivemarkøren som ikke kan nås på vanlig måte, for eksempel to tilstøtende HR-elementer. Gjenta tastekombinasjonen for å komme til fokusområder lenger unna i dokumentet."},{name:"Hjelp for tilgjengelighet",legend:"Trykk ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tabulator",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",
-pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Venstre piltast",upArrow:"Opp-piltast",rightArrow:"Høyre piltast",downArrow:"Ned-piltast",insert:"Insert","delete":"Delete",leftWindowKey:"Venstre Windows-tast",rightWindowKey:"Høyre Windows-tast",selectKey:"Select key",numpad0:"Numerisk tastatur 0",numpad1:"Numerisk tastatur 1",numpad2:"Numerisk tastatur 2",numpad3:"Numerisk tastatur 3",numpad4:"Numerisk tastatur 4",numpad5:"Numerisk tastatur 5",numpad6:"Numerisk tastatur 6",numpad7:"Numerisk tastatur 7",
-numpad8:"Numerisk tastatur 8",numpad9:"Numerisk tastatur 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semikolon",equalSign:"Likhetstegn",comma:"Komma",dash:"Bindestrek",period:"Punktum",forwardSlash:"Forover skråstrek",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Bakover skråstrek",
-closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js
deleted file mode 100644
index 21944803..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","nl",{title:"Toegankelijkheidsinstructies",contents:"Help-inhoud. Druk op ESC om dit dialoog te sluiten.",legend:[{name:"Algemeen",items:[{name:"Werkbalk tekstverwerker",legend:"Druk op ${toolbarFocus} om naar de werkbalk te navigeren. Om te schakelen naar de volgende en vorige werkbalkgroep, gebruik TAB en SHIFT+TAB. Om te schakelen naar de volgende en vorige werkbalkknop, gebruik de PIJL RECHTS en PIJL LINKS. Druk op SPATIE of ENTER om een werkbalkknop te activeren."},
-{name:"Dialoog tekstverwerker",legend:"In een dialoogvenster, druk op TAB om te navigeren naar het volgende veld. Druk op SHIFT+TAB om naar het vorige veld te navigeren. Druk op ENTER om het dialoogvenster te verzenden. Druk op ESC om het dialoogvenster te sluiten. Voor dialoogvensters met meerdere tabbladen, druk op ALT+F10 om naar de tabset te navigeren. Schakel naar het volgende tabblad met TAB of PIJL RECHTS. Schakel naar het vorige tabblad met SHIFT+TAB of PIJL LINKS. Druk op SPATIE of ENTER om het tabblad te selecteren."},
-{name:"Contextmenu tekstverwerker",legend:"Druk op ${contextMenu} of APPLICATION KEY om het contextmenu te openen. Schakel naar de volgende menuoptie met TAB of PIJL OMLAAG. Schakel naar de vorige menuoptie met SHIFT+TAB of PIJL OMHOOG. Druk op SPATIE of ENTER om een menuoptie te selecteren. Op een submenu van de huidige optie met SPATIE, ENTER of PIJL RECHTS. Ga terug naar de bovenliggende menuoptie met ESC of PIJL LINKS. Sluit het contextmenu met ESC."},{name:"Keuzelijst tekstverwerker",legend:"In een keuzelijst, schakel naar het volgende item met TAB of PIJL OMLAAG. Schakel naar het vorige item met SHIFT+TAB of PIJL OMHOOG. Druk op SPATIE of ENTER om het item te selecteren. Druk op ESC om de keuzelijst te sluiten."},
-{name:"Elementenpad werkbalk tekstverwerker",legend:"Druk op ${elementsPathFocus} om naar het elementenpad te navigeren. Om te schakelen naar het volgende element, gebruik TAB of PIJL RECHTS. Om te schakelen naar het vorige element, gebruik SHIFT+TAB or PIJL LINKS. Druk op SPATIE of ENTER om een element te selecteren in de tekstverwerker."}]},{name:"Opdrachten",items:[{name:"Ongedaan maken opdracht",legend:"Druk op ${undo}"},{name:"Opnieuw uitvoeren opdracht",legend:"Druk op ${redo}"},{name:"Vetgedrukt opdracht",
-legend:"Druk op ${bold}"},{name:"Cursief opdracht",legend:"Druk op ${italic}"},{name:"Onderstrepen opdracht",legend:"Druk op ${underline}"},{name:"Link opdracht",legend:"Druk op ${link}"},{name:"Werkbalk inklappen opdracht",legend:"Druk op ${toolbarCollapse}"},{name:"Ga naar vorige focus spatie commando",legend:"Druk ${accessPreviousSpace} om toegang te verkrijgen tot de dichtstbijzijnde onbereikbare focus spatie voor de caret, bijvoorbeeld: twee aangrenzende HR elementen. Herhaal de toetscombinatie om de verste focus spatie te bereiken."},
-{name:"Ga naar volgende focus spatie commando",legend:"Druk ${accessNextSpace} om toegang te verkrijgen tot de dichtstbijzijnde onbereikbare focus spatie na de caret, bijvoorbeeld: twee aangrenzende HR elementen. Herhaal de toetscombinatie om de verste focus spatie te bereiken."},{name:"Toegankelijkheidshulp",legend:"Druk op ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Pijl naar links",upArrow:"Pijl omhoog",rightArrow:"Pijl naar rechts",downArrow:"Pijl naar beneden",insert:"Invoegen","delete":"Verwijderen",leftWindowKey:"Linker Windows-toets",rightWindowKey:"Rechter Windows-toets",selectKey:"Selecteer toets",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Vermenigvuldigen",add:"Toevoegen",
-subtract:"Aftrekken",decimalPoint:"Decimaalteken",divide:"Delen",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Puntkomma",equalSign:"Is gelijk-teken",comma:"Komma",dash:"Koppelteken",period:"Punt",forwardSlash:"Slash",graveAccent:"Accent grave",openBracket:"Vierkant haakje openen",backSlash:"Backslash",closeBracket:"Vierkant haakje sluiten",singleQuote:"Apostrof"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/no.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/no.js
deleted file mode 100644
index 6c696647..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/no.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","no",{title:"Instruksjoner for tilgjengelighet",contents:"Innhold for hjelp. Trykk ESC for å lukke denne dialogen.",legend:[{name:"Generelt",items:[{name:"Verktøylinje for editor",legend:"Trykk ${toolbarFocus} for å navigere til verktøylinjen. Flytt til neste og forrige verktøylinjegruppe med TAB og SHIFT-TAB. Flytt til neste og forrige verktøylinjeknapp med HØYRE PILTAST og VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å aktivere verktøylinjeknappen."},{name:"Dialog for editor",
-legend:"Mens du er i en dialog, trykk TAB for å navigere til neste dialogfelt, press SHIFT + TAB for å flytte til forrige felt, trykk ENTER for å akseptere dialogen, trykk ESC for å avbryte dialogen. For dialoger med flere faner, trykk ALT + F10 for å navigere til listen over faner. Gå til neste fane med TAB eller HØYRE PILTAST. Gå til forrige fane med SHIFT + TAB eller VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å velge fanen."},{name:"Kontekstmeny for editor",legend:"Trykk ${contextMenu} eller MENYKNAPP for å åpne kontekstmeny. Gå til neste alternativ i menyen med TAB eller PILTAST NED. Gå til forrige alternativ med SHIFT+TAB eller PILTAST OPP. Trykk MELLOMROM eller ENTER for å velge menyalternativet. Åpne undermenyen på valgt alternativ med MELLOMROM eller ENTER eller HØYRE PILTAST. Gå tilbake til overordnet menyelement med ESC eller VENSTRE PILTAST. Lukk kontekstmenyen med ESC."},
-{name:"Listeboks for editor",legend:"I en listeboks, gå til neste alternativ i listen med TAB eller PILTAST NED. Gå til forrige alternativ i listen med SHIFT + TAB eller PILTAST OPP. Trykk MELLOMROM eller ENTER for å velge alternativet i listen. Trykk ESC for å lukke listeboksen."},{name:"Verktøylinje for elementsti",legend:"Trykk ${elementsPathFocus} for å navigere til verktøylinjen som viser elementsti. Gå til neste elementknapp med TAB eller HØYRE PILTAST. Gå til forrige elementknapp med SHIFT+TAB eller VENSTRE PILTAST. Trykk MELLOMROM eller ENTER for å velge elementet i editoren."}]},
-{name:"Kommandoer",items:[{name:"Angre",legend:"Trykk ${undo}"},{name:"Gjør om",legend:"Trykk ${redo}"},{name:"Fet tekst",legend:"Trykk ${bold}"},{name:"Kursiv tekst",legend:"Trykk ${italic}"},{name:"Understreking",legend:"Trykk ${underline}"},{name:"Link",legend:"Trykk ${link}"},{name:"Skjul verktøylinje",legend:"Trykk ${toolbarCollapse}"},{name:"Gå til forrige fokusområde",legend:"Trykk ${accessPreviousSpace} for å komme til nærmeste fokusområde før skrivemarkøren som ikke kan nås på vanlig måte, for eksempel to tilstøtende HR-elementer. Gjenta tastekombinasjonen for å komme til fokusområder lenger unna i dokumentet."},
-{name:"Gå til neste fokusområde",legend:"Trykk ${accessNextSpace} for å komme til nærmeste fokusområde etter skrivemarkøren som ikke kan nås på vanlig måte, for eksempel to tilstøtende HR-elementer. Gjenta tastekombinasjonen for å komme til fokusområder lenger unna i dokumentet."},{name:"Hjelp for tilgjengelighet",legend:"Trykk ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",
-end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",
-divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js
deleted file mode 100644
index 664b1276..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","pl",{title:"Instrukcje dotyczące dostępności",contents:"Zawartość pomocy. Wciśnij ESC, aby zamknąć to okno.",legend:[{name:"Informacje ogólne",items:[{name:"Pasek narzędzi edytora",legend:"Wciśnij ${toolbarFocus} aby przejść do paska narzędzi. Przejdź do następnej i poprzedniej grupy narzędzi używając TAB oraz SHIFT-TAB. Przejdź do następnego i poprzedniego narzędzia używając STRZAŁKI W PRAWO lub STRZAŁKI W LEWO. Wciśnij SPACJĘ lub ENTER, aby aktywować zaznaczone narzędzie."},
-{name:"Okno dialogowe edytora",legend:"Będąc w oknie dialogowym wciśnij TAB aby przejść do następnego pola dialogowego, wciśnij SHIFT + TAB aby przejść do poprzedniego pola, wciśnij ENTER aby wysłać dialog, wciśnij ESC aby anulować dialog. Dla okien dialogowych z wieloma zakładkami, wciśnij ALT + F10 aby przejść do listy zakładek. Gdy to zrobisz przejdź do następnej zakładki wciskając TAB lub STRZAŁKĘ W PRAWO. Przejdź do poprzedniej zakładki wciskając SHIFT + TAB lub STRZAŁKĘ W LEWO. Wciśnij SPACJĘ lub ENTER aby wybrać zakładkę."},
-{name:"Menu kontekstowe edytora",legend:"Wciśnij ${contextMenu} lub PRZYCISK APLIKACJI aby otworzyć menu kontekstowe. Przejdź do następnej pozycji menu wciskając TAB lub STRZAŁKĘ W DÓŁ. Przejdź do poprzedniej pozycji menu wciskając SHIFT + TAB lub STRZAŁKĘ W GÓRĘ. Wciśnij SPACJĘ lub ENTER aby wygrać pozycję menu. Otwórz pod-menu obecnej pozycji wciskając SPACJĘ lub ENTER lub STRZAŁKĘ W PRAWO. Wróć do pozycji nadrzędnego menu wciskając ESC lub STRZAŁKĘ W LEWO. Zamknij menu wciskając ESC."},{name:"Lista w edytorze",
-legend:"W polu listy możesz przechodzić do następnego elementu za pomocą klawisza TAB lub STRZAŁKI W DÓŁ. Poprzedni element osiągniesz za pomocą SHIFT+TAB lub STRZAŁKI W GÓRĘ. Za pomocą SPACJI lub ENTERA wybierzesz daną opcję z listy, a za pomocą klawisza ESC opuścisz listę."},{name:"Pasek ścieżki elementów edytora",legend:"Naciśnij ${elementsPathFocus} w celu przejścia do paska ścieżki elementów edytora. W celu przejścia do kolejnego elementu naciśnij klawisz Tab lub Strzałki w prawo. W celu przejścia do poprzedniego elementu naciśnij klawisze Shift+Tab lub Strzałki w lewo. By wybrać element w edytorze, użyj klawisza Spacji lub Enter."}]},
-{name:"Polecenia",items:[{name:"Polecenie Cofnij",legend:"Naciśnij ${undo}"},{name:"Polecenie Ponów",legend:"Naciśnij ${redo}"},{name:"Polecenie Pogrubienie",legend:"Naciśnij ${bold}"},{name:"Polecenie Kursywa",legend:"Naciśnij ${italic}"},{name:"Polecenie Podkreślenie",legend:"Naciśnij ${underline}"},{name:"Polecenie Wstaw/ edytuj odnośnik",legend:"Naciśnij ${link}"},{name:"Polecenie schowaj pasek narzędzi",legend:"Naciśnij ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:"Pomoc dotycząca dostępności",legend:"Naciśnij ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Strzałka w lewo",
-upArrow:"Strzałka w górę",rightArrow:"Strzałka w prawo",downArrow:"Strzałka w dół",insert:"Insert","delete":"Delete",leftWindowKey:"Lewy klawisz Windows",rightWindowKey:"Prawy klawisz Windows",selectKey:"Klawisz wyboru",numpad0:"Klawisz 0 na klawiaturze numerycznej",numpad1:"Klawisz 1 na klawiaturze numerycznej",numpad2:"Klawisz 2 na klawiaturze numerycznej",numpad3:"Klawisz 3 na klawiaturze numerycznej",numpad4:"Klawisz 4 na klawiaturze numerycznej",numpad5:"Klawisz 5 na klawiaturze numerycznej",
-numpad6:"Klawisz 6 na klawiaturze numerycznej",numpad7:"Klawisz 7 na klawiaturze numerycznej",numpad8:"Klawisz 8 na klawiaturze numerycznej",numpad9:"Klawisz 9 na klawiaturze numerycznej",multiply:"Przemnóż",add:"Plus",subtract:"Minus",decimalPoint:"Separator dziesiętny",divide:"Podziel",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Średnik",equalSign:"Znak równości",comma:"Przecinek",dash:"Pauza",
-period:"Kropka",forwardSlash:"Ukośnik prawy",graveAccent:"Akcent słaby",openBracket:"Nawias kwadratowy otwierający",backSlash:"Ukośnik lewy",closeBracket:"Nawias kwadratowy zamykający",singleQuote:"Apostrof"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js
deleted file mode 100644
index 1557459c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","pt-br",{title:"Instruções de Acessibilidade",contents:"Conteúdo da Ajuda. Para fechar este diálogo pressione ESC.",legend:[{name:"Geral",items:[{name:"Barra de Ferramentas do Editor",legend:"Pressione ${toolbarFocus} para navegar para a barra de ferramentas. Mova para o anterior ou próximo grupo de ferramentas com TAB e SHIFT-TAB. Mova para o anterior ou próximo botão com SETA PARA DIREITA or SETA PARA ESQUERDA. Pressione ESPAÇO ou ENTER para ativar o botão da barra de ferramentas."},
-{name:"Diálogo do Editor",legend:"Dentro de um diálogo, pressione TAB para navegar para o próximo campo, pressione SHIFT + TAB para mover para o campo anterior, pressione ENTER para enviar o diálogo, pressione ESC para cancelar o diálogo. Para diálogos que tem múltiplas abas, pressione ALT + F10 para navegar para a lista de abas, então mova para a próxima aba com SHIFT + TAB ou SETA PARA ESQUERDA. Pressione ESPAÇO ou ENTER para selecionar a aba."},{name:"Menu de Contexto do Editor",legend:"Pressione ${contextMenu} ou TECLA DE MENU para abrir o menu de contexto, então mova para a próxima opção com TAB ou SETA PARA BAIXO. Mova para a anterior com SHIFT+TAB ou SETA PARA CIMA. Pressione ESPAÇO ou ENTER para selecionar a opção do menu. Abra o submenu da opção atual com ESPAÇO ou ENTER ou SETA PARA DIREITA. Volte para o menu pai com ESC ou SETA PARA ESQUERDA. Feche o menu de contexto com ESC."},
-{name:"Caixa de Lista do Editor",legend:"Dentro de uma caixa de lista, mova para o próximo item com TAB ou SETA PARA BAIXO. Mova para o item anterior com SHIFT + TAB ou SETA PARA CIMA. Pressione ESPAÇO ou ENTER para selecionar uma opção na lista. Pressione ESC para fechar a caixa de lista."},{name:"Barra de Caminho do Elementos do Editor",legend:"Pressione ${elementsPathFocus} para a barra de caminho dos elementos. Mova para o próximo botão de elemento com TAB ou SETA PARA DIREITA. Mova para o botão anterior com SHIFT+TAB ou SETA PARA ESQUERDA. Pressione ESPAÇO ou ENTER para selecionar o elemento no editor."}]},
-{name:"Comandos",items:[{name:" Comando Desfazer",legend:"Pressione ${undo}"},{name:" Comando Refazer",legend:"Pressione ${redo}"},{name:" Comando Negrito",legend:"Pressione ${bold}"},{name:" Comando Itálico",legend:"Pressione ${italic}"},{name:" Comando Sublinhado",legend:"Pressione ${underline}"},{name:" Comando Link",legend:"Pressione ${link}"},{name:" Comando Fechar Barra de Ferramentas",legend:"Pressione ${toolbarCollapse}"},{name:"Acessar o comando anterior de spaço de foco",legend:"Pressione ${accessNextSpace} para acessar o espaço de foco não alcançável mais próximo antes do cursor, por exemplo: dois elementos HR adjacentes. Repita a combinação de teclas para alcançar espaços de foco distantes."},
-{name:"Acessar próximo fomando de spaço de foco",legend:"Pressione ${accessNextSpace} para acessar o espaço de foco não alcançável mais próximo após o cursor, por exemplo: dois elementos HR adjacentes. Repita a combinação de teclas para alcançar espaços de foco distantes."},{name:" Ajuda de Acessibilidade",legend:"Pressione ${a11yHelp}"}]}],backspace:"Tecla Backspace",tab:"Tecla Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",
-pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Seta à Esquerda",upArrow:"Seta à Cima",rightArrow:"Seta à Direita",downArrow:"Seta à Baixo",insert:"Insert","delete":"Delete",leftWindowKey:"Tecla do Windows Esquerda",rightWindowKey:"Tecla do Windows Direita",selectKey:"Tecla Selecionar",numpad0:"0 do Teclado Numérico",numpad1:"1 do Teclado Numérico",numpad2:"2 do Teclado Numérico",numpad3:"3 do Teclado Numérico",numpad4:"4 do Teclado Numérico",numpad5:"5 do Teclado Numérico",numpad6:"6 do Teclado Numérico",
-numpad7:"7 do Teclado Numérico",numpad8:"8 do Teclado Numérico",numpad9:"9 do Teclado Numérico",multiply:"Multiplicar",add:"Mais",subtract:"Subtrair",decimalPoint:"Ponto",divide:"Dividir",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Ponto-e-vírgula",equalSign:"Igual",comma:"Vírgula",dash:"Hífen",period:"Ponto",forwardSlash:"Barra",graveAccent:"Acento Grave",openBracket:"Abrir Conchetes",
-backSlash:"Contra-barra",closeBracket:"Fechar Colchetes",singleQuote:"Aspas Simples"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js
deleted file mode 100644
index c7cd0701..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","pt",{title:"Instruções de Acessibilidade",contents:"Conteúdos da Ajuda. Pressione em 'ESC' para fechar esta janela.",legend:[{name:"Geral",items:[{name:"Barra de Ferramentas do Editor",legend:"Clique em ${toolbarFocus} para navegar para a barra de ferramentas. Vá para o grupo da barra de ferramentas anterior e seguinte com TAB e SHIFT+TAB. Vá para o botão da barra de ferramentas anterior com a SETA DIREITA ou ESQUERDA. Pressione ESPAÇO ou ENTER para ativar o botão da barra de ferramentas."},
-{name:"Janela do Editor",legend:"Dentro de uma janela, pressione TAB para navigar para o campo da janela seguinte, pressione SHIFT + TAB para mover para o campo anterior, pressione ENTER para submeter a janela, pressione ESC para cancelar a janela. Para as janelas que têm múltiplos páginas com separadores, pressione ALT + F10 para navegar para a lista do separador. Depois mova para o seguinte separador com TAB ou SETA DIREITA. Mover para o separador anterior com SHIFT + TAB ou SETA ESQUERDA. Pressione ESPAÇO ou ENTER para selecionar o separador da página."},
-{name:"Menu de Contexto do Editor",legend:"Clique em ${contextMenu} ou TECLA APLICAÇÃO para abrir o menu de contexto. Depois vá para a opção do menu seguinte com TAB ou SETA PARA BAIXO. Vá para a opção anterior com SHIFT+TAB ou SETA PARA CIMA. Pressione ESPAÇO ou ENTER para selecionar a opção do menu. Abra o submenu da opção atual com ESPAÇO, ENTER ou SETA DIREITA. GVá para o item do menu parente com ESC ou SETA ESQUERDA. Feche o menu de contexto com ESC."},{name:"Caixa Lista Editor",legend:"Dentro da caixa da lista, vá para o itemda lista seguinte com TAB ou SETA PARA BAIXO. Move Vá parao item da lista anterior com SHIFT+TAB ou SETA PARA BAIXO. Pressione ESPAÇO ou ENTER para selecionar a opção da lista. Pressione ESC para fechar a caisa da lista."},
-{name:"Caminho Barra Elemento Editor",legend:"Clique em ${elementsPathFocus} para navegar para a barra do caminho dos elementos. Vá para o botão do elemento seguinte com TAB ou SETA DIREITA. Vá para o botão anterior com SHIFT+TAB ou SETA ESQUERDA. Pressione ESPAÇO ou ENTER para selecionar o elemento no editor."}]},{name:"Comandos",items:[{name:"Comando de Anular",legend:"Pressione ${undo}"},{name:"Comando de Refazer",legend:"Pressione ${redo}"},{name:"Comando de Negrito",legend:"Pressione ${bold}"},
-{name:"Comando de Itálico",legend:"Pressione ${italic}"},{name:"Comando de Sublinhado",legend:"Pressione ${underline}"},{name:"Comando de Hiperligação",legend:"Pressione ${link}"},{name:"Comando de Ocultar Barra de Ferramentas",legend:"Pressione ${toolbarCollapse}"},{name:"Acesso comando do espaço focus anterior",legend:"Clique em ${accessPreviousSpace} para aceder ao espaço do focos inalcançável mais perto antes do sinal de omissão, por exemplo: dois elementos HR adjacentes. Repetir a combinação da chave para alcançar os espaços dos focos distantes."},
-{name:"Acesso comando do espaço focus seguinte",legend:"Pressione ${accessNextSpace} para aceder ao espaço do focos inalcançável mais perto depois do sinal de omissão, por exemplo: dois elementos HR adjacentes. Repetir a combinação da chave para alcançar os espaços dos focos distantes."},{name:"Ajuda de Acessibilidade",legend:"Pressione ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",
-pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",
-divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js
deleted file mode 100644
index 1d1479a3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ro",{title:"Instrucțiuni de accesibilitate",contents:"Cuprins. Pentru a închide acest dialog, apăsați tasta ESC.",legend:[{name:"General",items:[{name:"Editează bara instrumente.",legend:"Apasă ${toolbarFocus} pentru a naviga prin bara de instrumente. Pentru a te mișca prin grupurile de instrumente folosește tastele TAB și SHIFT-TAB. Pentru a te mișca intre diverse instrumente folosește tastele SĂGEATĂ DREAPTA sau SĂGEATĂ STÂNGA. Apasă butonul SPAȚIU sau ENTER pentru activarea instrumentului."},
-{name:"Dialog editor",legend:"Într-un dialog, apasă TAB pentru a naviga spre câmpul următor de dialog, apasă SHIFT + TAB pentru a te duce la câmpul anterior, apasă ENTER pentru a trimite dialogul, apasă ESC pentru a anula dialogul. Pentru dialoguri care au mai multe subferestre, apasă ALT + F10 pentr a naviga în lista de subferestre. Treci la subferestrea următoare cu TAB sau SĂGEATĂ DREAPTA. Treci la subfereastra anterioară cu SHIFT + TAB sau SĂGEATĂ STÂNGA. Apasă SPAȚIU sau ENTER pentru a selecta subfereastra."},
-{name:"Editor meniu contextual",legend:"Apasă ${contextMenu} sau TASTA MENIU pentru a deschide meniul contextual. Treci la următoarea opțiune din meniu cu TAB sau SĂGEATĂ JOS. Treci la opțiunea anterioară cu SHIFT+TAB sau SĂGEATĂ SUS. Apasă SPAȚIU sau ENTER pentru a selecta opțiunea din meniu. Deschide sub-meniul opțiunii curente cu SPAȚIU sau ENTER sau SĂGEATĂ DREAPTA. Revino la elementul din meniul părinte cu ESC sau SĂGEATĂ STÂNGA. Închide meniul de context cu ESC."},{name:"Editor Casetă Listă",
-legend:"În interiorul unei liste, treci la următorull element cu TAB sau SĂGEATĂ JOS. Treci la elementul anterior din listă cu SHIFT + TAB sau SĂGEATĂ SUS. Apasă SPAȚIU sau ENTER pentru a selecta opțiunea din listă. Apasă ESC pentru a închide lista."},{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},
-{name:"Comenzi",items:[{name:" Undo command",legend:"Apasă ${undo}"},{name:"Comanda precedentă",legend:"Apasă ${redo}"},{name:"Comanda Îngroșat",legend:"Apasă ${bold}"},{name:"Comanda Inclinat",legend:"Apasă ${italic}"},{name:"Comanda Subliniere",legend:"Apasă ${underline}"},{name:"Comanda Legatură",legend:"Apasă ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",
-upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",
-f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js
deleted file mode 100644
index 0c0e31a3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ru",{title:"Горячие клавиши",contents:"Помощь. Для закрытия этого окна нажмите ESC.",legend:[{name:"Основное",items:[{name:"Панель инструментов",legend:"Нажмите ${toolbarFocus} для перехода к панели инструментов. Для перемещения между группами панели инструментов используйте TAB и SHIFT-TAB. Для перемещения между кнопками панели иструментов используйте кнопки ВПРАВО или ВЛЕВО. Нажмите ПРОБЕЛ или ENTER для запуска кнопки панели инструментов."},{name:"Диалоги",legend:"В диалоговом окне, нажмите клавишу TAB для перехода к следующему диалоговому полю, нажмите клавиши SHIFT + TAB, чтобы перейти к предыдущему полю, нажмите ENTER, чтобы отправить данные, нажмите клавишу ESC, для отмены. Для окон, которые имеют несколько вкладок, нажмите ALT + F10 для перехода к списку вкладок. Переход к следующей вкладке TAB ИЛИ ПРАВУЮ СТРЕЛКУ. Переход к предыдущей вкладке с помощью SHIFT + TAB или ЛЕВАЯ СТРЕЛКА. Нажмите ПРОБЕЛ или ENTER, чтобы выбрать вкладку."},
-{name:"Контекстное меню",legend:'Нажмите ${contextMenu} или клавишу APPLICATION, чтобы открыть контекстное меню. Затем перейдите к следующему пункту меню с помощью TAB или стрелкой "ВНИЗ". Переход к предыдущей опции - SHIFT+TAB или стрелкой "ВВЕРХ". Нажмите SPACE, или ENTER, чтобы задействовать опцию меню. Открыть подменю текущей опции - SPACE или ENTER или стрелкой "ВПРАВО". Возврат к родительскому пункту меню - ESC или стрелкой "ВЛЕВО". Закрытие контекстного меню - ESC.'},{name:"Редактор списка",
-legend:'Внутри окна списка, переход к следующему пункту списка - TAB или стрелкой "ВНИЗ". Переход к предыдущему пункту списка - SHIFT + TAB или стрелкой "ВВЕРХ". Нажмите SPACE, или ENTER, чтобы задействовать опцию списка. Нажмите ESC, чтобы закрыть окно списка.'},{name:"Путь к элементу",legend:'Нажмите ${elementsPathFocus}, чтобы перейти к панели пути элементов. Переход к следующей кнопке элемента - TAB или стрелкой "ВПРАВО". Переход к предыдущей кнопку - SHIFT+TAB или стрелкой "ВЛЕВО". Нажмите SPACE, или ENTER, чтобы выбрать элемент в редакторе.'}]},
-{name:"Команды",items:[{name:"Отменить",legend:"Нажмите ${undo}"},{name:"Повторить",legend:"Нажмите ${redo}"},{name:"Полужирный",legend:"Нажмите ${bold}"},{name:"Курсив",legend:"Нажмите ${italic}"},{name:"Подчеркнутый",legend:"Нажмите ${underline}"},{name:"Гиперссылка",legend:"Нажмите ${link}"},{name:"Свернуть панель инструментов",legend:"Нажмите ${toolbarCollapse}"},{name:"Команды доступа к предыдущему фокусному пространству",legend:'Нажмите ${accessPreviousSpace}, чтобы обратиться к ближайшему недостижимому фокусному пространству перед символом "^", например: два смежных HR элемента. Повторите комбинацию клавиш, чтобы достичь отдаленных фокусных пространств.'},
-{name:"Команды доступа к следующему фокусному пространству",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:"Справка по горячим клавишам",legend:"Нажмите ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Esc",pageUp:"Page Up",pageDown:"Page Down",end:"End",
-home:"Home",leftArrow:"Стрелка влево",upArrow:"Стрелка вверх",rightArrow:"Стрелка вправо",downArrow:"Стрелка вниз",insert:"Insert","delete":"Delete",leftWindowKey:"Левая клавиша Windows",rightWindowKey:"Правая клавиша Windows",selectKey:"Выбрать",numpad0:"Цифра 0",numpad1:"Цифра 1",numpad2:"Цифра 2",numpad3:"Цифра 3",numpad4:"Цифра 4",numpad5:"Цифра 5",numpad6:"Цифра 6",numpad7:"Цифра 7",numpad8:"Цифра 8",numpad9:"Цифра 9",multiply:"Умножить",add:"Плюс",subtract:"Вычесть",decimalPoint:"Десятичная точка",
-divide:"Делить",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Точка с запятой",equalSign:"Равно",comma:"Запятая",dash:"Тире",period:"Точка",forwardSlash:"Наклонная черта",graveAccent:"Апостроф",openBracket:"Открыть скобку",backSlash:"Обратная наклонная черта",closeBracket:"Закрыть скобку",singleQuote:"Одинарная кавычка"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/si.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/si.js
deleted file mode 100644
index b5616dd0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/si.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","si",{title:"ළඟා වියහැකි ",contents:"උදව් සඳහා අන්තර්ගතය.නික්මයෙමට ESC බොත්තම ඔබන්න",legend:[{name:"පොදු කරුණු",items:[{name:"සංස්කරණ මෙවලම් ",legend:"ඔබන්න ${මෙවලම් තීරු අවධානය} මෙවලම් තීරුවේ එහා මෙහා යෑමට.ඉදිරියට යෑමට හා ආපසු යෑමට මෙවලම් තීරුකාණ්ඩය හා TAB හා SHIFT-TAB .ඉදිරියට යෑමට හා ආපසු යෑමට මෙවලම් තීරු බොත්තම සමග RIGHT ARROW හෝ LEFT ARROW.මෙවලම් තීරු බොත්තම සක්‍රිය කර ගැනීමට SPACE හෝ ENTER බොත්තම ඔබන්න."},{name:"සංස්කරණ ",legend:"දෙබසක් තුළ, ඊළඟ දෙබස් පෙදෙසට යෑමට TAB බොත්තම ඔබන්න, කලින් පෙදෙසට යෑමට SHIFT + TAB බොත්තම ද, දෙබස් ඉදිරිපත් කිරීමට ENTER බොත්තම ද, දෙබස් නැවතීමට ESCබොත්තම ද, දෙබස් සහිත ගොනු, පිටු වැඩි සංක්‍යයාවක් ලබා ගෙනිමට,ගොනු තුළ එහාමෙහා යෑමට ALT + F10 බොත්තම් ද, ඊළඟ ගොනුවට යෑමට TAB හෝ RIGTH ARROW බොත්තම ඔබන්න. පෙර ගොනුවට යෑමට SHIFT + TAB හෝ LEFT ARROW බොත්තම් ද ,ගොනු පිටු තේරීමට SPACE හෝ ENTER බොත්තම් ද ඔබන්න."},
-{name:"සංස්කරණ අඩංගුවට ",legend:"ඔබන්න ${අන්තර්ගත මෙනුව} හෝ APPLICATION KEY අන්තර්ගත-මෙනුව විවුරතකිරීමට. ඊළඟ මෙනුව-ව්කල්පයන්ට යෑමට TAB හෝ DOWN ARROW බොත්තම ද, පෙර විකල්පයන්ටයෑමට SHIFT+TAB හෝ UP ARROW බොත්තම ද, මෙනුව-ව්කල්පයන් තේරීමට SPACE හෝ ENTER බොත්තම ද, දැනට විවුර්තව ඇති උප-මෙනුවක වීකල්ප තේරීමට SPACE හෝ ENTER හෝ RIGHT ARROW ද, නැවත පෙර ප්‍රධාන මෙනුවට යෑමට ESC හෝ LEFT ARROW බොත්තම ද. අන්තර්ගත-මෙනුව වැසීමට ESC බොත්තම ද ඔබන්න."},{name:"සංස්කරණ තේරුම් ",legend:"තේරුම් කොටුව තුළ , ඊළඟ අයිතමයට යෑමට TAB හෝ DOWN ARROW , පෙර අයිතමයට යෑමට SHIFT + TAB හෝ UP ARROW . අයිතම විකල්පයන් තේරීමට SPACE හෝ ENTER ,තේරුම් කොටුව වැසීමට ESC බොත්තම් ද ඔබන්න."},
-{name:"සංස්කරණ අංග සහිත ",legend:"ඔබන්න ${මෙවලම් තීරු අවධානය} මෙවලම් තීරුවේ එහා මෙහා යෑමට.ඉදිරියට යෑමට හා ආපසු යෑමට මෙවලම් තීරුකාණ්ඩය හා TAB හා SHIFT-TAB .ඉදිරියට යෑමට හා ආපසු යෑමට මෙවලම් තීරු බොත්තම සමග RIGHT ARROW හෝ LEFT ARROW.මෙවලම් තීරු බොත්තම සක්‍රිය කර ගැනීමට SPACE හෝ ENTER බොත්තම ඔබන්න."}]},{name:"විධාන",items:[{name:"විධානය වෙනස් ",legend:"ඔබන්න ${වෙනස් කිරීම}"},{name:"විධාන නැවත් පෙර පරිදිම වෙනස්කර ගැනීම.",legend:"ඔබන්න ${නැවත් පෙර පරිදිම වෙනස්කර ගැනීම}"},{name:"තද අකුරින් විධාන",legend:"ඔබන්න ${තද }"},
-{name:"බැධී අකුරු විධාන",legend:"ඔබන්න ${බැධී අකුරු }"},{name:"යටින් ඉරි ඇද ඇති විධාන.",legend:"ඔබන්න ${යටින් ඉරි ඇද ඇති}"},{name:"සම්බන්ධිත විධාන",legend:"ඔබන්න ${සම්බන්ධ }"},{name:"මෙවලම් තීරු හැකුලුම් විධාන",legend:"ඔබන්න ${මෙවලම් තීරු හැකුලුම් }"},{name:"යොමුවීමට පෙර වැදගත් විධාන",legend:"ඔබන්න ${යොමුවීමට ඊළඟ }"},{name:"යොමුවීමට ඊළග වැදගත් විධාන",legend:"ඔබන්න ${යොමුවීමට ඊළඟ }"},{name:"ප්‍රවේශ ",legend:"ඔබන්න ${a11y }"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",
-alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",
-numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js
deleted file mode 100644
index 083236c4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sk",{title:"Inštrukcie prístupnosti",contents:"Pomocný obsah. Pre zatvorenie tohto okna, stlačte ESC.",legend:[{name:"Všeobecne",items:[{name:"Lišta nástrojov editora",legend:"Stlačte ${toolbarFocus} pre navigáciu na lištu nástrojov. Medzi ďalšou a predchádzajúcou lištou nástrojov sa pohybujete s TAB a SHIFT-TAB. Medzi ďalším a predchádzajúcim tlačidlom na lište nástrojov sa pohybujete s pravou šípkou a ľavou šípkou. Stlačte medzerník alebo ENTER pre aktiváciu tlačidla lišty nástrojov."},
-{name:"Editorový dialóg",legend:"V dialogu, stlačte TAB pre navigáciu na ďalšie dialógové pole, stlačte STIFT + TAB pre presun na predchádzajúce pole, stlačte ENTER pre odoslanie dialógu, stlačte ESC pre zrušenie dialógu. Pre dialógy, ktoré majú viac záložiek, stlačte ALT + F10 pre navigácou do zoznamu záložiek. Potom sa posúvajte k ďalšej žáložke pomocou TAB alebo pravou šípkou. Pre presun k predchádzajúcej záložke, stlačte SHIFT + TAB alebo ľavú šípku. Stlačte medzerník alebo ENTER pre vybranie záložky."},
-{name:"Editorové kontextové menu",legend:"Stlačte ${contextMenu} alebo APPLICATION KEY pre otvorenie kontextového menu. Potom sa presúvajte na ďalšie možnosti menu s TAB alebo dolnou šípkou. Presunte sa k predchádzajúcej možnosti s SHIFT + TAB alebo hornou šípkou. Stlačte medzerník alebo ENTER pre výber možnosti menu. Otvorte pod-menu danej možnosti s medzerníkom, alebo ENTER, alebo pravou šípkou. Vráťte sa späť do položky rodičovského menu s ESC alebo ľavou šípkou. Zatvorte kontextové menu s ESC."},
-{name:"Editorov box zoznamu",legend:"V boxe zoznamu, presuňte sa na ďalšiu položku v zozname s TAB alebo dolnou šípkou. Presuňte sa k predchádzajúcej položke v zozname so SHIFT + TAB alebo hornou šípkou. Stlačte medzerník alebo ENTER pre výber možnosti zoznamu. Stlačte ESC pre zatvorenie boxu zoznamu."},{name:"Editorove pásmo cesty prvku",legend:"Stlačte ${elementsPathFocus} pre navigovanie na pásmo cesty elementu. Presuňte sa na tlačidlo ďalšieho prvku s TAB alebo pravou šípkou. Presuňte sa k predchádzajúcemu tlačidlu s SHIFT + TAB alebo ľavou šípkou. Stlačte medzerník alebo ENTER pre výber prvku v editore."}]},
-{name:"Príkazy",items:[{name:"Vrátiť príkazy",legend:"Stlačte ${undo}"},{name:"Nanovo vrátiť príkaz",legend:"Stlačte ${redo}"},{name:"Príkaz na stučnenie",legend:"Stlačte ${bold}"},{name:"Príkaz na kurzívu",legend:"Stlačte ${italic}"},{name:"Príkaz na podčiarknutie",legend:"Stlačte ${underline}"},{name:"Príkaz na odkaz",legend:"Stlačte ${link}"},{name:"Príkaz na zbalenie lišty nástrojov",legend:"Stlačte ${toolbarCollapse}"},{name:"Prejsť na predchádzajúcu zamerateľnú medzeru príkazu",legend:"Stlačte ${accessPreviousSpace} pre prístup na najbližšie nedosiahnuteľné zamerateľné medzery pred vsuvkuo. Napríklad: dve za sebou idúce horizontálne čiary. Opakujte kombináciu klávesov pre dosiahnutie vzdialených zamerateľných medzier."},
-{name:"Prejsť na ďalší ",legend:"Stlačte ${accessNextSpace} pre prístup na najbližšie nedosiahnuteľné zamerateľné medzery po vsuvke. Napríklad: dve za sebou idúce horizontálne čiary. Opakujte kombináciu klávesov pre dosiahnutie vzdialených zamerateľných medzier."},{name:"Pomoc prístupnosti",legend:"Stlačte ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Stránka hore",pageDown:"Stránka dole",
-end:"End",home:"Home",leftArrow:"Šípka naľavo",upArrow:"Šípka hore",rightArrow:"Šípka napravo",downArrow:"Šípka dole",insert:"Insert","delete":"Delete",leftWindowKey:"Ľavé Windows tlačidlo",rightWindowKey:"Pravé Windows tlačidlo",selectKey:"Tlačidlo Select",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Násobenie",add:"Sčítanie",subtract:"Odčítanie",
-decimalPoint:"Desatinná čiarka",divide:"Delenie",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Bodkočiarka",equalSign:"Rovná sa",comma:"Čiarka",dash:"Pomĺčka",period:"Bodka",forwardSlash:"Lomítko",graveAccent:"Zdôrazňovanie prízvuku",openBracket:"Hranatá zátvorka otváracia",backSlash:"Backslash",closeBracket:"Hranatá zátvorka zatváracia",singleQuote:"Jednoduché úvodzovky"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js
deleted file mode 100644
index f99db09b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sl",{title:"Navodila Dostopnosti",contents:"Vsebina Pomoči. Če želite zapreti to pogovorno okno pritisnite ESC.",legend:[{name:"Splošno",items:[{name:"Urejevalna Orodna Vrstica",legend:"Pritisnite ${toolbarFocus} za pomik v orodno vrstico. Z TAB in SHIFT-TAB se pomikate na naslednjo in prejšnjo skupino orodne vrstice. Z DESNO PUŠČICO ali LEVO PUŠČICO se pomikate na naslednji in prejšnji gumb orodne vrstice. Pritisnite SPACE ali ENTER, da aktivirate gumb orodne vrstice."},
-{name:"Urejevalno Pogovorno Okno",legend:"Znotraj pogovornega okna, pritisnite tipko TAB za pomik na naslednjo pogovorno polje, pritisnite SHIFT + TAB za pomik v prejšnje polje, pritisnite tipko ENTER za predložitev pogovornega okna, pritisnite tipko ESC, da prekličete okno. Za okna, ki imajo več zavihkov, pritisnite ALT + F10, da pojdete na seznam zavihkov. Na naslednji zavihek se premaknete s tipko TAB ali DESNO PUŠČICO. Z SHIFT + TAB ali LEVO PUŠČICO pa se premaknete na prejšnji zavihek. Pritisnite tipko SPACE ali ENTER za izbiro zavihka."},
-{name:"Urejevalni Kontekstni Meni",legend:"Pritisnite ${contextMenu} ali APPLICATION KEY, da odprete kontekstni meni. Nato se premaknite na naslednjo možnost menija s tipko TAB ali PUŠČICA DOL. Premakniti se na prejšnjo možnost z SHIFT + TAB ali PUŠČICA GOR. Pritisnite SPACE ali ENTER za izbiro možnosti menija. Odprite podmeni trenutne možnosti menija s tipko SPACE ali ENTER ali DESNA PUŠČICA. Vrnite se na matični element menija s tipko ESC ali LEVA PUŠČICA. Zaprite kontekstni meni z ESC."},{name:"Urejevalno Seznamsko Polje",
-legend:"Znotraj seznama, se premaknete na naslednji element seznama s tipko TAB ali PUŠČICO DOL. Z SHIFT + TAB ali PUŠČICO GOR se premaknete na prejšnji element seznama. Pritisnite tipko SPACE ali ENTER za izbiro elementa. Pritisnite tipko ESC, da zaprete seznam."},{name:"Urejevalna vrstica poti elementa",legend:"Pritisnite ${elementsPathFocus} za pomikanje po vrstici elementnih poti. S TAB ali DESNA PUŠČICA se premaknete na naslednji gumb elementa. Z SHIFT + TAB ali LEVO PUŠČICO se premaknete na prejšnji gumb elementa. Pritisnite SPACE ali ENTER za izbiro elementa v urejevalniku."}]},
-{name:"Ukazi",items:[{name:"Razveljavi ukaz",legend:"Pritisnite ${undo}"},{name:"Ponovi ukaz",legend:"Pritisnite ${redo}"},{name:"Krepki ukaz",legend:"Pritisnite ${bold}"},{name:"Ležeči ukaz",legend:"Pritisnite ${italic}"},{name:"Poudarni ukaz",legend:"Pritisnite ${underline}"},{name:"Ukaz povezave",legend:"Pritisnite ${link}"},{name:"Skrči Orodno Vrstico Ukaz",legend:"Pritisnite ${toolbarCollapse}"},{name:"Dostop do prejšnjega ukaza ostrenja",legend:"Pritisnite ${accessPreviousSpace} za dostop do najbližjega nedosegljivega osredotočenega prostora pred strešico, npr.: dva sosednja HR elementa. Ponovite kombinacijo tipk, da dosežete oddaljene osredotočene prostore."},
-{name:"Dostop do naslednjega ukaza ostrenja",legend:"Pritisnite ${accessNextSpace} za dostop do najbližjega nedosegljivega osredotočenega prostora po strešici, npr.: dva sosednja HR elementa. Ponovite kombinacijo tipk, da dosežete oddaljene osredotočene prostore."},{name:"Pomoč Dostopnosti",legend:"Pritisnite ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",
-home:"Home",leftArrow:"Levo puščica",upArrow:"Gor puščica",rightArrow:"Desno puščica",downArrow:"Dol puščica",insert:"Insert","delete":"Delete",leftWindowKey:"Leva Windows tipka",rightWindowKey:"Desna Windows tipka",selectKey:"Select tipka",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Zmnoži",add:"Dodaj",subtract:"Odštej",decimalPoint:"Decimalna vejica",
-divide:"Deli",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Podpičje",equalSign:"enačaj",comma:"Vejica",dash:"Vezaj",period:"Pika",forwardSlash:"Desna poševnica",graveAccent:"Krativec",openBracket:"Oklepaj",backSlash:"Leva poševnica",closeBracket:"Oklepaj",singleQuote:"Opuščaj"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js
deleted file mode 100644
index 7bcd7690..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sq",{title:"Udhëzimet e Qasjes",contents:"Përmbajtja ndihmëse. Për ta mbyllur dialogun shtyp ESC.",legend:[{name:"Të përgjithshme",items:[{name:"Shiriti i Redaktuesit",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Dialogu i Redaktuesit",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Komandat",items:[{name:"Rikthe komandën",legend:"Shtyp ${undo}"},{name:"Ribëj komandën",legend:"Shtyp ${redo}"},{name:"Komanda e trashjes së tekstit",legend:"Shtyp ${bold}"},{name:"Komanda kursive",legend:"Shtyp ${italic}"},
-{name:"Komanda e nënvijëzimit",legend:"Shtyp ${underline}"},{name:"Komanda e Nyjes",legend:"Shtyp ${link}"},{name:" Toolbar Collapse command",legend:"Shtyp ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:"Ndihmë Qasjeje",legend:"Shtyp ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",
-numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",
-openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js
deleted file mode 100644
index e1a720b1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sr-latn",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Opšte",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js
deleted file mode 100644
index a75fdd4d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sr",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Опште",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Commands",items:[{name:" Undo command",legend:"Press ${undo}"},{name:" Redo command",legend:"Press ${redo}"},{name:" Bold command",legend:"Press ${bold}"},{name:" Italic command",legend:"Press ${italic}"},{name:" Underline command",
-legend:"Press ${underline}"},{name:" Link command",legend:"Press ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js
deleted file mode 100644
index 49f9293d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","sv",{title:"Hjälpmedelsinstruktioner",contents:"Hjälpinnehåll. För att stänga denna dialogruta trycker du på ESC.",legend:[{name:"Allmänt",items:[{name:"Editor verktygsfält",legend:"Tryck på ${toolbarFocus} för att navigera till verktygsfältet. Flytta till nästa och föregående verktygsfältsgrupp med TAB och SHIFT-TAB. Flytta till nästa och föregående knapp i verktygsfältet med HÖGERPIL eller VÄNSTERPIL. Tryck Space eller ENTER för att aktivera knappen i verktygsfältet."},
-{name:"Dialogeditor",legend:"Inuti en dialogruta, tryck TAB för att navigera till nästa fält i dialogrutan. Du trycker SKIFT + TAB för att flytta till föregående fält. Tryck ENTER för att skicka. Du avbryter och stänger dialogen med ESC. För dialogrutor som har flera flikar, tryck ALT + F10 navigera till fliklistan. Flytta sedan till nästa flik med HÖGERPIL. Flytta till föregående flik med SHIFT + TAB eller VÄNSTERPIL. Tryck Space eller ENTER för att välja fliken."},{name:"Editor för innehållsmeny",
-legend:"Tryck på $ {contextMenu} eller PROGRAMTANGENTEN för att öppna snabbmenyn. Flytta sedan till nästa menyalternativ med TAB eller NEDPIL. Flytta till föregående alternativ med SHIFT + TABB eller UPPIL. Tryck Space eller ENTER för att välja menyalternativ. Öppna undermeny av nuvarande alternativ med SPACE eller ENTER eller HÖGERPIL. Gå tillbaka till överordnade menyalternativ med ESC eller VÄNSTERPIL. Stäng snabbmenyn med ESC."},{name:"Editor för List Box",legend:"Inuti en list-box, gå till nästa listobjekt med TAB eller NEDPIL. Flytta till föregående listobjekt med SHIFT + TAB eller UPPIL. Tryck Space eller ENTER för att välja listan alternativet. Tryck ESC för att stänga listan-boxen."},
-{name:"Editor för elementens sökväg",legend:"Tryck på $ {elementsPathFocus} för att navigera till verktygsfältet för elementens sökvägar. Flytta till nästa elementknapp med TAB eller HÖGERPIL. Flytta till föregående knapp med SKIFT + TAB eller VÄNSTERPIL. Tryck Space eller ENTER för att välja element i redigeraren."}]},{name:"Kommandon",items:[{name:"Kommandot ångra",legend:"Tryck på ${undo}"},{name:"Kommandot gör om",legend:"Tryck på ${redo}"},{name:"Kommandot fet stil",legend:"Tryck på ${bold}"},
-{name:"Kommandot kursiv",legend:"Tryck på ${italic}"},{name:"Kommandot understruken",legend:"Tryck på ${underline}"},{name:"Kommandot länk",legend:"Tryck på ${link}"},{name:"Verktygsfält Dölj kommandot",legend:"Tryck på ${toolbarCollapse}"},{name:"Gå till föregående fokus plats",legend:"Tryck på ${accessPreviousSpace} för att gå till närmast onåbara utrymme före markören, exempel: två intilliggande HR element. Repetera tangentkombinationen för att gå till nästa."},{name:"Tillgå nästa fokuskommandots utrymme",
-legend:"Tryck ${accessNextSpace} på för att komma åt den närmaste onåbar fokus utrymme efter cirkumflex, till exempel: två intilliggande HR element. Upprepa tangentkombinationen för att nå avlägsna fokus utrymmen."},{name:"Hjälp om tillgänglighet",legend:"Tryck ${a11yHelp}"}]}],backspace:"Backsteg",tab:"Tab",enter:"Retur",shift:"Skift",ctrl:"Ctrl",alt:"Alt",pause:"Paus",capslock:"Caps lock",escape:"Escape",pageUp:"Sida Up",pageDown:"Sida Ned",end:"Slut",home:"Hem",leftArrow:"Vänsterpil",upArrow:"Uppil",
-rightArrow:"Högerpil",downArrow:"Nedåtpil",insert:"Infoga","delete":"Radera",leftWindowKey:"Vänster Windowstangent",rightWindowKey:"Höger Windowstangent",selectKey:"Välj tangent",numpad0:"Nummer 0",numpad1:"Nummer 1",numpad2:"Nummer 2",numpad3:"Nummer 3",numpad4:"Nummer 4",numpad5:"Nummer 5",numpad6:"Nummer 6",numpad7:"Nummer 7",numpad8:"Nummer 8",numpad9:"Nummer 9",multiply:"Multiplicera",add:"Addera",subtract:"Minus",decimalPoint:"Decimalpunkt",divide:"Dividera",f1:"F1",f2:"F2",f3:"F3",f4:"F4",
-f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semikolon",equalSign:"Lika med tecken",comma:"Komma",dash:"Minus",period:"Punkt",forwardSlash:"Snedstreck framåt",graveAccent:"Accent",openBracket:"Öppningsparentes",backSlash:"Snedstreck bakåt",closeBracket:"Slutparentes",singleQuote:"Enkelt Citattecken"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/th.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/th.js
deleted file mode 100644
index 4e7c3e0a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/th.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","th",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"ทั่วไป",items:[{name:"แถบเครื่องมือสำหรับเครื่องมือช่วยพิมพ์",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"คำสั่ง",items:[{name:"เลิกทำคำสั่ง",legend:"วาง ${undo}"},{name:"คำสั่งสำหรับทำซ้ำ",legend:"วาง ${redo}"},{name:"คำสั่งสำหรับตัวหนา",legend:"วาง ${bold}"},{name:"คำสั่งสำหรับตัวเอียง",legend:"วาง ${italic}"},{name:"คำสั่งสำหรับขีดเส้นใต้",
-legend:"วาง ${underline}"},{name:"คำสั่งสำหรับลิงก์",legend:"วาง ${link}"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"Press ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js
deleted file mode 100644
index 57fd77a2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","tr",{title:"Erişilebilirlik Talimatları",contents:"Yardım içeriği. Bu pencereyi kapatmak için ESC tuşuna basın.",legend:[{name:"Genel",items:[{name:"Düzenleyici Araç Çubuğu",legend:"Araç çubuğunda gezinmek için ${toolbarFocus} basın. TAB ve SHIFT-TAB ile önceki ve sonraki araç çubuğu grubuna taşıyın. SAĞ OK veya SOL OK ile önceki ve sonraki bir araç çubuğu düğmesini hareket ettirin. SPACE tuşuna basın veya araç çubuğu düğmesini etkinleştirmek için ENTER tuşna basın."},
-{name:"Diyalog Düzenleyici",legend:"Dialog penceresi içinde, sonraki iletişim alanına gitmek için SEKME tuşuna basın, önceki alana geçmek için SHIFT + TAB tuşuna basın, pencereyi göndermek için ENTER tuşuna basın, dialog penceresini iptal etmek için ESC tuşuna basın. Birden çok sekme sayfaları olan diyalogların, sekme listesine gitmek için ALT + F10 tuşlarına basın. Sonra TAB veya SAĞ OK sonraki sekmeye taşıyın. SHIFT + TAB veya SOL OK ile önceki sekmeye geçin. Sekme sayfayı seçmek için SPACE veya ENTER tuşuna basın."},
-{name:"İçerik Menü Editörü",legend:"İçerik menüsünü açmak için ${contextMenu} veya UYGULAMA TUŞU'na basın. Daha sonra SEKME veya AŞAĞI OK ile bir sonraki menü seçeneği taşıyın. SHIFT + TAB veya YUKARI OK ile önceki seçeneğe gider. Menü seçeneğini seçmek için SPACE veya ENTER tuşuna basın. Seçili seçeneğin alt menüsünü SPACE ya da ENTER veya SAĞ OK açın. Üst menü öğesini geçmek için ESC veya SOL OK ile geri dönün. ESC ile bağlam menüsünü kapatın."},{name:"Liste Kutusu Editörü",legend:"Liste kutusu içinde, bir sonraki liste öğesine SEKME VEYA AŞAĞI OK ile taşıyın. SHIFT + TAB veya YUKARI önceki liste öğesi taşıyın. Liste seçeneği seçmek için SPACE veya ENTER tuşuna basın. Liste kutusunu kapatmak için ESC tuşuna basın."},
-{name:"Element Yol Çubuğu Editörü",legend:"Elementlerin yol çubuğunda gezinmek için ${ElementsPathFocus} basın. SEKME veya SAĞ OK ile sonraki element düğmesine taşıyın. SHIFT + TAB veya SOL OK önceki düğmeye hareket ettirin. Editör içindeki elementi seçmek için ENTER veya SPACE tuşuna basın."}]},{name:"Komutlar",items:[{name:"Komutu geri al",legend:"$(undo)'ya basın"},{name:"Komutu geri al",legend:"${redo} basın"},{name:" Kalın komut",legend:"${bold} basın"},{name:" İtalik komutu",legend:"${italic} basın"},
-{name:" Alttan çizgi komutu",legend:"${underline} basın"},{name:" Bağlantı komutu",legend:"${link} basın"},{name:" Araç çubuğu Toplama komutu",legend:"${toolbarCollapse} basın"},{name:"Önceki komut alanına odaklan",legend:"Düzeltme imleçinden önce, en yakın uzaktaki alana erişmek için ${accessPreviousSpace} basın, örneğin: iki birleşik HR elementleri. Aynı tuş kombinasyonu tekrarıyla diğer alanlarada ulaşın."},{name:"Sonraki komut alanına odaklan",legend:"Düzeltme imleçinden sonra, en yakın uzaktaki alana erişmek için ${accessNextSpace} basın, örneğin: iki birleşik HR elementleri. Aynı tuş kombinasyonu tekrarıyla diğer alanlarada ulaşın."},
-{name:"Erişilebilirlik Yardımı",legend:"${a11yHelp}'e basın"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Sayfa Yukarı",pageDown:"Sayfa Aşağı",end:"End",home:"Home",leftArrow:"Sol ok",upArrow:"Yukarı ok",rightArrow:"Sağ ok",downArrow:"Aşağı ok",insert:"Insert","delete":"Silme",leftWindowKey:"Sol windows tuşu",rightWindowKey:"Sağ windows tuşu",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Çarpma",add:"Toplama",subtract:"Çıkarma",decimalPoint:"Ondalık işareti",divide:"Bölme",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Noktalı virgül",equalSign:"Eşittir",comma:"Virgül",dash:"Eksi",period:"Nokta",forwardSlash:"Forward Slash",
-graveAccent:"Grave Accent",openBracket:"Parantez aç",backSlash:"Backslash",closeBracket:"Parantez kapa",singleQuote:"Tek tırnak"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js
deleted file mode 100644
index 12cb6a88..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","tt",{title:"Accessibility Instructions",contents:"Help Contents. To close this dialog press ESC.",legend:[{name:"Гомуми",items:[{name:"Editor Toolbar",legend:"Press ${toolbarFocus} to navigate to the toolbar. Move to the next and previous toolbar group with TAB and SHIFT-TAB. Move to the next and previous toolbar button with RIGHT ARROW or LEFT ARROW. Press SPACE or ENTER to activate the toolbar button."},{name:"Editor Dialog",legend:"Inside a dialog, press TAB to navigate to next dialog field, press SHIFT + TAB to move to previous field, press ENTER to submit dialog, press ESC to cancel dialog. For dialogs that have multiple tab pages, press ALT + F10 to navigate to tab-list. Then move to next tab with TAB OR RIGTH ARROW. Move to previous tab with SHIFT + TAB or LEFT ARROW. Press SPACE or ENTER to select the tab page."},
-{name:"Editor Context Menu",legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Then move to next menu option with TAB or DOWN ARROW. Move to previous option with SHIFT+TAB or UP ARROW. Press SPACE or ENTER to select the menu option. Open sub-menu of current option with SPACE or ENTER or RIGHT ARROW. Go back to parent menu item with ESC or LEFT ARROW. Close context menu with ESC."},{name:"Editor List Box",legend:"Inside a list-box, move to next list item with TAB OR DOWN ARROW. Move to previous list item with SHIFT + TAB or UP ARROW. Press SPACE or ENTER to select the list option. Press ESC to close the list-box."},
-{name:"Editor Element Path Bar",legend:"Press ${elementsPathFocus} to navigate to the elements path bar. Move to next element button with TAB or RIGHT ARROW. Move to previous button with SHIFT+TAB or LEFT ARROW. Press SPACE or ENTER to select the element in editor."}]},{name:"Командалар",items:[{name:"Кайтару",legend:"${undo} басыгыз"},{name:"Кабатлау",legend:"${redo} басыгыз"},{name:"Калын",legend:"${bold} басыгыз"},{name:"Курсив",legend:"${italic} басыгыз"},{name:"Астына сызылган",legend:"${underline} басыгыз"},
-{name:"Сылталама",legend:"${link} басыгыз"},{name:" Toolbar Collapse command",legend:"Press ${toolbarCollapse}"},{name:" Access previous focus space command",legend:"Press ${accessPreviousSpace} to access the closest unreachable focus space before the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},{name:" Access next focus space command",legend:"Press ${accessNextSpace} to access the closest unreachable focus space after the caret, for example: two adjacent HR elements. Repeat the key combination to reach distant focus spaces."},
-{name:" Accessibility Help",legend:"${a11yHelp} басыгыз"}]}],backspace:"Кайтару",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Тыныш",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Сул якка ук",upArrow:"Өскә таба ук",rightArrow:"Уң якка ук",downArrow:"Аска таба ук",insert:"Өстәү","delete":"Бетерү",leftWindowKey:"Сул Windows төймəсе",rightWindowKey:"Уң Windows төймəсе",selectKey:"Select төймəсе",numpad0:"Numpad 0",numpad1:"Numpad 1",
-numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Тапкырлау",add:"Кушу",subtract:"Алу",decimalPoint:"Унарлы нокта",divide:"Бүлү",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Нокталы өтер",equalSign:"Тигезлек билгесе",comma:"Өтер",dash:"Сызык",period:"Дәрәҗә",forwardSlash:"Кыек сызык",
-graveAccent:"Гравис",openBracket:"Җәя ачу",backSlash:"Кире кыек сызык",closeBracket:"Җәя ябу",singleQuote:"Бер иңле куштырнаклар"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js
deleted file mode 100644
index c7ab77c6..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","ug",{title:"قوشۇمچە چۈشەندۈرۈش",contents:"ياردەم مەزمۇنى. بۇ سۆزلەشكۈنى ياپماقچى بولسىڭىز ESC نى بېسىڭ.",legend:[{name:"ئادەتتىكى",items:[{name:"قورال بالداق تەھرىر",legend:"${toolbarFocus} بېسىلسا قورال بالداققا يېتەكلەيدۇ، TAB ياكى SHIFT+TAB ئارقىلىق قورال بالداق گۇرۇپپىسى تاللىنىدۇ، ئوڭ سول يا ئوقتا توپچا تاللىنىدۇ، بوشلۇق ياكى Enter كۇنۇپكىسىدا تاللانغان توپچىنى قوللىنىدۇ."},{name:"تەھرىرلىگۈچ سۆزلەشكۈسى",legend:"سۆزلەشكۈدە TAB كۇنۇپكىسىدا كېيىنكى سۆز بۆلىكىگە يۆتكىلىدۇ، SHIFT + TAB بىرىكمە كۇنۇپكىسىدا ئالدىنقى سۆز بۆلىكىگە يۆتكىلىدۇ، ENTER كۇنۇپكىسىدا سۆزلەشكۈنى تاپشۇرىدۇ، ESC كۇنۇپكىسى سۆزلەشكۈدىن ۋاز كېچىدۇ. كۆپ بەتكۈچلۈك سۆزلەشكۈگە نىسبەتەن، ALT + F10 دا بەتكۈچ تىزىمىغا يۆتكەيدۇ. ئاندىن TAB كۇنۇپكىسى ياكى ئوڭ يا ئوق كۇنۇپكىسى كېيىنكى بەتكۈچكە يۆتكەيدۇ؛ SHIFT + TAB كۇنۇپكىسى ياكى سول يا ئوق كۇنۇپكىسى ئالدىنقى بەتكۈچكە يۆتكەيدۇ. بوشلۇق كۇنۇپكىسى ياكى ENTER كۇنۇپكىسى بەتكۈچنى تاللايدۇ."},
-{name:"تەھرىرلىگۈچ تىل مۇھىت تىزىملىكى",legend:"${contextMenu} ياكى ئەپ كۇنۇپكىسىدا تىل مۇھىت تىزىملىكىنى ئاچىدۇ. ئاندىن TAB ياكى ئاستى يا ئوق كۇنۇپكىسىدا كېيىنكى تىزىملىك تۈرىگە يۆتكەيدۇ؛ SHIFT+TAB ياكى ئۈستى يا ئوق كۇنۇپكىسىدا ئالدىنقى تىزىملىك تۈرىگە يۆتكەيدۇ. بوشلۇق ياكى ENTER كۇنۇپكىسىدا تىزىملىك تۈرىنى تاللايدۇ. بوشلۇق، ENTER ياكى ئوڭ يا ئوق كۇنۇپكىسىدا تارماق تىزىملىكنى ئاچىدۇ. قايتىش تىزىملىكىگە ESC ياكى سول يا ئوق كۇنۇپكىسى ئىشلىتىلىدۇ. ESC كۇنۇپكىسىدا تىل مۇھىت تىزىملىكى تاقىلىدۇ."},{name:"تەھرىرلىگۈچ تىزىمى",
-legend:"تىزىم قۇتىسىدا، كېيىنكى تىزىم تۈرىگە يۆتكەشتە TAB ياكى ئاستى يا ئوق كۇنۇپكىسى ئىشلىتىلىدۇ. ئالدىنقى تىزىم تۈرىگە يۆتكەشتە SHIFT + TAB ياكى ئۈستى يا ئوق كۇنۇپكىسى ئىشلىتىلىدۇ. بوشلۇق ياكى ENTER كۇنۇپكىسىدا تىزىم تۈرىنى تاللايدۇ.ESC كۇنۇپكىسىدا تىزىم قۇتىسىنى يىغىدۇ."},{name:"تەھرىرلىگۈچ ئېلېمېنت يول بالداق",legend:"${elementsPathFocus} بېسىلسا ئېلېمېنت يول بالداققا يېتەكلەيدۇ، TAB ياكى ئوڭ يا ئوقتا كېيىنكى ئېلېمېنت تاللىنىدۇ، SHIFT+TAB ياكى سول يا ئوقتا ئالدىنقى ئېلېمېنت تاللىنىدۇ، بوشلۇق ياكى Enter كۇنۇپكىسىدا تەھرىرلىگۈچتىكى ئېلېمېنت تاللىنىدۇ."}]},
-{name:"بۇيرۇق",items:[{name:"بۇيرۇقتىن يېنىۋال",legend:"${undo} نى بېسىڭ"},{name:"قايتىلاش بۇيرۇقى",legend:"${redo} نى بېسىڭ"},{name:"توملىتىش بۇيرۇقى",legend:"${bold} نى بېسىڭ"},{name:"يانتۇ بۇيرۇقى",legend:"${italic} نى بېسىڭ"},{name:"ئاستى سىزىق بۇيرۇقى",legend:"${underline} نى بېسىڭ"},{name:"ئۇلانما بۇيرۇقى",legend:"${link} نى بېسىڭ"},{name:"قورال بالداق قاتلاش بۇيرۇقى",legend:"${toolbarCollapse} نى بېسىڭ"},{name:"ئالدىنقى فوكۇس نۇقتىسىنى زىيارەت قىلىدىغان بۇيرۇق",legend:"${accessPreviousSpace} بېسىپ ^ بەلگىسىگە ئەڭ يېقىن زىيارەت قىلغىلى بولمايدىغان فوكۇس نۇقتا رايونىنىڭ ئالدىنى زىيارەت قىلىدۇ، مەسىلەن: ئۆز ئارا قوشنا ئىككى HR ئېلېمېنت. بۇ بىرىكمە كۇنۇپكا تەكرارلانسا يىراقتىكى فوكۇس نۇقتا رايونىغا يەتكىلى بولىدۇ."},
-{name:"كېيىنكى فوكۇس نۇقتىسىنى زىيارەت قىلىدىغان بۇيرۇق",legend:"${accessNextSpace} بېسىپ ^ بەلگىسىگە ئەڭ يېقىن زىيارەت قىلغىلى بولمايدىغان فوكۇس نۇقتا رايونىنىڭ كەينىنى زىيارەت قىلىدۇ، مەسىلەن: ئۆز ئارا قوشنا ئىككى HR ئېلېمېنت. بۇ بىرىكمە كۇنۇپكا تەكرارلانسا يىراقتىكى فوكۇس نۇقتا رايونىغا يەتكىلى بولىدۇ."},{name:"توسالغۇسىز لايىھە چۈشەندۈرۈشى",legend:"${a11yHelp} نى بېسىڭ"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",
-pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Left Arrow",upArrow:"Up Arrow",rightArrow:"Right Arrow",downArrow:"Down Arrow",insert:"Insert","delete":"Delete",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"Add",subtract:"Subtract",
-decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"Equal Sign",comma:"Comma",dash:"Dash",period:"Period",forwardSlash:"Forward Slash",graveAccent:"Grave Accent",openBracket:"Open Bracket",backSlash:"Backslash",closeBracket:"Close Bracket",singleQuote:"Single Quote"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js
deleted file mode 100644
index 7c8f9098..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","uk",{title:"Спеціальні Інструкції",contents:"Довідка. Натисніть ESC і вона зникне.",legend:[{name:"Основне",items:[{name:"Панель Редактора",legend:"Натисніть ${toolbarFocus} для переходу до панелі інструментів. Для переміщення між групами панелі інструментів використовуйте TAB і SHIFT-TAB. Для переміщення між кнопками панелі іструментів використовуйте кнопки СТРІЛКА ВПРАВО або ВЛІВО. Натисніть ПРОПУСК або ENTER для запуску кнопки панелі інструментів"},{name:"Діалог Редактора",
-legend:"У діалозі натисніть клавішу TAB для переходу до наступного поля, натисніть SHIFT + TAB, щоб перейти до попереднього поля, натисніть ENTER, щоб відправити дані, натисніть ESC, щоб скасувати. Для вікон, які мають кілька вкладок, натисніть ALT + F10 для переходу до списку вкладок. Перехід до наступної вкладки TAB АБО СТРІЛКА ВПРАВО. Перехід до попередньої вкладки за допомогою SHIFT + TAB або СТРІЛКА ВЛІВО. Натисніть ПРОПУСК або ENTER, щоб вибрати вкладку."},{name:"Контекстне Меню Редактора",
-legend:"Press ${contextMenu} or APPLICATION KEY to open context-menu. Потім перейдіть до наступного пункту меню за допомогою TAB або СТРІЛКИ ВНИЗ. Натисніть ПРОПУСК або ENTER для вибору параметру меню. Відкрийте підменю поточного параметру, натиснувши ПРОПУСК або ENTER або СТРІЛКУ ВПРАВО. Перейдіть до батьківського елемента меню, натиснувши ESC або СТРІЛКУ ВЛІВО. Закрийте контекстне меню, натиснувши ESC."},{name:"Скринька Списків Редактора",legend:"Всередині списку переходимо до наступного пункту списку клавішею TAB або СТРІЛКА ВНИЗ. Перейти до попереднього елемента списку можна SHIFT + TAB або СТРІЛКА ВГОРУ. Натисніть ПРОПУСК або ENTER, щоб вибрати параметр списку. Натисніть клавішу ESC, щоб закрити список."},
-{name:"Шлях до елемента редактора",legend:"Натисніть ${elementsPathFocus} для навігації між елементами панелі. Перейдіть до наступного елемента кнопкою TAB або СТРІЛКА ВПРАВО. Перейдіть до попереднього елемента кнопкою SHIFT+TAB або СТРІЛКА ВЛІВО. Натисніть ПРОПУСК або ENTER для вибору елемента в редакторі."}]},{name:"Команди",items:[{name:"Відмінити команду",legend:"Натисніть ${undo}"},{name:"Повторити",legend:"Натисніть ${redo}"},{name:"Жирний",legend:"Натисніть ${bold}"},{name:"Курсив",legend:"Натисніть ${italic}"},
-{name:"Підкреслений",legend:"Натисніть ${underline}"},{name:"Посилання",legend:"Натисніть ${link}"},{name:"Згорнути панель інструментів",legend:"Натисніть ${toolbarCollapse}"},{name:"Доступ до попереднього місця фокусування",legend:"Натисніть ${accessNextSpace} для доступу до найближчої недосяжної області фокусування перед кареткою, наприклад: два сусідні елементи HR. Повторіть комбінацію клавіш для досягнення віддалених областей фокусування."},{name:"Доступ до наступного місця фокусування",legend:"Натисніть ${accessNextSpace} для доступу до найближчої недосяжної області фокусування після каретки, наприклад: два сусідні елементи HR. Повторіть комбінацію клавіш для досягнення віддалених областей фокусування."},
-{name:"Допомога з доступності",legend:"Натисніть ${a11yHelp}"}]}],backspace:"Backspace",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Esc",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"Ліва стрілка",upArrow:"Стрілка вгору",rightArrow:"Права стрілка",downArrow:"Стрілка вниз",insert:"Вставити","delete":"Видалити",leftWindowKey:"Ліва клавіша Windows",rightWindowKey:"Права клавіша Windows",selectKey:"Виберіть клавішу",numpad0:"Numpad 0",
-numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Множення",add:"Додати",subtract:"Віднімання",decimalPoint:"Десяткова кома",divide:"Ділення",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Крапка з комою",equalSign:"Знак рівності",comma:"Кома",dash:"Тире",period:"Період",
-forwardSlash:"Коса риска",graveAccent:"Гравіс",openBracket:"Відкрити дужку",backSlash:"Зворотна коса риска",closeBracket:"Закрити дужку",singleQuote:"Одинарні лапки"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js
deleted file mode 100644
index e82e39a1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","vi",{title:"Hướng dẫn trợ năng",contents:"Nội dung Hỗ trợ. Nhấn ESC để đóng hộp thoại.",legend:[{name:"Chung",items:[{name:"Thanh công cụ soạn thảo",legend:"Nhấn ${toolbarFocus} để điều hướng đến thanh công cụ. Nhấn TAB và SHIFT-TAB để chuyển đến nhóm thanh công cụ khác. Nhấn MŨI TÊN PHẢI hoặc MŨI TÊN TRÁI để chuyển sang nút khác trên thanh công cụ. Nhấn PHÍM CÁCH hoặc ENTER để kích hoạt nút trên thanh công cụ."},{name:"Hộp thoại Biên t",legend:"Bên trong một hộp thoại, nhấn TAB để chuyển sang trường tiếp theo, nhấn SHIFT + TAB để quay lại trường phía trước, nhấn ENTER để chấp nhận, nhấn ESC để đóng hộp thoại. Đối với các hộp thoại có nhiều tab, nhấn ALT + F10 để chuyển đến danh sách các tab. Sau đó nhấn TAB hoặc MŨI TÊN SANG PHẢI để chuyển sang tab tiếp theo. Nhấn SHIFT + TAB hoặc MŨI TÊN SANG TRÁI để chuyển sang tab trước đó. Nhấn DẤU CÁCH hoặc ENTER để chọn tab."},
-{name:"Trình đơn Ngữ cảnh cBộ soạn thảo",legend:"Nhấn ${contextMenu} hoặc PHÍM ỨNG DỤNG để mở thực đơn ngữ cảnh. Sau đó nhấn TAB hoặc MŨI TÊN XUỐNG để di chuyển đến tuỳ chọn tiếp theo của thực đơn. Nhấn SHIFT+TAB hoặc MŨI TÊN LÊN để quay lại tuỳ chọn trước. Nhấn DẤU CÁCH hoặc ENTER để chọn tuỳ chọn của thực đơn. Nhấn DẤU CÁCH hoặc ENTER hoặc MŨI TÊN SANG PHẢI để mở thực đơn con của tuỳ chọn hiện tại. Nhấn ESC hoặc MŨI TÊN SANG TRÁI để quay trở lại thực đơn gốc. Nhấn ESC để đóng thực đơn ngữ cảnh."},
-{name:"Hộp danh sách trình biên tập",legend:"Trong một danh sách chọn, di chuyển đối tượng tiếp theo với phím Tab hoặc phím mũi tên hướng xuống. Di chuyển đến đối tượng trước đó bằng cách nhấn tổ hợp phím Shift+Tab hoặc mũi tên hướng lên. Phím khoảng cách hoặc phím Enter để chọn các tùy chọn trong danh sách. Nhấn phím Esc để đóng lại danh sách chọn."},{name:"Thanh đường dẫn các đối tượng",legend:"Nhấn ${elementsPathFocus} để điều hướng các đối tượng trong thanh đường dẫn. Di chuyển đến đối tượng tiếp theo bằng phím Tab hoặc phím mũi tên bên phải. Di chuyển đến đối tượng trước đó bằng tổ hợp phím Shift+Tab hoặc phím mũi tên bên trái. Nhấn phím khoảng cách hoặc Enter để chọn đối tượng trong trình soạn thảo."}]},
-{name:"Lệnh",items:[{name:"Làm lại lện",legend:"Ấn ${undo}"},{name:"Làm lại lệnh",legend:"Ấn ${redo}"},{name:"Lệnh in đậm",legend:"Ấn ${bold}"},{name:"Lệnh in nghiêng",legend:"Ấn ${italic}"},{name:"Lệnh gạch dưới",legend:"Ấn ${underline}"},{name:"Lệnh liên kết",legend:"Nhấn ${link}"},{name:"Lệnh hiển thị thanh công cụ",legend:"Nhấn${toolbarCollapse}"},{name:"Truy cập đến lệnh tập trung vào khoảng cách trước đó",legend:"Ấn ${accessPreviousSpace} để truy cập đến phần tập trung khoảng cách sau phần còn sót lại của khoảng cách gần nhất vốn không tác động đến được , thí dụ: hai yếu tố điều chỉnh HR. Lặp lại các phím kết họep này để vươn đến phần khoảng cách."},
-{name:"Truy cập phần đối tượng lệnh khoảng trống",legend:"Ấn ${accessNextSpace} để truy cập đến phần tập trung khoảng cách sau phần còn sót lại của khoảng cách gần nhất vốn không tác động đến được , thí dụ: hai yếu tố điều chỉnh HR. Lặp lại các phím kết họep này để vươn đến phần khoảng cách."},{name:"Trợ giúp liên quan",legend:"Nhấn ${a11yHelp}"}]}],backspace:"Phím Backspace",tab:"Phím Tab",enter:"Phím Tab",shift:"Phím Shift",ctrl:"Phím Ctrl",alt:"Phím Alt",pause:"Phím Pause",capslock:"Phím Caps Lock",
-escape:"Phím Escape",pageUp:"Phím Page Up",pageDown:"Phím Page Down",end:"Phím End",home:"Phím Home",leftArrow:"Phím Left Arrow",upArrow:"Phím Up Arrow",rightArrow:"Phím Right Arrow",downArrow:"Phím Down Arrow",insert:"Chèn","delete":"Xóa",leftWindowKey:"Phím Left Windows",rightWindowKey:"Phím Right Windows ",selectKey:"Chọn phím",numpad0:"Phím 0",numpad1:"Phím 1",numpad2:"Phím 2",numpad3:"Phím 3",numpad4:"Phím 4",numpad5:"Phím 5",numpad6:"Phím 6",numpad7:"Phím 7",numpad8:"Phím 8",numpad9:"Phím 9",
-multiply:"Nhân",add:"Thêm",subtract:"Trừ",decimalPoint:"Điểm số thập phân",divide:"Chia",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Dấu chấm phẩy",equalSign:"Đăng nhập bằng",comma:"Dấu phẩy",dash:"Dấu gạch ngang",period:"Phím .",forwardSlash:"Phím /",graveAccent:"Phím `",openBracket:"Open Bracket",backSlash:"Dấu gạch chéo ngược",closeBracket:"Gần giá đỡ",singleQuote:"Trích dẫn"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js
deleted file mode 100644
index fe2cab0d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","zh-cn",{title:"辅助功能说明",contents:"帮助内容。要关闭此对话框请按 ESC 键。",legend:[{name:"常规",items:[{name:"编辑器工具栏",legend:"按 ${toolbarFocus} 导航到工具栏,使用 TAB 键和 SHIFT+TAB 组合键移动到上一个和下一个工具栏组。使用左右箭头键移动到上一个和下一个工具栏按钮。按空格键或回车键以选中工具栏按钮。"},{name:"编辑器对话框",legend:"在对话框内,TAB 键移动到下一个字段,SHIFT + TAB 组合键移动到上一个字段,ENTER 键提交对话框,ESC 键取消对话框。对于有多选项卡的对话框,用ALT + F10来移到选项卡列表。然后用 TAB 键或者向右箭头来移动到下一个选项卡;SHIFT + TAB 组合键或者向左箭头移动到上一个选项卡。用 SPACE 键或者 ENTER 键选择选项卡。"},{name:"编辑器上下文菜单",legend:"用 ${contextMenu} 或者“应用程序键”打开上下文菜单。然后用 TAB 键或者下箭头键来移动到下一个菜单项;SHIFT + TAB 组合键或者上箭头键移动到上一个菜单项。用 SPACE 键或者 ENTER 键选择菜单项。用 SPACE 键,ENTER 键或者右箭头键打开子菜单。返回菜单用 ESC 键或者左箭头键。用 ESC 键关闭上下文菜单。"},
-{name:"编辑器列表框",legend:"在列表框中,移到下一列表项用 TAB 键或者下箭头键。移到上一列表项用SHIFT + TAB 组合键或者上箭头键,用 SPACE 键或者 ENTER 键选择列表项。用 ESC 键收起列表框。"},{name:"编辑器元素路径栏",legend:"按 ${elementsPathFocus} 以导航到元素路径栏,使用 TAB 键或右箭头键选择下一个元素,使用 SHIFT+TAB 组合键或左箭头键选择上一个元素,按空格键或回车键以选定编辑器里的元素。"}]},{name:"命令",items:[{name:" 撤消命令",legend:"按 ${undo}"},{name:" 重做命令",legend:"按 ${redo}"},{name:" 加粗命令",legend:"按 ${bold}"},{name:" 倾斜命令",legend:"按 ${italic}"},{name:" 下划线命令",legend:"按 ${underline}"},{name:" 链接命令",legend:"按 ${link}"},{name:" 工具栏折叠命令",legend:"按 ${toolbarCollapse}"},
-{name:"访问前一个焦点区域的命令",legend:"按 ${accessPreviousSpace} 访问^符号前最近的不可访问的焦点区域,例如:两个相邻的 HR 元素。重复此组合按键可以到达远处的焦点区域。"},{name:"访问下一个焦点区域命令",legend:"按 ${accessNextSpace} 以访问^符号后最近的不可访问的焦点区域。例如:两个相邻的 HR 元素。重复此组合按键可以到达远处的焦点区域。"},{name:"辅助功能帮助",legend:"按 ${a11yHelp}"}]}],backspace:"退格键",tab:"Tab 键",enter:"回车键",shift:"Shift 键",ctrl:"Ctrl 键",alt:"Alt 键",pause:"暂停键",capslock:"大写锁定键",escape:"Esc 键",pageUp:"上翻页键",pageDown:"下翻页键",end:"行尾键",home:"行首键",leftArrow:"向左箭头键",upArrow:"向上箭头键",rightArrow:"向右箭头键",downArrow:"向下箭头键",
-insert:"插入键","delete":"删除键",leftWindowKey:"左 WIN 键",rightWindowKey:"右 WIN 键",selectKey:"选择键",numpad0:"小键盘 0 键",numpad1:"小键盘 1 键",numpad2:"小键盘 2 键",numpad3:"小键盘 3 键",numpad4:"小键盘 4 键",numpad5:"小键盘 5 键",numpad6:"小键盘 6 键",numpad7:"小键盘 7 键",numpad8:"小键盘 8 键",numpad9:"小键盘 9 键",multiply:"星号键",add:"加号键",subtract:"减号键",decimalPoint:"小数点键",divide:"除号键",f1:"F1 键",f2:"F2 键",f3:"F3 键",f4:"F4 键",f5:"F5 键",f6:"F6 键",f7:"F7 键",f8:"F8 键",f9:"F9 键",f10:"F10 键",f11:"F11 键",f12:"F12 键",numLock:"数字锁定键",scrollLock:"滚动锁定键",
-semiColon:"分号键",equalSign:"等号键",comma:"逗号键",dash:"短划线键",period:"句号键",forwardSlash:"斜杠键",graveAccent:"重音符键",openBracket:"左中括号键",backSlash:"反斜杠键",closeBracket:"右中括号键",singleQuote:"单引号键"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js b/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js
deleted file mode 100644
index 1521763d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("a11yhelp","zh",{title:"輔助工具指南",contents:"說明內容。若要關閉此對話框請按「ESC」。",legend:[{name:"一般",items:[{name:"編輯器工具列",legend:"請按「${toolbarFocus}」以瀏覽工具列。\r\n利用「TAB」或「SHIFT+TAB」以便移動到下一個或前一個工具列群組。\r\n利用「→」或「←」以便移動到下一個或前一個工具列按鈕。\r\n請按下「空白鍵」或「ENTER」鍵啟動工具列按鈕。"},{name:"編輯器對話方塊",legend:"在對話框中,請按 TAB 鍵以便移動到下個欄位,請按 SHIFT + TAB 以便移動到前個欄位;請按 ENTER 以提交對話框資料,或按下 ESC 取消對話框。\r\n若是有多個頁框的對話框,請按 ALT + F10 以移動到頁框列表,並以 TAB 或是 → 方向鍵移動到下個頁框。以 SHIFT + TAB 或是 ← 方向鍵移動到前個頁框。按下 空白鍵 或是 ENTER 以選取頁框。"},{name:"編輯器內容功能表",
-legend:"請按下「${contextMenu}」或是「應用程式鍵」以開啟內容選單。以「TAB」或是「↓」鍵移動到下一個選單選項。以「SHIFT + TAB」或是「↑」鍵移動到上一個選單選項。按下「空白鍵」或是「ENTER」鍵以選取選單選項。以「空白鍵」或「ENTER」或「→」開啟目前選項之子選單。以「ESC」或「←」回到父選單。以「ESC」鍵關閉內容選單」。"},{name:"編輯器清單方塊",legend:"在列表中,請利用 TAB 或 ↓ 方向鍵以移動到下一個項目;或利用 SHIFT + TAB 或 ↑ 方向鍵移動到前一個項目。請按下 空白鍵 或是 ENTER 以選取項目。請按 ESC 關閉列表。"},{name:"編輯器元件路徑工具列",legend:"請按「${elementsPathFocus}」以瀏覽元素路徑工具列。\r\n利用「TAB」或「→」以便移動到下一個元素按鈕。\r\n利用「SHIFT+TAB」或「←」以便移動到前一個元素按鈕。\r\n請按下「空白鍵」或「ENTER」鍵選擇編輯器中的元素。"}]},{name:"命令",items:[{name:"復原命令",
-legend:"請按下「${undo}」"},{name:"重複命令",legend:"請按下「 ${redo}」"},{name:"粗體命令",legend:"請按下「${bold}」"},{name:"斜體",legend:"請按下「${italic}」"},{name:"底線命令",legend:"請按下「${underline}」"},{name:"連結",legend:"請按下「${link}」"},{name:"隱藏工具列",legend:"請按下「${toolbarCollapse}」"},{name:"存取前一個焦點空間命令",legend:"請按下 ${accessPreviousSpace} 以存取最近但無法靠近之插字符號前的焦點空間。舉例:二個相鄰的 HR 元素。\r\n重複按鍵以存取較遠的焦點空間。"},{name:"存取下一個焦點空間命令",legend:"請按下 ${accessNextSpace} 以存取最近但無法靠近之插字符號後的焦點空間。舉例:二個相鄰的 HR 元素。\r\n重複按鍵以存取較遠的焦點空間。"},{name:"協助工具說明",legend:"請按下「${a11yHelp}」"}]}],
-backspace:"退格鍵",tab:"Tab",enter:"Enter",shift:"Shift",ctrl:"Ctrl",alt:"Alt",pause:"Pause",capslock:"Caps Lock",escape:"Escape",pageUp:"Page Up",pageDown:"Page Down",end:"End",home:"Home",leftArrow:"向左箭號",upArrow:"向上鍵號",rightArrow:"向右鍵號",downArrow:"向下鍵號",insert:"插入","delete":"刪除",leftWindowKey:"Left Windows key",rightWindowKey:"Right Windows key",selectKey:"Select key",numpad0:"Numpad 0",numpad1:"Numpad 1",numpad2:"Numpad 2",numpad3:"Numpad 3",numpad4:"Numpad 4",numpad5:"Numpad 5",numpad6:"Numpad 6",
-numpad7:"Numpad 7",numpad8:"Numpad 8",numpad9:"Numpad 9",multiply:"Multiply",add:"新增",subtract:"Subtract",decimalPoint:"Decimal Point",divide:"Divide",f1:"F1",f2:"F2",f3:"F3",f4:"F4",f5:"F5",f6:"F6",f7:"F7",f8:"F8",f9:"F9",f10:"F10",f11:"F11",f12:"F12",numLock:"Num Lock",scrollLock:"Scroll Lock",semiColon:"Semicolon",equalSign:"等號",comma:"逗號",dash:"虛線",period:"句點",forwardSlash:"斜線",graveAccent:"抑音符號",openBracket:"左方括號",backSlash:"反斜線",closeBracket:"右方括號",singleQuote:"單引號"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/about.js b/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/about.js
deleted file mode 100644
index ee5473a0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/about.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("about",function(a){var a=a.lang.about,b=CKEDITOR.getUrl(CKEDITOR.plugins.get("about").path+"dialogs/"+(CKEDITOR.env.hidpi?"hidpi/":"")+"logo_ckeditor.png");return{title:CKEDITOR.env.ie?a.dlgTitle:a.title,minWidth:390,minHeight:230,contents:[{id:"tab1",label:"",title:"",expand:!0,padding:0,elements:[{type:"html",html:'<style type="text/css">.cke_about_container{color:#000 !important;padding:10px 10px 0;margin-top:5px}.cke_about_container p{margin: 0 0 10px;}.cke_about_container .cke_about_logo{height:81px;background-color:#fff;background-image:url('+
-b+");"+(CKEDITOR.env.hidpi?"background-size:163px 58px;":"")+'background-position:center; background-repeat:no-repeat;margin-bottom:10px;}.cke_about_container a{cursor:pointer !important;color:#00B2CE !important;text-decoration:underline !important;}</style><div class="cke_about_container"><div class="cke_about_logo"></div><p>CKEditor '+CKEDITOR.version+" (revision "+CKEDITOR.revision+')<br><a target="_blank" href="http://ckeditor.com/">http://ckeditor.com</a></p><p>'+a.help.replace("$1",'<a target="_blank" href="http://docs.ckeditor.com/user">'+
-a.userGuide+"</a>")+"</p><p>"+a.moreInfo+'<br><a target="_blank" href="http://ckeditor.com/about/license">http://ckeditor.com/about/license</a></p><p>'+a.copy.replace("$1",'<a target="_blank" href="http://cksource.com/">CKSource</a> - Frederico Knabben')+"</p></div>"}]}],buttons:[CKEDITOR.dialog.cancelButton]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png b/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png
deleted file mode 100644
index 10cc7368..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/logo_ckeditor.png b/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/logo_ckeditor.png
deleted file mode 100644
index f186eb87..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/about/dialogs/logo_ckeditor.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/dialogs/paste.js b/wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/dialogs/paste.js
deleted file mode 100644
index fd793e94..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/clipboard/dialogs/paste.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("paste",function(c){function h(a){var b=new CKEDITOR.dom.document(a.document),f=b.getBody(),d=b.getById("cke_actscrpt");d&&d.remove();f.setAttribute("contenteditable",!0);if(CKEDITOR.env.ie&&8>CKEDITOR.env.version)b.getWindow().on("blur",function(){b.$.selection.empty()});b.on("keydown",function(a){var a=a.data,b;switch(a.getKeystroke()){case 27:this.hide();b=1;break;case 9:case CKEDITOR.SHIFT+9:this.changeFocus(1),b=1}b&&a.preventDefault()},this);c.fire("ariaWidget",new CKEDITOR.dom.element(a.frameElement));
-b.getWindow().getFrame().removeCustomData("pendingFocus")&&f.focus()}var e=c.lang.clipboard;c.on("pasteDialogCommit",function(a){a.data&&c.fire("paste",{type:"auto",dataValue:a.data})},null,null,1E3);return{title:e.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?370:350,minHeight:CKEDITOR.env.quirks?250:245,onShow:function(){this.parts.dialog.$.offsetHeight;this.setupContent();this.parts.title.setHtml(this.customTitle||e.title);this.customTitle=null},onLoad:function(){(CKEDITOR.env.ie7Compat||
-CKEDITOR.env.ie6Compat)&&"rtl"==c.lang.dir&&this.parts.contents.setStyle("overflow","hidden")},onOk:function(){this.commitContent()},contents:[{id:"general",label:c.lang.common.generalTab,elements:[{type:"html",id:"securityMsg",html:'<div style="white-space:normal;width:340px">'+e.securityMsg+"</div>"},{type:"html",id:"pasteMsg",html:'<div style="white-space:normal;width:340px">'+e.pasteMsg+"</div>"},{type:"html",id:"editing_area",style:"width:100%;height:100%",html:"",focus:function(){var a=this.getInputElement(),
-b=a.getFrameDocument().getBody();!b||b.isReadOnly()?a.setCustomData("pendingFocus",1):b.focus()},setup:function(){var a=this.getDialog(),b='<html dir="'+c.config.contentsLangDirection+'" lang="'+(c.config.contentsLanguage||c.langCode)+'"><head><style>body{margin:3px;height:95%}</style></head><body><script id="cke_actscrpt" type="text/javascript">window.parent.CKEDITOR.tools.callFunction('+CKEDITOR.tools.addFunction(h,a)+",this);<\/script></body></html>",f=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?
-"javascript:void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+'})())"':"",d=CKEDITOR.dom.element.createFromHtml('<iframe class="cke_pasteframe" frameborder="0" allowTransparency="true" src="'+f+'" role="region" aria-label="'+e.pasteArea+'" aria-describedby="'+a.getContentElement("general","pasteMsg").domId+'" aria-multiple="true"></iframe>');d.on("load",function(a){a.removeListener();a=d.getFrameDocument();a.write(b);c.focusManager.add(a.getBody());
-CKEDITOR.env.air&&h.call(this,a.getWindow().$)},a);d.setCustomData("dialog",a);a=this.getElement();a.setHtml("");a.append(d);if(CKEDITOR.env.ie){var g=CKEDITOR.dom.element.createFromHtml('<span tabindex="-1" style="position:absolute" role="presentation"></span>');g.on("focus",function(){setTimeout(function(){d.$.contentWindow.focus()})});a.append(g);this.focus=function(){g.focus();this.fire("focus")}}this.getInputElement=function(){return d};CKEDITOR.env.ie&&(a.setStyle("display","block"),a.setStyle("height",
-d.$.offsetHeight+2+"px"))},commit:function(){var a=this.getDialog().getParentEditor(),b=this.getInputElement().getFrameDocument().getBody(),c=b.getBogus(),d;c&&c.remove();d=b.getHtml();setTimeout(function(){a.fire("pasteDialogCommit",d)},0)}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/dialogs/colordialog.js b/wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/dialogs/colordialog.js
deleted file mode 100644
index d91dcc65..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/colordialog/dialogs/colordialog.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("colordialog",function(t){function n(){f.getById(o).removeStyle("background-color");p.getContentElement("picker","selectedColor").setValue("");j&&j.removeAttribute("aria-selected");j=null}function u(a){var a=a.data.getTarget(),b;if("td"==a.getName()&&(b=a.getChild(0).getHtml()))j=a,j.setAttribute("aria-selected",!0),p.getContentElement("picker","selectedColor").setValue(b)}function y(a){for(var a=a.replace(/^#/,""),b=0,c=[];2>=b;b++)c[b]=parseInt(a.substr(2*b,2),16);return"#"+
-(165<=0.2126*c[0]+0.7152*c[1]+0.0722*c[2]?"000":"fff")}function v(a){!a.name&&(a=new CKEDITOR.event(a));var b=!/mouse/.test(a.name),c=a.data.getTarget(),e;if("td"==c.getName()&&(e=c.getChild(0).getHtml()))q(a),b?g=c:w=c,b&&(c.setStyle("border-color",y(e)),c.setStyle("border-style","dotted")),f.getById(k).setStyle("background-color",e),f.getById(l).setHtml(e)}function q(a){if(a=!/mouse/.test(a.name)&&g){var b=a.getChild(0).getHtml();a.setStyle("border-color",b);a.setStyle("border-style","solid")}!g&&
-!w&&(f.getById(k).removeStyle("background-color"),f.getById(l).setHtml("&nbsp;"))}function z(a){var b=a.data,c=b.getTarget(),e=b.getKeystroke(),d="rtl"==t.lang.dir;switch(e){case 38:if(a=c.getParent().getPrevious())a=a.getChild([c.getIndex()]),a.focus();b.preventDefault();break;case 40:if(a=c.getParent().getNext())(a=a.getChild([c.getIndex()]))&&1==a.type&&a.focus();b.preventDefault();break;case 32:case 13:u(a);b.preventDefault();break;case d?37:39:if(a=c.getNext())1==a.type&&(a.focus(),b.preventDefault(!0));
-else if(a=c.getParent().getNext())if((a=a.getChild([0]))&&1==a.type)a.focus(),b.preventDefault(!0);break;case d?39:37:if(a=c.getPrevious())a.focus(),b.preventDefault(!0);else if(a=c.getParent().getPrevious())a=a.getLast(),a.focus(),b.preventDefault(!0)}}var r=CKEDITOR.dom.element,f=CKEDITOR.document,h=t.lang.colordialog,p,x={type:"html",html:"&nbsp;"},j,g,w,m=function(a){return CKEDITOR.tools.getNextId()+"_"+a},k=m("hicolor"),l=m("hicolortext"),o=m("selhicolor"),i;(function(){function a(a,d){for(var s=
-a;s<a+3;s++){var e=new r(i.$.insertRow(-1));e.setAttribute("role","row");for(var f=d;f<d+3;f++)for(var g=0;6>g;g++)b(e.$,"#"+c[f]+c[g]+c[s])}}function b(a,c){var b=new r(a.insertCell(-1));b.setAttribute("class","ColorCell");b.setAttribute("tabIndex",-1);b.setAttribute("role","gridcell");b.on("keydown",z);b.on("click",u);b.on("focus",v);b.on("blur",q);b.setStyle("background-color",c);b.setStyle("border","1px solid "+c);b.setStyle("width","14px");b.setStyle("height","14px");var d=m("color_table_cell");
-b.setAttribute("aria-labelledby",d);b.append(CKEDITOR.dom.element.createFromHtml('<span id="'+d+'" class="cke_voice_label">'+c+"</span>",CKEDITOR.document))}i=CKEDITOR.dom.element.createFromHtml('<table tabIndex="-1" aria-label="'+h.options+'" role="grid" style="border-collapse:separate;" cellspacing="0"><caption class="cke_voice_label">'+h.options+'</caption><tbody role="presentation"></tbody></table>');i.on("mouseover",v);i.on("mouseout",q);var c="00 33 66 99 cc ff".split(" ");a(0,0);a(3,0);a(0,
-3);a(3,3);var e=new r(i.$.insertRow(-1));e.setAttribute("role","row");for(var d=0;6>d;d++)b(e.$,"#"+c[d]+c[d]+c[d]);for(d=0;12>d;d++)b(e.$,"#000000")})();return{title:h.title,minWidth:360,minHeight:220,onLoad:function(){p=this},onHide:function(){n();var a=g.getChild(0).getHtml();g.setStyle("border-color",a);g.setStyle("border-style","solid");f.getById(k).removeStyle("background-color");f.getById(l).setHtml("&nbsp;");g=null},contents:[{id:"picker",label:h.title,accessKey:"I",elements:[{type:"hbox",
-padding:0,widths:["70%","10%","30%"],children:[{type:"html",html:"<div></div>",onLoad:function(){CKEDITOR.document.getById(this.domId).append(i)},focus:function(){(g||this.getElement().getElementsByTag("td").getItem(0)).focus()}},x,{type:"vbox",padding:0,widths:["70%","5%","25%"],children:[{type:"html",html:"<span>"+h.highlight+'</span>\t\t\t\t\t\t\t\t\t\t\t\t<div id="'+k+'" style="border: 1px solid; height: 74px; width: 74px;"></div>\t\t\t\t\t\t\t\t\t\t\t\t<div id="'+l+'">&nbsp;</div><span>'+h.selected+
-'</span>\t\t\t\t\t\t\t\t\t\t\t\t<div id="'+o+'" style="border: 1px solid; height: 20px; width: 74px;"></div>'},{type:"text",label:h.selected,labelStyle:"display:none",id:"selectedColor",style:"width: 76px;margin-top:4px",onChange:function(){try{f.getById(o).setStyle("background-color",this.getValue())}catch(a){n()}}},x,{type:"button",id:"clear",label:h.clear,onClick:n}]}]}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/dialog/dialogDefinition.js b/wqflask/wqflask/static/packages/ckeditor/plugins/dialog/dialogDefinition.js
deleted file mode 100644
index 67d361ce..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/dialog/dialogDefinition.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/div/dialogs/div.js b/wqflask/wqflask/static/packages/ckeditor/plugins/div/dialogs/div.js
deleted file mode 100644
index 80bb959e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/div/dialogs/div.js
+++ /dev/null
@@ -1,9 +0,0 @@
-(function(){function p(a,k,o){if(!k.is||!k.getCustomData("block_processed"))k.is&&CKEDITOR.dom.element.setMarker(o,k,"block_processed",!0),a.push(k)}function n(a,k){function o(){this.foreach(function(a){if(/^(?!vbox|hbox)/.test(a.type)&&(a.setup||(a.setup=function(c){a.setValue(c.getAttribute(a.id)||"",1)}),!a.commit))a.commit=function(c){var g=this.getValue();"dir"==a.id&&c.getComputedStyle("direction")==g||(g?c.setAttribute(a.id,g):c.removeAttribute(a.id))}})}var n=function(){var f=CKEDITOR.tools.extend({},
-CKEDITOR.dtd.$blockLimit);a.config.div_wrapTable&&(delete f.td,delete f.th);return f}(),q=CKEDITOR.dtd.div,l={},m=[];return{title:a.lang.div.title,minWidth:400,minHeight:165,contents:[{id:"info",label:a.lang.common.generalTab,title:a.lang.common.generalTab,elements:[{type:"hbox",widths:["50%","50%"],children:[{id:"elementStyle",type:"select",style:"width: 100%;",label:a.lang.div.styleSelectLabel,"default":"",items:[[a.lang.common.notSet,""]],onChange:function(){var f=["info:elementStyle","info:class",
-"advanced:dir","advanced:style"],c=this.getDialog(),g=c._element&&c._element.clone()||new CKEDITOR.dom.element("div",a.document);this.commit(g,!0);for(var f=[].concat(f),b=f.length,i,e=0;e<b;e++)(i=c.getContentElement.apply(c,f[e].split(":")))&&i.setup&&i.setup(g,!0)},setup:function(f){for(var c in l)l[c].checkElementRemovable(f,!0,a)&&this.setValue(c,1)},commit:function(f){var c;(c=this.getValue())?l[c].applyToObject(f,a):f.removeAttribute("style")}},{id:"class",type:"text",requiredContent:"div(cke-xyz)",
-label:a.lang.common.cssClass,"default":""}]}]},{id:"advanced",label:a.lang.common.advancedTab,title:a.lang.common.advancedTab,elements:[{type:"vbox",padding:1,children:[{type:"hbox",widths:["50%","50%"],children:[{type:"text",id:"id",requiredContent:"div[id]",label:a.lang.common.id,"default":""},{type:"text",id:"lang",requiredContent:"div[lang]",label:a.lang.common.langCode,"default":""}]},{type:"hbox",children:[{type:"text",id:"style",requiredContent:"div{cke-xyz}",style:"width: 100%;",label:a.lang.common.cssStyle,
-"default":"",commit:function(a){a.setAttribute("style",this.getValue())}}]},{type:"hbox",children:[{type:"text",id:"title",requiredContent:"div[title]",style:"width: 100%;",label:a.lang.common.advisoryTitle,"default":""}]},{type:"select",id:"dir",requiredContent:"div[dir]",style:"width: 100%;",label:a.lang.common.langDir,"default":"",items:[[a.lang.common.notSet,""],[a.lang.common.langDirLtr,"ltr"],[a.lang.common.langDirRtl,"rtl"]]}]}]}],onLoad:function(){o.call(this);var f=this,c=this.getContentElement("info",
-"elementStyle");a.getStylesSet(function(g){var b,i;if(g)for(var e=0;e<g.length;e++)i=g[e],i.element&&"div"==i.element&&(b=i.name,l[b]=i=new CKEDITOR.style(i),a.filter.check(i)&&(c.items.push([b,b]),c.add(b,b)));c[1<c.items.length?"enable":"disable"]();setTimeout(function(){f._element&&c.setup(f._element)},0)})},onShow:function(){"editdiv"==k&&this.setupContent(this._element=CKEDITOR.plugins.div.getSurroundDiv(a))},onOk:function(){if("editdiv"==k)m=[this._element];else{var f=[],c={},g=[],b,i=a.getSelection(),
-e=i.getRanges(),l=i.createBookmarks(),h,j;for(h=0;h<e.length;h++)for(j=e[h].createIterator();b=j.getNextParagraph();)if(b.getName()in n&&!b.isReadOnly()){var d=b.getChildren();for(b=0;b<d.count();b++)p(g,d.getItem(b),c)}else{for(;!q[b.getName()]&&!b.equals(e[h].root);)b=b.getParent();p(g,b,c)}CKEDITOR.dom.element.clearAllMarkers(c);e=[];h=null;for(j=0;j<g.length;j++)b=g[j],d=a.elementPath(b).blockLimit,d.isReadOnly()&&(d=d.getParent()),a.config.div_wrapTable&&d.is(["td","th"])&&(d=a.elementPath(d.getParent()).blockLimit),
-d.equals(h)||(h=d,e.push([])),e[e.length-1].push(b);for(h=0;h<e.length;h++){d=e[h][0];g=d.getParent();for(b=1;b<e[h].length;b++)g=g.getCommonAncestor(e[h][b]);j=new CKEDITOR.dom.element("div",a.document);for(b=0;b<e[h].length;b++){for(d=e[h][b];!d.getParent().equals(g);)d=d.getParent();e[h][b]=d}for(b=0;b<e[h].length;b++)if(d=e[h][b],!d.getCustomData||!d.getCustomData("block_processed"))d.is&&CKEDITOR.dom.element.setMarker(c,d,"block_processed",!0),b||j.insertBefore(d),j.append(d);CKEDITOR.dom.element.clearAllMarkers(c);
-f.push(j)}i.selectBookmarks(l);m=f}f=m.length;for(c=0;c<f;c++)this.commitContent(m[c]),!m[c].getAttribute("style")&&m[c].removeAttribute("style");this.hide()},onHide:function(){"editdiv"==k&&this._element.removeCustomData("elementStyle");delete this._element}}}CKEDITOR.dialog.add("creatediv",function(a){return n(a,"creatediv")});CKEDITOR.dialog.add("editdiv",function(a){return n(a,"editdiv")})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/find/dialogs/find.js b/wqflask/wqflask/static/packages/ckeditor/plugins/find/dialogs/find.js
deleted file mode 100644
index 0ad6a589..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/find/dialogs/find.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function y(c){return c.type==CKEDITOR.NODE_TEXT&&0<c.getLength()&&(!o||!c.isReadOnly())}function s(c){return!(c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary(CKEDITOR.tools.extend({},CKEDITOR.dtd.$empty,CKEDITOR.dtd.$nonEditable)))}var o,t=function(){return{textNode:this.textNode,offset:this.offset,character:this.textNode?this.textNode.getText().charAt(this.offset):null,hitMatchBoundary:this._.matchBoundary}},u=["find","replace"],p=[["txtFindFind","txtFindReplace"],["txtFindCaseChk",
-"txtReplaceCaseChk"],["txtFindWordChk","txtReplaceWordChk"],["txtFindCyclic","txtReplaceCyclic"]],n=function(c,g){function n(a,b){var d=c.createRange();d.setStart(a.textNode,b?a.offset:a.offset+1);d.setEndAt(c.editable(),CKEDITOR.POSITION_BEFORE_END);return d}function q(a){var b=c.getSelection(),d=c.editable();b&&!a?(a=b.getRanges()[0].clone(),a.collapse(!0)):(a=c.createRange(),a.setStartAt(d,CKEDITOR.POSITION_AFTER_START));a.setEndAt(d,CKEDITOR.POSITION_BEFORE_END);return a}var v=new CKEDITOR.style(CKEDITOR.tools.extend({attributes:{"data-cke-highlight":1},
-fullMatch:1,ignoreReadonly:1,childRule:function(){return 0}},c.config.find_highlight,!0)),l=function(a,b){var d=this,c=new CKEDITOR.dom.walker(a);c.guard=b?s:function(a){!s(a)&&(d._.matchBoundary=!0)};c.evaluator=y;c.breakOnFalse=1;a.startContainer.type==CKEDITOR.NODE_TEXT&&(this.textNode=a.startContainer,this.offset=a.startOffset-1);this._={matchWord:b,walker:c,matchBoundary:!1}};l.prototype={next:function(){return this.move()},back:function(){return this.move(!0)},move:function(a){var b=this.textNode;
-if(null===b)return t.call(this);this._.matchBoundary=!1;if(b&&a&&0<this.offset)this.offset--;else if(b&&this.offset<b.getLength()-1)this.offset++;else{for(b=null;!b&&!(b=this._.walker[a?"previous":"next"].call(this._.walker),this._.matchWord&&!b||this._.walker._.end););this.offset=(this.textNode=b)?a?b.getLength()-1:0:0}return t.call(this)}};var r=function(a,b){this._={walker:a,cursors:[],rangeLength:b,highlightRange:null,isMatched:0}};r.prototype={toDomRange:function(){var a=c.createRange(),b=this._.cursors;
-if(1>b.length){var d=this._.walker.textNode;if(d)a.setStartAfter(d);else return null}else d=b[0],b=b[b.length-1],a.setStart(d.textNode,d.offset),a.setEnd(b.textNode,b.offset+1);return a},updateFromDomRange:function(a){var b=new l(a);this._.cursors=[];do a=b.next(),a.character&&this._.cursors.push(a);while(a.character);this._.rangeLength=this._.cursors.length},setMatched:function(){this._.isMatched=!0},clearMatched:function(){this._.isMatched=!1},isMatched:function(){return this._.isMatched},highlight:function(){if(!(1>
-this._.cursors.length)){this._.highlightRange&&this.removeHighlight();var a=this.toDomRange(),b=a.createBookmark();v.applyToRange(a,c);a.moveToBookmark(b);this._.highlightRange=a;b=a.startContainer;b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent());b.scrollIntoView();this.updateFromDomRange(a)}},removeHighlight:function(){if(this._.highlightRange){var a=this._.highlightRange.createBookmark();v.removeFromRange(this._.highlightRange,c);this._.highlightRange.moveToBookmark(a);this.updateFromDomRange(this._.highlightRange);
-this._.highlightRange=null}},isReadOnly:function(){return!this._.highlightRange?0:this._.highlightRange.startContainer.isReadOnly()},moveBack:function(){var a=this._.walker.back(),b=this._.cursors;a.hitMatchBoundary&&(this._.cursors=b=[]);b.unshift(a);b.length>this._.rangeLength&&b.pop();return a},moveNext:function(){var a=this._.walker.next(),b=this._.cursors;a.hitMatchBoundary&&(this._.cursors=b=[]);b.push(a);b.length>this._.rangeLength&&b.shift();return a},getEndCharacter:function(){var a=this._.cursors;
-return 1>a.length?null:a[a.length-1].character},getNextCharacterRange:function(a){var b,d;d=this._.cursors;d=(b=d[d.length-1])&&b.textNode?new l(n(b)):this._.walker;return new r(d,a)},getCursors:function(){return this._.cursors}};var w=function(a,b){var d=[-1];b&&(a=a.toLowerCase());for(var c=0;c<a.length;c++)for(d.push(d[c]+1);0<d[c+1]&&a.charAt(c)!=a.charAt(d[c+1]-1);)d[c+1]=d[d[c+1]-1]+1;this._={overlap:d,state:0,ignoreCase:!!b,pattern:a}};w.prototype={feedCharacter:function(a){for(this._.ignoreCase&&
-(a=a.toLowerCase());;){if(a==this._.pattern.charAt(this._.state))return this._.state++,this._.state==this._.pattern.length?(this._.state=0,2):1;if(this._.state)this._.state=this._.overlap[this._.state];else return 0}return null},reset:function(){this._.state=0}};var z=/[.,"'?!;: \u0085\u00a0\u1680\u280e\u2028\u2029\u202f\u205f\u3000]/,x=function(a){if(!a)return!0;var b=a.charCodeAt(0);return 9<=b&&13>=b||8192<=b&&8202>=b||z.test(a)},e={searchRange:null,matchRange:null,find:function(a,b,d,f,e,A){this.matchRange?
-(this.matchRange.removeHighlight(),this.matchRange=this.matchRange.getNextCharacterRange(a.length)):this.matchRange=new r(new l(this.searchRange),a.length);for(var i=new w(a,!b),j=0,k="%";null!==k;){for(this.matchRange.moveNext();k=this.matchRange.getEndCharacter();){j=i.feedCharacter(k);if(2==j)break;this.matchRange.moveNext().hitMatchBoundary&&i.reset()}if(2==j){if(d){var h=this.matchRange.getCursors(),m=h[h.length-1],h=h[0],g=c.createRange();g.setStartAt(c.editable(),CKEDITOR.POSITION_AFTER_START);
-g.setEnd(h.textNode,h.offset);h=g;m=n(m);h.trim();m.trim();h=new l(h,!0);m=new l(m,!0);if(!x(h.back().character)||!x(m.next().character))continue}this.matchRange.setMatched();!1!==e&&this.matchRange.highlight();return!0}}this.matchRange.clearMatched();this.matchRange.removeHighlight();return f&&!A?(this.searchRange=q(1),this.matchRange=null,arguments.callee.apply(this,Array.prototype.slice.call(arguments).concat([!0]))):!1},replaceCounter:0,replace:function(a,b,d,f,e,g,i){o=1;a=0;if(this.matchRange&&
-this.matchRange.isMatched()&&!this.matchRange._.isReplaced&&!this.matchRange.isReadOnly()){this.matchRange.removeHighlight();b=this.matchRange.toDomRange();d=c.document.createText(d);if(!i){var j=c.getSelection();j.selectRanges([b]);c.fire("saveSnapshot")}b.deleteContents();b.insertNode(d);i||(j.selectRanges([b]),c.fire("saveSnapshot"));this.matchRange.updateFromDomRange(b);i||this.matchRange.highlight();this.matchRange._.isReplaced=!0;this.replaceCounter++;a=1}else a=this.find(b,f,e,g,!i);o=0;return a}},
-f=c.lang.find;return{title:f.title,resizable:CKEDITOR.DIALOG_RESIZE_NONE,minWidth:350,minHeight:170,buttons:[CKEDITOR.dialog.cancelButton(c,{label:c.lang.common.close})],contents:[{id:"find",label:f.find,title:f.find,accessKey:"",elements:[{type:"hbox",widths:["230px","90px"],children:[{type:"text",id:"txtFindFind",label:f.findWhat,isChanged:!1,labelLayout:"horizontal",accessKey:"F"},{type:"button",id:"btnFind",align:"left",style:"width:100%",label:f.find,onClick:function(){var a=this.getDialog();
-e.find(a.getValueOf("find","txtFindFind"),a.getValueOf("find","txtFindCaseChk"),a.getValueOf("find","txtFindWordChk"),a.getValueOf("find","txtFindCyclic"))||alert(f.notFoundMsg)}}]},{type:"fieldset",label:CKEDITOR.tools.htmlEncode(f.findOptions),style:"margin-top:29px",children:[{type:"vbox",padding:0,children:[{type:"checkbox",id:"txtFindCaseChk",isChanged:!1,label:f.matchCase},{type:"checkbox",id:"txtFindWordChk",isChanged:!1,label:f.matchWord},{type:"checkbox",id:"txtFindCyclic",isChanged:!1,"default":!0,
-label:f.matchCyclic}]}]}]},{id:"replace",label:f.replace,accessKey:"M",elements:[{type:"hbox",widths:["230px","90px"],children:[{type:"text",id:"txtFindReplace",label:f.findWhat,isChanged:!1,labelLayout:"horizontal",accessKey:"F"},{type:"button",id:"btnFindReplace",align:"left",style:"width:100%",label:f.replace,onClick:function(){var a=this.getDialog();e.replace(a,a.getValueOf("replace","txtFindReplace"),a.getValueOf("replace","txtReplace"),a.getValueOf("replace","txtReplaceCaseChk"),a.getValueOf("replace",
-"txtReplaceWordChk"),a.getValueOf("replace","txtReplaceCyclic"))||alert(f.notFoundMsg)}}]},{type:"hbox",widths:["230px","90px"],children:[{type:"text",id:"txtReplace",label:f.replaceWith,isChanged:!1,labelLayout:"horizontal",accessKey:"R"},{type:"button",id:"btnReplaceAll",align:"left",style:"width:100%",label:f.replaceAll,isChanged:!1,onClick:function(){var a=this.getDialog();e.replaceCounter=0;e.searchRange=q(1);e.matchRange&&(e.matchRange.removeHighlight(),e.matchRange=null);for(c.fire("saveSnapshot");e.replace(a,
-a.getValueOf("replace","txtFindReplace"),a.getValueOf("replace","txtReplace"),a.getValueOf("replace","txtReplaceCaseChk"),a.getValueOf("replace","txtReplaceWordChk"),!1,!0););e.replaceCounter?(alert(f.replaceSuccessMsg.replace(/%1/,e.replaceCounter)),c.fire("saveSnapshot")):alert(f.notFoundMsg)}}]},{type:"fieldset",label:CKEDITOR.tools.htmlEncode(f.findOptions),children:[{type:"vbox",padding:0,children:[{type:"checkbox",id:"txtReplaceCaseChk",isChanged:!1,label:f.matchCase},{type:"checkbox",id:"txtReplaceWordChk",
-isChanged:!1,label:f.matchWord},{type:"checkbox",id:"txtReplaceCyclic",isChanged:!1,"default":!0,label:f.matchCyclic}]}]}]}],onLoad:function(){var a=this,b,c=0;this.on("hide",function(){c=0});this.on("show",function(){c=1});this.selectPage=CKEDITOR.tools.override(this.selectPage,function(f){return function(e){f.call(a,e);var g=a._.tabs[e],i;i="find"===e?"txtFindWordChk":"txtReplaceWordChk";b=a.getContentElement(e,"find"===e?"txtFindFind":"txtFindReplace");a.getContentElement(e,i);g.initialized||(CKEDITOR.document.getById(b._.inputId),
-g.initialized=!0);if(c){var j,e="find"===e?1:0,g=1-e,k,h=p.length;for(k=0;k<h;k++)i=this.getContentElement(u[e],p[k][e]),j=this.getContentElement(u[g],p[k][g]),j.setValue(i.getValue())}}})},onShow:function(){e.searchRange=q();var a=this.getParentEditor().getSelection().getSelectedText(),b=this.getContentElement(g,"find"==g?"txtFindFind":"txtFindReplace");b.setValue(a);b.select();this.selectPage(g);this[("find"==g&&this._.editor.readOnly?"hide":"show")+"Page"]("replace")},onHide:function(){var a;e.matchRange&&
-e.matchRange.isMatched()&&(e.matchRange.removeHighlight(),c.focus(),(a=e.matchRange.toDomRange())&&c.getSelection().selectRanges([a]));delete e.matchRange},onFocus:function(){return"replace"==g?this.getContentElement("replace","txtFindReplace"):this.getContentElement("find","txtFindFind")}}};CKEDITOR.dialog.add("find",function(c){return n(c,"find")});CKEDITOR.dialog.add("replace",function(c){return n(c,"replace")})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/flash/dialogs/flash.js b/wqflask/wqflask/static/packages/ckeditor/plugins/flash/dialogs/flash.js
deleted file mode 100644
index 6592f8e4..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/flash/dialogs/flash.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function b(a,b,c){var k=n[this.id];if(k)for(var f=this instanceof CKEDITOR.ui.dialog.checkbox,e=0;e<k.length;e++){var d=k[e];switch(d.type){case g:if(!a)continue;if(null!==a.getAttribute(d.name)){a=a.getAttribute(d.name);f?this.setValue("true"==a.toLowerCase()):this.setValue(a);return}f&&this.setValue(!!d["default"]);break;case o:if(!a)continue;if(d.name in c){a=c[d.name];f?this.setValue("true"==a.toLowerCase()):this.setValue(a);return}f&&this.setValue(!!d["default"]);break;case i:if(!b)continue;
-if(b.getAttribute(d.name)){a=b.getAttribute(d.name);f?this.setValue("true"==a.toLowerCase()):this.setValue(a);return}f&&this.setValue(!!d["default"])}}}function c(a,b,c){var k=n[this.id];if(k)for(var f=""===this.getValue(),e=this instanceof CKEDITOR.ui.dialog.checkbox,d=0;d<k.length;d++){var h=k[d];switch(h.type){case g:if(!a||"data"==h.name&&b&&!a.hasAttribute("data"))continue;var l=this.getValue();f||e&&l===h["default"]?a.removeAttribute(h.name):a.setAttribute(h.name,l);break;case o:if(!a)continue;
-l=this.getValue();if(f||e&&l===h["default"])h.name in c&&c[h.name].remove();else if(h.name in c)c[h.name].setAttribute("value",l);else{var p=CKEDITOR.dom.element.createFromHtml("<cke:param></cke:param>",a.getDocument());p.setAttributes({name:h.name,value:l});1>a.getChildCount()?p.appendTo(a):p.insertBefore(a.getFirst())}break;case i:if(!b)continue;l=this.getValue();f||e&&l===h["default"]?b.removeAttribute(h.name):b.setAttribute(h.name,l)}}}for(var g=1,o=2,i=4,n={id:[{type:g,name:"id"}],classid:[{type:g,
-name:"classid"}],codebase:[{type:g,name:"codebase"}],pluginspage:[{type:i,name:"pluginspage"}],src:[{type:o,name:"movie"},{type:i,name:"src"},{type:g,name:"data"}],name:[{type:i,name:"name"}],align:[{type:g,name:"align"}],"class":[{type:g,name:"class"},{type:i,name:"class"}],width:[{type:g,name:"width"},{type:i,name:"width"}],height:[{type:g,name:"height"},{type:i,name:"height"}],hSpace:[{type:g,name:"hSpace"},{type:i,name:"hSpace"}],vSpace:[{type:g,name:"vSpace"},{type:i,name:"vSpace"}],style:[{type:g,
-name:"style"},{type:i,name:"style"}],type:[{type:i,name:"type"}]},m="play loop menu quality scale salign wmode bgcolor base flashvars allowScriptAccess allowFullScreen".split(" "),j=0;j<m.length;j++)n[m[j]]=[{type:i,name:m[j]},{type:o,name:m[j]}];m=["play","loop","menu"];for(j=0;j<m.length;j++)n[m[j]][0]["default"]=n[m[j]][1]["default"]=!0;CKEDITOR.dialog.add("flash",function(a){var g=!a.config.flashEmbedTagOnly,i=a.config.flashAddEmbedTag||a.config.flashEmbedTagOnly,k,f="<div>"+CKEDITOR.tools.htmlEncode(a.lang.common.preview)+
-'<br><div id="cke_FlashPreviewLoader'+CKEDITOR.tools.getNextNumber()+'" style="display:none"><div class="loading">&nbsp;</div></div><div id="cke_FlashPreviewBox'+CKEDITOR.tools.getNextNumber()+'" class="FlashPreviewBox"></div></div>';return{title:a.lang.flash.title,minWidth:420,minHeight:310,onShow:function(){this.fakeImage=this.objectNode=this.embedNode=null;k=new CKEDITOR.dom.element("embed",a.document);var e=this.getSelectedElement();if(e&&e.data("cke-real-element-type")&&"flash"==e.data("cke-real-element-type")){this.fakeImage=
-e;var d=a.restoreRealElement(e),h=null,b=null,c={};if("cke:object"==d.getName()){h=d;d=h.getElementsByTag("embed","cke");0<d.count()&&(b=d.getItem(0));for(var d=h.getElementsByTag("param","cke"),g=0,i=d.count();g<i;g++){var f=d.getItem(g),j=f.getAttribute("name"),f=f.getAttribute("value");c[j]=f}}else"cke:embed"==d.getName()&&(b=d);this.objectNode=h;this.embedNode=b;this.setupContent(h,b,c,e)}},onOk:function(){var e=null,d=null,b=null;if(this.fakeImage)e=this.objectNode,d=this.embedNode;else if(g&&
-(e=CKEDITOR.dom.element.createFromHtml("<cke:object></cke:object>",a.document),e.setAttributes({classid:"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",codebase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"})),i)d=CKEDITOR.dom.element.createFromHtml("<cke:embed></cke:embed>",a.document),d.setAttributes({type:"application/x-shockwave-flash",pluginspage:"http://www.macromedia.com/go/getflashplayer"}),e&&d.appendTo(e);if(e)for(var b={},c=e.getElementsByTag("param",
-"cke"),f=0,j=c.count();f<j;f++)b[c.getItem(f).getAttribute("name")]=c.getItem(f);c={};f={};this.commitContent(e,d,b,c,f);e=a.createFakeElement(e||d,"cke_flash","flash",!0);e.setAttributes(f);e.setStyles(c);this.fakeImage?(e.replace(this.fakeImage),a.getSelection().selectElement(e)):a.insertElement(e)},onHide:function(){this.preview&&this.preview.setHtml("")},contents:[{id:"info",label:a.lang.common.generalTab,accessKey:"I",elements:[{type:"vbox",padding:0,children:[{type:"hbox",widths:["280px","110px"],
-align:"right",children:[{id:"src",type:"text",label:a.lang.common.url,required:!0,validate:CKEDITOR.dialog.validate.notEmpty(a.lang.flash.validateSrc),setup:b,commit:c,onLoad:function(){var a=this.getDialog(),b=function(b){k.setAttribute("src",b);a.preview.setHtml('<embed height="100%" width="100%" src="'+CKEDITOR.tools.htmlEncode(k.getAttribute("src"))+'" type="application/x-shockwave-flash"></embed>')};a.preview=a.getContentElement("info","preview").getElement().getChild(3);this.on("change",function(a){a.data&&
-a.data.value&&b(a.data.value)});this.getInputElement().on("change",function(){b(this.getValue())},this)}},{type:"button",id:"browse",filebrowser:"info:src",hidden:!0,style:"display:inline-block;margin-top:14px;",label:a.lang.common.browseServer}]}]},{type:"hbox",widths:["25%","25%","25%","25%","25%"],children:[{type:"text",id:"width",requiredContent:"embed[width]",style:"width:95px",label:a.lang.common.width,validate:CKEDITOR.dialog.validate.htmlLength(a.lang.common.invalidHtmlLength.replace("%1",
-a.lang.common.width)),setup:b,commit:c},{type:"text",id:"height",requiredContent:"embed[height]",style:"width:95px",label:a.lang.common.height,validate:CKEDITOR.dialog.validate.htmlLength(a.lang.common.invalidHtmlLength.replace("%1",a.lang.common.height)),setup:b,commit:c},{type:"text",id:"hSpace",requiredContent:"embed[hspace]",style:"width:95px",label:a.lang.flash.hSpace,validate:CKEDITOR.dialog.validate.integer(a.lang.flash.validateHSpace),setup:b,commit:c},{type:"text",id:"vSpace",requiredContent:"embed[vspace]",
-style:"width:95px",label:a.lang.flash.vSpace,validate:CKEDITOR.dialog.validate.integer(a.lang.flash.validateVSpace),setup:b,commit:c}]},{type:"vbox",children:[{type:"html",id:"preview",style:"width:95%;",html:f}]}]},{id:"Upload",hidden:!0,filebrowser:"uploadButton",label:a.lang.common.upload,elements:[{type:"file",id:"upload",label:a.lang.common.upload,size:38},{type:"fileButton",id:"uploadButton",label:a.lang.common.uploadSubmit,filebrowser:"info:src","for":["Upload","upload"]}]},{id:"properties",
-label:a.lang.flash.propertiesTab,elements:[{type:"hbox",widths:["50%","50%"],children:[{id:"scale",type:"select",requiredContent:"embed[scale]",label:a.lang.flash.scale,"default":"",style:"width : 100%;",items:[[a.lang.common.notSet,""],[a.lang.flash.scaleAll,"showall"],[a.lang.flash.scaleNoBorder,"noborder"],[a.lang.flash.scaleFit,"exactfit"]],setup:b,commit:c},{id:"allowScriptAccess",type:"select",requiredContent:"embed[allowscriptaccess]",label:a.lang.flash.access,"default":"",style:"width : 100%;",
-items:[[a.lang.common.notSet,""],[a.lang.flash.accessAlways,"always"],[a.lang.flash.accessSameDomain,"samedomain"],[a.lang.flash.accessNever,"never"]],setup:b,commit:c}]},{type:"hbox",widths:["50%","50%"],children:[{id:"wmode",type:"select",requiredContent:"embed[wmode]",label:a.lang.flash.windowMode,"default":"",style:"width : 100%;",items:[[a.lang.common.notSet,""],[a.lang.flash.windowModeWindow,"window"],[a.lang.flash.windowModeOpaque,"opaque"],[a.lang.flash.windowModeTransparent,"transparent"]],
-setup:b,commit:c},{id:"quality",type:"select",requiredContent:"embed[quality]",label:a.lang.flash.quality,"default":"high",style:"width : 100%;",items:[[a.lang.common.notSet,""],[a.lang.flash.qualityBest,"best"],[a.lang.flash.qualityHigh,"high"],[a.lang.flash.qualityAutoHigh,"autohigh"],[a.lang.flash.qualityMedium,"medium"],[a.lang.flash.qualityAutoLow,"autolow"],[a.lang.flash.qualityLow,"low"]],setup:b,commit:c}]},{type:"hbox",widths:["50%","50%"],children:[{id:"align",type:"select",requiredContent:"object[align]",
-label:a.lang.common.align,"default":"",style:"width : 100%;",items:[[a.lang.common.notSet,""],[a.lang.common.alignLeft,"left"],[a.lang.flash.alignAbsBottom,"absBottom"],[a.lang.flash.alignAbsMiddle,"absMiddle"],[a.lang.flash.alignBaseline,"baseline"],[a.lang.common.alignBottom,"bottom"],[a.lang.common.alignMiddle,"middle"],[a.lang.common.alignRight,"right"],[a.lang.flash.alignTextTop,"textTop"],[a.lang.common.alignTop,"top"]],setup:b,commit:function(a,b,f,g,i){var j=this.getValue();c.apply(this,arguments);
-j&&(i.align=j)}},{type:"html",html:"<div></div>"}]},{type:"fieldset",label:CKEDITOR.tools.htmlEncode(a.lang.flash.flashvars),children:[{type:"vbox",padding:0,children:[{type:"checkbox",id:"menu",label:a.lang.flash.chkMenu,"default":!0,setup:b,commit:c},{type:"checkbox",id:"play",label:a.lang.flash.chkPlay,"default":!0,setup:b,commit:c},{type:"checkbox",id:"loop",label:a.lang.flash.chkLoop,"default":!0,setup:b,commit:c},{type:"checkbox",id:"allowFullScreen",label:a.lang.flash.chkFull,"default":!0,
-setup:b,commit:c}]}]}]},{id:"advanced",label:a.lang.common.advancedTab,elements:[{type:"hbox",children:[{type:"text",id:"id",requiredContent:"object[id]",label:a.lang.common.id,setup:b,commit:c}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",id:"bgcolor",requiredContent:"embed[bgcolor]",label:a.lang.flash.bgcolor,setup:b,commit:c},{type:"text",id:"class",requiredContent:"embed(cke-xyz)",label:a.lang.common.cssClass,setup:b,commit:c}]},{type:"text",id:"style",requiredContent:"embed{cke-xyz}",
-validate:CKEDITOR.dialog.validate.inlineStyle(a.lang.common.invalidInlineStyle),label:a.lang.common.cssStyle,setup:b,commit:c}]}]}})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/flash/images/placeholder.png b/wqflask/wqflask/static/packages/ckeditor/plugins/flash/images/placeholder.png
deleted file mode 100644
index 0bc6caa7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/flash/images/placeholder.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/button.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/button.js
deleted file mode 100644
index 56a4efdd..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/button.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("button",function(b){function d(a){var b=this.getValue();b?(a.attributes[this.id]=b,"name"==this.id&&(a.attributes["data-cke-saved-name"]=b)):(delete a.attributes[this.id],"name"==this.id&&delete a.attributes["data-cke-saved-name"])}return{title:b.lang.forms.button.title,minWidth:350,minHeight:150,onShow:function(){delete this.button;var a=this.getParentEditor().getSelection().getSelectedElement();a&&a.is("input")&&a.getAttribute("type")in{button:1,reset:1,submit:1}&&(this.button=
-a,this.setupContent(a))},onOk:function(){var a=this.getParentEditor(),b=this.button,d=!b,c=b?CKEDITOR.htmlParser.fragment.fromHtml(b.getOuterHtml()).children[0]:new CKEDITOR.htmlParser.element("input");this.commitContent(c);var e=new CKEDITOR.htmlParser.basicWriter;c.writeHtml(e);c=CKEDITOR.dom.element.createFromHtml(e.getHtml(),a.document);d?a.insertElement(c):(c.replace(b),a.getSelection().selectElement(c))},contents:[{id:"info",label:b.lang.forms.button.title,title:b.lang.forms.button.title,elements:[{id:"name",
-type:"text",label:b.lang.common.name,"default":"",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:d},{id:"value",type:"text",label:b.lang.forms.button.text,accessKey:"V","default":"",setup:function(a){this.setValue(a.getAttribute("value")||"")},commit:d},{id:"type",type:"select",label:b.lang.forms.button.type,"default":"button",accessKey:"T",items:[[b.lang.forms.button.typeBtn,"button"],[b.lang.forms.button.typeSbm,"submit"],[b.lang.forms.button.typeRst,
-"reset"]],setup:function(a){this.setValue(a.getAttribute("type")||"")},commit:d}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/checkbox.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/checkbox.js
deleted file mode 100644
index 65f1be60..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/checkbox.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("checkbox",function(d){return{title:d.lang.forms.checkboxAndRadio.checkboxTitle,minWidth:350,minHeight:140,onShow:function(){delete this.checkbox;var a=this.getParentEditor().getSelection().getSelectedElement();a&&"checkbox"==a.getAttribute("type")&&(this.checkbox=a,this.setupContent(a))},onOk:function(){var a,b=this.checkbox;b||(a=this.getParentEditor(),b=a.document.createElement("input"),b.setAttribute("type","checkbox"),a.insertElement(b));this.commitContent({element:b})},contents:[{id:"info",
-label:d.lang.forms.checkboxAndRadio.checkboxTitle,title:d.lang.forms.checkboxAndRadio.checkboxTitle,startupFocus:"txtName",elements:[{id:"txtName",type:"text",label:d.lang.common.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){a=a.element;this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{id:"txtValue",type:"text",label:d.lang.forms.checkboxAndRadio.value,
-"default":"",accessKey:"V",setup:function(a){a=a.getAttribute("value");this.setValue(CKEDITOR.env.ie&&"on"==a?"":a)},commit:function(a){var b=a.element,c=this.getValue();c&&!(CKEDITOR.env.ie&&"on"==c)?b.setAttribute("value",c):CKEDITOR.env.ie?(c=new CKEDITOR.dom.element("input",b.getDocument()),b.copyAttributes(c,{value:1}),c.replace(b),d.getSelection().selectElement(c),a.element=c):b.removeAttribute("value")}},{id:"cmbSelected",type:"checkbox",label:d.lang.forms.checkboxAndRadio.selected,"default":"",
-accessKey:"S",value:"checked",setup:function(a){this.setValue(a.getAttribute("checked"))},commit:function(a){var b=a.element;if(CKEDITOR.env.ie){var c=!!b.getAttribute("checked"),e=!!this.getValue();c!=e&&(c=CKEDITOR.dom.element.createFromHtml('<input type="checkbox"'+(e?' checked="checked"':"")+"/>",d.document),b.copyAttributes(c,{type:1,checked:1}),c.replace(b),d.getSelection().selectElement(c),a.element=c)}else this.getValue()?b.setAttribute("checked","checked"):b.removeAttribute("checked")}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/form.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/form.js
deleted file mode 100644
index 86267185..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/form.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("form",function(a){var d={action:1,id:1,method:1,enctype:1,target:1};return{title:a.lang.forms.form.title,minWidth:350,minHeight:200,onShow:function(){delete this.form;var b=this.getParentEditor().elementPath().contains("form",1);b&&(this.form=b,this.setupContent(b))},onOk:function(){var b,a=this.form,c=!a;c&&(b=this.getParentEditor(),a=b.document.createElement("form"),a.appendBogus());c&&b.insertElement(a);this.commitContent(a)},onLoad:function(){function a(b){this.setValue(b.getAttribute(this.id)||
-"")}function e(a){this.getValue()?a.setAttribute(this.id,this.getValue()):a.removeAttribute(this.id)}this.foreach(function(c){d[c.id]&&(c.setup=a,c.commit=e)})},contents:[{id:"info",label:a.lang.forms.form.title,title:a.lang.forms.form.title,elements:[{id:"txtName",type:"text",label:a.lang.common.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",
-!1),a.removeAttribute("name"))}},{id:"action",type:"text",label:a.lang.forms.form.action,"default":"",accessKey:"T"},{type:"hbox",widths:["45%","55%"],children:[{id:"id",type:"text",label:a.lang.common.id,"default":"",accessKey:"I"},{id:"enctype",type:"select",label:a.lang.forms.form.encoding,style:"width:100%",accessKey:"E","default":"",items:[[""],["text/plain"],["multipart/form-data"],["application/x-www-form-urlencoded"]]}]},{type:"hbox",widths:["45%","55%"],children:[{id:"target",type:"select",
-label:a.lang.common.target,style:"width:100%",accessKey:"M","default":"",items:[[a.lang.common.notSet,""],[a.lang.common.targetNew,"_blank"],[a.lang.common.targetTop,"_top"],[a.lang.common.targetSelf,"_self"],[a.lang.common.targetParent,"_parent"]]},{id:"method",type:"select",label:a.lang.forms.form.method,accessKey:"M","default":"GET",items:[["GET","get"],["POST","post"]]}]}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/hiddenfield.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/hiddenfield.js
deleted file mode 100644
index f4699b7d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/hiddenfield.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("hiddenfield",function(d){return{title:d.lang.forms.hidden.title,hiddenField:null,minWidth:350,minHeight:110,onShow:function(){delete this.hiddenField;var a=this.getParentEditor(),b=a.getSelection(),c=b.getSelectedElement();c&&(c.data("cke-real-element-type")&&"hiddenfield"==c.data("cke-real-element-type"))&&(this.hiddenField=c,c=a.restoreRealElement(this.hiddenField),this.setupContent(c),b.selectElement(this.hiddenField))},onOk:function(){var a=this.getValueOf("info","_cke_saved_name");
-this.getValueOf("info","value");var b=this.getParentEditor(),a=CKEDITOR.env.ie&&!(8<=CKEDITOR.document.$.documentMode)?b.document.createElement('<input name="'+CKEDITOR.tools.htmlEncode(a)+'">'):b.document.createElement("input");a.setAttribute("type","hidden");this.commitContent(a);a=b.createFakeElement(a,"cke_hidden","hiddenfield");this.hiddenField?(a.replace(this.hiddenField),b.getSelection().selectElement(a)):b.insertElement(a);return!0},contents:[{id:"info",label:d.lang.forms.hidden.title,title:d.lang.forms.hidden.title,
-elements:[{id:"_cke_saved_name",type:"text",label:d.lang.forms.hidden.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){this.getValue()?a.setAttribute("name",this.getValue()):a.removeAttribute("name")}},{id:"value",type:"text",label:d.lang.forms.hidden.value,"default":"",accessKey:"V",setup:function(a){this.setValue(a.getAttribute("value")||"")},commit:function(a){this.getValue()?a.setAttribute("value",this.getValue()):
-a.removeAttribute("value")}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/radio.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/radio.js
deleted file mode 100644
index 1af693e1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/radio.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("radio",function(d){return{title:d.lang.forms.checkboxAndRadio.radioTitle,minWidth:350,minHeight:140,onShow:function(){delete this.radioButton;var a=this.getParentEditor().getSelection().getSelectedElement();a&&("input"==a.getName()&&"radio"==a.getAttribute("type"))&&(this.radioButton=a,this.setupContent(a))},onOk:function(){var a,b=this.radioButton,c=!b;c&&(a=this.getParentEditor(),b=a.document.createElement("input"),b.setAttribute("type","radio"));c&&a.insertElement(b);this.commitContent({element:b})},
-contents:[{id:"info",label:d.lang.forms.checkboxAndRadio.radioTitle,title:d.lang.forms.checkboxAndRadio.radioTitle,elements:[{id:"name",type:"text",label:d.lang.common.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){a=a.element;this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{id:"value",type:"text",label:d.lang.forms.checkboxAndRadio.value,"default":"",
-accessKey:"V",setup:function(a){this.setValue(a.getAttribute("value")||"")},commit:function(a){a=a.element;this.getValue()?a.setAttribute("value",this.getValue()):a.removeAttribute("value")}},{id:"checked",type:"checkbox",label:d.lang.forms.checkboxAndRadio.selected,"default":"",accessKey:"S",value:"checked",setup:function(a){this.setValue(a.getAttribute("checked"))},commit:function(a){var b=a.element;if(CKEDITOR.env.ie){var c=b.getAttribute("checked"),e=!!this.getValue();c!=e&&(c=CKEDITOR.dom.element.createFromHtml('<input type="radio"'+
-(e?' checked="checked"':"")+"></input>",d.document),b.copyAttributes(c,{type:1,checked:1}),c.replace(b),d.getSelection().selectElement(c),a.element=c)}else this.getValue()?b.setAttribute("checked","checked"):b.removeAttribute("checked")}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/select.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/select.js
deleted file mode 100644
index a6c50e20..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/select.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("select",function(c){function h(a,b,e,d,c){a=f(a);d=d?d.createElement("OPTION"):document.createElement("OPTION");if(a&&d&&"option"==d.getName())CKEDITOR.env.ie?(isNaN(parseInt(c,10))?a.$.options.add(d.$):a.$.options.add(d.$,c),d.$.innerHTML=0<b.length?b:"",d.$.value=e):(null!==c&&c<a.getChildCount()?a.getChild(0>c?0:c).insertBeforeMe(d):a.append(d),d.setText(0<b.length?b:""),d.setValue(e));else return!1;return d}function m(a){for(var a=f(a),b=g(a),e=a.getChildren().count()-1;0<=
-e;e--)a.getChild(e).$.selected&&a.getChild(e).remove();i(a,b)}function n(a,b,e,d){a=f(a);if(0>b)return!1;a=a.getChild(b);a.setText(e);a.setValue(d);return a}function k(a){for(a=f(a);a.getChild(0)&&a.getChild(0).remove(););}function j(a,b,e){var a=f(a),d=g(a);if(0>d)return!1;b=d+b;b=0>b?0:b;b=b>=a.getChildCount()?a.getChildCount()-1:b;if(d==b)return!1;var d=a.getChild(d),c=d.getText(),o=d.getValue();d.remove();d=h(a,c,o,!e?null:e,b);i(a,b);return d}function g(a){return(a=f(a))?a.$.selectedIndex:-1}
-function i(a,b){a=f(a);if(0>b)return null;var e=a.getChildren().count();a.$.selectedIndex=b>=e?e-1:b;return a}function l(a){return(a=f(a))?a.getChildren():!1}function f(a){return a&&a.domId&&a.getInputElement().$?a.getInputElement():a&&a.$?a:!1}return{title:c.lang.forms.select.title,minWidth:CKEDITOR.env.ie?460:395,minHeight:CKEDITOR.env.ie?320:300,onShow:function(){delete this.selectBox;this.setupContent("clear");var a=this.getParentEditor().getSelection().getSelectedElement();if(a&&"select"==a.getName()){this.selectBox=
-a;this.setupContent(a.getName(),a);for(var a=l(a),b=0;b<a.count();b++)this.setupContent("option",a.getItem(b))}},onOk:function(){var a=this.getParentEditor(),b=this.selectBox,e=!b;e&&(b=a.document.createElement("select"));this.commitContent(b);if(e&&(a.insertElement(b),CKEDITOR.env.ie)){var d=a.getSelection(),c=d.createBookmarks();setTimeout(function(){d.selectBookmarks(c)},0)}},contents:[{id:"info",label:c.lang.forms.select.selectInfo,title:c.lang.forms.select.selectInfo,accessKey:"",elements:[{id:"txtName",
-type:"text",widths:["25%","75%"],labelLayout:"horizontal",label:c.lang.common.name,"default":"",accessKey:"N",style:"width:350px",setup:function(a,b){"clear"==a?this.setValue(this["default"]||""):"select"==a&&this.setValue(b.data("cke-saved-name")||b.getAttribute("name")||"")},commit:function(a){this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{id:"txtValue",type:"text",widths:["25%","75%"],labelLayout:"horizontal",label:c.lang.forms.select.value,
-style:"width:350px","default":"",className:"cke_disabled",onLoad:function(){this.getInputElement().setAttribute("readOnly",!0)},setup:function(a,b){"clear"==a?this.setValue(""):"option"==a&&b.getAttribute("selected")&&this.setValue(b.$.value)}},{type:"hbox",widths:["175px","170px"],children:[{id:"txtSize",type:"text",labelLayout:"horizontal",label:c.lang.forms.select.size,"default":"",accessKey:"S",style:"width:175px",validate:function(){var a=CKEDITOR.dialog.validate.integer(c.lang.common.validateNumberFailed);
-return""===this.getValue()||a.apply(this)},setup:function(a,b){"select"==a&&this.setValue(b.getAttribute("size")||"");CKEDITOR.env.webkit&&this.getInputElement().setStyle("width","86px")},commit:function(a){this.getValue()?a.setAttribute("size",this.getValue()):a.removeAttribute("size")}},{type:"html",html:"<span>"+CKEDITOR.tools.htmlEncode(c.lang.forms.select.lines)+"</span>"}]},{type:"html",html:"<span>"+CKEDITOR.tools.htmlEncode(c.lang.forms.select.opAvail)+"</span>"},{type:"hbox",widths:["115px",
-"115px","100px"],children:[{type:"vbox",children:[{id:"txtOptName",type:"text",label:c.lang.forms.select.opText,style:"width:115px",setup:function(a){"clear"==a&&this.setValue("")}},{type:"select",id:"cmbName",label:"",title:"",size:5,style:"width:115px;height:75px",items:[],onChange:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbValue"),e=a.getContentElement("info","txtOptName"),a=a.getContentElement("info","txtOptValue"),d=g(this);i(b,d);e.setValue(this.getValue());a.setValue(b.getValue())},
-setup:function(a,b){"clear"==a?k(this):"option"==a&&h(this,b.getText(),b.getText(),this.getDialog().getParentEditor().document)},commit:function(a){var b=this.getDialog(),e=l(this),d=l(b.getContentElement("info","cmbValue")),c=b.getContentElement("info","txtValue").getValue();k(a);for(var f=0;f<e.count();f++){var g=h(a,e.getItem(f).getValue(),d.getItem(f).getValue(),b.getParentEditor().document);d.getItem(f).getValue()==c&&(g.setAttribute("selected","selected"),g.selected=!0)}}}]},{type:"vbox",children:[{id:"txtOptValue",
-type:"text",label:c.lang.forms.select.opValue,style:"width:115px",setup:function(a){"clear"==a&&this.setValue("")}},{type:"select",id:"cmbValue",label:"",size:5,style:"width:115px;height:75px",items:[],onChange:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbName"),e=a.getContentElement("info","txtOptName"),a=a.getContentElement("info","txtOptValue"),d=g(this);i(b,d);e.setValue(b.getValue());a.setValue(this.getValue())},setup:function(a,b){if("clear"==a)k(this);else if("option"==
-a){var e=b.getValue();h(this,e,e,this.getDialog().getParentEditor().document);"selected"==b.getAttribute("selected")&&this.getDialog().getContentElement("info","txtValue").setValue(e)}}}]},{type:"vbox",padding:5,children:[{type:"button",id:"btnAdd",style:"",label:c.lang.forms.select.btnAdd,title:c.lang.forms.select.btnAdd,style:"width:100%;",onClick:function(){var a=this.getDialog();a.getParentEditor();var b=a.getContentElement("info","txtOptName"),e=a.getContentElement("info","txtOptValue"),d=a.getContentElement("info",
-"cmbName"),c=a.getContentElement("info","cmbValue");h(d,b.getValue(),b.getValue(),a.getParentEditor().document);h(c,e.getValue(),e.getValue(),a.getParentEditor().document);b.setValue("");e.setValue("")}},{type:"button",id:"btnModify",label:c.lang.forms.select.btnModify,title:c.lang.forms.select.btnModify,style:"width:100%;",onClick:function(){var a=this.getDialog(),b=a.getContentElement("info","txtOptName"),e=a.getContentElement("info","txtOptValue"),d=a.getContentElement("info","cmbName"),a=a.getContentElement("info",
-"cmbValue"),c=g(d);0<=c&&(n(d,c,b.getValue(),b.getValue()),n(a,c,e.getValue(),e.getValue()))}},{type:"button",id:"btnUp",style:"width:100%;",label:c.lang.forms.select.btnUp,title:c.lang.forms.select.btnUp,onClick:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbName"),c=a.getContentElement("info","cmbValue");j(b,-1,a.getParentEditor().document);j(c,-1,a.getParentEditor().document)}},{type:"button",id:"btnDown",style:"width:100%;",label:c.lang.forms.select.btnDown,title:c.lang.forms.select.btnDown,
-onClick:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbName"),c=a.getContentElement("info","cmbValue");j(b,1,a.getParentEditor().document);j(c,1,a.getParentEditor().document)}}]}]},{type:"hbox",widths:["40%","20%","40%"],children:[{type:"button",id:"btnSetValue",label:c.lang.forms.select.btnSetValue,title:c.lang.forms.select.btnSetValue,onClick:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbValue");a.getContentElement("info","txtValue").setValue(b.getValue())}},
-{type:"button",id:"btnDelete",label:c.lang.forms.select.btnDelete,title:c.lang.forms.select.btnDelete,onClick:function(){var a=this.getDialog(),b=a.getContentElement("info","cmbName"),c=a.getContentElement("info","cmbValue"),d=a.getContentElement("info","txtOptName"),a=a.getContentElement("info","txtOptValue");m(b);m(c);d.setValue("");a.setValue("")}},{id:"chkMulti",type:"checkbox",label:c.lang.forms.select.chkMulti,"default":"",accessKey:"M",value:"checked",setup:function(a,b){"select"==a&&this.setValue(b.getAttribute("multiple"));
-CKEDITOR.env.webkit&&this.getElement().getParent().setStyle("vertical-align","middle")},commit:function(a){this.getValue()?a.setAttribute("multiple",this.getValue()):a.removeAttribute("multiple")}}]}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textarea.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textarea.js
deleted file mode 100644
index de8b3187..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textarea.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("textarea",function(b){return{title:b.lang.forms.textarea.title,minWidth:350,minHeight:220,onShow:function(){delete this.textarea;var a=this.getParentEditor().getSelection().getSelectedElement();a&&"textarea"==a.getName()&&(this.textarea=a,this.setupContent(a))},onOk:function(){var a,b=this.textarea,c=!b;c&&(a=this.getParentEditor(),b=a.document.createElement("textarea"));this.commitContent(b);c&&a.insertElement(b)},contents:[{id:"info",label:b.lang.forms.textarea.title,title:b.lang.forms.textarea.title,
-elements:[{id:"_cke_saved_name",type:"text",label:b.lang.common.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{type:"hbox",widths:["50%","50%"],children:[{id:"cols",type:"text",label:b.lang.forms.textarea.cols,"default":"",accessKey:"C",style:"width:50px",validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed),
-setup:function(a){this.setValue(a.hasAttribute("cols")&&a.getAttribute("cols")||"")},commit:function(a){this.getValue()?a.setAttribute("cols",this.getValue()):a.removeAttribute("cols")}},{id:"rows",type:"text",label:b.lang.forms.textarea.rows,"default":"",accessKey:"R",style:"width:50px",validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed),setup:function(a){this.setValue(a.hasAttribute("rows")&&a.getAttribute("rows")||"")},commit:function(a){this.getValue()?a.setAttribute("rows",
-this.getValue()):a.removeAttribute("rows")}}]},{id:"value",type:"textarea",label:b.lang.forms.textfield.value,"default":"",setup:function(a){this.setValue(a.$.defaultValue)},commit:function(a){a.$.value=a.$.defaultValue=this.getValue()}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textfield.js b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textfield.js
deleted file mode 100644
index 46b006e2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/dialogs/textfield.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("textfield",function(b){function e(a){var a=a.element,c=this.getValue();c?a.setAttribute(this.id,c):a.removeAttribute(this.id)}function f(a){this.setValue(a.hasAttribute(this.id)&&a.getAttribute(this.id)||"")}var g={email:1,password:1,search:1,tel:1,text:1,url:1};return{title:b.lang.forms.textfield.title,minWidth:350,minHeight:150,onShow:function(){delete this.textField;var a=this.getParentEditor().getSelection().getSelectedElement();if(a&&"input"==a.getName()&&(g[a.getAttribute("type")]||
-!a.getAttribute("type")))this.textField=a,this.setupContent(a)},onOk:function(){var a=this.getParentEditor(),c=this.textField,b=!c;b&&(c=a.document.createElement("input"),c.setAttribute("type","text"));c={element:c};b&&a.insertElement(c.element);this.commitContent(c);b||a.getSelection().selectElement(c.element)},onLoad:function(){this.foreach(function(a){if(a.getValue&&(a.setup||(a.setup=f),!a.commit))a.commit=e})},contents:[{id:"info",label:b.lang.forms.textfield.title,title:b.lang.forms.textfield.title,
-elements:[{type:"hbox",widths:["50%","50%"],children:[{id:"_cke_saved_name",type:"text",label:b.lang.forms.textfield.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){a=a.element;this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{id:"value",type:"text",label:b.lang.forms.textfield.value,"default":"",accessKey:"V",commit:function(a){if(CKEDITOR.env.ie&&
-!this.getValue()){var c=a.element,d=new CKEDITOR.dom.element("input",b.document);c.copyAttributes(d,{value:1});d.replace(c);a.element=d}else e.call(this,a)}}]},{type:"hbox",widths:["50%","50%"],children:[{id:"size",type:"text",label:b.lang.forms.textfield.charWidth,"default":"",accessKey:"C",style:"width:50px",validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed)},{id:"maxLength",type:"text",label:b.lang.forms.textfield.maxChars,"default":"",accessKey:"M",style:"width:50px",
-validate:CKEDITOR.dialog.validate.integer(b.lang.common.validateNumberFailed)}],onLoad:function(){CKEDITOR.env.ie7Compat&&this.getElement().setStyle("zoom","100%")}},{id:"type",type:"select",label:b.lang.forms.textfield.type,"default":"text",accessKey:"M",items:[[b.lang.forms.textfield.typeEmail,"email"],[b.lang.forms.textfield.typePass,"password"],[b.lang.forms.textfield.typeSearch,"search"],[b.lang.forms.textfield.typeTel,"tel"],[b.lang.forms.textfield.typeText,"text"],[b.lang.forms.textfield.typeUrl,
-"url"]],setup:function(a){this.setValue(a.getAttribute("type"))},commit:function(a){var c=a.element;if(CKEDITOR.env.ie){var d=c.getAttribute("type"),e=this.getValue();d!=e&&(d=CKEDITOR.dom.element.createFromHtml('<input type="'+e+'"></input>',b.document),c.copyAttributes(d,{type:1}),d.replace(c),a.element=d)}else c.setAttribute("type",this.getValue())}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/images/hiddenfield.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/forms/images/hiddenfield.gif
deleted file mode 100644
index 953f643b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/forms/images/hiddenfield.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/icons.png b/wqflask/wqflask/static/packages/ckeditor/plugins/icons.png
deleted file mode 100644
index 1ec992d9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/icons.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/icons_hidpi.png b/wqflask/wqflask/static/packages/ckeditor/plugins/icons_hidpi.png
deleted file mode 100644
index 6e103c05..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/icons_hidpi.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/dialogs/iframe.js b/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/dialogs/iframe.js
deleted file mode 100644
index dba1e930..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/dialogs/iframe.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function c(b){var c=this instanceof CKEDITOR.ui.dialog.checkbox;b.hasAttribute(this.id)&&(b=b.getAttribute(this.id),c?this.setValue(e[this.id]["true"]==b.toLowerCase()):this.setValue(b))}function d(b){var c=""===this.getValue(),a=this instanceof CKEDITOR.ui.dialog.checkbox,d=this.getValue();c?b.removeAttribute(this.att||this.id):a?b.setAttribute(this.id,e[this.id][d]):b.setAttribute(this.att||this.id,d)}var e={scrolling:{"true":"yes","false":"no"},frameborder:{"true":"1","false":"0"}};
-CKEDITOR.dialog.add("iframe",function(b){var f=b.lang.iframe,a=b.lang.common,e=b.plugins.dialogadvtab;return{title:f.title,minWidth:350,minHeight:260,onShow:function(){this.fakeImage=this.iframeNode=null;var a=this.getSelectedElement();a&&(a.data("cke-real-element-type")&&"iframe"==a.data("cke-real-element-type"))&&(this.fakeImage=a,this.iframeNode=a=b.restoreRealElement(a),this.setupContent(a))},onOk:function(){var a;a=this.fakeImage?this.iframeNode:new CKEDITOR.dom.element("iframe");var c={},d=
-{};this.commitContent(a,c,d);a=b.createFakeElement(a,"cke_iframe","iframe",!0);a.setAttributes(d);a.setStyles(c);this.fakeImage?(a.replace(this.fakeImage),b.getSelection().selectElement(a)):b.insertElement(a)},contents:[{id:"info",label:a.generalTab,accessKey:"I",elements:[{type:"vbox",padding:0,children:[{id:"src",type:"text",label:a.url,required:!0,validate:CKEDITOR.dialog.validate.notEmpty(f.noUrl),setup:c,commit:d}]},{type:"hbox",children:[{id:"width",type:"text",requiredContent:"iframe[width]",
-style:"width:100%",labelLayout:"vertical",label:a.width,validate:CKEDITOR.dialog.validate.htmlLength(a.invalidHtmlLength.replace("%1",a.width)),setup:c,commit:d},{id:"height",type:"text",requiredContent:"iframe[height]",style:"width:100%",labelLayout:"vertical",label:a.height,validate:CKEDITOR.dialog.validate.htmlLength(a.invalidHtmlLength.replace("%1",a.height)),setup:c,commit:d},{id:"align",type:"select",requiredContent:"iframe[align]","default":"",items:[[a.notSet,""],[a.alignLeft,"left"],[a.alignRight,
-"right"],[a.alignTop,"top"],[a.alignMiddle,"middle"],[a.alignBottom,"bottom"]],style:"width:100%",labelLayout:"vertical",label:a.align,setup:function(a,b){c.apply(this,arguments);if(b){var d=b.getAttribute("align");this.setValue(d&&d.toLowerCase()||"")}},commit:function(a,b,c){d.apply(this,arguments);this.getValue()&&(c.align=this.getValue())}}]},{type:"hbox",widths:["50%","50%"],children:[{id:"scrolling",type:"checkbox",requiredContent:"iframe[scrolling]",label:f.scrolling,setup:c,commit:d},{id:"frameborder",
-type:"checkbox",requiredContent:"iframe[frameborder]",label:f.border,setup:c,commit:d}]},{type:"hbox",widths:["50%","50%"],children:[{id:"name",type:"text",requiredContent:"iframe[name]",label:a.name,setup:c,commit:d},{id:"title",type:"text",requiredContent:"iframe[title]",label:a.advisoryTitle,setup:c,commit:d}]},{id:"longdesc",type:"text",requiredContent:"iframe[longdesc]",label:a.longDescr,setup:c,commit:d}]},e&&e.createAdvancedTab(b,{id:1,classes:1,styles:1},"iframe")]}})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/images/placeholder.png b/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/images/placeholder.png
deleted file mode 100644
index 4af09565..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/iframe/images/placeholder.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/image/dialogs/image.js b/wqflask/wqflask/static/packages/ckeditor/plugins/image/dialogs/image.js
deleted file mode 100644
index c84ecdc3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/image/dialogs/image.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){var r=function(c,j){function r(){var a=arguments,b=this.getContentElement("advanced","txtdlgGenStyle");b&&b.commit.apply(b,a);this.foreach(function(b){b.commit&&"txtdlgGenStyle"!=b.id&&b.commit.apply(b,a)})}function i(a){if(!s){s=1;var b=this.getDialog(),d=b.imageElement;if(d){this.commit(f,d);for(var a=[].concat(a),e=a.length,c,g=0;g<e;g++)(c=b.getContentElement.apply(b,a[g].split(":")))&&c.setup(f,d)}s=0}}var f=1,k=/^\s*(\d+)((px)|\%)?\s*$/i,v=/(^\s*(\d+)((px)|\%)?\s*$)|^$/i,o=/^\d+px$/,
-w=function(){var a=this.getValue(),b=this.getDialog(),d=a.match(k);d&&("%"==d[2]&&l(b,!1),a=d[1]);b.lockRatio&&(d=b.originalElement,"true"==d.getCustomData("isReady")&&("txtHeight"==this.id?(a&&"0"!=a&&(a=Math.round(d.$.width*(a/d.$.height))),isNaN(a)||b.setValueOf("info","txtWidth",a)):(a&&"0"!=a&&(a=Math.round(d.$.height*(a/d.$.width))),isNaN(a)||b.setValueOf("info","txtHeight",a))));g(b)},g=function(a){if(!a.originalElement||!a.preview)return 1;a.commitContent(4,a.preview);return 0},s,l=function(a,
-b){if(!a.getContentElement("info","ratioLock"))return null;var d=a.originalElement;if(!d)return null;if("check"==b){if(!a.userlockRatio&&"true"==d.getCustomData("isReady")){var e=a.getValueOf("info","txtWidth"),c=a.getValueOf("info","txtHeight"),d=1E3*d.$.width/d.$.height,f=1E3*e/c;a.lockRatio=!1;!e&&!c?a.lockRatio=!0:!isNaN(d)&&!isNaN(f)&&Math.round(d)==Math.round(f)&&(a.lockRatio=!0)}}else void 0!=b?a.lockRatio=b:(a.userlockRatio=1,a.lockRatio=!a.lockRatio);e=CKEDITOR.document.getById(p);a.lockRatio?
-e.removeClass("cke_btn_unlocked"):e.addClass("cke_btn_unlocked");e.setAttribute("aria-checked",a.lockRatio);CKEDITOR.env.hc&&e.getChild(0).setHtml(a.lockRatio?CKEDITOR.env.ie?"■":"▣":CKEDITOR.env.ie?"□":"▢");return a.lockRatio},x=function(a){var b=a.originalElement;if("true"==b.getCustomData("isReady")){var d=a.getContentElement("info","txtWidth"),e=a.getContentElement("info","txtHeight");d&&d.setValue(b.$.width);e&&e.setValue(b.$.height)}g(a)},y=function(a,b){function d(a,b){var d=a.match(k);return d?
-("%"==d[2]&&(d[1]+="%",l(e,!1)),d[1]):b}if(a==f){var e=this.getDialog(),c="",g="txtWidth"==this.id?"width":"height",h=b.getAttribute(g);h&&(c=d(h,c));c=d(b.getStyle(g),c);this.setValue(c)}},t,q=function(){var a=this.originalElement,b=CKEDITOR.document.getById(m);a.setCustomData("isReady","true");a.removeListener("load",q);a.removeListener("error",h);a.removeListener("abort",h);b&&b.setStyle("display","none");this.dontResetSize||x(this);this.firstLoad&&CKEDITOR.tools.setTimeout(function(){l(this,"check")},
-0,this);this.dontResetSize=this.firstLoad=!1},h=function(){var a=this.originalElement,b=CKEDITOR.document.getById(m);a.removeListener("load",q);a.removeListener("error",h);a.removeListener("abort",h);a=CKEDITOR.getUrl(CKEDITOR.plugins.get("image").path+"images/noimage.png");this.preview&&this.preview.setAttribute("src",a);b&&b.setStyle("display","none");l(this,!1)},n=function(a){return CKEDITOR.tools.getNextId()+"_"+a},p=n("btnLockSizes"),u=n("btnResetSize"),m=n("ImagePreviewLoader"),A=n("previewLink"),
-z=n("previewImage");return{title:c.lang.image["image"==j?"title":"titleButton"],minWidth:420,minHeight:360,onShow:function(){this.linkEditMode=this.imageEditMode=this.linkElement=this.imageElement=!1;this.lockRatio=!0;this.userlockRatio=0;this.dontResetSize=!1;this.firstLoad=!0;this.addLink=!1;var a=this.getParentEditor(),b=a.getSelection(),d=(b=b&&b.getSelectedElement())&&a.elementPath(b).contains("a",1),c=CKEDITOR.document.getById(m);c&&c.setStyle("display","none");t=new CKEDITOR.dom.element("img",
-a.document);this.preview=CKEDITOR.document.getById(z);this.originalElement=a.document.createElement("img");this.originalElement.setAttribute("alt","");this.originalElement.setCustomData("isReady","false");if(d){this.linkElement=d;this.linkEditMode=!0;c=d.getChildren();if(1==c.count()){var g=c.getItem(0).getName();if("img"==g||"input"==g)this.imageElement=c.getItem(0),"img"==this.imageElement.getName()?this.imageEditMode="img":"input"==this.imageElement.getName()&&(this.imageEditMode="input")}"image"==
-j&&this.setupContent(2,d)}if(this.customImageElement)this.imageEditMode="img",this.imageElement=this.customImageElement,delete this.customImageElement;else if(b&&"img"==b.getName()&&!b.data("cke-realelement")||b&&"input"==b.getName()&&"image"==b.getAttribute("type"))this.imageEditMode=b.getName(),this.imageElement=b;this.imageEditMode?(this.cleanImageElement=this.imageElement,this.imageElement=this.cleanImageElement.clone(!0,!0),this.setupContent(f,this.imageElement)):this.imageElement=a.document.createElement("img");
-l(this,!0);CKEDITOR.tools.trim(this.getValueOf("info","txtUrl"))||(this.preview.removeAttribute("src"),this.preview.setStyle("display","none"))},onOk:function(){if(this.imageEditMode){var a=this.imageEditMode;"image"==j&&"input"==a&&confirm(c.lang.image.button2Img)?(this.imageElement=c.document.createElement("img"),this.imageElement.setAttribute("alt",""),c.insertElement(this.imageElement)):"image"!=j&&"img"==a&&confirm(c.lang.image.img2Button)?(this.imageElement=c.document.createElement("input"),
-this.imageElement.setAttributes({type:"image",alt:""}),c.insertElement(this.imageElement)):(this.imageElement=this.cleanImageElement,delete this.cleanImageElement)}else"image"==j?this.imageElement=c.document.createElement("img"):(this.imageElement=c.document.createElement("input"),this.imageElement.setAttribute("type","image")),this.imageElement.setAttribute("alt","");this.linkEditMode||(this.linkElement=c.document.createElement("a"));this.commitContent(f,this.imageElement);this.commitContent(2,this.linkElement);
-this.imageElement.getAttribute("style")||this.imageElement.removeAttribute("style");this.imageEditMode?!this.linkEditMode&&this.addLink?(c.insertElement(this.linkElement),this.imageElement.appendTo(this.linkElement)):this.linkEditMode&&!this.addLink&&(c.getSelection().selectElement(this.linkElement),c.insertElement(this.imageElement)):this.addLink?this.linkEditMode?c.insertElement(this.imageElement):(c.insertElement(this.linkElement),this.linkElement.append(this.imageElement,!1)):c.insertElement(this.imageElement)},
-onLoad:function(){"image"!=j&&this.hidePage("Link");var a=this._.element.getDocument();this.getContentElement("info","ratioLock")&&(this.addFocusable(a.getById(u),5),this.addFocusable(a.getById(p),5));this.commitContent=r},onHide:function(){this.preview&&this.commitContent(8,this.preview);this.originalElement&&(this.originalElement.removeListener("load",q),this.originalElement.removeListener("error",h),this.originalElement.removeListener("abort",h),this.originalElement.remove(),this.originalElement=
-!1);delete this.imageElement},contents:[{id:"info",label:c.lang.image.infoTab,accessKey:"I",elements:[{type:"vbox",padding:0,children:[{type:"hbox",widths:["280px","110px"],align:"right",children:[{id:"txtUrl",type:"text",label:c.lang.common.url,required:!0,onChange:function(){var a=this.getDialog(),b=this.getValue();if(0<b.length){var a=this.getDialog(),d=a.originalElement;a.preview&&a.preview.removeStyle("display");d.setCustomData("isReady","false");var c=CKEDITOR.document.getById(m);c&&c.setStyle("display",
-"");d.on("load",q,a);d.on("error",h,a);d.on("abort",h,a);d.setAttribute("src",b);a.preview&&(t.setAttribute("src",b),a.preview.setAttribute("src",t.$.src),g(a))}else a.preview&&(a.preview.removeAttribute("src"),a.preview.setStyle("display","none"))},setup:function(a,b){if(a==f){var d=b.data("cke-saved-src")||b.getAttribute("src");this.getDialog().dontResetSize=!0;this.setValue(d);this.setInitValue()}},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())?(b.data("cke-saved-src",this.getValue()),
-b.setAttribute("src",this.getValue())):8==a&&(b.setAttribute("src",""),b.removeAttribute("src"))},validate:CKEDITOR.dialog.validate.notEmpty(c.lang.image.urlMissing)},{type:"button",id:"browse",style:"display:inline-block;margin-top:14px;",align:"center",label:c.lang.common.browseServer,hidden:!0,filebrowser:"info:txtUrl"}]}]},{id:"txtAlt",type:"text",label:c.lang.image.alt,accessKey:"T","default":"",onChange:function(){g(this.getDialog())},setup:function(a,b){a==f&&this.setValue(b.getAttribute("alt"))},
-commit:function(a,b){a==f?(this.getValue()||this.isChanged())&&b.setAttribute("alt",this.getValue()):4==a?b.setAttribute("alt",this.getValue()):8==a&&b.removeAttribute("alt")}},{type:"hbox",children:[{id:"basic",type:"vbox",children:[{type:"hbox",requiredContent:"img{width,height}",widths:["50%","50%"],children:[{type:"vbox",padding:1,children:[{type:"text",width:"45px",id:"txtWidth",label:c.lang.common.width,onKeyUp:w,onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:function(){var a=
-this.getValue().match(v);(a=!!(a&&0!==parseInt(a[1],10)))||alert(c.lang.common.invalidWidth);return a},setup:y,commit:function(a,b,d){var e=this.getValue();a==f?(e&&c.activeFilter.check("img{width,height}")?b.setStyle("width",CKEDITOR.tools.cssLength(e)):b.removeStyle("width"),!d&&b.removeAttribute("width")):4==a?e.match(k)?b.setStyle("width",CKEDITOR.tools.cssLength(e)):(a=this.getDialog().originalElement,"true"==a.getCustomData("isReady")&&b.setStyle("width",a.$.width+"px")):8==a&&(b.removeAttribute("width"),
-b.removeStyle("width"))}},{type:"text",id:"txtHeight",width:"45px",label:c.lang.common.height,onKeyUp:w,onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:function(){var a=this.getValue().match(v);(a=!!(a&&0!==parseInt(a[1],10)))||alert(c.lang.common.invalidHeight);return a},setup:y,commit:function(a,b,d){var e=this.getValue();a==f?(e&&c.activeFilter.check("img{width,height}")?b.setStyle("height",CKEDITOR.tools.cssLength(e)):b.removeStyle("height"),!d&&b.removeAttribute("height")):
-4==a?e.match(k)?b.setStyle("height",CKEDITOR.tools.cssLength(e)):(a=this.getDialog().originalElement,"true"==a.getCustomData("isReady")&&b.setStyle("height",a.$.height+"px")):8==a&&(b.removeAttribute("height"),b.removeStyle("height"))}}]},{id:"ratioLock",type:"html",style:"margin-top:30px;width:40px;height:40px;",onLoad:function(){var a=CKEDITOR.document.getById(u),b=CKEDITOR.document.getById(p);a&&(a.on("click",function(a){x(this);a.data&&a.data.preventDefault()},this.getDialog()),a.on("mouseover",
-function(){this.addClass("cke_btn_over")},a),a.on("mouseout",function(){this.removeClass("cke_btn_over")},a));b&&(b.on("click",function(a){l(this);var b=this.originalElement,c=this.getValueOf("info","txtWidth");if(b.getCustomData("isReady")=="true"&&c){b=b.$.height/b.$.width*c;if(!isNaN(b)){this.setValueOf("info","txtHeight",Math.round(b));g(this)}}a.data&&a.data.preventDefault()},this.getDialog()),b.on("mouseover",function(){this.addClass("cke_btn_over")},b),b.on("mouseout",function(){this.removeClass("cke_btn_over")},
-b))},html:'<div><a href="javascript:void(0)" tabindex="-1" title="'+c.lang.image.lockRatio+'" class="cke_btn_locked" id="'+p+'" role="checkbox"><span class="cke_icon"></span><span class="cke_label">'+c.lang.image.lockRatio+'</span></a><a href="javascript:void(0)" tabindex="-1" title="'+c.lang.image.resetSize+'" class="cke_btn_reset" id="'+u+'" role="button"><span class="cke_label">'+c.lang.image.resetSize+"</span></a></div>"}]},{type:"vbox",padding:1,children:[{type:"text",id:"txtBorder",requiredContent:"img{border-width}",
-width:"60px",label:c.lang.image.border,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateBorder),setup:function(a,b){if(a==f){var d;d=(d=(d=b.getStyle("border-width"))&&d.match(/^(\d+px)(?: \1 \1 \1)?$/))&&parseInt(d[1],10);isNaN(parseInt(d,10))&&(d=b.getAttribute("border"));this.setValue(d)}},commit:function(a,b,d){var c=parseInt(this.getValue(),10);a==f||4==a?(isNaN(c)?!c&&
-this.isChanged()&&b.removeStyle("border"):(b.setStyle("border-width",CKEDITOR.tools.cssLength(c)),b.setStyle("border-style","solid")),!d&&a==f&&b.removeAttribute("border")):8==a&&(b.removeAttribute("border"),b.removeStyle("border-width"),b.removeStyle("border-style"),b.removeStyle("border-color"))}},{type:"text",id:"txtHSpace",requiredContent:"img{margin-left,margin-right}",width:"60px",label:c.lang.image.hSpace,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,
-"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateHSpace),setup:function(a,b){if(a==f){var d,c;d=b.getStyle("margin-left");c=b.getStyle("margin-right");d=d&&d.match(o);c=c&&c.match(o);d=parseInt(d,10);c=parseInt(c,10);d=d==c&&d;isNaN(parseInt(d,10))&&(d=b.getAttribute("hspace"));this.setValue(d)}},commit:function(a,b,d){var c=parseInt(this.getValue(),10);a==f||4==a?(isNaN(c)?!c&&this.isChanged()&&(b.removeStyle("margin-left"),b.removeStyle("margin-right")):
-(b.setStyle("margin-left",CKEDITOR.tools.cssLength(c)),b.setStyle("margin-right",CKEDITOR.tools.cssLength(c))),!d&&a==f&&b.removeAttribute("hspace")):8==a&&(b.removeAttribute("hspace"),b.removeStyle("margin-left"),b.removeStyle("margin-right"))}},{type:"text",id:"txtVSpace",requiredContent:"img{margin-top,margin-bottom}",width:"60px",label:c.lang.image.vSpace,"default":"",onKeyUp:function(){g(this.getDialog())},onChange:function(){i.call(this,"advanced:txtdlgGenStyle")},validate:CKEDITOR.dialog.validate.integer(c.lang.image.validateVSpace),
-setup:function(a,b){if(a==f){var c,e;c=b.getStyle("margin-top");e=b.getStyle("margin-bottom");c=c&&c.match(o);e=e&&e.match(o);c=parseInt(c,10);e=parseInt(e,10);c=c==e&&c;isNaN(parseInt(c,10))&&(c=b.getAttribute("vspace"));this.setValue(c)}},commit:function(a,b,c){var e=parseInt(this.getValue(),10);a==f||4==a?(isNaN(e)?!e&&this.isChanged()&&(b.removeStyle("margin-top"),b.removeStyle("margin-bottom")):(b.setStyle("margin-top",CKEDITOR.tools.cssLength(e)),b.setStyle("margin-bottom",CKEDITOR.tools.cssLength(e))),
-!c&&a==f&&b.removeAttribute("vspace")):8==a&&(b.removeAttribute("vspace"),b.removeStyle("margin-top"),b.removeStyle("margin-bottom"))}},{id:"cmbAlign",requiredContent:"img{float}",type:"select",widths:["35%","65%"],style:"width:90px",label:c.lang.common.align,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.alignLeft,"left"],[c.lang.common.alignRight,"right"]],onChange:function(){g(this.getDialog());i.call(this,"advanced:txtdlgGenStyle")},setup:function(a,b){if(a==f){var c=b.getStyle("float");
-switch(c){case "inherit":case "none":c=""}!c&&(c=(b.getAttribute("align")||"").toLowerCase());this.setValue(c)}},commit:function(a,b,c){var e=this.getValue();if(a==f||4==a){if(e?b.setStyle("float",e):b.removeStyle("float"),!c&&a==f)switch(e=(b.getAttribute("align")||"").toLowerCase(),e){case "left":case "right":b.removeAttribute("align")}}else 8==a&&b.removeStyle("float")}}]}]},{type:"vbox",height:"250px",children:[{type:"html",id:"htmlPreview",style:"width:95%;",html:"<div>"+CKEDITOR.tools.htmlEncode(c.lang.common.preview)+
-'<br><div id="'+m+'" class="ImagePreviewLoader" style="display:none"><div class="loading">&nbsp;</div></div><div class="ImagePreviewBox"><table><tr><td><a href="javascript:void(0)" target="_blank" onclick="return false;" id="'+A+'"><img id="'+z+'" alt="" /></a>'+(c.config.image_previewText||"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas feugiat consequat diam. Maecenas metus. Vivamus diam purus, cursus a, commodo non, facilisis vitae, nulla. Aenean dictum lacinia tortor. Nunc iaculis, nibh non iaculis aliquam, orci felis euismod neque, sed ornare massa mauris sed velit. Nulla pretium mi et risus. Fusce mi pede, tempor id, cursus ac, ullamcorper nec, enim. Sed tortor. Curabitur molestie. Duis velit augue, condimentum at, ultrices a, luctus ut, orci. Donec pellentesque egestas eros. Integer cursus, augue in cursus faucibus, eros pede bibendum sem, in tempus tellus justo quis ligula. Etiam eget tortor. Vestibulum rutrum, est ut placerat elementum, lectus nisl aliquam velit, tempor aliquam eros nunc nonummy metus. In eros metus, gravida a, gravida sed, lobortis id, turpis. Ut ultrices, ipsum at venenatis fringilla, sem nulla lacinia tellus, eget aliquet turpis mauris non enim. Nam turpis. Suspendisse lacinia. Curabitur ac tortor ut ipsum egestas elementum. Nunc imperdiet gravida mauris.")+
-"</td></tr></table></div></div>"}]}]}]},{id:"Link",requiredContent:"a[href]",label:c.lang.image.linkTab,padding:0,elements:[{id:"txtUrl",type:"text",label:c.lang.common.url,style:"width: 100%","default":"",setup:function(a,b){if(2==a){var c=b.data("cke-saved-href");c||(c=b.getAttribute("href"));this.setValue(c)}},commit:function(a,b){if(2==a&&(this.getValue()||this.isChanged())){var d=this.getValue();b.data("cke-saved-href",d);b.setAttribute("href",d);if(this.getValue()||!c.config.image_removeLinkByEmptyURL)this.getDialog().addLink=
-!0}}},{type:"button",id:"browse",filebrowser:{action:"Browse",target:"Link:txtUrl",url:c.config.filebrowserImageBrowseLinkUrl},style:"float:right",hidden:!0,label:c.lang.common.browseServer},{id:"cmbTarget",type:"select",requiredContent:"a[target]",label:c.lang.common.target,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.targetNew,"_blank"],[c.lang.common.targetTop,"_top"],[c.lang.common.targetSelf,"_self"],[c.lang.common.targetParent,"_parent"]],setup:function(a,b){2==a&&this.setValue(b.getAttribute("target")||
-"")},commit:function(a,b){2==a&&(this.getValue()||this.isChanged())&&b.setAttribute("target",this.getValue())}}]},{id:"Upload",hidden:!0,filebrowser:"uploadButton",label:c.lang.image.upload,elements:[{type:"file",id:"upload",label:c.lang.image.btnUpload,style:"height:40px",size:38},{type:"fileButton",id:"uploadButton",filebrowser:"info:txtUrl",label:c.lang.image.btnUpload,"for":["Upload","upload"]}]},{id:"advanced",label:c.lang.common.advancedTab,elements:[{type:"hbox",widths:["50%","25%","25%"],
-children:[{type:"text",id:"linkId",requiredContent:"img[id]",label:c.lang.common.id,setup:function(a,b){a==f&&this.setValue(b.getAttribute("id"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("id",this.getValue())}},{id:"cmbLangDir",type:"select",requiredContent:"img[dir]",style:"width : 100px;",label:c.lang.common.langDir,"default":"",items:[[c.lang.common.notSet,""],[c.lang.common.langDirLtr,"ltr"],[c.lang.common.langDirRtl,"rtl"]],setup:function(a,b){a==f&&this.setValue(b.getAttribute("dir"))},
-commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("dir",this.getValue())}},{type:"text",id:"txtLangCode",requiredContent:"img[lang]",label:c.lang.common.langCode,"default":"",setup:function(a,b){a==f&&this.setValue(b.getAttribute("lang"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("lang",this.getValue())}}]},{type:"text",id:"txtGenLongDescr",requiredContent:"img[longdesc]",label:c.lang.common.longDescr,setup:function(a,b){a==f&&this.setValue(b.getAttribute("longDesc"))},
-commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("longDesc",this.getValue())}},{type:"hbox",widths:["50%","50%"],children:[{type:"text",id:"txtGenClass",requiredContent:"img(cke-xyz)",label:c.lang.common.cssClass,"default":"",setup:function(a,b){a==f&&this.setValue(b.getAttribute("class"))},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("class",this.getValue())}},{type:"text",id:"txtGenTitle",requiredContent:"img[title]",label:c.lang.common.advisoryTitle,
-"default":"",onChange:function(){g(this.getDialog())},setup:function(a,b){a==f&&this.setValue(b.getAttribute("title"))},commit:function(a,b){a==f?(this.getValue()||this.isChanged())&&b.setAttribute("title",this.getValue()):4==a?b.setAttribute("title",this.getValue()):8==a&&b.removeAttribute("title")}}]},{type:"text",id:"txtdlgGenStyle",requiredContent:"img{cke-xyz}",label:c.lang.common.cssStyle,validate:CKEDITOR.dialog.validate.inlineStyle(c.lang.common.invalidInlineStyle),"default":"",setup:function(a,
-b){if(a==f){var c=b.getAttribute("style");!c&&b.$.style.cssText&&(c=b.$.style.cssText);this.setValue(c);var e=b.$.style.height,c=b.$.style.width,e=(e?e:"").match(k),c=(c?c:"").match(k);this.attributesInStyle={height:!!e,width:!!c}}},onChange:function(){i.call(this,"info:cmbFloat info:cmbAlign info:txtVSpace info:txtHSpace info:txtBorder info:txtWidth info:txtHeight".split(" "));g(this)},commit:function(a,b){a==f&&(this.getValue()||this.isChanged())&&b.setAttribute("style",this.getValue())}}]}]}};
-CKEDITOR.dialog.add("image",function(c){return r(c,"image")});CKEDITOR.dialog.add("imagebutton",function(c){return r(c,"imagebutton")})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/image/images/noimage.png b/wqflask/wqflask/static/packages/ckeditor/plugins/image/images/noimage.png
deleted file mode 100644
index 15981130..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/image/images/noimage.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/anchor.js b/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/anchor.js
deleted file mode 100644
index e0192b27..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/anchor.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("anchor",function(c){function d(a,b){return a.createFakeElement(a.document.createElement("a",{attributes:b}),"cke_anchor","anchor")}return{title:c.lang.link.anchor.title,minWidth:300,minHeight:60,onOk:function(){var a=CKEDITOR.tools.trim(this.getValueOf("info","txtName")),a={id:a,name:a,"data-cke-saved-name":a};if(this._.selectedElement)this._.selectedElement.data("cke-realelement")?(a=d(c,a),a.replace(this._.selectedElement),CKEDITOR.env.ie&&c.getSelection().selectElement(a)):
-this._.selectedElement.setAttributes(a);else{var b=c.getSelection(),b=b&&b.getRanges()[0];b.collapsed?(a=d(c,a),b.insertNode(a)):(CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(a["class"]="cke_anchor"),a=new CKEDITOR.style({element:"a",attributes:a}),a.type=CKEDITOR.STYLE_INLINE,c.applyStyle(a))}},onHide:function(){delete this._.selectedElement},onShow:function(){var a=c.getSelection(),b=a.getSelectedElement(),d=b&&b.data("cke-realelement"),e=d?CKEDITOR.plugins.link.tryRestoreFakeAnchor(c,b):CKEDITOR.plugins.link.getSelectedLink(c);
-e&&(this._.selectedElement=e,this.setValueOf("info","txtName",e.data("cke-saved-name")||""),!d&&a.selectElement(e),b&&(this._.selectedElement=b));this.getContentElement("info","txtName").focus()},contents:[{id:"info",label:c.lang.link.anchor.title,accessKey:"I",elements:[{type:"text",id:"txtName",label:c.lang.link.anchor.name,required:!0,validate:function(){return!this.getValue()?(alert(c.lang.link.anchor.errorName),!1):!0}}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/link.js b/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/link.js
deleted file mode 100644
index 312fb7bc..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/link/dialogs/link.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){CKEDITOR.dialog.add("link",function(g){var l=CKEDITOR.plugins.link,m=function(){var a=this.getDialog(),b=a.getContentElement("target","popupFeatures"),a=a.getContentElement("target","linkTargetName"),k=this.getValue();if(b&&a)switch(b=b.getElement(),b.hide(),a.setValue(""),k){case "frame":a.setLabel(g.lang.link.targetFrameName);a.getElement().show();break;case "popup":b.show();a.setLabel(g.lang.link.targetPopupName);a.getElement().show();break;default:a.setValue(k),a.getElement().hide()}},
-f=function(a){a.target&&this.setValue(a.target[this.id]||"")},h=function(a){a.advanced&&this.setValue(a.advanced[this.id]||"")},i=function(a){a.target||(a.target={});a.target[this.id]=this.getValue()||""},j=function(a){a.advanced||(a.advanced={});a.advanced[this.id]=this.getValue()||""},c=g.lang.common,b=g.lang.link,d;return{title:b.title,minWidth:350,minHeight:230,contents:[{id:"info",label:b.info,title:b.info,elements:[{id:"linkType",type:"select",label:b.type,"default":"url",items:[[b.toUrl,"url"],
-[b.toAnchor,"anchor"],[b.toEmail,"email"]],onChange:function(){var a=this.getDialog(),b=["urlOptions","anchorOptions","emailOptions"],k=this.getValue(),e=a.definition.getContents("upload"),e=e&&e.hidden;"url"==k?(g.config.linkShowTargetTab&&a.showPage("target"),e||a.showPage("upload")):(a.hidePage("target"),e||a.hidePage("upload"));for(e=0;e<b.length;e++){var c=a.getContentElement("info",b[e]);c&&(c=c.getElement().getParent().getParent(),b[e]==k+"Options"?c.show():c.hide())}a.layout()},setup:function(a){this.setValue(a.type||
-"url")},commit:function(a){a.type=this.getValue()}},{type:"vbox",id:"urlOptions",children:[{type:"hbox",widths:["25%","75%"],children:[{id:"protocol",type:"select",label:c.protocol,"default":"http://",items:[["http://‎","http://"],["https://‎","https://"],["ftp://‎","ftp://"],["news://‎","news://"],[b.other,""]],setup:function(a){a.url&&this.setValue(a.url.protocol||"")},commit:function(a){a.url||(a.url={});a.url.protocol=this.getValue()}},{type:"text",id:"url",label:c.url,required:!0,onLoad:function(){this.allowOnChange=
-!0},onKeyUp:function(){this.allowOnChange=!1;var a=this.getDialog().getContentElement("info","protocol"),b=this.getValue(),k=/^((javascript:)|[#\/\.\?])/i,c=/^(http|https|ftp|news):\/\/(?=.)/i.exec(b);c?(this.setValue(b.substr(c[0].length)),a.setValue(c[0].toLowerCase())):k.test(b)&&a.setValue("");this.allowOnChange=!0},onChange:function(){if(this.allowOnChange)this.onKeyUp()},validate:function(){var a=this.getDialog();return a.getContentElement("info","linkType")&&"url"!=a.getValueOf("info","linkType")?
-!0:!g.config.linkJavaScriptLinksAllowed&&/javascript\:/.test(this.getValue())?(alert(c.invalidValue),!1):this.getDialog().fakeObj?!0:CKEDITOR.dialog.validate.notEmpty(b.noUrl).apply(this)},setup:function(a){this.allowOnChange=!1;a.url&&this.setValue(a.url.url);this.allowOnChange=!0},commit:function(a){this.onChange();a.url||(a.url={});a.url.url=this.getValue();this.allowOnChange=!1}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().show()}},{type:"button",
-id:"browse",hidden:"true",filebrowser:"info:url",label:c.browseServer}]},{type:"vbox",id:"anchorOptions",width:260,align:"center",padding:0,children:[{type:"fieldset",id:"selectAnchorText",label:b.selectAnchor,setup:function(){d=l.getEditorAnchors(g);this.getElement()[d&&d.length?"show":"hide"]()},children:[{type:"hbox",id:"selectAnchor",children:[{type:"select",id:"anchorName","default":"",label:b.anchorName,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=
-0;b<d.length;b++)d[b].name&&this.add(d[b].name);a.anchor&&this.setValue(a.anchor.name);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.focus()},commit:function(a){a.anchor||(a.anchor={});a.anchor.name=this.getValue()}},{type:"select",id:"anchorId","default":"",label:b.anchorId,style:"width: 100%;",items:[[""]],setup:function(a){this.clear();this.add("");if(d)for(var b=0;b<d.length;b++)d[b].id&&this.add(d[b].id);a.anchor&&this.setValue(a.anchor.id)},commit:function(a){a.anchor||
-(a.anchor={});a.anchor.id=this.getValue()}}],setup:function(){this.getElement()[d&&d.length?"show":"hide"]()}}]},{type:"html",id:"noAnchors",style:"text-align: center;",html:'<div role="note" tabIndex="-1">'+CKEDITOR.tools.htmlEncode(b.noAnchors)+"</div>",focus:!0,setup:function(){this.getElement()[d&&d.length?"hide":"show"]()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}},{type:"vbox",id:"emailOptions",padding:1,children:[{type:"text",id:"emailAddress",
-label:b.emailAddress,required:!0,validate:function(){var a=this.getDialog();return!a.getContentElement("info","linkType")||"email"!=a.getValueOf("info","linkType")?!0:CKEDITOR.dialog.validate.notEmpty(b.noEmail).apply(this)},setup:function(a){a.email&&this.setValue(a.email.address);(a=this.getDialog().getContentElement("info","linkType"))&&"email"==a.getValue()&&this.select()},commit:function(a){a.email||(a.email={});a.email.address=this.getValue()}},{type:"text",id:"emailSubject",label:b.emailSubject,
-setup:function(a){a.email&&this.setValue(a.email.subject)},commit:function(a){a.email||(a.email={});a.email.subject=this.getValue()}},{type:"textarea",id:"emailBody",label:b.emailBody,rows:3,"default":"",setup:function(a){a.email&&this.setValue(a.email.body)},commit:function(a){a.email||(a.email={});a.email.body=this.getValue()}}],setup:function(){this.getDialog().getContentElement("info","linkType")||this.getElement().hide()}}]},{id:"target",requiredContent:"a[target]",label:b.target,title:b.target,
-elements:[{type:"hbox",widths:["50%","50%"],children:[{type:"select",id:"linkTargetType",label:c.target,"default":"notSet",style:"width : 100%;",items:[[c.notSet,"notSet"],[b.targetFrame,"frame"],[b.targetPopup,"popup"],[c.targetNew,"_blank"],[c.targetTop,"_top"],[c.targetSelf,"_self"],[c.targetParent,"_parent"]],onChange:m,setup:function(a){a.target&&this.setValue(a.target.type||"notSet");m.call(this)},commit:function(a){a.target||(a.target={});a.target.type=this.getValue()}},{type:"text",id:"linkTargetName",
-label:b.targetFrameName,"default":"",setup:function(a){a.target&&this.setValue(a.target.name)},commit:function(a){a.target||(a.target={});a.target.name=this.getValue().replace(/\W/gi,"")}}]},{type:"vbox",width:"100%",align:"center",padding:2,id:"popupFeatures",children:[{type:"fieldset",label:b.popupFeatures,children:[{type:"hbox",children:[{type:"checkbox",id:"resizable",label:b.popupResizable,setup:f,commit:i},{type:"checkbox",id:"status",label:b.popupStatusBar,setup:f,commit:i}]},{type:"hbox",
-children:[{type:"checkbox",id:"location",label:b.popupLocationBar,setup:f,commit:i},{type:"checkbox",id:"toolbar",label:b.popupToolbar,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"menubar",label:b.popupMenuBar,setup:f,commit:i},{type:"checkbox",id:"fullscreen",label:b.popupFullScreen,setup:f,commit:i}]},{type:"hbox",children:[{type:"checkbox",id:"scrollbars",label:b.popupScrollBars,setup:f,commit:i},{type:"checkbox",id:"dependent",label:b.popupDependent,setup:f,commit:i}]},{type:"hbox",
-children:[{type:"text",widths:["50%","50%"],labelLayout:"horizontal",label:c.width,id:"width",setup:f,commit:i},{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:b.popupLeft,id:"left",setup:f,commit:i}]},{type:"hbox",children:[{type:"text",labelLayout:"horizontal",widths:["50%","50%"],label:c.height,id:"height",setup:f,commit:i},{type:"text",labelLayout:"horizontal",label:b.popupTop,widths:["50%","50%"],id:"top",setup:f,commit:i}]}]}]}]},{id:"upload",label:b.upload,title:b.upload,hidden:!0,
-filebrowser:"uploadButton",elements:[{type:"file",id:"upload",label:c.upload,style:"height:40px",size:29},{type:"fileButton",id:"uploadButton",label:c.uploadSubmit,filebrowser:"info:url","for":["upload","upload"]}]},{id:"advanced",label:b.advanced,title:b.advanced,elements:[{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",id:"advId",requiredContent:"a[id]",label:b.id,setup:h,commit:j},{type:"select",id:"advLangDir",requiredContent:"a[dir]",label:b.langDir,
-"default":"",style:"width:110px",items:[[c.notSet,""],[b.langDirLTR,"ltr"],[b.langDirRTL,"rtl"]],setup:h,commit:j},{type:"text",id:"advAccessKey",requiredContent:"a[accesskey]",width:"80px",label:b.acccessKey,maxLength:1,setup:h,commit:j}]},{type:"hbox",widths:["45%","35%","20%"],children:[{type:"text",label:b.name,id:"advName",requiredContent:"a[name]",setup:h,commit:j},{type:"text",label:b.langCode,id:"advLangCode",requiredContent:"a[lang]",width:"110px","default":"",setup:h,commit:j},{type:"text",
-label:b.tabIndex,id:"advTabIndex",requiredContent:"a[tabindex]",width:"80px",maxLength:5,setup:h,commit:j}]}]},{type:"vbox",padding:1,children:[{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.advisoryTitle,requiredContent:"a[title]","default":"",id:"advTitle",setup:h,commit:j},{type:"text",label:b.advisoryContentType,requiredContent:"a[type]","default":"",id:"advContentType",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.cssClasses,requiredContent:"a(cke-xyz)",
-"default":"",id:"advCSSClasses",setup:h,commit:j},{type:"text",label:b.charset,requiredContent:"a[charset]","default":"",id:"advCharset",setup:h,commit:j}]},{type:"hbox",widths:["45%","55%"],children:[{type:"text",label:b.rel,requiredContent:"a[rel]","default":"",id:"advRel",setup:h,commit:j},{type:"text",label:b.styles,requiredContent:"a{cke-xyz}","default":"",id:"advStyles",validate:CKEDITOR.dialog.validate.inlineStyle(g.lang.common.invalidInlineStyle),setup:h,commit:j}]}]}]}],onShow:function(){var a=
-this.getParentEditor(),b=a.getSelection(),c=null;(c=l.getSelectedLink(a))&&c.hasAttribute("href")?b.getSelectedElement()||b.selectElement(c):c=null;a=l.parseLinkAttributes(a,c);this._.selectedElement=c;this.setupContent(a)},onOk:function(){var a={};this.commitContent(a);var b=g.getSelection(),c=l.getLinkAttributes(g,a);if(this._.selectedElement){var e=this._.selectedElement,d=e.data("cke-saved-href"),f=e.getHtml();e.setAttributes(c.set);e.removeAttributes(c.removed);if(d==f||"email"==a.type&&-1!=
-f.indexOf("@"))e.setHtml("email"==a.type?a.email.address:c.set["data-cke-saved-href"]),b.selectElement(e);delete this._.selectedElement}else b=b.getRanges()[0],b.collapsed&&(a=new CKEDITOR.dom.text("email"==a.type?a.email.address:c.set["data-cke-saved-href"],g.document),b.insertNode(a),b.selectNodeContents(a)),c=new CKEDITOR.style({element:"a",attributes:c.set}),c.type=CKEDITOR.STYLE_INLINE,c.applyToRange(b,g),b.select()},onLoad:function(){g.config.linkShowAdvancedTab||this.hidePage("advanced");g.config.linkShowTargetTab||
-this.hidePage("target")},onFocus:function(){var a=this.getContentElement("info","linkType");a&&"url"==a.getValue()&&(a=this.getContentElement("info","url"),a.select())}}})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/anchor.png b/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/anchor.png
deleted file mode 100644
index 6d861a0e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/anchor.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/hidpi/anchor.png b/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/hidpi/anchor.png
deleted file mode 100644
index f5048430..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/link/images/hidpi/anchor.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/dialogs/liststyle.js b/wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/dialogs/liststyle.js
deleted file mode 100644
index 2b130e71..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/liststyle/dialogs/liststyle.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function d(c,d){var b;try{b=c.getSelection().getRanges()[0]}catch(f){return null}b.shrink(CKEDITOR.SHRINK_TEXT);return c.elementPath(b.getCommonAncestor()).contains(d,1)}function e(c,e){var b=c.lang.liststyle;if("bulletedListStyle"==e)return{title:b.bulletedTitle,minWidth:300,minHeight:50,contents:[{id:"info",accessKey:"I",elements:[{type:"select",label:b.type,id:"type",align:"center",style:"width:150px",items:[[b.notset,""],[b.circle,"circle"],[b.disc,"disc"],[b.square,"square"]],setup:function(a){this.setValue(a.getStyle("list-style-type")||
-h[a.getAttribute("type")]||a.getAttribute("type")||"")},commit:function(a){var b=this.getValue();b?a.setStyle("list-style-type",b):a.removeStyle("list-style-type")}}]}],onShow:function(){var a=this.getParentEditor();(a=d(a,"ul"))&&this.setupContent(a)},onOk:function(){var a=this.getParentEditor();(a=d(a,"ul"))&&this.commitContent(a)}};if("numberedListStyle"==e){var g=[[b.notset,""],[b.lowerRoman,"lower-roman"],[b.upperRoman,"upper-roman"],[b.lowerAlpha,"lower-alpha"],[b.upperAlpha,"upper-alpha"],
-[b.decimal,"decimal"]];(!CKEDITOR.env.ie||7<CKEDITOR.env.version)&&g.concat([[b.armenian,"armenian"],[b.decimalLeadingZero,"decimal-leading-zero"],[b.georgian,"georgian"],[b.lowerGreek,"lower-greek"]]);return{title:b.numberedTitle,minWidth:300,minHeight:50,contents:[{id:"info",accessKey:"I",elements:[{type:"hbox",widths:["25%","75%"],children:[{label:b.start,type:"text",id:"start",validate:CKEDITOR.dialog.validate.integer(b.validateStartNumber),setup:function(a){this.setValue(a.getFirst(f).getAttribute("value")||
-a.getAttribute("start")||1)},commit:function(a){var b=a.getFirst(f),c=b.getAttribute("value")||a.getAttribute("start")||1;a.getFirst(f).removeAttribute("value");var d=parseInt(this.getValue(),10);isNaN(d)?a.removeAttribute("start"):a.setAttribute("start",d);a=b;b=c;for(d=isNaN(d)?1:d;(a=a.getNext(f))&&b++;)a.getAttribute("value")==b&&a.setAttribute("value",d+b-c)}},{type:"select",label:b.type,id:"type",style:"width: 100%;",items:g,setup:function(a){this.setValue(a.getStyle("list-style-type")||h[a.getAttribute("type")]||
-a.getAttribute("type")||"")},commit:function(a){var b=this.getValue();b?a.setStyle("list-style-type",b):a.removeStyle("list-style-type")}}]}]}],onShow:function(){var a=this.getParentEditor();(a=d(a,"ol"))&&this.setupContent(a)},onOk:function(){var a=this.getParentEditor();(a=d(a,"ol"))&&this.commitContent(a)}}}}var f=function(c){return c.type==CKEDITOR.NODE_ELEMENT&&c.is("li")},h={a:"lower-alpha",A:"upper-alpha",i:"lower-roman",I:"upper-roman",1:"decimal",disc:"disc",circle:"circle",square:"square"};
-CKEDITOR.dialog.add("numberedListStyle",function(c){return e(c,"numberedListStyle")});CKEDITOR.dialog.add("bulletedListStyle",function(c){return e(c,"bulletedListStyle")})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png b/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png
deleted file mode 100644
index 4a8d2bfd..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon.png b/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon.png
deleted file mode 100644
index b981bb5c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/hidpi/icon.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon-rtl.png b/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon-rtl.png
deleted file mode 100644
index 55b5b5f9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon-rtl.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon.png b/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon.png
deleted file mode 100644
index e0634336..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/magicline/images/icon.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/images/pagebreak.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/images/pagebreak.gif
deleted file mode 100644
index 8d1cffd6..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/pagebreak/images/pagebreak.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/filter/default.js b/wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/filter/default.js
deleted file mode 100644
index 899ed21b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/pastefromword/filter/default.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function y(a){for(var a=a.toUpperCase(),c=z.length,b=0,f=0;f<c;++f)for(var d=z[f],e=d[1].length;a.substr(0,e)==d[1];a=a.substr(e))b+=d[0];return b}function A(a){for(var a=a.toUpperCase(),c=B.length,b=1,f=1;0<a.length;f*=c)b+=B.indexOf(a.charAt(a.length-1))*f,a=a.substr(0,a.length-1);return b}var C=CKEDITOR.htmlParser.fragment.prototype,o=CKEDITOR.htmlParser.element.prototype;C.onlyChild=o.onlyChild=function(){var a=this.children;return 1==a.length&&a[0]||null};o.removeAnyChildWithName=
-function(a){for(var c=this.children,b=[],f,d=0;d<c.length;d++)f=c[d],f.name&&(f.name==a&&(b.push(f),c.splice(d--,1)),b=b.concat(f.removeAnyChildWithName(a)));return b};o.getAncestor=function(a){for(var c=this.parent;c&&(!c.name||!c.name.match(a));)c=c.parent;return c};C.firstChild=o.firstChild=function(a){for(var c,b=0;b<this.children.length;b++)if(c=this.children[b],a(c)||c.name&&(c=c.firstChild(a)))return c;return null};o.addStyle=function(a,c,b){var f="";if("string"==typeof c)f+=a+":"+c+";";else{if("object"==
-typeof a)for(var d in a)a.hasOwnProperty(d)&&(f+=d+":"+a[d]+";");else f+=a;b=c}this.attributes||(this.attributes={});a=this.attributes.style||"";a=(b?[f,a]:[a,f]).join(";");this.attributes.style=a.replace(/^;+|;(?=;)/g,"")};o.getStyle=function(a){var c=this.attributes.style;if(c)return c=CKEDITOR.tools.parseCssText(c,1),c[a]};CKEDITOR.dtd.parentOf=function(a){var c={},b;for(b in this)-1==b.indexOf("$")&&this[b][a]&&(c[b]=1);return c};var H=/^([.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?/i,
-D=/^(?:\b0[^\s]*\s*){1,4}$/,x={ol:{decimal:/\d+/,"lower-roman":/^m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})$/,"upper-roman":/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"lower-alpha":/^[a-z]+$/,"upper-alpha":/^[A-Z]+$/},ul:{disc:/[l\u00B7\u2002]/,circle:/[\u006F\u00D8]/,square:/[\u006E\u25C6]/}},z=[[1E3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],B="ABCDEFGHIJKLMNOPQRSTUVWXYZ",s=0,t=null,w,E=CKEDITOR.plugins.pastefromword=
-{utils:{createListBulletMarker:function(a,c){var b=new CKEDITOR.htmlParser.element("cke:listbullet");b.attributes={"cke:listsymbol":a[0]};b.add(new CKEDITOR.htmlParser.text(c));return b},isListBulletIndicator:function(a){if(/mso-list\s*:\s*Ignore/i.test(a.attributes&&a.attributes.style))return!0},isContainingOnlySpaces:function(a){var c;return(c=a.onlyChild())&&/^(:?\s|&nbsp;)+$/.test(c.value)},resolveList:function(a){var c=a.attributes,b;if((b=a.removeAnyChildWithName("cke:listbullet"))&&b.length&&
-(b=b[0]))return a.name="cke:li",c.style&&(c.style=E.filters.stylesFilter([["text-indent"],["line-height"],[/^margin(:?-left)?$/,null,function(a){a=a.split(" ");a=CKEDITOR.tools.convertToPx(a[3]||a[1]||a[0]);!s&&(null!==t&&a>t)&&(s=a-t);t=a;c["cke:indent"]=s&&Math.ceil(a/s)+1||1}],[/^mso-list$/,null,function(a){var a=a.split(" "),b=Number(a[0].match(/\d+/)),a=Number(a[1].match(/\d+/));1==a&&(b!==w&&(c["cke:reset"]=1),w=b);c["cke:indent"]=a}]])(c.style,a)||""),c["cke:indent"]||(t=0,c["cke:indent"]=
-1),CKEDITOR.tools.extend(c,b.attributes),!0;w=t=s=null;return!1},getStyleComponents:function(){var a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;"></div>',CKEDITOR.document);CKEDITOR.document.getBody().append(a);return function(c,b,f){a.setStyle(c,b);for(var c={},b=f.length,d=0;d<b;d++)c[f[d]]=a.getStyle(f[d]);return c}}(),listDtdParents:CKEDITOR.dtd.parentOf("ol")},filters:{flattenList:function(a,c){var c="number"==typeof c?c:1,b=a.attributes,f;switch(b.type){case "a":f=
-"lower-alpha";break;case "1":f="decimal"}for(var d=a.children,e,h=0;h<d.length;h++)if(e=d[h],e.name in CKEDITOR.dtd.$listItem){var j=e.attributes,g=e.children,m=g[g.length-1];m.name in CKEDITOR.dtd.$list&&(a.add(m,h+1),--g.length||d.splice(h--,1));e.name="cke:li";b.start&&!h&&(j.value=b.start);E.filters.stylesFilter([["tab-stops",null,function(a){(a=a.split(" ")[1].match(H))&&(t=CKEDITOR.tools.convertToPx(a[0]))}],1==c?["mso-list",null,function(a){a=a.split(" ");a=Number(a[0].match(/\d+/));a!==w&&
-(j["cke:reset"]=1);w=a}]:null])(j.style);j["cke:indent"]=c;j["cke:listtype"]=a.name;j["cke:list-style-type"]=f}else if(e.name in CKEDITOR.dtd.$list){arguments.callee.apply(this,[e,c+1]);d=d.slice(0,h).concat(e.children).concat(d.slice(h+1));a.children=[];e=0;for(g=d.length;e<g;e++)a.add(d[e]);d=a.children}delete a.name;b["cke:list"]=1},assembleList:function(a){for(var c=a.children,b,f,d,e,h,j,a=[],g,m,i,l,k,p,n=0;n<c.length;n++)if(b=c[n],"cke:li"==b.name)if(b.name="li",f=b.attributes,i=(i=f["cke:listsymbol"])&&
-i.match(/^(?:[(]?)([^\s]+?)([.)]?)$/),l=k=p=null,f["cke:ignored"])c.splice(n--,1);else{f["cke:reset"]&&(j=e=h=null);d=Number(f["cke:indent"]);d!=e&&(m=g=null);if(i){if(m&&x[m][g].test(i[1]))l=m,k=g;else for(var q in x)for(var u in x[q])if(x[q][u].test(i[1]))if("ol"==q&&/alpha|roman/.test(u)){if(g=/roman/.test(u)?y(i[1]):A(i[1]),!p||g<p)p=g,l=q,k=u}else{l=q;k=u;break}!l&&(l=i[2]?"ol":"ul")}else l=f["cke:listtype"]||"ol",k=f["cke:list-style-type"];m=l;g=k||("ol"==l?"decimal":"disc");k&&k!=("ol"==l?
-"decimal":"disc")&&b.addStyle("list-style-type",k);if("ol"==l&&i){switch(k){case "decimal":p=Number(i[1]);break;case "lower-roman":case "upper-roman":p=y(i[1]);break;case "lower-alpha":case "upper-alpha":p=A(i[1])}b.attributes.value=p}if(j){if(d>e)a.push(j=new CKEDITOR.htmlParser.element(l)),j.add(b),h.add(j);else{if(d<e){e-=d;for(var r;e--&&(r=j.parent);)j=r.parent}j.add(b)}c.splice(n--,1)}else a.push(j=new CKEDITOR.htmlParser.element(l)),j.add(b),c[n]=j;h=b;e=d}else j&&(j=e=h=null);for(n=0;n<a.length;n++)if(j=
-a[n],q=j.children,g=g=void 0,u=j.children.length,r=g=void 0,c=/list-style-type:(.*?)(?:;|$)/,e=CKEDITOR.plugins.pastefromword.filters.stylesFilter,g=j.attributes,!c.exec(g.style)){for(h=0;h<u;h++)if(g=q[h],g.attributes.value&&Number(g.attributes.value)==h+1&&delete g.attributes.value,g=c.exec(g.attributes.style))if(g[1]==r||!r)r=g[1];else{r=null;break}if(r){for(h=0;h<u;h++)g=q[h].attributes,g.style&&(g.style=e([["list-style-type"]])(g.style)||"");j.addStyle("list-style-type",r)}}w=t=s=null},falsyFilter:function(){return!1},
-stylesFilter:function(a,c){return function(b,f){var d=[];(b||"").replace(/&quot;/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(b,e,g){e=e.toLowerCase();"font-family"==e&&(g=g.replace(/["']/g,""));for(var m,i,l,k=0;k<a.length;k++)if(a[k]&&(b=a[k][0],m=a[k][1],i=a[k][2],l=a[k][3],e.match(b)&&(!m||g.match(m)))){e=l||e;c&&(i=i||g);"function"==typeof i&&(i=i(g,f,e));i&&i.push&&(e=i[0],i=i[1]);"string"==typeof i&&d.push([e,i]);return}!c&&d.push([e,g])});for(var e=0;e<d.length;e++)d[e]=
-d[e].join(":");return d.length?d.join(";")+";":!1}},elementMigrateFilter:function(a,c){return a?function(b){var f=c?(new CKEDITOR.style(a,c))._.definition:a;b.name=f.element;CKEDITOR.tools.extend(b.attributes,CKEDITOR.tools.clone(f.attributes));b.addStyle(CKEDITOR.style.getStyleText(f))}:function(){}},styleMigrateFilter:function(a,c){var b=this.elementMigrateFilter;return a?function(f,d){var e=new CKEDITOR.htmlParser.element(null),h={};h[c]=f;b(a,h)(e);e.children=d.children;d.children=[e];e.filter=
-function(){};e.parent=d}:function(){}},bogusAttrFilter:function(a,c){if(-1==c.name.indexOf("cke:"))return!1},applyStyleFilter:null},getRules:function(a,c){var b=CKEDITOR.dtd,f=CKEDITOR.tools.extend({},b.$block,b.$listItem,b.$tableContent),d=a.config,e=this.filters,h=e.falsyFilter,j=e.stylesFilter,g=e.elementMigrateFilter,m=CKEDITOR.tools.bind(this.filters.styleMigrateFilter,this.filters),i=this.utils.createListBulletMarker,l=e.flattenList,k=e.assembleList,p=this.utils.isListBulletIndicator,n=this.utils.isContainingOnlySpaces,
-q=this.utils.resolveList,u=function(a){a=CKEDITOR.tools.convertToPx(a);return isNaN(a)?a:a+"px"},r=this.utils.getStyleComponents,t=this.utils.listDtdParents,o=!1!==d.pasteFromWordRemoveFontStyles,s=!1!==d.pasteFromWordRemoveStyles;return{elementNames:[[/meta|link|script/,""]],root:function(a){a.filterChildren(c);k(a)},elements:{"^":function(a){var c;CKEDITOR.env.gecko&&(c=e.applyStyleFilter)&&c(a)},$:function(a){var v=a.name||"",e=a.attributes;v in f&&e.style&&(e.style=j([[/^(:?width|height)$/,null,
-u]])(e.style)||"");if(v.match(/h\d/)){a.filterChildren(c);if(q(a))return;g(d["format_"+v])(a)}else if(v in b.$inline)a.filterChildren(c),n(a)&&delete a.name;else if(-1!=v.indexOf(":")&&-1==v.indexOf("cke")){a.filterChildren(c);if("v:imagedata"==v){if(v=a.attributes["o:href"])a.attributes.src=v;a.name="img";return}delete a.name}v in t&&(a.filterChildren(c),k(a))},style:function(a){if(CKEDITOR.env.gecko){var a=(a=a.onlyChild().value.match(/\/\* Style Definitions \*\/([\s\S]*?)\/\*/))&&a[1],c={};a&&
-(a.replace(/[\n\r]/g,"").replace(/(.+?)\{(.+?)\}/g,function(a,b,F){for(var b=b.split(","),a=b.length,d=0;d<a;d++)CKEDITOR.tools.trim(b[d]).replace(/^(\w+)(\.[\w-]+)?$/g,function(a,b,d){b=b||"*";d=d.substring(1,d.length);d.match(/MsoNormal/)||(c[b]||(c[b]={}),d?c[b][d]=F:c[b]=F)})}),e.applyStyleFilter=function(a){var b=c["*"]?"*":a.name,d=a.attributes&&a.attributes["class"];b in c&&(b=c[b],"object"==typeof b&&(b=b[d]),b&&a.addStyle(b,!0))})}return!1},p:function(a){if(/MsoListParagraph/i.exec(a.attributes["class"])||
-a.getStyle("mso-list")){var b=a.firstChild(function(a){return a.type==CKEDITOR.NODE_TEXT&&!n(a.parent)});(b=b&&b.parent)&&b.addStyle("mso-list","Ignore")}a.filterChildren(c);q(a)||(d.enterMode==CKEDITOR.ENTER_BR?(delete a.name,a.add(new CKEDITOR.htmlParser.element("br"))):g(d["format_"+(d.enterMode==CKEDITOR.ENTER_P?"p":"div")])(a))},div:function(a){var c=a.onlyChild();if(c&&"table"==c.name){var b=a.attributes;c.attributes=CKEDITOR.tools.extend(c.attributes,b);b.style&&c.addStyle(b.style);c=new CKEDITOR.htmlParser.element("div");
-c.addStyle("clear","both");a.add(c);delete a.name}},td:function(a){a.getAncestor("thead")&&(a.name="th")},ol:l,ul:l,dl:l,font:function(a){if(p(a.parent))delete a.name;else{a.filterChildren(c);var b=a.attributes,d=b.style,e=a.parent;"font"==e.name?(CKEDITOR.tools.extend(e.attributes,a.attributes),d&&e.addStyle(d),delete a.name):(d=(d||"").split(";"),b.color&&("#000000"!=b.color&&d.push("color:"+b.color),delete b.color),b.face&&(d.push("font-family:"+b.face),delete b.face),b.size&&(d.push("font-size:"+
-(3<b.size?"large":3>b.size?"small":"medium")),delete b.size),a.name="span",a.addStyle(d.join(";")))}},span:function(a){if(p(a.parent))return!1;a.filterChildren(c);if(n(a))return delete a.name,null;if(p(a)){var b=a.firstChild(function(a){return a.value||"img"==a.name}),e=(b=b&&(b.value||"l."))&&b.match(/^(?:[(]?)([^\s]+?)([.)]?)$/);if(e)return b=i(e,b),(a=a.getAncestor("span"))&&/ mso-hide:\s*all|display:\s*none /.test(a.attributes.style)&&(b.attributes["cke:ignored"]=1),b}if(e=(b=a.attributes)&&b.style)b.style=
-j([["line-height"],[/^font-family$/,null,!o?m(d.font_style,"family"):null],[/^font-size$/,null,!o?m(d.fontSize_style,"size"):null],[/^color$/,null,!o?m(d.colorButton_foreStyle,"color"):null],[/^background-color$/,null,!o?m(d.colorButton_backStyle,"color"):null]])(e,a)||"";b.style||delete b.style;CKEDITOR.tools.isEmpty(b)&&delete a.name;return null},b:g(d.coreStyles_bold),i:g(d.coreStyles_italic),u:g(d.coreStyles_underline),s:g(d.coreStyles_strike),sup:g(d.coreStyles_superscript),sub:g(d.coreStyles_subscript),
-a:function(a){a=a.attributes;a.href&&a.href.match(/^file:\/\/\/[\S]+#/i)&&(a.href=a.href.replace(/^file:\/\/\/[^#]+/i,""))},"cke:listbullet":function(a){a.getAncestor(/h\d/)&&!d.pasteFromWordNumberedHeadingToList&&delete a.name}},attributeNames:[[/^onmouse(:?out|over)/,""],[/^onload$/,""],[/(?:v|o):\w+/,""],[/^lang/,""]],attributes:{style:j(s?[[/^list-style-type$/,null],[/^margin$|^margin-(?!bottom|top)/,null,function(a,b,c){if(b.name in{p:1,div:1}){b="ltr"==d.contentsLangDirection?"margin-left":
-"margin-right";if("margin"==c)a=r(c,a,[b])[b];else if(c!=b)return null;if(a&&!D.test(a))return[b,a]}return null}],[/^clear$/],[/^border.*|margin.*|vertical-align|float$/,null,function(a,b){if("img"==b.name)return a}],[/^width|height$/,null,function(a,b){if(b.name in{table:1,td:1,th:1,img:1})return a}]]:[[/^mso-/],[/-color$/,null,function(a){if("transparent"==a)return!1;if(CKEDITOR.env.gecko)return a.replace(/-moz-use-text-color/g,"transparent")}],[/^margin$/,D],["text-indent","0cm"],["page-break-before"],
-["tab-stops"],["display","none"],o?[/font-?/]:null],s),width:function(a,c){if(c.name in b.$tableContent)return!1},border:function(a,c){if(c.name in b.$tableContent)return!1},"class":h,bgcolor:h,valign:s?h:function(a,b){b.addStyle("vertical-align",a);return!1}},comment:!CKEDITOR.env.ie?function(a,b){var c=a.match(/<img.*?>/),d=a.match(/^\[if !supportLists\]([\s\S]*?)\[endif\]$/);return d?(d=(c=d[1]||c&&"l.")&&c.match(/>(?:[(]?)([^\s]+?)([.)]?)</),i(d,c)):CKEDITOR.env.gecko&&c?(c=CKEDITOR.htmlParser.fragment.fromHtml(c[0]).children[0],
-(d=(d=(d=b.previous)&&d.value.match(/<v:imagedata[^>]*o:href=['"](.*?)['"]/))&&d[1])&&(c.attributes.src=d),c):!1}:h}}},G=function(){this.dataFilter=new CKEDITOR.htmlParser.filter};G.prototype={toHtml:function(a){var a=CKEDITOR.htmlParser.fragment.fromHtml(a),c=new CKEDITOR.htmlParser.basicWriter;a.writeHtml(c,this.dataFilter);return c.getHtml(!0)}};CKEDITOR.cleanWord=function(a,c){CKEDITOR.env.gecko&&(a=a.replace(/(<\!--\[if[^<]*?\])--\>([\S\s]*?)<\!--(\[endif\]--\>)/gi,"$1$2$3"));CKEDITOR.env.webkit&&
-(a=a.replace(/(class="MsoListParagraph[^>]+><\!--\[if !supportLists\]--\>)([^<]+<span[^<]+<\/span>)(<\!--\[endif\]--\>)/gi,"$1<span>$2</span>$3"));var b=new G,f=b.dataFilter;f.addRules(CKEDITOR.plugins.pastefromword.getRules(c,f));c.fire("beforeCleanWord",{filter:f});try{a=b.toHtml(a)}catch(d){alert(c.lang.pastefromword.error)}a=a.replace(/cke:.*?".*?"/g,"");a=a.replace(/style=""/g,"");return a=a.replace(/<span>/g,"")}})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/preview/preview.html b/wqflask/wqflask/static/packages/ckeditor/plugins/preview/preview.html
deleted file mode 100644
index 8c028262..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/preview/preview.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<script>
-
-// Prevent from DOM clobbering.
-if ( typeof window.opener._cke_htmlToLoad == 'string' ) {
- var doc = document;
- doc.open();
- doc.write( window.opener._cke_htmlToLoad );
- doc.close();
-
- delete window.opener._cke_htmlToLoad;
-}
-
-</script>
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/LICENSE.md b/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/LICENSE.md
deleted file mode 100644
index 844ab4de..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/LICENSE.md
+++ /dev/null
@@ -1,28 +0,0 @@
-Software License Agreement
-==========================
-
-**CKEditor SCAYT Plugin**
-Copyright &copy; 2012, [CKSource](http://cksource.com) - Frederico Knabben. All rights reserved.
-
-Licensed under the terms of any of the following licenses at your choice:
-
-* GNU General Public License Version 2 or later (the "GPL"):
- http://www.gnu.org/licenses/gpl.html
-
-* GNU Lesser General Public License Version 2.1 or later (the "LGPL"):
- http://www.gnu.org/licenses/lgpl.html
-
-* Mozilla Public License Version 1.1 or later (the "MPL"):
- http://www.mozilla.org/MPL/MPL-1.1.html
-
-You are not required to, but if you want to explicitly declare the license you have chosen to be bound to when using, reproducing, modifying and distributing this software, just include a text file titled "legal.txt" in your version of this software, indicating your license choice.
-
-Sources of Intellectual Property Included in this plugin
---------------------------------------------------------
-
-Where not otherwise indicated, all plugin content is authored by CKSource engineers and consists of CKSource-owned intellectual property. In some specific instances, the plugin will incorporate work done by developers outside of CKSource with their express permission.
-
-Trademarks
-----------
-
-CKEditor is a trademark of CKSource - Frederico Knabben. All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/README.md b/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/README.md
deleted file mode 100644
index 1231d91e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/README.md
+++ /dev/null
@@ -1,25 +0,0 @@
-CKEditor SCAYT Plugin
-=====================
-
-This plugin brings Spell Check As You Type (SCAYT) into up to CKEditor 4+.
-
-SCAYT is a "installation-less", using the web-services of [WebSpellChecker.net](http://www.webspellchecker.net/). It's an out of the box solution.
-
-Installation
-------------
-
-1. Clone/copy this repository contents in a new "plugins/scayt" folder in your CKEditor installation.
-2. Enable the "scayt" plugin in the CKEditor configuration file (config.js):
-
- config.extraPlugins = 'scayt';
-
-That's all. SCAYT will appear on the editor toolbar and will be ready to use.
-
-License
--------
-
-Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).
-
-See LICENSE.md for more information.
-
-Developed in cooperation with [WebSpellChecker.net](http://www.webspellchecker.net/).
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/options.js b/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/options.js
deleted file mode 100644
index aec9a1c9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/options.js
+++ /dev/null
@@ -1,17 +0,0 @@
-CKEDITOR.dialog.add("scaytDialog",function(f){var g=f.scayt,k='<p><img src="'+g.getLogo()+'" /></p><p>'+g.getLocal("version")+g.getVersion()+"</p><p>"+g.getLocal("text_copyrights")+"</p>",l=CKEDITOR.document,i={isChanged:function(){return null===this.newLang||this.currentLang===this.newLang?!1:!0},currentLang:g.getLang(),newLang:null,reset:function(){this.currentLang=g.getLang();this.newLang=null},id:"lang"},k=[{id:"options",label:g.getLocal("tab_options"),onShow:function(){},elements:[{type:"vbox",
-id:"scaytOptions",children:function(){var a=g.getApplicationConfig(),e=[],b={"ignore-all-caps-words":"label_allCaps","ignore-domain-names":"label_ignoreDomainNames","ignore-words-with-mixed-cases":"label_mixedCase","ignore-words-with-numbers":"label_mixedWithDigits"},d;for(d in a){var c={type:"checkbox"};c.id=d;c.label=g.getLocal(b[d]);e.push(c)}return e}(),onShow:function(){this.getChild();for(var a=f.scayt,e=0;e<this.getChild().length;e++)this.getChild()[e].setValue(a.getApplicationConfig()[this.getChild()[e].id])}}]},
-{id:"langs",label:g.getLocal("tab_languages"),elements:[{id:"leftLangColumn",type:"vbox",align:"left",widths:["100"],children:[{type:"html",id:"langBox",style:"overflow: hidden; white-space: normal;",html:'<form><div style="float:left;width:45%;margin-left:5px;" id="left-col-'+f.name+'"></div><div style="float:left;width:45%;margin-left:15px;" id="right-col-'+f.name+'"></div></form>',onShow:function(){var a=f.scayt.getLang();l.getById("scaytLang_"+a).$.checked=!0}}]}]},{id:"dictionaries",label:g.getLocal("tab_dictionaries"),
-elements:[{type:"vbox",id:"rightCol_col__left",children:[{type:"html",id:"dictionaryNote",html:""},{type:"text",id:"dictionaryName",label:g.getLocal("label_fieldNameDic")||"Dictionary name",onShow:function(a){var e=a.sender,b=f.scayt;setTimeout(function(){e.getContentElement("dictionaries","dictionaryNote").getElement().setText("");null!=b.getUserDictionaryName()&&""!=b.getUserDictionaryName()&&e.getContentElement("dictionaries","dictionaryName").setValue(b.getUserDictionaryName())},0)}},{type:"hbox",
-id:"notExistDic",align:"left",style:"width:auto;",widths:["50%","50%"],children:[{type:"button",id:"createDic",label:g.getLocal("btn_createDic"),title:g.getLocal("btn_createDic"),onClick:function(){var a=this.getDialog(),e=j,b=f.scayt,d=a.getContentElement("dictionaries","dictionaryName").getValue();b.createUserDictionary(d,function(c){c.error||e.toggleDictionaryButtons.call(a,!0);c.dialog=a;c.command="create";c.name=d;f.fire("scaytUserDictionaryAction",c)},function(c){c.dialog=a;c.command="create";
-c.name=d;f.fire("scaytUserDictionaryActionError",c)})}},{type:"button",id:"restoreDic",label:g.getLocal("btn_restoreDic"),title:g.getLocal("btn_restoreDic"),onClick:function(){var a=this.getDialog(),e=f.scayt,b=j,d=a.getContentElement("dictionaries","dictionaryName").getValue();e.restoreUserDictionary(d,function(c){c.dialog=a;c.error||b.toggleDictionaryButtons.call(a,!0);c.command="restore";c.name=d;f.fire("scaytUserDictionaryAction",c)},function(c){c.dialog=a;c.command="restore";c.name=d;f.fire("scaytUserDictionaryActionError",
-c)})}}]},{type:"hbox",id:"existDic",align:"left",style:"width:auto;",widths:["50%","50%"],children:[{type:"button",id:"removeDic",label:g.getLocal("btn_deleteDic"),title:g.getLocal("btn_deleteDic"),onClick:function(){var a=this.getDialog(),e=f.scayt,b=j,d=a.getContentElement("dictionaries","dictionaryName"),c=d.getValue();e.removeUserDictionary(c,function(e){d.setValue("");e.error||b.toggleDictionaryButtons.call(a,!1);e.dialog=a;e.command="remove";e.name=c;f.fire("scaytUserDictionaryAction",e)},function(b){b.dialog=
-a;b.command="remove";b.name=c;f.fire("scaytUserDictionaryActionError",b)})}},{type:"button",id:"renameDic",label:g.getLocal("btn_renameDic"),title:g.getLocal("btn_renameDic"),onClick:function(){var a=this.getDialog(),e=f.scayt,b=a.getContentElement("dictionaries","dictionaryName").getValue();e.renameUserDictionary(b,function(d){d.dialog=a;d.command="rename";d.name=b;f.fire("scaytUserDictionaryAction",d)},function(d){d.dialog=a;d.command="rename";d.name=b;f.fire("scaytUserDictionaryActionError",d)})}}]},
-{type:"html",id:"dicInfo",html:'<div id="dic_info_editor1" style="margin:5px auto; width:95%;white-space:normal;">'+g.getLocal("text_descriptionDic")+"</div>"}]}]},{id:"about",label:g.getLocal("tab_about"),elements:[{type:"html",id:"about",style:"margin: 5px 5px;",html:'<div><div id="scayt_about_">'+k+"</div></div>"}]}];f.on("scaytUserDictionaryAction",function(a){var e=a.data.dialog,b=e.getContentElement("dictionaries","dictionaryNote").getElement(),d=a.editor.scayt,c;void 0===a.data.error?(c=d.getLocal("message_success_"+
-a.data.command+"Dic"),c=c.replace("%s",a.data.name),b.setText(c),SCAYT.$(b.$).css({color:"blue"})):(""===a.data.name?b.setText(d.getLocal("message_info_emptyDic")):(c=d.getLocal("message_error_"+a.data.command+"Dic"),c=c.replace("%s",a.data.name),b.setText(c)),SCAYT.$(b.$).css({color:"red"}),null!=d.getUserDictionaryName()&&""!=d.getUserDictionaryName()?e.getContentElement("dictionaries","dictionaryName").setValue(d.getUserDictionaryName()):e.getContentElement("dictionaries","dictionaryName").setValue(""))});
-f.on("scaytUserDictionaryActionError",function(a){var e=a.data.dialog,b=e.getContentElement("dictionaries","dictionaryNote").getElement(),d=a.editor.scayt,c;""===a.data.name?b.setText(d.getLocal("message_info_emptyDic")):(c=d.getLocal("message_error_"+a.data.command+"Dic"),c=c.replace("%s",a.data.name),b.setText(c));SCAYT.$(b.$).css({color:"red"});null!=d.getUserDictionaryName()&&""!=d.getUserDictionaryName()?e.getContentElement("dictionaries","dictionaryName").setValue(d.getUserDictionaryName()):
-e.getContentElement("dictionaries","dictionaryName").setValue("")});var j={title:g.getLocal("text_title"),resizable:CKEDITOR.DIALOG_RESIZE_BOTH,minWidth:340,minHeight:260,onLoad:function(){if(0!=f.config.scayt_uiTabs[1]){var a=j,e=a.getLangBoxes.call(this);e.getParent().setStyle("white-space","normal");a.renderLangList(e);this.definition.minWidth=this.getSize().width;this.resize(this.definition.minWidth,this.definition.minHeight)}},onCancel:function(){i.reset()},onHide:function(){f.unlockSelection()},
-onShow:function(){f.fire("scaytDialogShown",this);if(0!=f.config.scayt_uiTabs[2]){var a=f.scayt,e=this.getContentElement("dictionaries","dictionaryName"),b=this.getContentElement("dictionaries","existDic").getElement().getParent(),d=this.getContentElement("dictionaries","notExistDic").getElement().getParent();b.hide();d.hide();null!=a.getUserDictionaryName()&&""!=a.getUserDictionaryName()?(this.getContentElement("dictionaries","dictionaryName").setValue(a.getUserDictionaryName()),b.show()):(e.setValue(""),
-d.show())}},onOk:function(){var a=j,e=f.scayt;this.getContentElement("options","scaytOptions");a=a.getChangedOption.call(this);e.commitOption({changedOptions:a})},toggleDictionaryButtons:function(a){var e=this.getContentElement("dictionaries","existDic").getElement().getParent(),b=this.getContentElement("dictionaries","notExistDic").getElement().getParent();a?(e.show(),b.hide()):(e.hide(),b.show())},getChangedOption:function(){var a={};if(1==f.config.scayt_uiTabs[0])for(var e=this.getContentElement("options",
-"scaytOptions").getChild(),b=0;b<e.length;b++)e[b].isChanged()&&(a[e[b].id]=e[b].getValue());i.isChanged()&&(a[i.id]=f.config.scayt_sLang=i.currentLang=i.newLang);return a},buildRadioInputs:function(a,e){var b=new CKEDITOR.dom.element("div");CKEDITOR.document.createElement("div");var d="scaytLang_"+e,c=CKEDITOR.dom.element.createFromHtml('<input id="'+d+'" type="radio" value="'+e+'" name="scayt_lang" />'),g=new CKEDITOR.dom.element("label"),h=f.scayt;b.setStyles({"white-space":"normal",position:"relative"});
-c.on("click",function(a){i.newLang=a.sender.getValue()});g.appendText(a);g.setAttribute("for",d);b.append(c);b.append(g);e===h.getLang()&&(c.setAttribute("checked",!0),c.setAttribute("defaultChecked","defaultChecked"));return b},renderLangList:function(a){var e=a.find("#left-col-"+f.name).getItem(0),a=a.find("#right-col-"+f.name).getItem(0),b=g.getLangList(),d={},c=[],i=0,h;for(h in b.ltr)d[h]=b.ltr[h];for(h in b.rtl)d[h]=b.rtl[h];for(h in d)c.push([h,d[h]]);c.sort(function(a,b){var c=0;a[1]>b[1]?
-c=1:a[1]<b[1]&&(c=-1);return c});d={};for(b=0;b<c.length;b++)d[c[b][0]]=c[b][1];c=Math.round(c.length/2);for(h in d)i++,this.buildRadioInputs(d[h],h).appendTo(i<=c?e:a)},getLangBoxes:function(){return this.getContentElement("langs","langBox").getElement()},contents:function(a,e){var b=[],d=e.config.scayt_uiTabs;if(d){for(var c in d)1==d[c]&&b.push(a[c]);b.push(a[a.length-1])}else return a;return b}(k,f)};return j}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/toolbar.css b/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/toolbar.css
deleted file mode 100644
index ecabdac9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/scayt/dialogs/toolbar.css
+++ /dev/null
@@ -1,71 +0,0 @@
-a
-{
- text-decoration:none;
- padding: 2px 4px 4px 6px;
- display : block;
- border-width: 1px;
- border-style: solid;
- margin : 0px;
-}
-
-a.cke_scayt_toogle:hover,
-a.cke_scayt_toogle:focus,
-a.cke_scayt_toogle:active
-{
- border-color: #316ac5;
- background-color: #dff1ff;
- color : #000;
- cursor: pointer;
- margin : 0px;
-}
-a.cke_scayt_toogle {
- color : #316ac5;
- border-color: #fff;
-}
-.scayt_enabled a.cke_scayt_item {
- color : #316ac5;
- border-color: #fff;
- margin : 0px;
-}
-.scayt_disabled a.cke_scayt_item {
- color : gray;
- border-color : #fff;
-}
-.scayt_enabled a.cke_scayt_item:hover,
-.scayt_enabled a.cke_scayt_item:focus,
-.scayt_enabled a.cke_scayt_item:active
-{
- border-color: #316ac5;
- background-color: #dff1ff;
- color : #000;
- cursor: pointer;
-}
-.scayt_disabled a.cke_scayt_item:hover,
-.scayt_disabled a.cke_scayt_item:focus,
-.scayt_disabled a.cke_scayt_item:active
-{
- border-color: gray;
- background-color: #dff1ff;
- color : gray;
- cursor: no-drop;
-}
-.cke_scayt_set_on, .cke_scayt_set_off
-{
- display: none;
-}
-.scayt_enabled .cke_scayt_set_on
-{
- display: none;
-}
-.scayt_disabled .cke_scayt_set_on
-{
- display: inline;
-}
-.scayt_disabled .cke_scayt_set_off
-{
- display: none;
-}
-.scayt_enabled .cke_scayt_set_off
-{
- display: inline;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_address.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_address.png
deleted file mode 100644
index 5abdae12..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_address.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_blockquote.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_blockquote.png
deleted file mode 100644
index a8f49735..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_blockquote.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_div.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_div.png
deleted file mode 100644
index 87b3c171..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_div.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h1.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h1.png
deleted file mode 100644
index 3933325c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h1.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h2.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h2.png
deleted file mode 100644
index c99894c2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h2.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h3.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h3.png
deleted file mode 100644
index cb73d679..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h3.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h4.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h4.png
deleted file mode 100644
index 7af6bb49..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h4.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h5.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h5.png
deleted file mode 100644
index ce5bec16..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h5.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h6.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h6.png
deleted file mode 100644
index e67b9829..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_h6.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_p.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_p.png
deleted file mode 100644
index 63a58202..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_p.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_pre.png b/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_pre.png
deleted file mode 100644
index 955a8689..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/showblocks/images/block_pre.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/dialogs/smiley.js b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/dialogs/smiley.js
deleted file mode 100644
index b202d3ee..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/dialogs/smiley.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("smiley",function(f){for(var e=f.config,a=f.lang.smiley,h=e.smiley_images,g=e.smiley_columns||8,i,k=function(j){var c=j.data.getTarget(),b=c.getName();if("a"==b)c=c.getChild(0);else if("img"!=b)return;var b=c.getAttribute("cke_src"),a=c.getAttribute("title"),c=f.document.createElement("img",{attributes:{src:b,"data-cke-saved-src":b,title:a,alt:a,width:c.$.width,height:c.$.height}});f.insertElement(c);i.hide();j.data.preventDefault()},n=CKEDITOR.tools.addFunction(function(a,c){var a=
-new CKEDITOR.dom.event(a),c=new CKEDITOR.dom.element(c),b;b=a.getKeystroke();var d="rtl"==f.lang.dir;switch(b){case 38:if(b=c.getParent().getParent().getPrevious())b=b.getChild([c.getParent().getIndex(),0]),b.focus();a.preventDefault();break;case 40:if(b=c.getParent().getParent().getNext())(b=b.getChild([c.getParent().getIndex(),0]))&&b.focus();a.preventDefault();break;case 32:k({data:a});a.preventDefault();break;case d?37:39:if(b=c.getParent().getNext())b=b.getChild(0),b.focus(),a.preventDefault(!0);
-else if(b=c.getParent().getParent().getNext())(b=b.getChild([0,0]))&&b.focus(),a.preventDefault(!0);break;case d?39:37:if(b=c.getParent().getPrevious())b=b.getChild(0),b.focus(),a.preventDefault(!0);else if(b=c.getParent().getParent().getPrevious())b=b.getLast().getChild(0),b.focus(),a.preventDefault(!0)}}),d=CKEDITOR.tools.getNextId()+"_smiley_emtions_label",d=['<div><span id="'+d+'" class="cke_voice_label">'+a.options+"</span>",'<table role="listbox" aria-labelledby="'+d+'" style="width:100%;height:100%;border-collapse:separate;" cellspacing="2" cellpadding="2"',
-CKEDITOR.env.ie&&CKEDITOR.env.quirks?' style="position:absolute;"':"","><tbody>"],l=h.length,a=0;a<l;a++){0===a%g&&d.push('<tr role="presentation">');var m="cke_smile_label_"+a+"_"+CKEDITOR.tools.getNextNumber();d.push('<td class="cke_dark_background cke_centered" style="vertical-align: middle;" role="presentation"><a href="javascript:void(0)" role="option"',' aria-posinset="'+(a+1)+'"',' aria-setsize="'+l+'"',' aria-labelledby="'+m+'"',' class="cke_smile cke_hand" tabindex="-1" onkeydown="CKEDITOR.tools.callFunction( ',
-n,', event, this );">','<img class="cke_hand" title="',e.smiley_descriptions[a],'" cke_src="',CKEDITOR.tools.htmlEncode(e.smiley_path+h[a]),'" alt="',e.smiley_descriptions[a],'"',' src="',CKEDITOR.tools.htmlEncode(e.smiley_path+h[a]),'"',CKEDITOR.env.ie?" onload=\"this.setAttribute('width', 2); this.removeAttribute('width');\" ":"",'><span id="'+m+'" class="cke_voice_label">'+e.smiley_descriptions[a]+"</span></a>","</td>");a%g==g-1&&d.push("</tr>")}if(a<g-1){for(;a<g-1;a++)d.push("<td></td>");d.push("</tr>")}d.push("</tbody></table></div>");
-e={type:"html",id:"smileySelector",html:d.join(""),onLoad:function(a){i=a.sender},focus:function(){var a=this;setTimeout(function(){a.getElement().getElementsByTag("a").getItem(0).focus()},0)},onClick:k,style:"width: 100%; border-collapse: separate;"};return{title:f.lang.smiley.title,minWidth:270,minHeight:120,contents:[{id:"tab1",label:"",title:"",expand:!0,padding:0,elements:[e]}],buttons:[CKEDITOR.dialog.cancelButton]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.gif
deleted file mode 100644
index 21f81a2f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.png
deleted file mode 100644
index 559e5e71..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angel_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.gif
deleted file mode 100644
index c912d99b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.png
deleted file mode 100644
index c05d2be3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/angry_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.gif
deleted file mode 100644
index 4162a7b2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.png
deleted file mode 100644
index a711c0d8..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/broken_heart.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.gif
deleted file mode 100644
index 0e420cba..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.png
deleted file mode 100644
index e0b8e5c6..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/confused_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.gif
deleted file mode 100644
index b5133427..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.png
deleted file mode 100644
index a1891a34..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/cry_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.gif
deleted file mode 100644
index 9b2a1005..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.png
deleted file mode 100644
index 53247a88..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/devil_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embaressed_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embaressed_smile.gif
deleted file mode 100644
index 8d39f252..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embaressed_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.gif
deleted file mode 100644
index 8d39f252..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.png
deleted file mode 100644
index 34904b66..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/embarrassed_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.gif
deleted file mode 100644
index 5294ec48..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.png
deleted file mode 100644
index 44398ad1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/envelope.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.gif
deleted file mode 100644
index 160be8ef..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.png
deleted file mode 100644
index df409e62..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/heart.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.gif
deleted file mode 100644
index ffb23db0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.png
deleted file mode 100644
index a4f2f363..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/kiss.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.gif
deleted file mode 100644
index ceb6e2d9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.png
deleted file mode 100644
index 0c4a9240..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/lightbulb.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.gif
deleted file mode 100644
index 3177355f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.png
deleted file mode 100644
index abc4e2d0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/omg_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.gif
deleted file mode 100644
index fdcf5c33..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.png
deleted file mode 100644
index 0f2649b7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/regular_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.gif
deleted file mode 100644
index cca0729d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.png
deleted file mode 100644
index f20f3bf3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/sad_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.gif
deleted file mode 100644
index 7d93474c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.png
deleted file mode 100644
index fdaa28b7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/shades_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.gif
deleted file mode 100644
index 44c37996..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.png
deleted file mode 100644
index 5e63785e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/teeth_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.gif
deleted file mode 100644
index 5c8bee30..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.png
deleted file mode 100644
index 1823481f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_down.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.gif
deleted file mode 100644
index 9cc37029..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.png
deleted file mode 100644
index d4e8b22a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/thumbs_up.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.gif
deleted file mode 100644
index 81e05b0f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.png
deleted file mode 100644
index 56553fbe..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tongue_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tounge_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tounge_smile.gif
deleted file mode 100644
index 81e05b0f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/tounge_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif
deleted file mode 100644
index eef4fc00..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png
deleted file mode 100644
index f9714d1b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.gif
deleted file mode 100644
index 6d3d64bd..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.png b/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.png
deleted file mode 100644
index 7c99c3fc..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/smiley/images/wink_smile.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt
deleted file mode 100644
index baadd2b7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-
-cs.js Found: 118 Missing: 0
-cy.js Found: 118 Missing: 0
-de.js Found: 118 Missing: 0
-el.js Found: 16 Missing: 102
-eo.js Found: 118 Missing: 0
-et.js Found: 31 Missing: 87
-fa.js Found: 24 Missing: 94
-fi.js Found: 23 Missing: 95
-fr.js Found: 118 Missing: 0
-hr.js Found: 23 Missing: 95
-it.js Found: 118 Missing: 0
-nb.js Found: 118 Missing: 0
-nl.js Found: 118 Missing: 0
-no.js Found: 118 Missing: 0
-tr.js Found: 118 Missing: 0
-ug.js Found: 39 Missing: 79
-zh-cn.js Found: 118 Missing: 0
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ar.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ar.js
deleted file mode 100644
index acb6c923..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ar.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ar",{euro:"رمز اليورو",lsquo:"علامة تنصيص فردية علي اليسار",rsquo:"علامة تنصيص فردية علي اليمين",ldquo:"علامة تنصيص مزدوجة علي اليسار",rdquo:"علامة تنصيص مزدوجة علي اليمين",ndash:"En dash",mdash:"Em dash",iexcl:"علامة تعجب مقلوبة",cent:"رمز السنت",pound:"رمز الاسترليني",curren:"رمز العملة",yen:"رمز الين",brvbar:"شريط مقطوع",sect:"رمز القسم",uml:"Diaeresis",copy:"علامة حقوق الطبع",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"ليست علامة",reg:"علامة مسجّلة",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"علامة الإستفهام غير صحيحة",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/bg.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/bg.js
deleted file mode 100644
index 0bf8749e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/bg.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","bg",{euro:"Евро знак",lsquo:"Лява маркировка за цитат",rsquo:"Дясна маркировка за цитат",ldquo:"Лява двойна кавичка за цитат",rdquo:"Дясна двойна кавичка за цитат",ndash:"\\\\",mdash:"/",iexcl:"Обърната питанка",cent:"Знак за цент",pound:"Знак за паунд",curren:"Валутен знак",yen:"Знак за йена",brvbar:"Прекъсната линия",sect:"Знак за секция",uml:"Diaeresis",copy:"Знак за Copyright",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Registered sign",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ca.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ca.js
deleted file mode 100644
index e6504372..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ca.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ca",{euro:"Símbol d'euro",lsquo:"Signe de cometa simple esquerra",rsquo:"Signe de cometa simple dreta",ldquo:"Signe de cometa doble esquerra",rdquo:"Signe de cometa doble dreta",ndash:"Guió",mdash:"Guió baix",iexcl:"Signe d'exclamació inversa",cent:"Símbol de percentatge",pound:"Símbol de lliura",curren:"Símbol de moneda",yen:"Símbol de Yen",brvbar:"Barra trencada",sect:"Símbol de secció",uml:"Dièresi",copy:"Símbol de Copyright",ordf:"Indicador ordinal femení",
-laquo:"Signe de cometes angulars esquerra",not:"Símbol de negació",reg:"Símbol registrat",macr:"Macron",deg:"Símbol de grau",sup2:"Superíndex dos",sup3:"Superíndex tres",acute:"Accent agut",micro:"Símbol de micro",para:"Símbol de calderó",middot:"Punt volat",cedil:"Ce trencada",sup1:"Superíndex u",ordm:"Indicador ordinal masculí",raquo:"Signe de cometes angulars dreta",frac14:"Fracció vulgar un quart",frac12:"Fracció vulgar una meitat",frac34:"Fracció vulgar tres quarts",iquest:"Símbol d'interrogació invertit",
-Agrave:"Lletra majúscula llatina A amb accent greu",Aacute:"Lletra majúscula llatina A amb accent agut",Acirc:"Lletra majúscula llatina A amb circumflex",Atilde:"Lletra majúscula llatina A amb titlla",Auml:"Lletra majúscula llatina A amb dièresi",Aring:"Lletra majúscula llatina A amb anell superior",AElig:"Lletra majúscula llatina Æ",Ccedil:"Lletra majúscula llatina C amb ce trencada",Egrave:"Lletra majúscula llatina E amb accent greu",Eacute:"Lletra majúscula llatina E amb accent agut",Ecirc:"Lletra majúscula llatina E amb circumflex",
-Euml:"Lletra majúscula llatina E amb dièresi",Igrave:"Lletra majúscula llatina I amb accent greu",Iacute:"Lletra majúscula llatina I amb accent agut",Icirc:"Lletra majúscula llatina I amb circumflex",Iuml:"Lletra majúscula llatina I amb dièresi",ETH:"Lletra majúscula llatina Eth",Ntilde:"Lletra majúscula llatina N amb titlla",Ograve:"Lletra majúscula llatina O amb accent greu",Oacute:"Lletra majúscula llatina O amb accent agut",Ocirc:"Lletra majúscula llatina O amb circumflex",Otilde:"Lletra majúscula llatina O amb titlla",
-Ouml:"Lletra majúscula llatina O amb dièresi",times:"Símbol de multiplicació",Oslash:"Lletra majúscula llatina O amb barra",Ugrave:"Lletra majúscula llatina U amb accent greu",Uacute:"Lletra majúscula llatina U amb accent agut",Ucirc:"Lletra majúscula llatina U amb circumflex",Uuml:"Lletra majúscula llatina U amb dièresi",Yacute:"Lletra majúscula llatina Y amb accent agut",THORN:"Lletra majúscula llatina Thorn",szlig:"Lletra minúscula llatina sharp s",agrave:"Lletra minúscula llatina a amb accent greu",
-aacute:"Lletra minúscula llatina a amb accent agut",acirc:"Lletra minúscula llatina a amb circumflex",atilde:"Lletra minúscula llatina a amb titlla",auml:"Lletra minúscula llatina a amb dièresi",aring:"Lletra minúscula llatina a amb anell superior",aelig:"Lletra minúscula llatina æ",ccedil:"Lletra minúscula llatina c amb ce trencada",egrave:"Lletra minúscula llatina e amb accent greu",eacute:"Lletra minúscula llatina e amb accent agut",ecirc:"Lletra minúscula llatina e amb circumflex",euml:"Lletra minúscula llatina e amb dièresi",
-igrave:"Lletra minúscula llatina i amb accent greu",iacute:"Lletra minúscula llatina i amb accent agut",icirc:"Lletra minúscula llatina i amb circumflex",iuml:"Lletra minúscula llatina i amb dièresi",eth:"Lletra minúscula llatina eth",ntilde:"Lletra minúscula llatina n amb titlla",ograve:"Lletra minúscula llatina o amb accent greu",oacute:"Lletra minúscula llatina o amb accent agut",ocirc:"Lletra minúscula llatina o amb circumflex",otilde:"Lletra minúscula llatina o amb titlla",ouml:"Lletra minúscula llatina o amb dièresi",
-divide:"Símbol de divisió",oslash:"Lletra minúscula llatina o amb barra",ugrave:"Lletra minúscula llatina u amb accent greu",uacute:"Lletra minúscula llatina u amb accent agut",ucirc:"Lletra minúscula llatina u amb circumflex",uuml:"Lletra minúscula llatina u amb dièresi",yacute:"Lletra minúscula llatina y amb accent agut",thorn:"Lletra minúscula llatina thorn",yuml:"Lletra minúscula llatina y amb dièresi",OElig:"Lligadura majúscula llatina OE",oelig:"Lligadura minúscula llatina oe",372:"Lletra majúscula llatina W amb circumflex",
-374:"Lletra majúscula llatina Y amb circumflex",373:"Lletra minúscula llatina w amb circumflex",375:"Lletra minúscula llatina y amb circumflex",sbquo:"Signe de cita simple baixa-9",8219:"Signe de cita simple alta-invertida-9",bdquo:"Signe de cita doble baixa-9",hellip:"Punts suspensius",trade:"Símbol de marca registrada",9658:"Punter negre apuntant cap a la dreta",bull:"Vinyeta",rarr:"Fletxa cap a la dreta",rArr:"Doble fletxa cap a la dreta",hArr:"Doble fletxa esquerra dreta",diams:"Vestit negre diamant",
-asymp:"Gairebé igual a"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cs.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cs.js
deleted file mode 100644
index c2b38f0f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cs.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","cs",{euro:"Znak eura",lsquo:"Počáteční uvozovka jednoduchá",rsquo:"Koncová uvozovka jednoduchá",ldquo:"Počáteční uvozovka dvojitá",rdquo:"Koncová uvozovka dvojitá",ndash:"En pomlčka",mdash:"Em pomlčka",iexcl:"Obrácený vykřičník",cent:"Znak centu",pound:"Znak libry",curren:"Znak měny",yen:"Znak jenu",brvbar:"Přerušená svislá čára",sect:"Znak oddílu",uml:"Přehláska",copy:"Znak copyrightu",ordf:"Ženský indikátor rodu",laquo:"Znak dvojitých lomených uvozovek vlevo",
-not:"Logistický zápor",reg:"Znak registrace",macr:"Pomlčka nad",deg:"Znak stupně",sup2:"Dvojka jako horní index",sup3:"Trojka jako horní index",acute:"Čárka nad vpravo",micro:"Znak mikro",para:"Znak odstavce",middot:"Tečka uprostřed",cedil:"Ocásek vlevo",sup1:"Jednička jako horní index",ordm:"Mužský indikátor rodu",raquo:"Znak dvojitých lomených uvozovek vpravo",frac14:"Obyčejný zlomek jedna čtvrtina",frac12:"Obyčejný zlomek jedna polovina",frac34:"Obyčejný zlomek tři čtvrtiny",iquest:"Znak obráceného otazníku",
-Agrave:"Velké písmeno latinky A s čárkou nad vlevo",Aacute:"Velké písmeno latinky A s čárkou nad vpravo",Acirc:"Velké písmeno latinky A s vokáněm",Atilde:"Velké písmeno latinky A s tildou",Auml:"Velké písmeno latinky A s dvěma tečkami",Aring:"Velké písmeno latinky A s kroužkem nad",AElig:"Velké písmeno latinky Ae",Ccedil:"Velké písmeno latinky C s ocáskem vlevo",Egrave:"Velké písmeno latinky E s čárkou nad vlevo",Eacute:"Velké písmeno latinky E s čárkou nad vpravo",Ecirc:"Velké písmeno latinky E s vokáněm",
-Euml:"Velké písmeno latinky E s dvěma tečkami",Igrave:"Velké písmeno latinky I s čárkou nad vlevo",Iacute:"Velké písmeno latinky I s čárkou nad vpravo",Icirc:"Velké písmeno latinky I s vokáněm",Iuml:"Velké písmeno latinky I s dvěma tečkami",ETH:"Velké písmeno latinky Eth",Ntilde:"Velké písmeno latinky N s tildou",Ograve:"Velké písmeno latinky O s čárkou nad vlevo",Oacute:"Velké písmeno latinky O s čárkou nad vpravo",Ocirc:"Velké písmeno latinky O s vokáněm",Otilde:"Velké písmeno latinky O s tildou",
-Ouml:"Velké písmeno latinky O s dvěma tečkami",times:"Znak násobení",Oslash:"Velké písmeno latinky O přeškrtnuté",Ugrave:"Velké písmeno latinky U s čárkou nad vlevo",Uacute:"Velké písmeno latinky U s čárkou nad vpravo",Ucirc:"Velké písmeno latinky U s vokáněm",Uuml:"Velké písmeno latinky U s dvěma tečkami",Yacute:"Velké písmeno latinky Y s čárkou nad vpravo",THORN:"Velké písmeno latinky Thorn",szlig:"Malé písmeno latinky ostré s",agrave:"Malé písmeno latinky a s čárkou nad vlevo",aacute:"Malé písmeno latinky a s čárkou nad vpravo",
-acirc:"Malé písmeno latinky a s vokáněm",atilde:"Malé písmeno latinky a s tildou",auml:"Malé písmeno latinky a s dvěma tečkami",aring:"Malé písmeno latinky a s kroužkem nad",aelig:"Malé písmeno latinky ae",ccedil:"Malé písmeno latinky c s ocáskem vlevo",egrave:"Malé písmeno latinky e s čárkou nad vlevo",eacute:"Malé písmeno latinky e s čárkou nad vpravo",ecirc:"Malé písmeno latinky e s vokáněm",euml:"Malé písmeno latinky e s dvěma tečkami",igrave:"Malé písmeno latinky i s čárkou nad vlevo",iacute:"Malé písmeno latinky i s čárkou nad vpravo",
-icirc:"Malé písmeno latinky i s vokáněm",iuml:"Malé písmeno latinky i s dvěma tečkami",eth:"Malé písmeno latinky eth",ntilde:"Malé písmeno latinky n s tildou",ograve:"Malé písmeno latinky o s čárkou nad vlevo",oacute:"Malé písmeno latinky o s čárkou nad vpravo",ocirc:"Malé písmeno latinky o s vokáněm",otilde:"Malé písmeno latinky o s tildou",ouml:"Malé písmeno latinky o s dvěma tečkami",divide:"Znak dělení",oslash:"Malé písmeno latinky o přeškrtnuté",ugrave:"Malé písmeno latinky u s čárkou nad vlevo",
-uacute:"Malé písmeno latinky u s čárkou nad vpravo",ucirc:"Malé písmeno latinky u s vokáněm",uuml:"Malé písmeno latinky u s dvěma tečkami",yacute:"Malé písmeno latinky y s čárkou nad vpravo",thorn:"Malé písmeno latinky thorn",yuml:"Malé písmeno latinky y s dvěma tečkami",OElig:"Velká ligatura latinky OE",oelig:"Malá ligatura latinky OE",372:"Velké písmeno latinky W s vokáněm",374:"Velké písmeno latinky Y s vokáněm",373:"Malé písmeno latinky w s vokáněm",375:"Malé písmeno latinky y s vokáněm",sbquo:"Dolní 9 uvozovka jednoduchá",
-8219:"Horní obrácená 9 uvozovka jednoduchá",bdquo:"Dolní 9 uvozovka dvojitá",hellip:"Trojtečkový úvod",trade:"Obchodní značka",9658:"Černý ukazatel směřující vpravo",bull:"Kolečko",rarr:"Šipka vpravo",rArr:"Dvojitá šipka vpravo",hArr:"Dvojitá šipka vlevo a vpravo",diams:"Černé piky",asymp:"Téměř se rovná"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cy.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cy.js
deleted file mode 100644
index 77f59f61..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/cy.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","cy",{euro:"Arwydd yr Ewro",lsquo:"Dyfynnod chwith unigol",rsquo:"Dyfynnod dde unigol",ldquo:"Dyfynnod chwith dwbl",rdquo:"Dyfynnod dde dwbl",ndash:"Cysylltnod en",mdash:"Cysylltnod em",iexcl:"Ebychnod gwrthdro",cent:"Arwydd sent",pound:"Arwydd punt",curren:"Arwydd arian cyfred",yen:"Arwydd yen",brvbar:"Bar toriedig",sect:"Arwydd adran",uml:"Didolnod",copy:"Arwydd hawlfraint",ordf:"Dangosydd benywaidd",laquo:"Dyfynnod dwbl ar ongl i'r chwith",not:"Arwydd Nid",
-reg:"Arwydd cofrestredig",macr:"Macron",deg:"Arwydd gradd",sup2:"Dau uwchsgript",sup3:"Tri uwchsgript",acute:"Acen ddyrchafedig",micro:"Arwydd micro",para:"Arwydd pilcrow",middot:"Dot canol",cedil:"Sedila",sup1:"Un uwchsgript",ordm:"Dangosydd gwrywaidd",raquo:"Dyfynnod dwbl ar ongl i'r dde",frac14:"Ffracsiwn cyffredin un cwarter",frac12:"Ffracsiwn cyffredin un hanner",frac34:"Ffracsiwn cyffredin tri chwarter",iquest:"Marc cwestiwn gwrthdroëdig",Agrave:"Priflythyren A Lladinaidd gydag acen ddisgynedig",
-Aacute:"Priflythyren A Lladinaidd gydag acen ddyrchafedig",Acirc:"Priflythyren A Lladinaidd gydag acen grom",Atilde:"Priflythyren A Lladinaidd gyda thild",Auml:"Priflythyren A Lladinaidd gyda didolnod",Aring:"Priflythyren A Lladinaidd gyda chylch uwchben",AElig:"Priflythyren Æ Lladinaidd",Ccedil:"Priflythyren C Lladinaidd gyda sedila",Egrave:"Priflythyren E Lladinaidd gydag acen ddisgynedig",Eacute:"Priflythyren E Lladinaidd gydag acen ddyrchafedig",Ecirc:"Priflythyren E Lladinaidd gydag acen grom",
-Euml:"Priflythyren E Lladinaidd gyda didolnod",Igrave:"Priflythyren I Lladinaidd gydag acen ddisgynedig",Iacute:"Priflythyren I Lladinaidd gydag acen ddyrchafedig",Icirc:"Priflythyren I Lladinaidd gydag acen grom",Iuml:"Priflythyren I Lladinaidd gyda didolnod",ETH:"Priflythyren Eth",Ntilde:"Priflythyren N Lladinaidd gyda thild",Ograve:"Priflythyren O Lladinaidd gydag acen ddisgynedig",Oacute:"Priflythyren O Lladinaidd gydag acen ddyrchafedig",Ocirc:"Priflythyren O Lladinaidd gydag acen grom",Otilde:"Priflythyren O Lladinaidd gyda thild",
-Ouml:"Priflythyren O Lladinaidd gyda didolnod",times:"Arwydd lluosi",Oslash:"Priflythyren O Lladinaidd gyda strôc",Ugrave:"Priflythyren U Lladinaidd gydag acen ddisgynedig",Uacute:"Priflythyren U Lladinaidd gydag acen ddyrchafedig",Ucirc:"Priflythyren U Lladinaidd gydag acen grom",Uuml:"Priflythyren U Lladinaidd gyda didolnod",Yacute:"Priflythyren Y Lladinaidd gydag acen ddyrchafedig",THORN:"Priflythyren Thorn",szlig:"Llythyren s fach Lladinaidd siarp ",agrave:"Llythyren a fach Lladinaidd gydag acen ddisgynedig",
-aacute:"Llythyren a fach Lladinaidd gydag acen ddyrchafedig",acirc:"Llythyren a fach Lladinaidd gydag acen grom",atilde:"Llythyren a fach Lladinaidd gyda thild",auml:"Llythyren a fach Lladinaidd gyda didolnod",aring:"Llythyren a fach Lladinaidd gyda chylch uwchben",aelig:"Llythyren æ fach Lladinaidd",ccedil:"Llythyren c fach Lladinaidd gyda sedila",egrave:"Llythyren e fach Lladinaidd gydag acen ddisgynedig",eacute:"Llythyren e fach Lladinaidd gydag acen ddyrchafedig",ecirc:"Llythyren e fach Lladinaidd gydag acen grom",
-euml:"Llythyren e fach Lladinaidd gyda didolnod",igrave:"Llythyren i fach Lladinaidd gydag acen ddisgynedig",iacute:"Llythyren i fach Lladinaidd gydag acen ddyrchafedig",icirc:"Llythyren i fach Lladinaidd gydag acen grom",iuml:"Llythyren i fach Lladinaidd gyda didolnod",eth:"Llythyren eth fach",ntilde:"Llythyren n fach Lladinaidd gyda thild",ograve:"Llythyren o fach Lladinaidd gydag acen ddisgynedig",oacute:"Llythyren o fach Lladinaidd gydag acen ddyrchafedig",ocirc:"Llythyren o fach Lladinaidd gydag acen grom",
-otilde:"Llythyren o fach Lladinaidd gyda thild",ouml:"Llythyren o fach Lladinaidd gyda didolnod",divide:"Arwydd rhannu",oslash:"Llythyren o fach Lladinaidd gyda strôc",ugrave:"Llythyren u fach Lladinaidd gydag acen ddisgynedig",uacute:"Llythyren u fach Lladinaidd gydag acen ddyrchafedig",ucirc:"Llythyren u fach Lladinaidd gydag acen grom",uuml:"Llythyren u fach Lladinaidd gyda didolnod",yacute:"Llythyren y fach Lladinaidd gydag acen ddisgynedig",thorn:"Llythyren o fach Lladinaidd gyda strôc",yuml:"Llythyren y fach Lladinaidd gyda didolnod",
-OElig:"Priflythyren cwlwm OE Lladinaidd ",oelig:"Priflythyren cwlwm oe Lladinaidd ",372:"Priflythyren W gydag acen grom",374:"Priflythyren Y gydag acen grom",373:"Llythyren w fach gydag acen grom",375:"Llythyren y fach gydag acen grom",sbquo:"Dyfynnod sengl 9-isel",8219:"Dyfynnod sengl 9-uchel cildro",bdquo:"Dyfynnod dwbl 9-isel",hellip:"Coll geiriau llorweddol",trade:"Arwydd marc masnachol",9658:"Pwyntydd du i'r dde",bull:"Bwled",rarr:"Saeth i'r dde",rArr:"Saeth ddwbl i'r dde",hArr:"Saeth ddwbl i'r chwith",
-diams:"Siwt diemwnt du",asymp:"Bron yn hafal iddo"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/de.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/de.js
deleted file mode 100644
index 6b3ce87e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/de.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","de",{euro:"Euro Zeichen",lsquo:"Hochkomma links",rsquo:"Hochkomma rechts",ldquo:"Anführungszeichen links",rdquo:"Anführungszeichen rechts",ndash:"kleiner Strich",mdash:"mittlerer Strich",iexcl:"invertiertes Ausrufezeichen",cent:"Cent",pound:"Pfund",curren:"Währung",yen:"Yen",brvbar:"gestrichelte Linie",sect:"§ Zeichen",uml:"Diäresis",copy:"Copyright",ordf:"Feminine ordinal Anzeige",laquo:"Nach links zeigenden Doppel-Winkel Anführungszeichen",not:"Not-Zeichen",
-reg:"Registriert",macr:"Längezeichen",deg:"Grad",sup2:"Hoch 2",sup3:"Hoch 3",acute:"Akzentzeichen ",micro:"Micro",para:"Pilcrow-Zeichen",middot:"Mittelpunkt",cedil:"Cedilla",sup1:"Hoch 1",ordm:"Männliche Ordnungszahl Anzeige",raquo:"Nach rechts zeigenden Doppel-Winkel Anführungszeichen",frac14:"ein Viertel",frac12:"Hälfte",frac34:"Dreiviertel",iquest:"Umgekehrtes Fragezeichen",Agrave:"Lateinischer Buchstabe A mit AkzentGrave",Aacute:"Lateinischer Buchstabe A mit Akutakzent",Acirc:"Lateinischer Buchstabe A mit Zirkumflex",
-Atilde:"Lateinischer Buchstabe A mit Tilde",Auml:"Lateinischer Buchstabe A mit Trema",Aring:"Lateinischer Buchstabe A mit Ring oben",AElig:"Lateinischer Buchstabe Æ",Ccedil:"Lateinischer Buchstabe C mit Cedille",Egrave:"Lateinischer Buchstabe E mit AkzentGrave",Eacute:"Lateinischer Buchstabe E mit Akutakzent",Ecirc:"Lateinischer Buchstabe E mit Zirkumflex",Euml:"Lateinischer Buchstabe E Trema",Igrave:"Lateinischer Buchstabe I mit AkzentGrave",Iacute:"Lateinischer Buchstabe I mit Akutakzent",Icirc:"Lateinischer Buchstabe I mit Zirkumflex",
-Iuml:"Lateinischer Buchstabe I mit Trema",ETH:"Lateinischer Buchstabe Eth",Ntilde:"Lateinischer Buchstabe N mit Tilde",Ograve:"Lateinischer Buchstabe O mit AkzentGrave",Oacute:"Lateinischer Buchstabe O mit Akutakzent",Ocirc:"Lateinischer Buchstabe O mit Zirkumflex",Otilde:"Lateinischer Buchstabe O mit Tilde",Ouml:"Lateinischer Buchstabe O mit Trema",times:"Multiplikation",Oslash:"Lateinischer Buchstabe O durchgestrichen",Ugrave:"Lateinischer Buchstabe U mit Akzentgrave",Uacute:"Lateinischer Buchstabe U mit Akutakzent",
-Ucirc:"Lateinischer Buchstabe U mit Zirkumflex",Uuml:"Lateinischer Buchstabe a mit Trema",Yacute:"Lateinischer Buchstabe a mit Akzent",THORN:"Lateinischer Buchstabe mit Dorn",szlig:"Kleiner lateinischer Buchstabe scharfe s",agrave:"Kleiner lateinischer Buchstabe a mit Accent grave",aacute:"Kleiner lateinischer Buchstabe a mit Akut",acirc:"Lateinischer Buchstabe a mit Zirkumflex",atilde:"Lateinischer Buchstabe a mit Tilde",auml:"Kleiner lateinischer Buchstabe a mit Trema",aring:"Kleiner lateinischer Buchstabe a mit Ring oben",
-aelig:"Lateinischer Buchstabe æ",ccedil:"Kleiner lateinischer Buchstabe c mit Cedille",egrave:"Kleiner lateinischer Buchstabe e mit Accent grave",eacute:"Kleiner lateinischer Buchstabe e mit Akut",ecirc:"Kleiner lateinischer Buchstabe e mit Zirkumflex",euml:"Kleiner lateinischer Buchstabe e mit Trema",igrave:"Kleiner lateinischer Buchstabe i mit AkzentGrave",iacute:"Kleiner lateinischer Buchstabe i mit Akzent",icirc:"Kleiner lateinischer Buchstabe i mit Zirkumflex",iuml:"Kleiner lateinischer Buchstabe i mit Trema",
-eth:"Kleiner lateinischer Buchstabe eth",ntilde:"Kleiner lateinischer Buchstabe n mit Tilde",ograve:"Kleiner lateinischer Buchstabe o mit Accent grave",oacute:"Kleiner lateinischer Buchstabe o mit Akzent",ocirc:"Kleiner lateinischer Buchstabe o mit Zirkumflex",otilde:"Lateinischer Buchstabe i mit Tilde",ouml:"Kleiner lateinischer Buchstabe o mit Trema",divide:"Divisionszeichen",oslash:"Kleiner lateinischer Buchstabe o durchgestrichen",ugrave:"Kleiner lateinischer Buchstabe u mit Accent grave",uacute:"Kleiner lateinischer Buchstabe u mit Akut",
-ucirc:"Kleiner lateinischer Buchstabe u mit Zirkumflex",uuml:"Kleiner lateinischer Buchstabe u mit Trema",yacute:"Kleiner lateinischer Buchstabe y mit Akut",thorn:"Kleiner lateinischer Buchstabe Dorn",yuml:"Kleiner lateinischer Buchstabe y mit Trema",OElig:"Lateinischer Buchstabe Ligatur OE",oelig:"Kleiner lateinischer Buchstabe Ligatur OE",372:"Lateinischer Buchstabe W mit Zirkumflex",374:"Lateinischer Buchstabe Y mit Zirkumflex",373:"Kleiner lateinischer Buchstabe w mit Zirkumflex",375:"Kleiner lateinischer Buchstabe y mit Zirkumflex",
-sbquo:"Tiefergestelltes Komma",8219:"Rumgedrehtes Komma",bdquo:"Doppeltes Anführungszeichen unten",hellip:"horizontale Auslassungspunkte",trade:"Handelszeichen",9658:"Dreickspfeil rechts",bull:"Bullet",rarr:"Pfeil rechts",rArr:"Doppelpfeil rechts",hArr:"Doppelpfeil links",diams:"Karo",asymp:"Ungefähr"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/el.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/el.js
deleted file mode 100644
index e7c2a219..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/el.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","el",{euro:"Σύμβολο Ευρώ",lsquo:"Αριστερός χαρακτήρας μονού εισαγωγικού",rsquo:"Δεξιός χαρακτήρας μονού εισαγωγικού",ldquo:"Αριστερός χαρακτήρας διπλού εισαγωγικού",rdquo:"Δεξιός χαρακτήρας διπλού εισαγωγικού",ndash:"Παύλα en",mdash:"Παύλα em",iexcl:"Ανάποδο θαυμαστικό",cent:"Σύμβολο σεντ",pound:"Σύμβολο λίρας",curren:"Σύμβολο συναλλαγματικής μονάδας",yen:"Σύμβολο Γιεν",brvbar:"Σπασμένη μπάρα",sect:"Σύμβολο τμήματος",uml:"Διαίρεση",copy:"Σύμβολο πνευματικών δικαιωμάτων",
-ordf:"Feminine ordinal indicator",laquo:"Αριστερός χαρακτήρας διπλού εισαγωγικού",not:"Not sign",reg:"Σύμβολο σημάτων κατατεθέν",macr:"Μακρόν",deg:"Σύμβολο βαθμού",sup2:"Εκτεθειμένο δύο",sup3:"Εκτεθειμένο τρία",acute:"Οξεία",micro:"Σύμβολο μικρού",para:"Σύμβολο παραγράφου",middot:"Μέση τελεία",cedil:"Υπογεγραμμένη",sup1:"Εκτεθειμένο ένα",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Γνήσιο κλάσμα ενός τετάρτου",frac12:"Γνήσιο κλάσμα ενός δεύτερου",frac34:"Γνήσιο κλάσμα τριών τετάρτων",
-iquest:"Ανάποδο θαυμαστικό",Agrave:"Λατινικό κεφαλαίο γράμμα A με βαρεία",Aacute:"Λατινικό κεφαλαίο γράμμα A με οξεία",Acirc:"Λατινικό κεφαλαίο γράμμα A με περισπωμένη",Atilde:"Λατινικό κεφαλαίο γράμμα A με περισπωμένη",Auml:"Λατινικό κεφαλαίο γράμμα A με διαλυτικά",Aring:"Λατινικό κεφαλαίο γράμμα A με δακτύλιο επάνω",AElig:"Λατινικό κεφαλαίο γράμμα Æ",Ccedil:"Λατινικό κεφαλαίο γράμμα C με υπογεγραμμένη",Egrave:"Λατινικό κεφαλαίο γράμμα E με βαρεία",Eacute:"Λατινικό κεφαλαίο γράμμα E με οξεία",Ecirc:"Λατινικό κεφαλαίο γράμμα Ε με περισπωμένη ",
-Euml:"Λατινικό κεφαλαίο γράμμα Ε με διαλυτικά",Igrave:"Λατινικό κεφαλαίο γράμμα I με βαρεία",Iacute:"Λατινικό κεφαλαίο γράμμα I με οξεία",Icirc:"Λατινικό κεφαλαίο γράμμα I με περισπωμένη",Iuml:"Λατινικό κεφαλαίο γράμμα I με διαλυτικά ",ETH:"Λατινικό κεφαλαίο γράμμα Eth",Ntilde:"Λατινικό κεφαλαίο γράμμα N με περισπωμένη",Ograve:"Λατινικό κεφαλαίο γράμμα O με βαρεία",Oacute:"Λατινικό κεφαλαίο γράμμα O με οξεία",Ocirc:"Λατινικό κεφαλαίο γράμμα O με περισπωμένη ",Otilde:"Λατινικό κεφαλαίο γράμμα O με περισπωμένη",
-Ouml:"Λατινικό κεφαλαίο γράμμα O με διαλυτικά",times:"Σύμβολο πολλαπλασιασμού",Oslash:"Λατινικό κεφαλαίο γράμμα O με μολυβιά",Ugrave:"Λατινικό κεφαλαίο γράμμα U με βαρεία",Uacute:"Λατινικό κεφαλαίο γράμμα U με οξεία",Ucirc:"Λατινικό κεφαλαίο γράμμα U με περισπωμένη",Uuml:"Λατινικό κεφαλαίο γράμμα U με διαλυτικά",Yacute:"Λατινικό κεφαλαίο γράμμα Y με οξεία",THORN:"Λατινικό κεφαλαίο γράμμα Thorn",szlig:"Λατινικό μικρό γράμμα απότομο s",agrave:"Λατινικό μικρό γράμμα a με βαρεία",aacute:"Λατινικό μικρό γράμμα a με οξεία",
-acirc:"Λατινικό μικρό γράμμα a με περισπωμένη",atilde:"Λατινικό μικρό γράμμα a με περισπωμένη",auml:"Λατινικό μικρό γράμμα a με διαλυτικά",aring:"Λατινικό μικρό γράμμα a με δακτύλιο πάνω",aelig:"Λατινικό μικρό γράμμα æ",ccedil:"Λατινικό μικρό γράμμα c με υπογεγραμμένη",egrave:"Λατινικό μικρό γράμμα ε με βαρεία",eacute:"Λατινικό μικρό γράμμα e με οξεία",ecirc:"Λατινικό μικρό γράμμα e με περισπωμένη",euml:"Λατινικό μικρό γράμμα e με διαλυτικά",igrave:"Λατινικό μικρό γράμμα i με βαρεία",iacute:"Λατινικό μικρό γράμμα i με οξεία",
-icirc:"Λατινικό μικρό γράμμα i με περισπωμένη",iuml:"Λατινικό μικρό γράμμα i με διαλυτικά",eth:"Λατινικό μικρό γράμμα eth",ntilde:"Λατινικό μικρό γράμμα n με περισπωμένη",ograve:"Λατινικό μικρό γράμμα o με βαρεία",oacute:"Λατινικό μικρό γράμμα o με οξεία ",ocirc:"Λατινικό πεζό γράμμα o με περισπωμένη",otilde:"Λατινικό μικρό γράμμα o με περισπωμένη ",ouml:"Λατινικό μικρό γράμμα o με διαλυτικά",divide:"Σύμβολο διαίρεσης",oslash:"Λατινικό μικρό γράμμα o με περισπωμένη",ugrave:"Λατινικό μικρό γράμμα u με βαρεία",
-uacute:"Λατινικό μικρό γράμμα u με οξεία",ucirc:"Λατινικό μικρό γράμμα u με περισπωμένη",uuml:"Λατινικό μικρό γράμμα u με διαλυτικά",yacute:"Λατινικό μικρό γράμμα y με οξεία",thorn:"Λατινικό μικρό γράμμα thorn",yuml:"Λατινικό μικρό γράμμα y με διαλυτικά",OElig:"Λατινικό κεφαλαίο σύμπλεγμα ΟΕ",oelig:"Λατινικό μικρό σύμπλεγμα oe",372:"Λατινικό κεφαλαίο γράμμα W με περισπωμένη",374:"Λατινικό κεφαλαίο γράμμα Y με περισπωμένη",373:"Λατινικό μικρό γράμμα w με περισπωμένη",375:"Λατινικό μικρό γράμμα y με περισπωμένη",
-sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Οριζόντια αποσιωπητικά",trade:"Σύμβολο εμπορικού κατατεθέν",9658:"Μαύρος δείκτης που δείχνει προς τα δεξιά",bull:"Κουκκίδα",rarr:"Δεξί βελάκι",rArr:"Διπλό δεξί βελάκι",hArr:"Διπλό βελάκι αριστερά-δεξιά",diams:"Μαύρο διαμάντι",asymp:"Σχεδόν ίσο με"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js
deleted file mode 100644
index 5a147863..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","en-gb",{euro:"Euro sign",lsquo:"Left single quotation mark",rsquo:"Right single quotation mark",ldquo:"Left double quotation mark",rdquo:"Right double quotation mark",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"Cent sign",pound:"Pound sign",curren:"Currency sign",yen:"Yen sign",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"Copyright sign",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Registered sign",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en.js
deleted file mode 100644
index 26f61c2e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/en.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","en",{euro:"Euro sign",lsquo:"Left single quotation mark",rsquo:"Right single quotation mark",ldquo:"Left double quotation mark",rdquo:"Right double quotation mark",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"Cent sign",pound:"Pound sign",curren:"Currency sign",yen:"Yen sign",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"Copyright sign",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Registered sign",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/eo.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/eo.js
deleted file mode 100644
index d44b0d2e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/eo.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","eo",{euro:"Eŭrosigno",lsquo:"Supra 6-citilo",rsquo:"Supra 9-citilo",ldquo:"Supra 66-citilo",rdquo:"Supra 99-citilo",ndash:"Streketo",mdash:"Substreko",iexcl:"Renversita krisigno",cent:"Cendosigno",pound:"Pundosigno",curren:"Monersigno",yen:"Enosigno",brvbar:"Rompita vertikala streko",sect:"Kurba paragrafo",uml:"Tremao",copy:"Kopirajtosigno",ordf:"Adjektiva numerfinaĵo",laquo:"Duobla malplio-citilo",not:"Negohoko",reg:"Registrita marko",macr:"Superstreko",deg:"Gradosigno",
-sup2:"Supra indico 2",sup3:"Supra indico 3",acute:"Dekstra korno",micro:"Mikrosigno",para:"Rekta paragrafo",middot:"Meza punkto",cedil:"Zoeto",sup1:"Supra indico 1",ordm:"Substantiva numerfinaĵo",raquo:"Duobla plio-citilo",frac14:"Kvaronosigno",frac12:"Duonosigno",frac34:"Trikvaronosigno",iquest:"renversita demandosigno",Agrave:"Latina ĉeflitero A kun liva korno",Aacute:"Latina ĉeflitero A kun dekstra korno",Acirc:"Latina ĉeflitero A kun ĉapelo",Atilde:"Latina ĉeflitero A kun tildo",Auml:"Latina ĉeflitero A kun tremao",
-Aring:"Latina ĉeflitero A kun superringo",AElig:"Latina ĉeflitera ligaturo Æ",Ccedil:"Latina ĉeflitero C kun zoeto",Egrave:"Latina ĉeflitero E kun liva korno",Eacute:"Latina ĉeflitero E kun dekstra korno",Ecirc:"Latina ĉeflitero E kun ĉapelo",Euml:"Latina ĉeflitero E kun tremao",Igrave:"Latina ĉeflitero I kun liva korno",Iacute:"Latina ĉeflitero I kun dekstra korno",Icirc:"Latina ĉeflitero I kun ĉapelo",Iuml:"Latina ĉeflitero I kun tremao",ETH:"Latina ĉeflitero islanda edo",Ntilde:"Latina ĉeflitero N kun tildo",
-Ograve:"Latina ĉeflitero O kun liva korno",Oacute:"Latina ĉeflitero O kun dekstra korno",Ocirc:"Latina ĉeflitero O kun ĉapelo",Otilde:"Latina ĉeflitero O kun tildo",Ouml:"Latina ĉeflitero O kun tremao",times:"Multipliko",Oslash:"Latina ĉeflitero O trastrekita",Ugrave:"Latina ĉeflitero U kun liva korno",Uacute:"Latina ĉeflitero U kun dekstra korno",Ucirc:"Latina ĉeflitero U kun ĉapelo",Uuml:"Latina ĉeflitero U kun tremao",Yacute:"Latina ĉeflitero Y kun dekstra korno",THORN:"Latina ĉeflitero islanda dorno",
-szlig:"Latina etlitero germana sozo (akra s)",agrave:"Latina etlitero a kun liva korno",aacute:"Latina etlitero a kun dekstra korno",acirc:"Latina etlitero a kun ĉapelo",atilde:"Latina etlitero a kun tildo",auml:"Latina etlitero a kun tremao",aring:"Latina etlitero a kun superringo",aelig:"Latina etlitera ligaturo æ",ccedil:"Latina etlitero c kun zoeto",egrave:"Latina etlitero e kun liva korno",eacute:"Latina etlitero e kun dekstra korno",ecirc:"Latina etlitero e kun ĉapelo",euml:"Latina etlitero e kun tremao",
-igrave:"Latina etlitero i kun liva korno",iacute:"Latina etlitero i kun dekstra korno",icirc:"Latina etlitero i kun ĉapelo",iuml:"Latina etlitero i kun tremao",eth:"Latina etlitero islanda edo",ntilde:"Latina etlitero n kun tildo",ograve:"Latina etlitero o kun liva korno",oacute:"Latina etlitero o kun dekstra korno",ocirc:"Latina etlitero o kun ĉapelo",otilde:"Latina etlitero o kun tildo",ouml:"Latina etlitero o kun tremao",divide:"Dividosigno",oslash:"Latina etlitero o trastrekita",ugrave:"Latina etlitero u kun liva korno",
-uacute:"Latina etlitero u kun dekstra korno",ucirc:"Latina etlitero u kun ĉapelo",uuml:"Latina etlitero u kun tremao",yacute:"Latina etlitero y kun dekstra korno",thorn:"Latina etlitero islanda dorno",yuml:"Latina etlitero y kun tremao",OElig:"Latina ĉeflitera ligaturo Œ",oelig:"Latina etlitera ligaturo œ",372:"Latina ĉeflitero W kun ĉapelo",374:"Latina ĉeflitero Y kun ĉapelo",373:"Latina etlitero w kun ĉapelo",375:"Latina etlitero y kun ĉapelo",sbquo:"Suba 9-citilo",8219:"Supra renversita 9-citilo",
-bdquo:"Suba 99-citilo",hellip:"Tripunkto",trade:"Varmarka signo",9658:"Nigra sago dekstren",bull:"Bulmarko",rarr:"Sago dekstren",rArr:"Duobla sago dekstren",hArr:"Duobla sago maldekstren",diams:"Nigra kvadrato",asymp:"Preskaŭ egala"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/es.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/es.js
deleted file mode 100644
index 79d437f9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/es.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","es",{euro:"Símbolo de euro",lsquo:"Comilla simple izquierda",rsquo:"Comilla simple derecha",ldquo:"Comilla doble izquierda",rdquo:"Comilla doble derecha",ndash:"Guión corto",mdash:"Guión medio largo",iexcl:"Signo de admiración invertido",cent:"Símbolo centavo",pound:"Símbolo libra",curren:"Símbolo moneda",yen:"Símbolo yen",brvbar:"Barra vertical rota",sect:"Símbolo sección",uml:"Diéresis",copy:"Signo de derechos de autor",ordf:"Indicador ordinal femenino",laquo:"Abre comillas angulares",
-not:"Signo negación",reg:"Signo de marca registrada",macr:"Guión alto",deg:"Signo de grado",sup2:"Superíndice dos",sup3:"Superíndice tres",acute:"Acento agudo",micro:"Signo micro",para:"Signo de pi",middot:"Punto medio",cedil:"Cedilla",sup1:"Superíndice uno",ordm:"Indicador orginal masculino",raquo:"Cierra comillas angulares",frac14:"Fracción ordinaria de un quarto",frac12:"Fracción ordinaria de una mitad",frac34:"Fracción ordinaria de tres cuartos",iquest:"Signo de interrogación invertido",Agrave:"Letra A latina mayúscula con acento grave",
-Aacute:"Letra A latina mayúscula con acento agudo",Acirc:"Letra A latina mayúscula con acento circunflejo",Atilde:"Letra A latina mayúscula con tilde",Auml:"Letra A latina mayúscula con diéresis",Aring:"Letra A latina mayúscula con aro arriba",AElig:"Letra Æ latina mayúscula",Ccedil:"Letra C latina mayúscula con cedilla",Egrave:"Letra E latina mayúscula con acento grave",Eacute:"Letra E latina mayúscula con acento agudo",Ecirc:"Letra E latina mayúscula con acento circunflejo",Euml:"Letra E latina mayúscula con diéresis",
-Igrave:"Letra I latina mayúscula con acento grave",Iacute:"Letra I latina mayúscula con acento agudo",Icirc:"Letra I latina mayúscula con acento circunflejo",Iuml:"Letra I latina mayúscula con diéresis",ETH:"Letra Eth latina mayúscula",Ntilde:"Letra N latina mayúscula con tilde",Ograve:"Letra O latina mayúscula con acento grave",Oacute:"Letra O latina mayúscula con acento agudo",Ocirc:"Letra O latina mayúscula con acento circunflejo",Otilde:"Letra O latina mayúscula con tilde",Ouml:"Letra O latina mayúscula con diéresis",
-times:"Signo de multiplicación",Oslash:"Letra O latina mayúscula con barra inclinada",Ugrave:"Letra U latina mayúscula con acento grave",Uacute:"Letra U latina mayúscula con acento agudo",Ucirc:"Letra U latina mayúscula con acento circunflejo",Uuml:"Letra U latina mayúscula con diéresis",Yacute:"Letra Y latina mayúscula con acento agudo",THORN:"Letra Thorn latina mayúscula",szlig:"Letra s latina fuerte pequeña",agrave:"Letra a latina pequeña con acento grave",aacute:"Letra a latina pequeña con acento agudo",
-acirc:"Letra a latina pequeña con acento circunflejo",atilde:"Letra a latina pequeña con tilde",auml:"Letra a latina pequeña con diéresis",aring:"Letra a latina pequeña con aro arriba",aelig:"Letra æ latina pequeña",ccedil:"Letra c latina pequeña con cedilla",egrave:"Letra e latina pequeña con acento grave",eacute:"Letra e latina pequeña con acento agudo",ecirc:"Letra e latina pequeña con acento circunflejo",euml:"Letra e latina pequeña con diéresis",igrave:"Letra i latina pequeña con acento grave",
-iacute:"Letra i latina pequeña con acento agudo",icirc:"Letra i latina pequeña con acento circunflejo",iuml:"Letra i latina pequeña con diéresis",eth:"Letra eth latina pequeña",ntilde:"Letra n latina pequeña con tilde",ograve:"Letra o latina pequeña con acento grave",oacute:"Letra o latina pequeña con acento agudo",ocirc:"Letra o latina pequeña con acento circunflejo",otilde:"Letra o latina pequeña con tilde",ouml:"Letra o latina pequeña con diéresis",divide:"Signo de división",oslash:"Letra o latina minúscula con barra inclinada",
-ugrave:"Letra u latina pequeña con acento grave",uacute:"Letra u latina pequeña con acento agudo",ucirc:"Letra u latina pequeña con acento circunflejo",uuml:"Letra u latina pequeña con diéresis",yacute:"Letra u latina pequeña con acento agudo",thorn:"Letra thorn latina minúscula",yuml:"Letra y latina pequeña con diéresis",OElig:"Diptongo OE latino en mayúscula",oelig:"Diptongo oe latino en minúscula",372:"Letra W latina mayúscula con acento circunflejo",374:"Letra Y latina mayúscula con acento circunflejo",
-373:"Letra w latina pequeña con acento circunflejo",375:"Letra y latina pequeña con acento circunflejo",sbquo:"Comilla simple baja-9",8219:"Comilla simple alta invertida-9",bdquo:"Comillas dobles bajas-9",hellip:"Puntos suspensivos horizontales",trade:"Signo de marca registrada",9658:"Apuntador negro apuntando a la derecha",bull:"Viñeta",rarr:"Flecha a la derecha",rArr:"Flecha doble a la derecha",hArr:"Flecha izquierda derecha doble",diams:"Diamante negro",asymp:"Casi igual a"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/et.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/et.js
deleted file mode 100644
index 22c90561..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/et.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","et",{euro:"Euromärk",lsquo:"Alustav ühekordne jutumärk",rsquo:"Lõpetav ühekordne jutumärk",ldquo:"Alustav kahekordne jutumärk",rdquo:"Lõpetav kahekordne jutumärk",ndash:"Enn-kriips",mdash:"Emm-kriips",iexcl:"Pööratud hüüumärk",cent:"Sendimärk",pound:"Naela märk",curren:"Valuutamärk",yen:"Jeeni märk",brvbar:"Katkestatud kriips",sect:"Lõigu märk",uml:"Täpid",copy:"Autoriõiguse märk",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Ei-märk",reg:"Registered sign",macr:"Macron",deg:"Kraadimärk",sup2:"Ülaindeks kaks",sup3:"Ülaindeks kolm",acute:"Acute accent",micro:"Mikro-märk",para:"Pilcrow sign",middot:"Keskpunkt",cedil:"Cedilla",sup1:"Ülaindeks üks",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Ladina suur A tildega",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Täppidega ladina suur O",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Kandilise katusega suur ladina U",Uuml:"Täppidega ladina suur U",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Ladina väike terav s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Kandilise katusega ladina väike a",atilde:"Tildega ladina väike a",auml:"Täppidega ladina väike a",aring:"Latin small letter a with ring above",
-aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",ntilde:"Latin small letter n with tilde",
-ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Jagamismärk",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",
-thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",trade:"Kaubamärgi märk",9658:"Black right-pointing pointer",
-bull:"Kuul",rarr:"Nool paremale",rArr:"Topeltnool paremale",hArr:"Topeltnool vasakule",diams:"Black diamond suit",asymp:"Ligikaudu võrdne"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fa.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fa.js
deleted file mode 100644
index e0b27c59..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fa.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","fa",{euro:"نشان یورو",lsquo:"علامت نقل قول تکی چپ",rsquo:"علامت نقل قول تکی راست",ldquo:"علامت نقل قول دوتایی چپ",rdquo:"علامت نقل قول دوتایی راست",ndash:"خط تیره En",mdash:"خط تیره Em",iexcl:"علامت تعجب وارونه",cent:"نشان سنت",pound:"نشان پوند",curren:"نشان ارز",yen:"نشان ین",brvbar:"نوار شکسته",sect:"نشان بخش",uml:"نشان سواگیری",copy:"نشان کپی رایت",ordf:"شاخص ترتیبی مونث",laquo:"اشاره چپ مکرر برای زاویه علامت نقل قول",not:"نشان ثبت نشده",reg:"نشان ثبت شده",
-macr:"نشان خط بالای حرف",deg:"نشان درجه",sup2:"بالانویس دو",sup3:"بالانویس سه",acute:"لهجه غلیظ",micro:"نشان مایکرو",para:"نشان محل بند",middot:"نقطه میانی",cedil:"سدیل",sup1:"بالانویس 1",ordm:"شاخص ترتیبی مذکر",raquo:"نشان زاویه‌دار دوتایی نقل قول راست چین",frac14:"واحد عامیانه 1/4",frac12:"واحد عامینه نصف",frac34:"واحد عامیانه 3/4",iquest:"علامت سوال معکوس",Agrave:"حرف A بزرگ لاتین با تلفظ غلیظ",Aacute:"حرف A بزرگ لاتین با تلفظ شدید",Acirc:"حرف A بزرگ لاتین با دور",Atilde:"حرف A بزرگ لاتین با صدای کامی",
-Auml:"حرف A بزرگ لاتین با نشان سواگیری",Aring:"حرف A بزرگ لاتین با حلقه بالا",AElig:"حرف Æ بزرگ لاتین",Ccedil:"حرف C بزرگ لاتین با نشان سواگیری",Egrave:"حرف E بزرگ لاتین با تلفظ درشت",Eacute:"حرف E بزرگ لاتین با تلفظ زیر",Ecirc:"حرف E بزرگ لاتین با خمان",Euml:"حرف E بزرگ لاتین با نشان سواگیری",Igrave:"حرف I بزرگ لاتین با تلفظ درشت",Iacute:"حرف I بزرگ لاتین با تلفظ ریز",Icirc:"حرف I بزرگ لاتین با خمان",Iuml:"حرف I بزرگ لاتین با نشان سواگیری",ETH:"حرف لاتین بزرگ واکه ترتیبی",Ntilde:"حرف N بزرگ لاتین با مد",
-Ograve:"حرف O بزرگ لاتین با تلفظ درشت",Oacute:"حرف O بزرگ لاتین با تلفظ ریز",Ocirc:"حرف O بزرگ لاتین با خمان",Otilde:"حرف O بزرگ لاتین با مد",Ouml:"حرف O بزرگ لاتین با نشان سواگیری",times:"نشان ضربدر",Oslash:"حرف O بزرگ لاتین با میان خط",Ugrave:"حرف U بزرگ لاتین با تلفظ درشت",Uacute:"حرف U بزرگ لاتین با تلفظ ریز",Ucirc:"حرف U بزرگ لاتین با خمان",Uuml:"حرف U بزرگ لاتین با نشان سواگیری",Yacute:"حرف Y بزرگ لاتین با تلفظ ریز",THORN:"حرف بزرگ لاتین خاردار",szlig:"حرف کوچک لاتین شارپ s",agrave:"حرف a کوچک لاتین با تلفظ درشت",
-aacute:"حرف a کوچک لاتین با تلفظ ریز",acirc:"حرف a کوچک لاتین با خمان",atilde:"حرف a کوچک لاتین با صدای کامی",auml:"حرف a کوچک لاتین با نشان سواگیری",aring:"حرف a کوچک لاتین گوشواره دار",aelig:"حرف کوچک لاتین æ",ccedil:"حرف c کوچک لاتین با نشان سدیل",egrave:"حرف e کوچک لاتین با تلفظ درشت",eacute:"حرف e کوچک لاتین با تلفظ ریز",ecirc:"حرف e کوچک لاتین با خمان",euml:"حرف e کوچک لاتین با نشان سواگیری",igrave:"حرف i کوچک لاتین با تلفظ درشت",iacute:"حرف i کوچک لاتین با تلفظ ریز",icirc:"حرف i کوچک لاتین با خمان",
-iuml:"حرف i کوچک لاتین با نشان سواگیری",eth:"حرف کوچک لاتین eth",ntilde:"حرف n کوچک لاتین با صدای کامی",ograve:"حرف o کوچک لاتین با تلفظ درشت",oacute:"حرف o کوچک لاتین با تلفظ زیر",ocirc:"حرف o کوچک لاتین با خمان",otilde:"حرف o کوچک لاتین با صدای کامی",ouml:"حرف o کوچک لاتین با نشان سواگیری",divide:"نشان بخش",oslash:"حرف o کوچک لاتین با میان خط",ugrave:"حرف u کوچک لاتین با تلفظ درشت",uacute:"حرف u کوچک لاتین با تلفظ ریز",ucirc:"حرف u کوچک لاتین با خمان",uuml:"حرف u کوچک لاتین با نشان سواگیری",yacute:"حرف y کوچک لاتین با تلفظ ریز",
-thorn:"حرف کوچک لاتین خاردار",yuml:"حرف y کوچک لاتین با نشان سواگیری",OElig:"بند بزرگ لاتین OE",oelig:"بند کوچک لاتین oe",372:"حرف W بزرگ لاتین با خمان",374:"حرف Y بزرگ لاتین با خمان",373:"حرف w کوچک لاتین با خمان",375:"حرف y کوچک لاتین با خمان",sbquo:"نشان نقل قول تکی زیر-9",8219:"نشان نقل قول تکی high-reversed-9",bdquo:"نقل قول دوتایی پایین-9",hellip:"حذف افقی",trade:"نشان تجاری",9658:"نشانگر سیاه جهت راست",bull:"گلوله",rarr:"فلش راست",rArr:"فلش دوتایی راست",hArr:"فلش دوتایی چپ راست",diams:"نشان الماس سیاه",
-asymp:"تقریبا برابر با"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fi.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fi.js
deleted file mode 100644
index 6d701e3c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fi.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","fi",{euro:"Euron merkki",lsquo:"Vasen yksittäinen lainausmerkki",rsquo:"Oikea yksittäinen lainausmerkki",ldquo:"Vasen kaksoislainausmerkki",rdquo:"Oikea kaksoislainausmerkki",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"Sentin merkki",pound:"Punnan merkki",curren:"Valuuttamerkki",yen:"Yenin merkki",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"Copyright sign",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Rekisteröity merkki",macr:"Macron",deg:"Asteen merkki",sup2:"Yläindeksi kaksi",sup3:"Yläindeksi kolme",acute:"Acute accent",micro:"Mikron merkki",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Yläindeksi yksi",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Ylösalaisin oleva kysymysmerkki",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Kertomerkki",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Jakomerkki",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Tavaramerkki merkki",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Nuoli oikealle",rArr:"Kaksoisnuoli oikealle",hArr:"Kaksoisnuoli oikealle ja vasemmalle",diams:"Black diamond suit",asymp:"Noin"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js
deleted file mode 100644
index d19e2e42..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","fr-ca",{euro:"Symbole Euro",lsquo:"Guillemet simple ouvrant",rsquo:"Guillemet simple fermant",ldquo:"Guillemet double ouvrant",rdquo:"Guillemet double fermant",ndash:"Tiret haut",mdash:"Tiret",iexcl:"Point d'exclamation inversé",cent:"Symbole de cent",pound:"Symbole de Livre Sterling",curren:"Symbole monétaire",yen:"Symbole du Yen",brvbar:"Barre scindée",sect:"Symbole de section",uml:"Tréma",copy:"Symbole de copyright",ordf:"Indicateur ordinal féminin",laquo:"Guillemet français ouvrant",
-not:"Indicateur de négation",reg:"Symbole de marque déposée",macr:"Macron",deg:"Degré",sup2:"Exposant 2",sup3:"Exposant 3",acute:"Accent aigüe",micro:"Symbole micro",para:"Paragraphe",middot:"Point médian",cedil:"Cédille",sup1:"Exposant 1",ordm:"Indicateur ordinal masculin",raquo:"Guillemet français fermant",frac14:"Un quart",frac12:"Une demi",frac34:"Trois quart",iquest:"Point d'interrogation inversé",Agrave:"A accent grave",Aacute:"A accent aigüe",Acirc:"A circonflexe",Atilde:"A tilde",Auml:"A tréma",
-Aring:"A avec un rond au dessus",AElig:"Æ majuscule",Ccedil:"C cédille",Egrave:"E accent grave",Eacute:"E accent aigüe",Ecirc:"E accent circonflexe",Euml:"E tréma",Igrave:"I accent grave",Iacute:"I accent aigüe",Icirc:"I accent circonflexe",Iuml:"I tréma",ETH:"Lettre majuscule islandaise ED",Ntilde:"N tilde",Ograve:"O accent grave",Oacute:"O accent aigüe",Ocirc:"O accent circonflexe",Otilde:"O tilde",Ouml:"O tréma",times:"Symbole de multiplication",Oslash:"O barré",Ugrave:"U accent grave",Uacute:"U accent aigüe",
-Ucirc:"U accent circonflexe",Uuml:"U tréma",Yacute:"Y accent aigüe",THORN:"Lettre islandaise Thorn majuscule",szlig:"Lettre minuscule allemande s dur",agrave:"a accent grave",aacute:"a accent aigüe",acirc:"a accent circonflexe",atilde:"a tilde",auml:"a tréma",aring:"a avec un cercle au dessus",aelig:"æ",ccedil:"c cédille",egrave:"e accent grave",eacute:"e accent aigüe",ecirc:"e accent circonflexe",euml:"e tréma",igrave:"i accent grave",iacute:"i accent aigüe",icirc:"i accent circonflexe",iuml:"i tréma",
-eth:"Lettre minuscule islandaise ED",ntilde:"n tilde",ograve:"o accent grave",oacute:"o accent aigüe",ocirc:"O accent circonflexe",otilde:"O tilde",ouml:"O tréma",divide:"Symbole de division",oslash:"o barré",ugrave:"u accent grave",uacute:"u accent aigüe",ucirc:"u accent circonflexe",uuml:"u tréma",yacute:"y accent aigüe",thorn:"Lettre islandaise thorn minuscule",yuml:"y tréma",OElig:"ligature majuscule latine Œ",oelig:"ligature minuscule latine œ",372:"W accent circonflexe",374:"Y accent circonflexe",
-373:"w accent circonflexe",375:"y accent circonflexe",sbquo:"Guillemet simple fermant",8219:"Guillemet-virgule supérieur culbuté",bdquo:"Guillemet-virgule double inférieur",hellip:"Points de suspension",trade:"Symbole de marque déposée",9658:"Flèche noire pointant vers la droite",bull:"Puce",rarr:"Flèche vers la droite",rArr:"Flèche double vers la droite",hArr:"Flèche double vers la gauche",diams:"Carreau",asymp:"Presque égal"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr.js
deleted file mode 100644
index 2d1ad096..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/fr.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","fr",{euro:"Symbole Euro",lsquo:"Guillemet simple ouvrant",rsquo:"Guillemet simple fermant",ldquo:"Guillemet double ouvrant",rdquo:"Guillemet double fermant",ndash:"Tiret haut",mdash:"Tiret cadratin",iexcl:"Point d'exclamation inversé",cent:"Symbole Cent",pound:"Symbole Livre Sterling",curren:"Symbole monétaire",yen:"Symbole Yen",brvbar:"Barre verticale scindée",sect:"Section",uml:"Tréma",copy:"Symbole Copyright",ordf:"Indicateur ordinal féminin",laquo:"Guillemet français ouvrant",
-not:"Crochet de négation",reg:"Marque déposée",macr:"Macron",deg:"Degré",sup2:"Exposant 2",sup3:"\\tExposant 3",acute:"Accent aigu",micro:"Omicron",para:"Paragraphe",middot:"Point médian",cedil:"Cédille",sup1:"\\tExposant 1",ordm:"Indicateur ordinal masculin",raquo:"Guillemet français fermant",frac14:"Un quart",frac12:"Un demi",frac34:"Trois quarts",iquest:"Point d'interrogation inversé",Agrave:"A majuscule accent grave",Aacute:"A majuscule accent aigu",Acirc:"A majuscule accent circonflexe",Atilde:"A majuscule avec caron",
-Auml:"A majuscule tréma",Aring:"A majuscule avec un rond au-dessus",AElig:"Æ majuscule ligaturés",Ccedil:"C majuscule cédille",Egrave:"E majuscule accent grave",Eacute:"E majuscule accent aigu",Ecirc:"E majuscule accent circonflexe",Euml:"E majuscule tréma",Igrave:"I majuscule accent grave",Iacute:"I majuscule accent aigu",Icirc:"I majuscule accent circonflexe",Iuml:"I majuscule tréma",ETH:"Lettre majuscule islandaise ED",Ntilde:"N majuscule avec caron",Ograve:"O majuscule accent grave",Oacute:"O majuscule accent aigu",
-Ocirc:"O majuscule accent circonflexe",Otilde:"O majuscule avec caron",Ouml:"O majuscule tréma",times:"Multiplication",Oslash:"O majuscule barré",Ugrave:"U majuscule accent grave",Uacute:"U majuscule accent aigu",Ucirc:"U majuscule accent circonflexe",Uuml:"U majuscule tréma",Yacute:"Y majuscule accent aigu",THORN:"Lettre islandaise Thorn majuscule",szlig:"Lettre minuscule allemande s dur",agrave:"a minuscule accent grave",aacute:"a minuscule accent aigu",acirc:"a minuscule accent circonflexe",atilde:"a minuscule avec caron",
-auml:"a minuscule tréma",aring:"a minuscule avec un rond au-dessus",aelig:"æ minuscule ligaturés",ccedil:"c minuscule cédille",egrave:"e minuscule accent grave",eacute:"e minuscule accent aigu",ecirc:"e minuscule accent circonflexe",euml:"e minuscule tréma",igrave:"i minuscule accent grave",iacute:"i minuscule accent aigu",icirc:"i minuscule accent circonflexe",iuml:"i minuscule tréma",eth:"Lettre minuscule islandaise ED",ntilde:"n minuscule avec caron",ograve:"o minuscule accent grave",oacute:"o minuscule accent aigu",
-ocirc:"o minuscule accent circonflexe",otilde:"o minuscule avec caron",ouml:"o minuscule tréma",divide:"Division",oslash:"o minuscule barré",ugrave:"u minuscule accent grave",uacute:"u minuscule accent aigu",ucirc:"u minuscule accent circonflexe",uuml:"u minuscule tréma",yacute:"y minuscule accent aigu",thorn:"Lettre islandaise thorn minuscule",yuml:"y minuscule tréma",OElig:"ligature majuscule latine Œ",oelig:"ligature minuscule latine œ",372:"W majuscule accent circonflexe",374:"Y majuscule accent circonflexe",
-373:"w minuscule accent circonflexe",375:"y minuscule accent circonflexe",sbquo:"Guillemet simple fermant (anglais)",8219:"Guillemet-virgule supérieur culbuté",bdquo:"Guillemet-virgule double inférieur",hellip:"Points de suspension",trade:"Marque commerciale (trade mark)",9658:"Flèche noire pointant vers la droite",bull:"Gros point médian",rarr:"Flèche vers la droite",rArr:"Double flèche vers la droite",hArr:"Double flèche vers la gauche",diams:"Carreau noir",asymp:"Presque égal"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/gl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/gl.js
deleted file mode 100644
index f16d3667..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/gl.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","gl",{euro:"Símbolo do euro",lsquo:"Comiña simple esquerda",rsquo:"Comiña simple dereita",ldquo:"Comiñas dobres esquerda",rdquo:"Comiñas dobres dereita",ndash:"Guión",mdash:"Raia",iexcl:"Signo de admiración invertido",cent:"Símbolo do centavo",pound:"Símbolo da libra",curren:"Símbolo de moeda",yen:"Símbolo do yen",brvbar:"Barra vertical rota",sect:"Símbolo de sección",uml:"Diérese",copy:"Símbolo de dereitos de autoría",ordf:"Indicador ordinal feminino",laquo:"Comiñas latinas, apertura",
-not:"Signo negación",reg:"Símbolo de marca rexistrada",macr:"Guión alto",deg:"Signo de grao",sup2:"Superíndice dous",sup3:"Superíndice tres",acute:"Acento agudo",micro:"Signo de micro",para:"Signo de pi",middot:"Punto medio",cedil:"Cedilla",sup1:"Superíndice un",ordm:"Indicador ordinal masculino",raquo:"Comiñas latinas, peche",frac14:"Fracción ordinaria de un cuarto",frac12:"Fracción ordinaria de un medio",frac34:"Fracción ordinaria de tres cuartos",iquest:"Signo de interrogación invertido",Agrave:"Letra A latina maiúscula con acento grave",
-Aacute:"Letra A latina maiúscula con acento agudo",Acirc:"Letra A latina maiúscula con acento circunflexo",Atilde:"Letra A latina maiúscula con til",Auml:"Letra A latina maiúscula con diérese",Aring:"Letra A latina maiúscula con aro enriba",AElig:"Letra Æ latina maiúscula",Ccedil:"Letra C latina maiúscula con cedilla",Egrave:"Letra E latina maiúscula con acento grave",Eacute:"Letra E latina maiúscula con acento agudo",Ecirc:"Letra E latina maiúscula con acento circunflexo",Euml:"Letra E latina maiúscula con diérese",
-Igrave:"Letra I latina maiúscula con acento grave",Iacute:"Letra I latina maiúscula con acento agudo",Icirc:"Letra I latina maiúscula con acento circunflexo",Iuml:"Letra I latina maiúscula con diérese",ETH:"Letra Ed latina maiúscula",Ntilde:"Letra N latina maiúscula con til",Ograve:"Letra O latina maiúscula con acento grave",Oacute:"Letra O latina maiúscula con acento agudo",Ocirc:"Letra O latina maiúscula con acento circunflexo",Otilde:"Letra O latina maiúscula con til",Ouml:"Letra O latina maiúscula con diérese",
-times:"Signo de multiplicación",Oslash:"Letra O latina maiúscula con barra transversal",Ugrave:"Letra U latina maiúscula con acento grave",Uacute:"Letra U latina maiúscula con acento agudo",Ucirc:"Letra U latina maiúscula con acento circunflexo",Uuml:"Letra U latina maiúscula con diérese",Yacute:"Letra Y latina maiúscula con acento agudo",THORN:"Letra Thorn latina maiúscula",szlig:"Letra s latina forte minúscula",agrave:"Letra a latina minúscula con acento grave",aacute:"Letra a latina minúscula con acento agudo",
-acirc:"Letra a latina minúscula con acento circunflexo",atilde:"Letra a latina minúscula con til",auml:"Letra a latina minúscula con diérese",aring:"Letra a latina minúscula con aro enriba",aelig:"Letra æ latina minúscula",ccedil:"Letra c latina minúscula con cedilla",egrave:"Letra e latina minúscula con acento grave",eacute:"Letra e latina minúscula con acento agudo",ecirc:"Letra e latina minúscula con acento circunflexo",euml:"Letra e latina minúscula con diérese",igrave:"Letra i latina minúscula con acento grave",
-iacute:"Letra i latina minúscula con acento agudo",icirc:"Letra i latina minúscula con acento circunflexo",iuml:"Letra i latina minúscula con diérese",eth:"Letra ed latina minúscula",ntilde:"Letra n latina minúscula con til",ograve:"Letra o latina minúscula con acento grave",oacute:"Letra o latina minúscula con acento agudo",ocirc:"Letra o latina minúscula con acento circunflexo",otilde:"Letra o latina minúscula con til",ouml:"Letra o latina minúscula con diérese",divide:"Signo de división",oslash:"Letra o latina minúscula con barra transversal",
-ugrave:"Letra u latina minúscula con acento grave",uacute:"Letra u latina minúscula con acento agudo",ucirc:"Letra u latina minúscula con acento circunflexo",uuml:"Letra u latina minúscula con diérese",yacute:"Letra y latina minúscula con acento agudo",thorn:"Letra Thorn latina minúscula",yuml:"Letra y latina minúscula con diérese",OElig:"Ligadura OE latina maiúscula",oelig:"Ligadura oe latina minúscula",372:"Letra W latina maiúscula con acento circunflexo",374:"Letra Y latina maiúscula con acento circunflexo",
-373:"Letra w latina minúscula con acento circunflexo",375:"Letra y latina minúscula con acento circunflexo",sbquo:"Comiña simple baixa, de apertura",8219:"Comiña simple alta, de peche",bdquo:"Comiñas dobres baixas, de apertura",hellip:"Elipse, puntos suspensivos",trade:"Signo de marca rexistrada",9658:"Apuntador negro apuntando á dereita",bull:"Viñeta",rarr:"Frecha á dereita",rArr:"Frecha dobre á dereita",hArr:"Frecha dobre da esquerda á dereita",diams:"Diamante negro",asymp:"Case igual a"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/he.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/he.js
deleted file mode 100644
index dcfc50f0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/he.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","he",{euro:"יורו",lsquo:"סימן ציטוט יחיד שמאלי",rsquo:"סימן ציטוט יחיד ימני",ldquo:"סימן ציטוט כפול שמאלי",rdquo:"סימן ציטוט כפול ימני",ndash:"קו מפריד קצר",mdash:"קו מפריד ארוך",iexcl:"סימן קריאה הפוך",cent:"סנט",pound:"פאונד",curren:"מטבע",yen:"ין",brvbar:"קו שבור",sect:"סימן מקטע",uml:"שתי נקודות אופקיות (Diaeresis)",copy:"סימן זכויות יוצרים (Copyright)",ordf:"סימן אורדינאלי נקבי",laquo:"סימן ציטוט זווית כפולה לשמאל",not:"סימן שלילה מתמטי",reg:"סימן רשום",
-macr:"מקרון (הגיה ארוכה)",deg:"מעלות",sup2:"2 בכתיב עילי",sup3:"3 בכתיב עילי",acute:"סימן דגוש (Acute)",micro:"מיקרו",para:"סימון פסקה",middot:"נקודה אמצעית",cedil:"סדיליה",sup1:"1 בכתיב עילי",ordm:"סימן אורדינאלי זכרי",raquo:"סימן ציטוט זווית כפולה לימין",frac14:"רבע בשבר פשוט",frac12:"חצי בשבר פשוט",frac34:"שלושה רבעים בשבר פשוט",iquest:"סימן שאלה הפוך",Agrave:"אות לטינית A עם גרש (Grave)",Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",
-Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"אות לטינית Æ גדולה",Ccedil:"Latin capital letter C with cedilla",Egrave:"אות לטינית E עם גרש (Grave)",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"אות לטינית I עם גרש (Grave)",Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",
-ETH:"אות לטינית Eth גדולה",Ntilde:"Latin capital letter N with tilde",Ograve:"אות לטינית O עם גרש (Grave)",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"סימן כפל",Oslash:"Latin capital letter O with stroke",Ugrave:"אות לטינית U עם גרש (Grave)",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",
-Yacute:"Latin capital letter Y with acute accent",THORN:"אות לטינית Thorn גדולה",szlig:"אות לטינית s חדה קטנה",agrave:"אות לטינית a עם גרש (Grave)",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",aring:"Latin small letter a with ring above",aelig:"אות לטינית æ קטנה",ccedil:"Latin small letter c with cedilla",egrave:"אות לטינית e עם גרש (Grave)",eacute:"Latin small letter e with acute accent",
-ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"אות לטינית i עם גרש (Grave)",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"אות לטינית eth קטנה",ntilde:"Latin small letter n with tilde",ograve:"אות לטינית o עם גרש (Grave)",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",
-divide:"סימן חלוקה",oslash:"Latin small letter o with stroke",ugrave:"אות לטינית u עם גרש (Grave)",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",thorn:"אות לטינית thorn קטנה",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",
-373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"סימן ציטוט נמוך יחיד",8219:"סימן ציטוט",bdquo:"סימן ציטוט נמוך כפול",hellip:"שלוש נקודות",trade:"סימן טריידמארק",9658:"סמן שחור לצד ימין",bull:"תבליט (רשימה)",rarr:"חץ לימין",rArr:"חץ כפול לימין",hArr:"חץ כפול לימין ושמאל",diams:"יהלום מלא",asymp:"כמעט שווה"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hr.js
deleted file mode 100644
index af10255d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hr.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","hr",{euro:"Euro znak",lsquo:"Lijevi jednostruki navodnik",rsquo:"Desni jednostruki navodnik",ldquo:"Lijevi dvostruki navodnik",rdquo:"Desni dvostruki navodnik",ndash:"En crtica",mdash:"Em crtica",iexcl:"Naopaki uskličnik",cent:"Cent znak",pound:"Funta znak",curren:"Znak valute",yen:"Yen znak",brvbar:"Potrgana prečka",sect:"Znak odjeljka",uml:"Prijeglasi",copy:"Copyright znak",ordf:"Feminine ordinal indicator",laquo:"Lijevi dvostruki uglati navodnik",not:"Not znak",
-reg:"Registered znak",macr:"Macron",deg:"Stupanj znak",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Mikro znak",para:"Pilcrow sign",middot:"Srednja točka",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Desni dvostruku uglati navodnik",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Naopaki upitnik",Agrave:"Veliko latinsko slovo A s akcentom",Aacute:"Latinično veliko slovo A sa oštrim naglaskom",
-Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",Iacute:"Latin capital letter I with acute accent",
-Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",Ugrave:"Latin capital letter U with grave accent",
-Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",aring:"Latin small letter a with ring above",
-aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",ntilde:"Latin small letter n with tilde",
-ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",
-thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",trade:"Trade mark sign",9658:"Black right-pointing pointer",
-bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hu.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hu.js
deleted file mode 100644
index 79483051..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/hu.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","hu",{euro:"Euró jel",lsquo:"Bal szimpla idézőjel",rsquo:"Jobb szimpla idézőjel",ldquo:"Bal dupla idézőjel",rdquo:"Jobb dupla idézőjel",ndash:"Rövid gondolatjel",mdash:"Hosszú gondolatjel",iexcl:"Fordított felkiáltójel",cent:"Cent jel",pound:"Font jel",curren:"Valuta jel",yen:"Yen jel",brvbar:"Hosszú kettőspont",sect:"Paragrafus jel",uml:"Kettős hangzó jel",copy:"Szerzői jog jel",ordf:"Női sorrend mutatója",laquo:"Balra mutató duplanyíl",not:"Feltételes kötőjel",
-reg:"Bejegyzett védjegy jele",macr:"Hosszúsági jel",deg:"Fok jel",sup2:"Négyzeten jel",sup3:"Köbön jel",acute:"Éles ékezet",micro:"Mikro-jel",para:"Bekezdés jel",middot:"Közép pont",cedil:"Cédille",sup1:"Elsőn jel",ordm:"Férfi sorrend mutatója",raquo:"Jobbra mutató duplanyíl",frac14:"Egy negyed jel",frac12:"Egy ketted jel",frac34:"Három negyed jel",iquest:"Fordított kérdőjel",Agrave:"Latin nagy A fordított ékezettel",Aacute:"Latin nagy A normál ékezettel",Acirc:"Latin nagy A hajtott ékezettel",Atilde:"Latin nagy A hullámjellel",
-Auml:"Latin nagy A kettőspont ékezettel",Aring:"Latin nagy A gyűrű ékezettel",AElig:"Latin nagy Æ betű",Ccedil:"Latin nagy C cedillával",Egrave:"Latin nagy E fordított ékezettel",Eacute:"Latin nagy E normál ékezettel",Ecirc:"Latin nagy E hajtott ékezettel",Euml:"Latin nagy E dupla kettőspont ékezettel",Igrave:"Latin nagy I fordított ékezettel",Iacute:"Latin nagy I normál ékezettel",Icirc:"Latin nagy I hajtott ékezettel",Iuml:"Latin nagy I kettőspont ékezettel",ETH:"Latin nagy Eth betű",Ntilde:"Latin nagy N hullámjellel",
-Ograve:"Latin nagy O fordított ékezettel",Oacute:"Latin nagy O normál ékezettel",Ocirc:"Latin nagy O hajtott ékezettel",Otilde:"Latin nagy O hullámjellel",Ouml:"Latin nagy O kettőspont ékezettel",times:"Szorzás jel",Oslash:"Latin O betű áthúzással",Ugrave:"Latin nagy U fordított ékezettel",Uacute:"Latin nagy U normál ékezettel",Ucirc:"Latin nagy U hajtott ékezettel",Uuml:"Latin nagy U kettőspont ékezettel",Yacute:"Latin nagy Y normál ékezettel",THORN:"Latin nagy Thorn betű",szlig:"Latin kis s betű",
-agrave:"Latin kis a fordított ékezettel",aacute:"Latin kis a normál ékezettel",acirc:"Latin kis a hajtott ékezettel",atilde:"Latin kis a hullámjellel",auml:"Latin kis a kettőspont ékezettel",aring:"Latin kis a gyűrű ékezettel",aelig:"Latin kis æ betű",ccedil:"Latin kis c cedillával",egrave:"Latin kis e fordított ékezettel",eacute:"Latin kis e normál ékezettel",ecirc:"Latin kis e hajtott ékezettel",euml:"Latin kis e dupla kettőspont ékezettel",igrave:"Latin kis i fordított ékezettel",iacute:"Latin kis i normál ékezettel",
-icirc:"Latin kis i hajtott ékezettel",iuml:"Latin kis i kettőspont ékezettel",eth:"Latin kis eth betű",ntilde:"Latin kis n hullámjellel",ograve:"Latin kis o fordított ékezettel",oacute:"Latin kis o normál ékezettel",ocirc:"Latin kis o hajtott ékezettel",otilde:"Latin kis o hullámjellel",ouml:"Latin kis o kettőspont ékezettel",divide:"Osztásjel",oslash:"Latin kis o betű áthúzással",ugrave:"Latin kis u fordított ékezettel",uacute:"Latin kis u normál ékezettel",ucirc:"Latin kis u hajtott ékezettel",
-uuml:"Latin kis u kettőspont ékezettel",yacute:"Latin kis y normál ékezettel",thorn:"Latin kis thorn jel",yuml:"Latin kis y kettőspont ékezettel",OElig:"Latin nagy OE-jel",oelig:"Latin kis oe-jel",372:"Latin nagy W hajtott ékezettel",374:"Latin nagy Y hajtott ékezettel",373:"Latin kis w hajtott ékezettel",375:"Latin kis y hajtott ékezettel",sbquo:"Nyitó nyomdai szimpla idézőjel",8219:"Záró nyomdai záró idézőjel",bdquo:"Nyitó nyomdai dupla idézőjel",hellip:"Három pont",trade:"Kereskedelmi védjegy jele",
-9658:"Jobbra mutató fekete mutató",bull:"Golyó",rarr:"Jobbra mutató nyíl",rArr:"Jobbra mutató duplanyíl",hArr:"Bal-jobb duplanyíl",diams:"Fekete gyémánt jel",asymp:"Majdnem egyenlő jel"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/id.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/id.js
deleted file mode 100644
index 4928f400..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/id.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","id",{euro:"Tanda Euro",lsquo:"Left single quotation mark",rsquo:"Right single quotation mark",ldquo:"Left double quotation mark",rdquo:"Right double quotation mark",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"Cent sign",pound:"Pound sign",curren:"Currency sign",yen:"Tanda Yen",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"Tanda Hak Cipta",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Tanda Telah Terdaftar",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/it.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/it.js
deleted file mode 100644
index 894b56ce..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/it.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","it",{euro:"Simbolo Euro",lsquo:"Virgoletta singola sinistra",rsquo:"Virgoletta singola destra",ldquo:"Virgolette aperte",rdquo:"Virgolette chiuse",ndash:"Trattino",mdash:"Trattino lungo",iexcl:"Punto esclavamativo invertito",cent:"Simbolo Cent",pound:"Simbolo Sterlina",curren:"Simbolo Moneta",yen:"Simbolo Yen",brvbar:"Barra interrotta",sect:"Simbolo di sezione",uml:"Dieresi",copy:"Simbolo Copyright",ordf:"Indicatore ordinale femminile",laquo:"Virgolette basse aperte",
-not:"Nessun segno",reg:"Simbolo Registrato",macr:"Macron",deg:"Simbolo Grado",sup2:"Apice Due",sup3:"Apice Tre",acute:"Accento acuto",micro:"Simbolo Micro",para:"Simbolo Paragrafo",middot:"Punto centrale",cedil:"Cediglia",sup1:"Apice Uno",ordm:"Indicatore ordinale maschile",raquo:"Virgolette basse chiuse",frac14:"Frazione volgare un quarto",frac12:"Frazione volgare un mezzo",frac34:"Frazione volgare tre quarti",iquest:"Punto interrogativo invertito",Agrave:"Lettera maiuscola latina A con accento grave",
-Aacute:"Lettera maiuscola latina A con accento acuto",Acirc:"Lettera maiuscola latina A con accento circonflesso",Atilde:"Lettera maiuscola latina A con tilde",Auml:"Lettera maiuscola latina A con dieresi",Aring:"Lettera maiuscola latina A con anello sopra",AElig:"Lettera maiuscola latina AE",Ccedil:"Lettera maiuscola latina C con cediglia",Egrave:"Lettera maiuscola latina E con accento grave",Eacute:"Lettera maiuscola latina E con accento acuto",Ecirc:"Lettera maiuscola latina E con accento circonflesso",
-Euml:"Lettera maiuscola latina E con dieresi",Igrave:"Lettera maiuscola latina I con accento grave",Iacute:"Lettera maiuscola latina I con accento acuto",Icirc:"Lettera maiuscola latina I con accento circonflesso",Iuml:"Lettera maiuscola latina I con dieresi",ETH:"Lettera maiuscola latina Eth",Ntilde:"Lettera maiuscola latina N con tilde",Ograve:"Lettera maiuscola latina O con accento grave",Oacute:"Lettera maiuscola latina O con accento acuto",Ocirc:"Lettera maiuscola latina O con accento circonflesso",
-Otilde:"Lettera maiuscola latina O con tilde",Ouml:"Lettera maiuscola latina O con dieresi",times:"Simbolo di moltiplicazione",Oslash:"Lettera maiuscola latina O barrata",Ugrave:"Lettera maiuscola latina U con accento grave",Uacute:"Lettera maiuscola latina U con accento acuto",Ucirc:"Lettera maiuscola latina U con accento circonflesso",Uuml:"Lettera maiuscola latina U con accento circonflesso",Yacute:"Lettera maiuscola latina Y con accento acuto",THORN:"Lettera maiuscola latina Thorn",szlig:"Lettera latina minuscola doppia S",
-agrave:"Lettera minuscola latina a con accento grave",aacute:"Lettera minuscola latina a con accento acuto",acirc:"Lettera minuscola latina a con accento circonflesso",atilde:"Lettera minuscola latina a con tilde",auml:"Lettera minuscola latina a con dieresi",aring:"Lettera minuscola latina a con anello superiore",aelig:"Lettera minuscola latina ae",ccedil:"Lettera minuscola latina c con cediglia",egrave:"Lettera minuscola latina e con accento grave",eacute:"Lettera minuscola latina e con accento acuto",
-ecirc:"Lettera minuscola latina e con accento circonflesso",euml:"Lettera minuscola latina e con dieresi",igrave:"Lettera minuscola latina i con accento grave",iacute:"Lettera minuscola latina i con accento acuto",icirc:"Lettera minuscola latina i con accento circonflesso",iuml:"Lettera minuscola latina i con dieresi",eth:"Lettera minuscola latina eth",ntilde:"Lettera minuscola latina n con tilde",ograve:"Lettera minuscola latina o con accento grave",oacute:"Lettera minuscola latina o con accento acuto",
-ocirc:"Lettera minuscola latina o con accento circonflesso",otilde:"Lettera minuscola latina o con tilde",ouml:"Lettera minuscola latina o con dieresi",divide:"Simbolo di divisione",oslash:"Lettera minuscola latina o barrata",ugrave:"Lettera minuscola latina u con accento grave",uacute:"Lettera minuscola latina u con accento acuto",ucirc:"Lettera minuscola latina u con accento circonflesso",uuml:"Lettera minuscola latina u con dieresi",yacute:"Lettera minuscola latina y con accento acuto",thorn:"Lettera minuscola latina thorn",
-yuml:"Lettera minuscola latina y con dieresi",OElig:"Legatura maiuscola latina OE",oelig:"Legatura minuscola latina oe",372:"Lettera maiuscola latina W con accento circonflesso",374:"Lettera maiuscola latina Y con accento circonflesso",373:"Lettera minuscola latina w con accento circonflesso",375:"Lettera minuscola latina y con accento circonflesso",sbquo:"Singola virgoletta bassa low-9",8219:"Singola virgoletta bassa low-9 inversa",bdquo:"Doppia virgoletta bassa low-9",hellip:"Ellissi orizzontale",
-trade:"Simbolo TM",9658:"Puntatore nero rivolto verso destra",bull:"Punto",rarr:"Freccia verso destra",rArr:"Doppia freccia verso destra",hArr:"Doppia freccia sinistra destra",diams:"Simbolo nero diamante",asymp:"Quasi uguale a"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ja.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ja.js
deleted file mode 100644
index 84fb8fa2..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ja.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ja",{euro:"ユーロ記号",lsquo:"左シングル引用符",rsquo:"右シングル引用符",ldquo:"左ダブル引用符",rdquo:"右ダブル引用符",ndash:"半角ダッシュ",mdash:"全角ダッシュ",iexcl:"逆さ感嘆符",cent:"セント記号",pound:"ポンド記号",curren:"通貨記号",yen:"円記号",brvbar:"上下に分かれた縦棒",sect:"節記号",uml:"分音記号(ウムラウト)",copy:"著作権表示記号",ordf:"女性序数標識",laquo:" 始め二重山括弧引用記号",not:"論理否定記号",reg:"登録商標記号",macr:"長音符",deg:"度記号",sup2:"上つき2, 2乗",sup3:"上つき3, 3乗",acute:"揚音符",micro:"ミクロン記号",para:"段落記号",middot:"中黒",cedil:"セディラ",sup1:"上つき1",ordm:"男性序数標識",raquo:"終わり二重山括弧引用記号",
-frac14:"四分の一",frac12:"二分の一",frac34:"四分の三",iquest:"逆疑問符",Agrave:"抑音符つき大文字A",Aacute:"揚音符つき大文字A",Acirc:"曲折アクセントつき大文字A",Atilde:"チルダつき大文字A",Auml:"分音記号つき大文字A",Aring:"リングつき大文字A",AElig:"AとEの合字",Ccedil:"セディラつき大文字C",Egrave:"抑音符つき大文字E",Eacute:"揚音符つき大文字E",Ecirc:"曲折アクセントつき大文字E",Euml:"分音記号つき大文字E",Igrave:"抑音符つき大文字I",Iacute:"揚音符つき大文字I",Icirc:"曲折アクセントつき大文字I",Iuml:"分音記号つき大文字I",ETH:"[アイスランド語]大文字ETH",Ntilde:"チルダつき大文字N",Ograve:"抑音符つき大文字O",Oacute:"揚音符つき大文字O",Ocirc:"曲折アクセントつき大文字O",Otilde:"チルダつき大文字O",Ouml:" 分音記号つき大文字O",
-times:"乗算記号",Oslash:"打ち消し線つき大文字O",Ugrave:"抑音符つき大文字U",Uacute:"揚音符つき大文字U",Ucirc:"曲折アクセントつき大文字U",Uuml:"分音記号つき大文字U",Yacute:"揚音符つき大文字Y",THORN:"[アイスランド語]大文字THORN",szlig:"ドイツ語エスツェット",agrave:"抑音符つき小文字a",aacute:"揚音符つき小文字a",acirc:"曲折アクセントつき小文字a",atilde:"チルダつき小文字a",auml:"分音記号つき小文字a",aring:"リングつき小文字a",aelig:"aとeの合字",ccedil:"セディラつき小文字c",egrave:"抑音符つき小文字e",eacute:"揚音符つき小文字e",ecirc:"曲折アクセントつき小文字e",euml:"分音記号つき小文字e",igrave:"抑音符つき小文字i",iacute:"揚音符つき小文字i",icirc:"曲折アクセントつき小文字i",iuml:"分音記号つき小文字i",eth:"アイスランド語小文字eth",
-ntilde:"チルダつき小文字n",ograve:"抑音符つき小文字o",oacute:"揚音符つき小文字o",ocirc:"曲折アクセントつき小文字o",otilde:"チルダつき小文字o",ouml:"分音記号つき小文字o",divide:"除算記号",oslash:"打ち消し線つき小文字o",ugrave:"抑音符つき小文字u",uacute:"揚音符つき小文字u",ucirc:"曲折アクセントつき小文字u",uuml:"分音記号つき小文字u",yacute:"揚音符つき小文字y",thorn:"アイスランド語小文字thorn",yuml:"分音記号つき小文字y",OElig:"OとEの合字",oelig:"oとeの合字",372:"曲折アクセントつき大文字W",374:"曲折アクセントつき大文字Y",373:"曲折アクセントつき小文字w",375:"曲折アクセントつき小文字y",sbquo:"シングル下引用符",8219:"左右逆の左引用符",bdquo:"ダブル下引用符",hellip:"三点リーダ",trade:"商標記号",9658:"右黒三角ポインタ",bull:"黒丸",
-rarr:"右矢印",rArr:"右二重矢印",hArr:"左右二重矢印",diams:"ダイヤ",asymp:"漸近"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/km.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/km.js
deleted file mode 100644
index 65a7518d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/km.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","km",{euro:"សញ្ញា​អឺរ៉ូ",lsquo:"Left single quotation mark",rsquo:"Right single quotation mark",ldquo:"Left double quotation mark",rdquo:"Right double quotation mark",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"សញ្ញា​សេន",pound:"សញ្ញា​ផោន",curren:"សញ្ញា​រូបិយបណ្ណ",yen:"សញ្ញា​យ៉េន",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"សញ្ញា​រក្សា​សិទ្ធិ",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Registered sign",macr:"Macron",deg:"សញ្ញា​ដឺក្រេ",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"សញ្ញា​មីក្រូ",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ku.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ku.js
deleted file mode 100644
index 4917d4ad..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ku.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ku",{euro:"نیشانەی یۆرۆ",lsquo:"نیشانەی فاریزەی سەرووژێری تاکی چەپ",rsquo:"نیشانەی فاریزەی سەرووژێری تاکی ڕاست",ldquo:"نیشانەی فاریزەی سەرووژێری دووهێندەی چه‌پ",rdquo:"نیشانەی فاریزەی سەرووژێری دووهێندەی ڕاست",ndash:"تەقەڵی کورت",mdash:"تەقەڵی درێژ",iexcl:"نیشانەی هەڵەوگێڕی سەرسوڕهێنەر",cent:"نیشانەی سەنت",pound:"نیشانەی پاوەند",curren:"نیشانەی دراو",yen:"نیشانەی یەنی ژاپۆنی",brvbar:"شریتی ئەستوونی پچڕاو",sect:"نیشانەی دوو s لەسەریەک",uml:"خاڵ",copy:"نیشانەی مافی چاپ",
-ordf:"هێڵ لەسەر پیتی a",laquo:"دوو تیری بەدووایەکی چەپ",not:"نیشانەی نەخێر",reg:"نیشانەی R لەناو بازنەدا",macr:"ماکڕۆن",deg:"نیشانەی پلە",sup2:"سەرنووسی دوو",sup3:"سەرنووسی سێ",acute:"لاری تیژ",micro:"نیشانەی u لق درێژی چەپی خواروو",para:"نیشانەی پەڕەگراف",middot:"ناوەڕاستی خاڵ",cedil:"نیشانەی c ژێر چووکرە",sup1:"سەرنووسی یەک",ordm:"هێڵ لەژێر پیتی o",raquo:"دوو تیری بەدووایەکی ڕاست",frac14:"یەک لەسەر چووار",frac12:"یەک لەسەر دوو",frac34:"سێ لەسەر چووار",iquest:"هێمای هەڵەوگێری پرسیار",Agrave:"پیتی لاتینی A-ی گەورە لەگەڵ ڕوومەتداری لار",
-Aacute:"پیتی لاتینی A-ی گەورە لەگەڵ ڕوومەتداری تیژ",Acirc:"پیتی لاتینی A-ی گەورە لەگەڵ نیشانە لەسەری",Atilde:"پیتی لاتینی A-ی گەورە لەگەڵ زەڕە",Auml:"پیتی لاتینی A-ی گەورە لەگەڵ نیشانە لەسەری",Aring:"پیتی لاتینی گەورەی Å",AElig:"پیتی لاتینی گەورەی Æ",Ccedil:"پیتی لاتینی C-ی گەورە لەگەڵ ژێر چووکرە",Egrave:"پیتی لاتینی E-ی گەورە لەگەڵ ڕوومەتداری لار",Eacute:"پیتی لاتینی E-ی گەورە لەگەڵ ڕوومەتداری تیژ",Ecirc:"پیتی لاتینی E-ی گەورە لەگەڵ نیشانە لەسەری",Euml:"پیتی لاتینی E-ی گەورە لەگەڵ نیشانە لەسەری",
-Igrave:"پیتی لاتینی I-ی گەورە لەگەڵ ڕوومەتداری لار",Iacute:"پیتی لاتینی I-ی گەورە لەگەڵ ڕوومەتداری تیژ",Icirc:"پیتی لاتینی I-ی گەورە لەگەڵ نیشانە لەسەری",Iuml:"پیتی لاتینی I-ی گەورە لەگەڵ نیشانە لەسەری",ETH:"پیتی لاتینی E-ی گەورەی",Ntilde:"پیتی لاتینی N-ی گەورە لەگەڵ زەڕە",Ograve:"پیتی لاتینی O-ی گەورە لەگەڵ ڕوومەتداری لار",Oacute:"پیتی لاتینی O-ی گەورە لەگەڵ ڕوومەتداری تیژ",Ocirc:"پیتی لاتینی O-ی گەورە لەگەڵ نیشانە لەسەری",Otilde:"پیتی لاتینی O-ی گەورە لەگەڵ زەڕە",Ouml:"پیتی لاتینی O-ی گەورە لەگەڵ نیشانە لەسەری",
-times:"نیشانەی لێکدان",Oslash:"پیتی لاتینی گەورەی Ø لەگەڵ هێمای دڵ وەستان",Ugrave:"پیتی لاتینی U-ی گەورە لەگەڵ ڕوومەتداری لار",Uacute:"پیتی لاتینی U-ی گەورە لەگەڵ ڕوومەتداری تیژ",Ucirc:"پیتی لاتینی U-ی گەورە لەگەڵ نیشانە لەسەری",Uuml:"پیتی لاتینی U-ی گەورە لەگەڵ نیشانە لەسەری",Yacute:"پیتی لاتینی Y-ی گەورە لەگەڵ ڕوومەتداری تیژ",THORN:"پیتی لاتینی دڕکی گەورە",szlig:"پیتی لاتنی نووک تیژی s",agrave:"پیتی لاتینی a-ی بچووک لەگەڵ ڕوومەتداری لار",aacute:"پیتی لاتینی a-ی بچووك لەگەڵ ڕوومەتداری تیژ",acirc:"پیتی لاتینی a-ی بچووك لەگەڵ نیشانە لەسەری",
-atilde:"پیتی لاتینی a-ی بچووك لەگەڵ زەڕە",auml:"پیتی لاتینی a-ی بچووك لەگەڵ نیشانە لەسەری",aring:"پیتی لاتینی å-ی بچووك",aelig:"پیتی لاتینی æ-ی بچووك",ccedil:"پیتی لاتینی c-ی بچووك لەگەڵ ژێر چووکرە",egrave:"پیتی لاتینی e-ی بچووك لەگەڵ ڕوومەتداری لار",eacute:"پیتی لاتینی e-ی بچووك لەگەڵ ڕوومەتداری تیژ",ecirc:"پیتی لاتینی e-ی بچووك لەگەڵ نیشانە لەسەری",euml:"پیتی لاتینی e-ی بچووك لەگەڵ نیشانە لەسەری",igrave:"پیتی لاتینی i-ی بچووك لەگەڵ ڕوومەتداری لار",iacute:"پیتی لاتینی i-ی بچووك لەگەڵ ڕوومەتداری تیژ",
-icirc:"پیتی لاتینی i-ی بچووك لەگەڵ نیشانە لەسەری",iuml:"پیتی لاتینی i-ی بچووك لەگەڵ نیشانە لەسەری",eth:"پیتی لاتینی e-ی بچووك",ntilde:"پیتی لاتینی n-ی بچووك لەگەڵ زەڕە",ograve:"پیتی لاتینی o-ی بچووك لەگەڵ ڕوومەتداری لار",oacute:"پیتی لاتینی o-ی بچووك له‌گەڵ ڕوومەتداری تیژ",ocirc:"پیتی لاتینی o-ی بچووك لەگەڵ نیشانە لەسەری",otilde:"پیتی لاتینی o-ی بچووك لەگەڵ زەڕە",ouml:"پیتی لاتینی o-ی بچووك لەگەڵ نیشانە لەسەری",divide:"نیشانەی دابەش",oslash:"پیتی لاتینی گەورەی ø لەگەڵ هێمای دڵ وەستان",ugrave:"پیتی لاتینی u-ی بچووك لەگەڵ ڕوومەتداری لار",
-uacute:"پیتی لاتینی u-ی بچووك لەگەڵ ڕوومەتداری تیژ",ucirc:"پیتی لاتینی u-ی بچووك لەگەڵ نیشانە لەسەری",uuml:"پیتی لاتینی u-ی بچووك لەگەڵ نیشانە لەسەری",yacute:"پیتی لاتینی y-ی بچووك لەگەڵ ڕوومەتداری تیژ",thorn:"پیتی لاتینی دڕکی بچووك",yuml:"پیتی لاتینی y-ی بچووك لەگەڵ نیشانە لەسەری",OElig:"پیتی لاتینی گەورەی پێکەوەنووسراوی OE",oelig:"پیتی لاتینی بچووکی پێکەوەنووسراوی oe",372:"پیتی لاتینی W-ی گەورە لەگەڵ نیشانە لەسەری",374:"پیتی لاتینی Y-ی گەورە لەگەڵ نیشانە لەسەری",373:"پیتی لاتینی w-ی بچووکی لەگەڵ نیشانە لەسەری",
-375:"پیتی لاتینی y-ی بچووکی لەگەڵ نیشانە لەسەری",sbquo:"نیشانەی فاریزەی نزم",8219:"نیشانەی فاریزەی بەرزی پێچەوانە",bdquo:"دوو فاریزەی تەنیش یەك",hellip:"ئاسۆیی بازنە",trade:"نیشانەی بازرگانی",9658:"ئاراستەی ڕەشی دەستی ڕاست",bull:"فیشەك",rarr:"تیری دەستی ڕاست",rArr:"دووتیری دەستی ڕاست",hArr:"دوو تیری ڕاست و چەپ",diams:"ڕەشی پاقڵاوەیی",asymp:"نیشانەی یەکسانە"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/lv.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/lv.js
deleted file mode 100644
index 50a77d36..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/lv.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","lv",{euro:"Euro zīme",lsquo:"Kreisā vienkārtīga pēdiņa",rsquo:"Labā vienkārtīga pēdiņa",ldquo:"Kreisā dubult pēdiņa",rdquo:"Labā dubult pēdiņa",ndash:"En svītra",mdash:"Em svītra",iexcl:"Apgriezta izsaukuma zīme",cent:"Centu naudas zīme",pound:"Sterliņu mārciņu naudas zīme",curren:"Valūtas zīme",yen:"Jenu naudas zīme",brvbar:"Vertikāla pārrauta līnija",sect:"Paragrāfa zīme",uml:"Diakritiska zīme",copy:"Autortiesību zīme",ordf:"Sievišķas kārtas rādītājs",
-laquo:"Kreisā dubult stūra pēdiņu zīme",not:"Neparakstīts",reg:"Reģistrēta zīme",macr:"Garumzīme",deg:"Grādu zīme",sup2:"Augšraksts divi",sup3:"Augšraksts trīs",acute:"Akūta uzsvara zīme",micro:"Mikro zīme",para:"Rindkopas zīme ",middot:"Vidējs punkts",cedil:"Āķītis zem burta",sup1:"Augšraksts viens",ordm:"Vīrišķīgas kārtas rādītājs",raquo:"Labā dubult stūra pēdiņu zīme",frac14:"Vulgāra frakcija 1/4",frac12:"Vulgāra frakcija 1/2",frac34:"Vulgāra frakcija 3/4",iquest:"Apgriezta jautājuma zīme",Agrave:"Lielais latīņu burts A ar uzsvara zīmi",
-Aacute:"Lielais latīņu burts A ar akūtu uzsvara zīmi",Acirc:"Lielais latīņu burts A ar diakritisku zīmi",Atilde:"Lielais latīņu burts A ar tildi ",Auml:"Lielais latīņu burts A ar diakritisko zīmi",Aring:"Lielais latīņu burts A ar aplīti augšā",AElig:"Lielais latīņu burts Æ",Ccedil:"Lielais latīņu burts C ar āķīti zem burta",Egrave:"Lielais latīņu burts E ar apostrofu",Eacute:"Lielais latīņu burts E ar akūtu uzsvara zīmi",Ecirc:"Lielais latīņu burts E ar diakritisko zīmi",Euml:"Lielais latīņu burts E ar diakritisko zīmi",
-Igrave:"Lielais latīņu burts I ar uzsvaras zīmi",Iacute:"Lielais latīņu burts I ar akūtu uzsvara zīmi",Icirc:"Lielais latīņu burts I ar diakritisko zīmi",Iuml:"Lielais latīņu burts I ar diakritisko zīmi",ETH:"Lielais latīņu burts Eth",Ntilde:"Lielais latīņu burts N ar tildi",Ograve:"Lielais latīņu burts O ar uzsvara zīmi",Oacute:"Lielais latīņu burts O ar akūto uzsvara zīmi",Ocirc:"Lielais latīņu burts O ar diakritisko zīmi",Otilde:"Lielais latīņu burts O ar tildi",Ouml:"Lielais latīņu burts O ar diakritisko zīmi",
-times:"Reizināšanas zīme ",Oslash:"Lielais latīņu burts O ar iesvītrojumu",Ugrave:"Lielais latīņu burts U ar uzsvaras zīmi",Uacute:"Lielais latīņu burts U ar akūto uzsvars zīmi",Ucirc:"Lielais latīņu burts U ar diakritisko zīmi",Uuml:"Lielais latīņu burts U ar diakritisko zīmi",Yacute:"Lielais latīņu burts Y ar akūto uzsvaras zīmi",THORN:"Lielais latīņu burts torn",szlig:"Mazs latīņu burts ar ligatūru",agrave:"Mazs latīņu burts a ar uzsvara zīmi",aacute:"Mazs latīņu burts a ar akūto uzsvara zīmi",
-acirc:"Mazs latīņu burts a ar diakritisko zīmi",atilde:"Mazs latīņu burts a ar tildi",auml:"Mazs latīņu burts a ar diakritisko zīmi",aring:"Mazs latīņu burts a ar aplīti augšā",aelig:"Mazs latīņu burts æ",ccedil:"Mazs latīņu burts c ar āķīti zem burta",egrave:"Mazs latīņu burts e ar uzsvara zīmi ",eacute:"Mazs latīņu burts e ar akūtu uzsvara zīmi",ecirc:"Mazs latīņu burts e ar diakritisko zīmi",euml:"Mazs latīņu burts e ar diakritisko zīmi",igrave:"Mazs latīņu burts i ar uzsvara zīmi ",iacute:"Mazs latīņu burts i ar akūtu uzsvara zīmi",
-icirc:"Mazs latīņu burts i ar diakritisko zīmi",iuml:"Mazs latīņu burts i ar diakritisko zīmi",eth:"Mazs latīņu burts eth",ntilde:"Mazs latīņu burts n ar tildi",ograve:"Mazs latīņu burts o ar uzsvara zīmi ",oacute:"Mazs latīņu burts o ar akūtu uzsvara zīmi",ocirc:"Mazs latīņu burts o ar diakritisko zīmi",otilde:"Mazs latīņu burts o ar tildi",ouml:"Mazs latīņu burts o ar diakritisko zīmi",divide:"Dalīšanas zīme",oslash:"Mazs latīņu burts o ar iesvītrojumu",ugrave:"Mazs latīņu burts u ar uzsvara zīmi ",
-uacute:"Mazs latīņu burts u ar akūtu uzsvara zīmi",ucirc:"Mazs latīņu burts u ar diakritisko zīmi",uuml:"Mazs latīņu burts u ar diakritisko zīmi",yacute:"Mazs latīņu burts y ar akūtu uzsvaras zīmi",thorn:"Mazs latīņu burts torns",yuml:"Mazs latīņu burts y ar diakritisko zīmi",OElig:"Liela latīņu ligatūra OE",oelig:"Maza latīņu ligatūra oe",372:"Liels latīņu burts W ar diakritisko zīmi ",374:"Liels latīņu burts Y ar diakritisko zīmi ",373:"Mazs latīņu burts w ar diakritisko zīmi ",375:"Mazs latīņu burts y ar diakritisko zīmi ",
-sbquo:"Mazas-9 vienkārtīgas pēdiņas",8219:"Lielas-9 vienkārtīgas apgrieztas pēdiņas",bdquo:"Mazas-9 dubultas pēdiņas",hellip:"Horizontāli daudzpunkti",trade:"Preču zīmes zīme",9658:"Melns pa labi pagriezts radītājs",bull:"Lode",rarr:"Bulta pa labi",rArr:"Dubulta Bulta pa labi",hArr:"Bulta pa kreisi",diams:"Dubulta Bulta pa kreisi",asymp:"Gandrīz vienāds ar"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nb.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nb.js
deleted file mode 100644
index 0cdcde20..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nb.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","nb",{euro:"Eurosymbol",lsquo:"Venstre enkelt anførselstegn",rsquo:"Høyre enkelt anførselstegn",ldquo:"Venstre dobbelt anførselstegn",rdquo:"Høyre anførsesltegn",ndash:"Kort tankestrek",mdash:"Lang tankestrek",iexcl:"Omvendt utropstegn",cent:"Centsymbol",pound:"Pundsymbol",curren:"Valutategn",yen:"Yensymbol",brvbar:"Brutt loddrett strek",sect:"Paragraftegn",uml:"Tøddel",copy:"Copyrighttegn",ordf:"Feminin ordensindikator",laquo:"Venstre anførselstegn",not:"Negasjonstegn",
-reg:"Registrert varemerke-tegn",macr:"Makron",deg:"Gradsymbol",sup2:"Hevet totall",sup3:"Hevet tretall",acute:"Akutt aksent",micro:"Mikrosymbol",para:"Avsnittstegn",middot:"Midtstilt prikk",cedil:"Cedille",sup1:"Hevet ettall",ordm:"Maskulin ordensindikator",raquo:"Høyre anførselstegn",frac14:"Fjerdedelsbrøk",frac12:"Halvbrøk",frac34:"Tre fjerdedelers brøk",iquest:"Omvendt spørsmålstegn",Agrave:"Stor A med grav aksent",Aacute:"Stor A med akutt aksent",Acirc:"Stor A med cirkumfleks",Atilde:"Stor A med tilde",
-Auml:"Stor A med tøddel",Aring:"Stor Å",AElig:"Stor Æ",Ccedil:"Stor C med cedille",Egrave:"Stor E med grav aksent",Eacute:"Stor E med akutt aksent",Ecirc:"Stor E med cirkumfleks",Euml:"Stor E med tøddel",Igrave:"Stor I med grav aksent",Iacute:"Stor I med akutt aksent",Icirc:"Stor I med cirkumfleks",Iuml:"Stor I med tøddel",ETH:"Stor Edd/stungen D",Ntilde:"Stor N med tilde",Ograve:"Stor O med grav aksent",Oacute:"Stor O med akutt aksent",Ocirc:"Stor O med cirkumfleks",Otilde:"Stor O med tilde",Ouml:"Stor O med tøddel",
-times:"Multiplikasjonstegn",Oslash:"Stor Ø",Ugrave:"Stor U med grav aksent",Uacute:"Stor U med akutt aksent",Ucirc:"Stor U med cirkumfleks",Uuml:"Stor U med tøddel",Yacute:"Stor Y med akutt aksent",THORN:"Stor Thorn",szlig:"Liten dobbelt-s/Eszett",agrave:"Liten a med grav aksent",aacute:"Liten a med akutt aksent",acirc:"Liten a med cirkumfleks",atilde:"Liten a med tilde",auml:"Liten a med tøddel",aring:"Liten å",aelig:"Liten æ",ccedil:"Liten c med cedille",egrave:"Liten e med grav aksent",eacute:"Liten e med akutt aksent",
-ecirc:"Liten e med cirkumfleks",euml:"Liten e med tøddel",igrave:"Liten i med grav aksent",iacute:"Liten i med akutt aksent",icirc:"Liten i med cirkumfleks",iuml:"Liten i med tøddel",eth:"Liten edd/stungen d",ntilde:"Liten n med tilde",ograve:"Liten o med grav aksent",oacute:"Liten o med akutt aksent",ocirc:"Liten o med cirkumfleks",otilde:"Liten o med tilde",ouml:"Liten o med tøddel",divide:"Divisjonstegn",oslash:"Liten ø",ugrave:"Liten u med grav aksent",uacute:"Liten u med akutt aksent",ucirc:"Liten u med cirkumfleks",
-uuml:"Liten u med tøddel",yacute:"Liten y med akutt aksent",thorn:"Liten thorn",yuml:"Liten y med tøddel",OElig:"Stor ligatur av O og E",oelig:"Liten ligatur av o og e",372:"Stor W med cirkumfleks",374:"Stor Y med cirkumfleks",373:"Liten w med cirkumfleks",375:"Liten y med cirkumfleks",sbquo:"Enkelt lavt 9-anførselstegn",8219:"Enkelt høyt reversert 9-anførselstegn",bdquo:"Dobbelt lavt 9-anførselstegn",hellip:"Ellipse",trade:"Varemerkesymbol",9658:"Svart høyrevendt peker",bull:"Tykk interpunkt",rarr:"Høyrevendt pil",
-rArr:"Dobbel høyrevendt pil",hArr:"Dobbel venstrevendt pil",diams:"Svart ruter",asymp:"Omtrent likhetstegn"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nl.js
deleted file mode 100644
index 68edf37f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/nl.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","nl",{euro:"Euro-teken",lsquo:"Linker enkel aanhalingsteken",rsquo:"Rechter enkel aanhalingsteken",ldquo:"Linker dubbel aanhalingsteken",rdquo:"Rechter dubbel aanhalingsteken",ndash:"En dash",mdash:"Em dash",iexcl:"Omgekeerd uitroepteken",cent:"Cent-teken",pound:"Pond-teken",curren:"Valuta-teken",yen:"Yen-teken",brvbar:"Gebroken streep",sect:"Paragraaf-teken",uml:"Trema",copy:"Copyright-teken",ordf:"Vrouwelijk ordinaal",laquo:"Linker guillemet",not:"Ongelijk-teken",
-reg:"Geregistreerd handelsmerk-teken",macr:"Macron",deg:"Graden-teken",sup2:"Superscript twee",sup3:"Superscript drie",acute:"Accent aigu",micro:"Micro-teken",para:"Alinea-teken",middot:"Halfhoge punt",cedil:"Cedille",sup1:"Superscript een",ordm:"Mannelijk ordinaal",raquo:"Rechter guillemet",frac14:"Breuk kwart",frac12:"Breuk half",frac34:"Breuk driekwart",iquest:"Omgekeerd vraagteken",Agrave:"Latijnse hoofdletter A met een accent grave",Aacute:"Latijnse hoofdletter A met een accent aigu",Acirc:"Latijnse hoofdletter A met een circonflexe",
-Atilde:"Latijnse hoofdletter A met een tilde",Auml:"Latijnse hoofdletter A met een trema",Aring:"Latijnse hoofdletter A met een corona",AElig:"Latijnse hoofdletter Æ",Ccedil:"Latijnse hoofdletter C met een cedille",Egrave:"Latijnse hoofdletter E met een accent grave",Eacute:"Latijnse hoofdletter E met een accent aigu",Ecirc:"Latijnse hoofdletter E met een circonflexe",Euml:"Latijnse hoofdletter E met een trema",Igrave:"Latijnse hoofdletter I met een accent grave",Iacute:"Latijnse hoofdletter I met een accent aigu",
-Icirc:"Latijnse hoofdletter I met een circonflexe",Iuml:"Latijnse hoofdletter I met een trema",ETH:"Latijnse hoofdletter Eth",Ntilde:"Latijnse hoofdletter N met een tilde",Ograve:"Latijnse hoofdletter O met een accent grave",Oacute:"Latijnse hoofdletter O met een accent aigu",Ocirc:"Latijnse hoofdletter O met een circonflexe",Otilde:"Latijnse hoofdletter O met een tilde",Ouml:"Latijnse hoofdletter O met een trema",times:"Maal-teken",Oslash:"Latijnse hoofdletter O met een schuine streep",Ugrave:"Latijnse hoofdletter U met een accent grave",
-Uacute:"Latijnse hoofdletter U met een accent aigu",Ucirc:"Latijnse hoofdletter U met een circonflexe",Uuml:"Latijnse hoofdletter U met een trema",Yacute:"Latijnse hoofdletter Y met een accent aigu",THORN:"Latijnse hoofdletter Thorn",szlig:"Latijnse kleine ringel-s",agrave:"Latijnse kleine letter a met een accent grave",aacute:"Latijnse kleine letter a met een accent aigu",acirc:"Latijnse kleine letter a met een circonflexe",atilde:"Latijnse kleine letter a met een tilde",auml:"Latijnse kleine letter a met een trema",
-aring:"Latijnse kleine letter a met een corona",aelig:"Latijnse kleine letter æ",ccedil:"Latijnse kleine letter c met een cedille",egrave:"Latijnse kleine letter e met een accent grave",eacute:"Latijnse kleine letter e met een accent aigu",ecirc:"Latijnse kleine letter e met een circonflexe",euml:"Latijnse kleine letter e met een trema",igrave:"Latijnse kleine letter i met een accent grave",iacute:"Latijnse kleine letter i met een accent aigu",icirc:"Latijnse kleine letter i met een circonflexe",
-iuml:"Latijnse kleine letter i met een trema",eth:"Latijnse kleine letter eth",ntilde:"Latijnse kleine letter n met een tilde",ograve:"Latijnse kleine letter o met een accent grave",oacute:"Latijnse kleine letter o met een accent aigu",ocirc:"Latijnse kleine letter o met een circonflexe",otilde:"Latijnse kleine letter o met een tilde",ouml:"Latijnse kleine letter o met een trema",divide:"Deel-teken",oslash:"Latijnse kleine letter o met een schuine streep",ugrave:"Latijnse kleine letter u met een accent grave",
-uacute:"Latijnse kleine letter u met een accent aigu",ucirc:"Latijnse kleine letter u met een circonflexe",uuml:"Latijnse kleine letter u met een trema",yacute:"Latijnse kleine letter y met een accent aigu",thorn:"Latijnse kleine letter thorn",yuml:"Latijnse kleine letter y met een trema",OElig:"Latijnse hoofdletter Œ",oelig:"Latijnse kleine letter œ",372:"Latijnse hoofdletter W met een circonflexe",374:"Latijnse hoofdletter Y met een circonflexe",373:"Latijnse kleine letter w met een circonflexe",
-375:"Latijnse kleine letter y met een circonflexe",sbquo:"Lage enkele aanhalingsteken",8219:"Hoge omgekeerde enkele aanhalingsteken",bdquo:"Lage dubbele aanhalingsteken",hellip:"Beletselteken",trade:"Trademark-teken",9658:"Zwarte driehoek naar rechts",bull:"Bullet",rarr:"Pijl naar rechts",rArr:"Dubbele pijl naar rechts",hArr:"Dubbele pijl naar links",diams:"Zwart ruitje",asymp:"Benaderingsteken"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/no.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/no.js
deleted file mode 100644
index eecc56c9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/no.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","no",{euro:"Eurosymbol",lsquo:"Venstre enkelt anførselstegn",rsquo:"Høyre enkelt anførselstegn",ldquo:"Venstre dobbelt anførselstegn",rdquo:"Høyre anførsesltegn",ndash:"Kort tankestrek",mdash:"Lang tankestrek",iexcl:"Omvendt utropstegn",cent:"Centsymbol",pound:"Pundsymbol",curren:"Valutategn",yen:"Yensymbol",brvbar:"Brutt loddrett strek",sect:"Paragraftegn",uml:"Tøddel",copy:"Copyrighttegn",ordf:"Feminin ordensindikator",laquo:"Venstre anførselstegn",not:"Negasjonstegn",
-reg:"Registrert varemerke-tegn",macr:"Makron",deg:"Gradsymbol",sup2:"Hevet totall",sup3:"Hevet tretall",acute:"Akutt aksent",micro:"Mikrosymbol",para:"Avsnittstegn",middot:"Midtstilt prikk",cedil:"Cedille",sup1:"Hevet ettall",ordm:"Maskulin ordensindikator",raquo:"Høyre anførselstegn",frac14:"Fjerdedelsbrøk",frac12:"Halvbrøk",frac34:"Tre fjerdedelers brøk",iquest:"Omvendt spørsmålstegn",Agrave:"Stor A med grav aksent",Aacute:"Stor A med akutt aksent",Acirc:"Stor A med cirkumfleks",Atilde:"Stor A med tilde",
-Auml:"Stor A med tøddel",Aring:"Stor Å",AElig:"Stor Æ",Ccedil:"Stor C med cedille",Egrave:"Stor E med grav aksent",Eacute:"Stor E med akutt aksent",Ecirc:"Stor E med cirkumfleks",Euml:"Stor E med tøddel",Igrave:"Stor I med grav aksent",Iacute:"Stor I med akutt aksent",Icirc:"Stor I med cirkumfleks",Iuml:"Stor I med tøddel",ETH:"Stor Edd/stungen D",Ntilde:"Stor N med tilde",Ograve:"Stor O med grav aksent",Oacute:"Stor O med akutt aksent",Ocirc:"Stor O med cirkumfleks",Otilde:"Stor O med tilde",Ouml:"Stor O med tøddel",
-times:"Multiplikasjonstegn",Oslash:"Stor Ø",Ugrave:"Stor U med grav aksent",Uacute:"Stor U med akutt aksent",Ucirc:"Stor U med cirkumfleks",Uuml:"Stor U med tøddel",Yacute:"Stor Y med akutt aksent",THORN:"Stor Thorn",szlig:"Liten dobbelt-s/Eszett",agrave:"Liten a med grav aksent",aacute:"Liten a med akutt aksent",acirc:"Liten a med cirkumfleks",atilde:"Liten a med tilde",auml:"Liten a med tøddel",aring:"Liten å",aelig:"Liten æ",ccedil:"Liten c med cedille",egrave:"Liten e med grav aksent",eacute:"Liten e med akutt aksent",
-ecirc:"Liten e med cirkumfleks",euml:"Liten e med tøddel",igrave:"Liten i med grav aksent",iacute:"Liten i med akutt aksent",icirc:"Liten i med cirkumfleks",iuml:"Liten i med tøddel",eth:"Liten edd/stungen d",ntilde:"Liten n med tilde",ograve:"Liten o med grav aksent",oacute:"Liten o med akutt aksent",ocirc:"Liten o med cirkumfleks",otilde:"Liten o med tilde",ouml:"Liten o med tøddel",divide:"Divisjonstegn",oslash:"Liten ø",ugrave:"Liten u med grav aksent",uacute:"Liten u med akutt aksent",ucirc:"Liten u med cirkumfleks",
-uuml:"Liten u med tøddel",yacute:"Liten y med akutt aksent",thorn:"Liten thorn",yuml:"Liten y med tøddel",OElig:"Stor ligatur av O og E",oelig:"Liten ligatur av o og e",372:"Stor W med cirkumfleks",374:"Stor Y med cirkumfleks",373:"Liten w med cirkumfleks",375:"Liten y med cirkumfleks",sbquo:"Enkelt lavt 9-anførselstegn",8219:"Enkelt høyt reversert 9-anførselstegn",bdquo:"Dobbelt lavt 9-anførselstegn",hellip:"Ellipse",trade:"Varemerkesymbol",9658:"Svart høyrevendt peker",bull:"Tykk interpunkt",rarr:"Høyrevendt pil",
-rArr:"Dobbel høyrevendt pil",hArr:"Dobbel venstrevendt pil",diams:"Svart ruter",asymp:"Omtrent likhetstegn"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pl.js
deleted file mode 100644
index f21a09db..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pl.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","pl",{euro:"Znak euro",lsquo:"Cudzysłów pojedynczy otwierający",rsquo:"Cudzysłów pojedynczy zamykający",ldquo:"Cudzysłów apostrofowy otwierający",rdquo:"Cudzysłów apostrofowy zamykający",ndash:"Półpauza",mdash:"Pauza",iexcl:"Odwrócony wykrzyknik",cent:"Znak centa",pound:"Znak funta",curren:"Znak waluty",yen:"Znak jena",brvbar:"Przerwana pionowa kreska",sect:"Paragraf",uml:"Diereza",copy:"Znak praw autorskich",ordf:"Wskaźnik rodzaju żeńskiego liczebnika porządkowego",
-laquo:"Lewy cudzysłów ostrokątny",not:"Znak negacji",reg:"Zastrzeżony znak towarowy",macr:"Makron",deg:"Znak stopnia",sup2:"Druga potęga",sup3:"Trzecia potęga",acute:"Akcent ostry",micro:"Znak mikro",para:"Znak akapitu",middot:"Kropka środkowa",cedil:"Cedylla",sup1:"Pierwsza potęga",ordm:"Wskaźnik rodzaju męskiego liczebnika porządkowego",raquo:"Prawy cudzysłów ostrokątny",frac14:"Ułamek zwykły jedna czwarta",frac12:"Ułamek zwykły jedna druga",frac34:"Ułamek zwykły trzy czwarte",iquest:"Odwrócony znak zapytania",
-Agrave:"Wielka litera A z akcentem ciężkim",Aacute:"Wielka litera A z akcentem ostrym",Acirc:"Wielka litera A z akcentem przeciągłym",Atilde:"Wielka litera A z tyldą",Auml:"Wielka litera A z dierezą",Aring:"Wielka litera A z kółkiem",AElig:"Wielka ligatura Æ",Ccedil:"Wielka litera C z cedyllą",Egrave:"Wielka litera E z akcentem ciężkim",Eacute:"Wielka litera E z akcentem ostrym",Ecirc:"Wielka litera E z akcentem przeciągłym",Euml:"Wielka litera E z dierezą",Igrave:"Wielka litera I z akcentem ciężkim",
-Iacute:"Wielka litera I z akcentem ostrym",Icirc:"Wielka litera I z akcentem przeciągłym",Iuml:"Wielka litera I z dierezą",ETH:"Wielka litera Eth",Ntilde:"Wielka litera N z tyldą",Ograve:"Wielka litera O z akcentem ciężkim",Oacute:"Wielka litera O z akcentem ostrym",Ocirc:"Wielka litera O z akcentem przeciągłym",Otilde:"Wielka litera O z tyldą",Ouml:"Wielka litera O z dierezą",times:"Znak mnożenia wektorowego",Oslash:"Wielka litera O z przekreśleniem",Ugrave:"Wielka litera U z akcentem ciężkim",Uacute:"Wielka litera U z akcentem ostrym",
-Ucirc:"Wielka litera U z akcentem przeciągłym",Uuml:"Wielka litera U z dierezą",Yacute:"Wielka litera Y z akcentem ostrym",THORN:"Wielka litera Thorn",szlig:"Mała litera ostre s (eszet)",agrave:"Mała litera a z akcentem ciężkim",aacute:"Mała litera a z akcentem ostrym",acirc:"Mała litera a z akcentem przeciągłym",atilde:"Mała litera a z tyldą",auml:"Mała litera a z dierezą",aring:"Mała litera a z kółkiem",aelig:"Mała ligatura æ",ccedil:"Mała litera c z cedyllą",egrave:"Mała litera e z akcentem ciężkim",
-eacute:"Mała litera e z akcentem ostrym",ecirc:"Mała litera e z akcentem przeciągłym",euml:"Mała litera e z dierezą",igrave:"Mała litera i z akcentem ciężkim",iacute:"Mała litera i z akcentem ostrym",icirc:"Mała litera i z akcentem przeciągłym",iuml:"Mała litera i z dierezą",eth:"Mała litera eth",ntilde:"Mała litera n z tyldą",ograve:"Mała litera o z akcentem ciężkim",oacute:"Mała litera o z akcentem ostrym",ocirc:"Mała litera o z akcentem przeciągłym",otilde:"Mała litera o z tyldą",ouml:"Mała litera o z dierezą",
-divide:"Anglosaski znak dzielenia",oslash:"Mała litera o z przekreśleniem",ugrave:"Mała litera u z akcentem ciężkim",uacute:"Mała litera u z akcentem ostrym",ucirc:"Mała litera u z akcentem przeciągłym",uuml:"Mała litera u z dierezą",yacute:"Mała litera y z akcentem ostrym",thorn:"Mała litera thorn",yuml:"Mała litera y z dierezą",OElig:"Wielka ligatura OE",oelig:"Mała ligatura oe",372:"Wielka litera W z akcentem przeciągłym",374:"Wielka litera Y z akcentem przeciągłym",373:"Mała litera w z akcentem przeciągłym",
-375:"Mała litera y z akcentem przeciągłym",sbquo:"Pojedynczy apostrof dolny",8219:"Pojedynczy apostrof górny",bdquo:"Podwójny apostrof dolny",hellip:"Wielokropek",trade:"Znak towarowy",9658:"Czarny wskaźnik wskazujący w prawo",bull:"Punktor",rarr:"Strzałka w prawo",rArr:"Podwójna strzałka w prawo",hArr:"Podwójna strzałka w lewo",diams:"Czarny znak karo",asymp:"Znak prawie równe"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js
deleted file mode 100644
index e3f78319..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","pt-br",{euro:"Euro",lsquo:"Aspas simples esquerda",rsquo:"Aspas simples direita",ldquo:"Aspas duplas esquerda",rdquo:"Aspas duplas direita",ndash:"Traço",mdash:"Travessão",iexcl:"Ponto de exclamação invertido",cent:"Cent",pound:"Cerquilha",curren:"Dinheiro",yen:"Yen",brvbar:"Bara interrompida",sect:"Símbolo de Parágrafo",uml:"Trema",copy:"Direito de Cópia",ordf:"Indicador ordinal feminino",laquo:"Aspas duplas angulares esquerda",not:"Negação",reg:"Marca Registrada",
-macr:"Mácron",deg:"Grau",sup2:"2 Superscrito",sup3:"3 Superscrito",acute:"Acento agudo",micro:"Micro",para:"Pé de mosca",middot:"Ponto mediano",cedil:"Cedilha",sup1:"1 Superscrito",ordm:"Indicador ordinal masculino",raquo:"Aspas duplas angulares direita",frac14:"Um quarto",frac12:"Um meio",frac34:"Três quartos",iquest:"Interrogação invertida",Agrave:"A maiúsculo com acento grave",Aacute:"A maiúsculo com acento agudo",Acirc:"A maiúsculo com acento circunflexo",Atilde:"A maiúsculo com til",Auml:"A maiúsculo com trema",
-Aring:"A maiúsculo com anel acima",AElig:"Æ maiúsculo",Ccedil:"Ç maiúlculo",Egrave:"E maiúsculo com acento grave",Eacute:"E maiúsculo com acento agudo",Ecirc:"E maiúsculo com acento circumflexo",Euml:"E maiúsculo com trema",Igrave:"I maiúsculo com acento grave",Iacute:"I maiúsculo com acento agudo",Icirc:"I maiúsculo com acento circunflexo",Iuml:"I maiúsculo com crase",ETH:"Eth maiúsculo",Ntilde:"N maiúsculo com til",Ograve:"O maiúsculo com acento grave",Oacute:"O maiúsculo com acento agudo",Ocirc:"O maiúsculo com acento circunflexo",
-Otilde:"O maiúsculo com til",Ouml:"O maiúsculo com trema",times:"Multiplicação",Oslash:"Diâmetro",Ugrave:"U maiúsculo com acento grave",Uacute:"U maiúsculo com acento agudo",Ucirc:"U maiúsculo com acento circunflexo",Uuml:"U maiúsculo com trema",Yacute:"Y maiúsculo com acento agudo",THORN:"Thorn maiúsculo",szlig:"Eszett minúsculo",agrave:"a minúsculo com acento grave",aacute:"a minúsculo com acento agudo",acirc:"a minúsculo com acento circunflexo",atilde:"a minúsculo com til",auml:"a minúsculo com trema",
-aring:"a minúsculo com anel acima",aelig:"æ minúsculo",ccedil:"ç minúsculo",egrave:"e minúsculo com acento grave",eacute:"e minúsculo com acento agudo",ecirc:"e minúsculo com acento circunflexo",euml:"e minúsculo com trema",igrave:"i minúsculo com acento grave",iacute:"i minúsculo com acento agudo",icirc:"i minúsculo com acento circunflexo",iuml:"i minúsculo com trema",eth:"eth minúsculo",ntilde:"n minúsculo com til",ograve:"o minúsculo com acento grave",oacute:"o minúsculo com acento agudo",ocirc:"o minúsculo com acento circunflexo",
-otilde:"o minúsculo com til",ouml:"o minúsculo com trema",divide:"Divisão",oslash:"o minúsculo com cortado ou diâmetro",ugrave:"u minúsculo com acento grave",uacute:"u minúsculo com acento agudo",ucirc:"u minúsculo com acento circunflexo",uuml:"u minúsculo com trema",yacute:"y minúsculo com acento agudo",thorn:"thorn minúsculo",yuml:"y minúsculo com trema",OElig:"Ligação tipográfica OE maiúscula",oelig:"Ligação tipográfica oe minúscula",372:"W maiúsculo com acento circunflexo",374:"Y maiúsculo com acento circunflexo",
-373:"w minúsculo com acento circunflexo",375:"y minúsculo com acento circunflexo",sbquo:"Aspas simples inferior direita",8219:"Aspas simples superior esquerda",bdquo:"Aspas duplas inferior direita",hellip:"Reticências",trade:"Trade mark",9658:"Ponta de seta preta para direita",bull:"Ponto lista",rarr:"Seta para direita",rArr:"Seta dupla para direita",hArr:"Seta dupla direita e esquerda",diams:"Ouros",asymp:"Aproximadamente"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt.js
deleted file mode 100644
index 11ef746a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/pt.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","pt",{euro:"Símbolo do Euro",lsquo:"Aspa esquerda simples",rsquo:"Aspa direita simples",ldquo:"Aspa esquerda dupla",rdquo:"Aspa direita dupla",ndash:"Travessão Simples",mdash:"Travessão Longo",iexcl:"Ponto de exclamação invertido",cent:"Símbolo do Cêntimo",pound:"Símbolo da Libra",curren:"Símbolo de Moeda",yen:"Símbolo do Iene",brvbar:"Barra quebrada",sect:"Símbolo de Secção",uml:"Trema",copy:"Símbolo dos Direitos de Autor",ordf:"Indicador ordinal feminino",
-laquo:"Aspa esquerda ângulo duplo",not:"Não Símbolo",reg:"Símbolo de Registado",macr:"Mácron",deg:"Símbolo de Grau",sup2:"Expoente 2",sup3:"Expoente 3",acute:"Acento agudo",micro:"Símbolo de Micro",para:"Símbolo de Parágrafo",middot:"Ponto do Meio",cedil:"Cedilha",sup1:"Expoente 1",ordm:"Indicador ordinal masculino",raquo:"Aspas ângulo duplo pra Direita",frac14:"Fração vulgar 1/4",frac12:"Fração vulgar 1/2",frac34:"Fração vulgar 3/4",iquest:"Ponto de interrugação invertido",Agrave:"Letra maiúscula latina A com acento grave",
-Aacute:"Letra maiúscula latina A com acento agudo",Acirc:"Letra maiúscula latina A com circunflexo",Atilde:"Letra maiúscula latina A com til",Auml:"Letra maiúscula latina A com trema",Aring:"Letra maiúscula latina A com sinal diacrítico",AElig:"Letra Maiúscula Latina Æ",Ccedil:"Letra maiúscula latina C com cedilha",Egrave:"Letra maiúscula latina E com acento grave",Eacute:"Letra maiúscula latina E com acento agudo",Ecirc:"Letra maiúscula latina E com circunflexo",Euml:"Letra maiúscula latina E com trema",
-Igrave:"Letra maiúscula latina I com acento grave",Iacute:"Letra maiúscula latina I com acento agudo",Icirc:"Letra maiúscula latina I com cincunflexo",Iuml:"Letra maiúscula latina I com trema",ETH:"Letra maiúscula latina Eth (Ðð)",Ntilde:"Letra maiúscula latina N com til",Ograve:"Letra maiúscula latina O com acento grave",Oacute:"Letra maiúscula latina O com acento agudo",Ocirc:"Letra maiúscula latina I com circunflexo",Otilde:"Letra maiúscula latina O com til",Ouml:"Letra maiúscula latina O com trema",
-times:"Símbolo de Multiplicação",Oslash:"Letra maiúscula O com barra",Ugrave:"Letra maiúscula latina U com acento grave",Uacute:"Letra maiúscula latina U com acento agudo",Ucirc:"Letra maiúscula latina U com circunflexo",Uuml:"Letra maiúscula latina E com trema",Yacute:"Letra maiúscula latina Y com acento agudo",THORN:"Letra maiúscula latina Rúnico",szlig:"Letra minúscula latina s forte",agrave:"Letra minúscula latina a com acento grave",aacute:"Letra minúscula latina a com acento agudo",acirc:"Letra minúscula latina a com circunflexo",
-atilde:"Letra minúscula latina a com til",auml:"Letra minúscula latina a com trema",aring:"Letra minúscula latina a com sinal diacrítico",aelig:"Letra minúscula latina æ",ccedil:"Letra minúscula latina c com cedilha",egrave:"Letra minúscula latina e com acento grave",eacute:"Letra minúscula latina e com acento agudo",ecirc:"Letra minúscula latina e com circunflexo",euml:"Letra minúscula latina e com trema",igrave:"Letra minúscula latina i com acento grave",iacute:"Letra minúscula latina i com acento agudo",
-icirc:"Letra minúscula latina i com circunflexo",iuml:"Letra pequena latina i com trema",eth:"Letra minúscula latina eth",ntilde:"Letra minúscula latina n com til",ograve:"Letra minúscula latina o com acento grave",oacute:"Letra minúscula latina o com acento agudo",ocirc:"Letra minúscula latina o com circunflexo",otilde:"Letra minúscula latina o com til",ouml:"Letra minúscula latina o com trema",divide:"Símbolo de Divisão",oslash:"Letra minúscula latina o com barra",ugrave:"Letra minúscula latina u com acento grave",
-uacute:"Letra minúscula latina u com acento agudo",ucirc:"Letra minúscula latina u com circunflexo",uuml:"Letra minúscula latina u com trema",yacute:"Letra minúscula latina y com acento agudo",thorn:"Letra minúscula latina Rúnico",yuml:"Letra minúscula latina y com trema",OElig:"Ligadura maiúscula latina OE",oelig:"Ligadura minúscula latina oe",372:"Letra maiúscula latina W com circunflexo",374:"Letra maiúscula latina Y com circunflexo",373:"Letra minúscula latina w com circunflexo",375:"Letra minúscula latina y com circunflexo",
-sbquo:"Aspa Simples inferior-9",8219:"Aspa Simples superior invertida-9",bdquo:"Aspa Duplas inferior-9",hellip:"Elipse Horizontal ",trade:"Símbolo de Marca Registada",9658:"Ponteiro preto direito",bull:"Marca",rarr:"Seta para a direita",rArr:"Seta dupla para a direita",hArr:"Seta dupla direita esquerda",diams:"Naipe diamante preto",asymp:"Quase igual a "}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ru.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ru.js
deleted file mode 100644
index 866e8659..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ru.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ru",{euro:"Знак евро",lsquo:"Левая одинарная кавычка",rsquo:"Правая одинарная кавычка",ldquo:"Левая двойная кавычка",rdquo:"Левая двойная кавычка",ndash:"Среднее тире",mdash:"Длинное тире",iexcl:"перевёрнутый восклицательный знак",cent:"Цент",pound:"Фунт",curren:"Знак валюты",yen:"Йена",brvbar:"Вертикальная черта с разрывом",sect:"Знак параграфа",uml:"Умлаут",copy:"Знак охраны авторского права",ordf:"Указатель окончания женского рода ...ая",laquo:"Левая кавычка-«ёлочка»",
-not:"Отрицание",reg:"Знак охраны смежных прав\\t",macr:"Макрон",deg:"Градус",sup2:"Надстрочное два",sup3:"Надстрочное три",acute:"Акут",micro:"Микро",para:"Абзац",middot:"Интерпункт",cedil:"Седиль",sup1:"Надстрочная единица",ordm:"Порядковое числительное",raquo:"Правая кавычка-«ёлочка»",frac14:"Одна четвертая",frac12:"Одна вторая",frac34:"Три четвёртых",iquest:"Перевёрнутый вопросительный знак",Agrave:"Латинская заглавная буква А с апострофом",Aacute:"Латинская заглавная буква A с ударением",Acirc:"Латинская заглавная буква А с циркумфлексом",
-Atilde:"Латинская заглавная буква А с тильдой",Auml:"Латинская заглавная буква А с тремой",Aring:"Латинская заглавная буква А с кольцом над ней",AElig:"Латинская большая буква Æ",Ccedil:"Латинская заглавная буква C с седилью",Egrave:"Латинская заглавная буква Е с апострофом",Eacute:"Латинская заглавная буква Е с ударением",Ecirc:"Латинская заглавная буква Е с циркумфлексом",Euml:"Латинская заглавная буква Е с тремой",Igrave:"Латинская заглавная буква I с апострофом",Iacute:"Латинская заглавная буква I с ударением",
-Icirc:"Латинская заглавная буква I с циркумфлексом",Iuml:"Латинская заглавная буква I с тремой",ETH:"Латинская большая буква Eth",Ntilde:"Латинская заглавная буква N с тильдой",Ograve:"Латинская заглавная буква O с апострофом",Oacute:"Латинская заглавная буква O с ударением",Ocirc:"Латинская заглавная буква O с циркумфлексом",Otilde:"Латинская заглавная буква O с тильдой",Ouml:"Латинская заглавная буква O с тремой",times:"Знак умножения",Oslash:"Латинская большая перечеркнутая O",Ugrave:"Латинская заглавная буква U с апострофом",
-Uacute:"Латинская заглавная буква U с ударением",Ucirc:"Латинская заглавная буква U с циркумфлексом",Uuml:"Латинская заглавная буква U с тремой",Yacute:"Латинская заглавная буква Y с ударением",THORN:"Латинская заглавная буква Thorn",szlig:"Знак диеза",agrave:"Латинская маленькая буква a с апострофом",aacute:"Латинская маленькая буква a с ударением",acirc:"Латинская маленькая буква a с циркумфлексом",atilde:"Латинская маленькая буква a с тильдой",auml:"Латинская маленькая буква a с тремой",aring:"Латинская маленькая буква a с кольцом",
-aelig:"Латинская маленькая буква æ",ccedil:"Латинская маленькая буква с с седилью",egrave:"Латинская маленькая буква е с апострофом",eacute:"Латинская маленькая буква е с ударением",ecirc:"Латинская маленькая буква е с циркумфлексом",euml:"Латинская маленькая буква е с тремой",igrave:"Латинская маленькая буква i с апострофом",iacute:"Латинская маленькая буква i с ударением",icirc:"Латинская маленькая буква i с циркумфлексом",iuml:"Латинская маленькая буква i с тремой",eth:"Латинская маленькая буква eth",
-ntilde:"Латинская маленькая буква n с тильдой",ograve:"Латинская маленькая буква o с апострофом",oacute:"Латинская маленькая буква o с ударением",ocirc:"Латинская маленькая буква o с циркумфлексом",otilde:"Латинская маленькая буква o с тильдой",ouml:"Латинская маленькая буква o с тремой",divide:"Знак деления",oslash:"Латинская строчная перечеркнутая o",ugrave:"Латинская маленькая буква u с апострофом",uacute:"Латинская маленькая буква u с ударением",ucirc:"Латинская маленькая буква u с циркумфлексом",
-uuml:"Латинская маленькая буква u с тремой",yacute:"Латинская маленькая буква y с ударением",thorn:"Латинская маленькая буква thorn",yuml:"Латинская маленькая буква y с тремой",OElig:"Латинская прописная лигатура OE",oelig:"Латинская строчная лигатура oe",372:"Латинская заглавная буква W с циркумфлексом",374:"Латинская заглавная буква Y с циркумфлексом",373:"Латинская маленькая буква w с циркумфлексом",375:"Латинская маленькая буква y с циркумфлексом",sbquo:"Нижняя одинарная кавычка",8219:"Правая одинарная кавычка",
-bdquo:"Левая двойная кавычка",hellip:"Горизонтальное многоточие",trade:"Товарный знак",9658:"Черный указатель вправо",bull:"Маркер списка",rarr:"Стрелка вправо",rArr:"Двойная стрелка вправо",hArr:"Двойная стрелка влево-вправо",diams:"Черный ромб",asymp:"Примерно равно"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/si.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/si.js
deleted file mode 100644
index 1255a350..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/si.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","si",{euro:"යුරෝ සලකුණ",lsquo:"වමේ තනි උපුටා දක්වීම ",rsquo:"දකුණේ තනි උපුටා දක්වීම ",ldquo:"වමේ දිත්ව උපුටා දක්වීම ",rdquo:"දකුණේ දිත්ව උපුටා දක්වීම ",ndash:"En dash",mdash:"Em dash",iexcl:"යටිකුරු හර්ෂදී ",cent:"Cent sign",pound:"Pound sign",curren:"මුල්‍යමය ",yen:"යෙන් ",brvbar:"Broken bar",sect:"තෙරේම් ",uml:"Diaeresis",copy:"පිටපත් අයිතිය ",ordf:"දර්ශකය",laquo:"Left-pointing double angle quotation mark",not:"සලකුණක් නොවේ",reg:"සලකුණක් ලියාපදිංචි කිරීම",
-macr:"මුද්‍රිත ",deg:"සලකුණේ ",sup2:"උඩු ලකුණු දෙක",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",Aacute:"Latin capital letter A with acute accent",
-Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",Iacute:"Latin capital letter I with acute accent",
-Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",Ugrave:"Latin capital letter U with grave accent",
-Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",aring:"Latin small letter a with ring above",
-aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",ntilde:"Latin small letter n with tilde",
-ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",
-thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",trade:"Trade mark sign",9658:"Black right-pointing pointer",
-bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sk.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sk.js
deleted file mode 100644
index 2d226d06..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sk.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","sk",{euro:"Znak eura",lsquo:"Ľavá jednoduchá úvodzovka",rsquo:"Pravá jednoduchá úvodzovka",ldquo:"Pravá dvojitá úvodzovka",rdquo:"Pravá dvojitá úvodzovka",ndash:"En pomlčka",mdash:"Em pomlčka",iexcl:"Obrátený výkričník",cent:"Znak centu",pound:"Znak libry",curren:"Znak meny",yen:"Znak jenu",brvbar:"Prerušená zvislá čiara",sect:"Znak odseku",uml:"Prehláska",copy:"Znak copyrightu",ordf:"Ženský indikátor rodu",laquo:"Znak dvojitých lomených úvodzoviek vľavo",not:"Logistický zápor",
-reg:"Znak registrácie",macr:"Pomlčka nad",deg:"Znak stupňa",sup2:"Dvojka ako horný index",sup3:"Trojka ako horný index",acute:"Dĺžeň",micro:"Znak mikro",para:"Znak odstavca",middot:"Bodka uprostred",cedil:"Chvost vľavo",sup1:"Jednotka ako horný index",ordm:"Mužský indikátor rodu",raquo:"Znak dvojitých lomených úvodzoviek vpravo",frac14:"Obyčajný zlomok jedna štvrtina",frac12:"Obyčajný zlomok jedna polovica",frac34:"Obyčajný zlomok tri štvrtiny",iquest:"Otočený otáznik",Agrave:"Veľké písmeno latinky A s accentom",
-Aacute:"Veľké písmeno latinky A s dĺžňom",Acirc:"Veľké písmeno latinky A s mäkčeňom",Atilde:"Veľké písmeno latinky A s tildou",Auml:"Veľké písmeno latinky A s dvoma bodkami",Aring:"Veľké písmeno latinky A s krúžkom nad",AElig:"Veľké písmeno latinky Æ",Ccedil:"Veľké písmeno latinky C s chvostom vľavo",Egrave:"Veľké písmeno latinky E s accentom",Eacute:"Veľké písmeno latinky E s dĺžňom",Ecirc:"Veľké písmeno latinky E s mäkčeňom",Euml:"Veľké písmeno latinky E s dvoma bodkami",Igrave:"Veľké písmeno latinky I s accentom",
-Iacute:"Veľké písmeno latinky I s dĺžňom",Icirc:"Veľké písmeno latinky I s mäkčeňom",Iuml:"Veľké písmeno latinky I s dvoma bodkami",ETH:"Veľké písmeno latinky Eth",Ntilde:"Veľké písmeno latinky N s tildou",Ograve:"Veľké písmeno latinky O s accentom",Oacute:"Veľké písmeno latinky O s dĺžňom",Ocirc:"Veľké písmeno latinky O s mäkčeňom",Otilde:"Veľké písmeno latinky O s tildou",Ouml:"Veľké písmeno latinky O s dvoma bodkami",times:"Znak násobenia",Oslash:"Veľké písmeno latinky O preškrtnuté",Ugrave:"Veľké písmeno latinky U s accentom",
-Uacute:"Veľké písmeno latinky U s dĺžňom",Ucirc:"Veľké písmeno latinky U s mäkčeňom",Uuml:"Veľké písmeno latinky U s dvoma bodkami",Yacute:"Veľké písmeno latinky Y s dĺžňom",THORN:"Veľké písmeno latinky Thorn",szlig:"Malé písmeno latinky ostré s",agrave:"Malé písmeno latinky a s accentom",aacute:"Malé písmeno latinky a s dĺžňom",acirc:"Malé písmeno latinky a s mäkčeňom",atilde:"Malé písmeno latinky a s tildou",auml:"Malé písmeno latinky a s dvoma bodkami",aring:"Malé písmeno latinky a s krúžkom nad",
-aelig:"Malé písmeno latinky æ",ccedil:"Malé písmeno latinky c s chvostom vľavo",egrave:"Malé písmeno latinky e s accentom",eacute:"Malé písmeno latinky e s dĺžňom",ecirc:"Malé písmeno latinky e s mäkčeňom",euml:"Malé písmeno latinky e s dvoma bodkami",igrave:"Malé písmeno latinky i s accentom",iacute:"Malé písmeno latinky i s dĺžňom",icirc:"Malé písmeno latinky i s mäkčeňom",iuml:"Malé písmeno latinky i s dvoma bodkami",eth:"Malé písmeno latinky eth",ntilde:"Malé písmeno latinky n s tildou",ograve:"Malé písmeno latinky o s accentom",
-oacute:"Malé písmeno latinky o s dĺžňom",ocirc:"Malé písmeno latinky o s mäkčeňom",otilde:"Malé písmeno latinky o s tildou",ouml:"Malé písmeno latinky o s dvoma bodkami",divide:"Znak delenia",oslash:"Malé písmeno latinky o preškrtnuté",ugrave:"Malé písmeno latinky u s accentom",uacute:"Malé písmeno latinky u s dĺžňom",ucirc:"Malé písmeno latinky u s mäkčeňom",uuml:"Malé písmeno latinky u s dvoma bodkami",yacute:"Malé písmeno latinky y s dĺžňom",thorn:"Malé písmeno latinky thorn",yuml:"Malé písmeno latinky y s dvoma bodkami",
-OElig:"Veľká ligatúra latinky OE",oelig:"Malá ligatúra latinky OE",372:"Veľké písmeno latinky W s mäkčeňom",374:"Veľké písmeno latinky Y s mäkčeňom",373:"Malé písmeno latinky w s mäkčeňom",375:"Malé písmeno latinky y s mäkčeňom",sbquo:"Dolná jednoduchá 9-úvodzovka",8219:"Horná jednoduchá otočená 9-úvodzovka",bdquo:"Dolná dvojitá 9-úvodzovka",hellip:"Trojbodkový úvod",trade:"Znak ibchodnej značky",9658:"Čierny ukazovateľ smerujúci vpravo",bull:"Kruh",rarr:"Šípka vpravo",rArr:"Dvojitá šipka vpravo",
-hArr:"Dvojitá šipka vľavo a vpravo",diams:"Čierne piky",asymp:"Skoro sa rovná"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sl.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sl.js
deleted file mode 100644
index 84759b62..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sl.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","sl",{euro:"Evro znak",lsquo:"Levi enojni narekovaj",rsquo:"Desni enojni narekovaj",ldquo:"Levi dvojni narekovaj",rdquo:"Desni dvojni narekovaj",ndash:"En pomišljaj",mdash:"Em pomišljaj",iexcl:"Obrnjen klicaj",cent:"Cent znak",pound:"Funt znak",curren:"Znak valute",yen:"Jen znak",brvbar:"Zlomljena črta",sect:"Znak oddelka",uml:"Diaeresis",copy:"Znak avtorskih pravic",ordf:"Ženski zaporedni kazalnik",laquo:"Levi obrnjen dvojni kotni narekovaj",not:"Ne znak",reg:"Registrirani znak",
-macr:"Macron",deg:"Znak stopinj",sup2:"Nadpisano dva",sup3:"Nadpisano tri",acute:"Ostrivec",micro:"Mikro znak",para:"Pilcrow znak",middot:"Sredinska pika",cedil:"Cedilla",sup1:"Nadpisano ena",ordm:"Moški zaporedni kazalnik",raquo:"Desno obrnjen dvojni kotni narekovaj",frac14:"Ena četrtina",frac12:"Ena polovica",frac34:"Tri četrtine",iquest:"Obrnjen vprašaj",Agrave:"Velika latinska črka A s krativcem",Aacute:"Velika latinska črka A z ostrivcem",Acirc:"Velika latinska črka A s strešico",Atilde:"Velika latinska črka A z tildo",
-Auml:"Velika latinska črka A z diaeresis-om",Aring:"Velika latinska črka A z obročem",AElig:"Velika latinska črka Æ",Ccedil:"Velika latinska črka C s cedillo",Egrave:"Velika latinska črka E s krativcem",Eacute:"Velika latinska črka E z ostrivcem",Ecirc:"Velika latinska črka E s strešico",Euml:"Velika latinska črka E z diaeresis-om",Igrave:"Velika latinska črka I s krativcem",Iacute:"Velika latinska črka I z ostrivcem",Icirc:"Velika latinska črka I s strešico",Iuml:"Velika latinska črka I z diaeresis-om",
-ETH:"Velika latinska črka Eth",Ntilde:"Velika latinska črka N s tildo",Ograve:"Velika latinska črka O s krativcem",Oacute:"Velika latinska črka O z ostrivcem",Ocirc:"Velika latinska črka O s strešico",Otilde:"Velika latinska črka O s tildo",Ouml:"Velika latinska črka O z diaeresis-om",times:"Znak za množenje",Oslash:"Velika prečrtana latinska črka O",Ugrave:"Velika latinska črka U s krativcem",Uacute:"Velika latinska črka U z ostrivcem",Ucirc:"Velika latinska črka U s strešico",Uuml:"Velika latinska črka U z diaeresis-om",
-Yacute:"Velika latinska črka Y z ostrivcem",THORN:"Velika latinska črka Thorn",szlig:"Mala ostra latinska črka s",agrave:"Mala latinska črka a s krativcem",aacute:"Mala latinska črka a z ostrivcem",acirc:"Mala latinska črka a s strešico",atilde:"Mala latinska črka a s tildo",auml:"Mala latinska črka a z diaeresis-om",aring:"Mala latinska črka a z obročem",aelig:"Mala latinska črka æ",ccedil:"Mala latinska črka c s cedillo",egrave:"Mala latinska črka e s krativcem",eacute:"Mala latinska črka e z ostrivcem",
-ecirc:"Mala latinska črka e s strešico",euml:"Mala latinska črka e z diaeresis-om",igrave:"Mala latinska črka i s krativcem",iacute:"Mala latinska črka i z ostrivcem",icirc:"Mala latinska črka i s strešico",iuml:"Mala latinska črka i z diaeresis-om",eth:"Mala latinska črka eth",ntilde:"Mala latinska črka n s tildo",ograve:"Mala latinska črka o s krativcem",oacute:"Mala latinska črka o z ostrivcem",ocirc:"Mala latinska črka o s strešico",otilde:"Mala latinska črka o s tildo",ouml:"Mala latinska črka o z diaeresis-om",
-divide:"Znak za deljenje",oslash:"Mala prečrtana latinska črka o",ugrave:"Mala latinska črka u s krativcem",uacute:"Mala latinska črka u z ostrivcem",ucirc:"Mala latinska črka u s strešico",uuml:"Mala latinska črka u z diaeresis-om",yacute:"Mala latinska črka y z ostrivcem",thorn:"Mala latinska črka thorn",yuml:"Mala latinska črka y z diaeresis-om",OElig:"Velika latinska ligatura OE",oelig:"Mala latinska ligatura oe",372:"Velika latinska črka W s strešico",374:"Velika latinska črka Y s strešico",
-373:"Mala latinska črka w s strešico",375:"Mala latinska črka y s strešico",sbquo:"Enojni nizki-9 narekovaj",8219:"Enojni visoki-obrnjen-9 narekovaj",bdquo:"Dvojni nizki-9 narekovaj",hellip:"Horizontalni izpust",trade:"Znak blagovne znamke",9658:"Črni desno-usmerjen kazalec",bull:"Krogla",rarr:"Desno-usmerjena puščica",rArr:"Desno-usmerjena dvojna puščica",hArr:"Leva in desna dvojna puščica",diams:"Črna kara",asymp:"Skoraj enako"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sq.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sq.js
deleted file mode 100644
index c7098005..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sq.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","sq",{euro:"Shenja e Euros",lsquo:"Thonjëza majtas me një vi",rsquo:"Thonjëza djathtas me një vi",ldquo:"Thonjëza majtas",rdquo:"Thonjëza djathtas",ndash:"En viza lidhëse",mdash:"Em viza lidhëse",iexcl:"Pikëçuditëse e përmbysur",cent:"Shenja e Centit",pound:"Shejna e Funtit",curren:"Shenja e valutës",yen:"Shenja e Jenit",brvbar:"Viza e këputur",sect:"Shenja e pjesës",uml:"Diaeresis",copy:"Shenja e të drejtave të kopjimit",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Nuk ka shenjë",reg:"Shenja e të regjistruarit",macr:"Macron",deg:"Shenja e shkallës",sup2:"Super-skripta dy",sup3:"Super-skripta tre",acute:"Theks i mprehtë",micro:"Shjenja e Mikros",para:"Pilcrow sign",middot:"Pika e Mesme",cedil:"Hark nën shkronja",sup1:"Super-skripta një",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Thyesa një të katrat",frac12:"Thyesa një të dytat",frac34:"Thyesa tre të katrat",iquest:"Pikëpyetje e përmbysur",Agrave:"Shkronja e madhe latine A me theks të rëndë",
-Aacute:"Shkronja e madhe latine A me theks akute",Acirc:"Shkronja e madhe latine A me theks lakor",Atilde:"Shkronja e madhe latine A me tildë",Auml:"Shkronja e madhe latine A me dy pika",Aring:"Shkronja e madhe latine A me unazë mbi",AElig:"Shkronja e madhe latine Æ",Ccedil:"Shkronja e madhe latine C me hark poshtë",Egrave:"Shkronja e madhe latine E me theks të rëndë",Eacute:"Shkronja e madhe latine E me theks akute",Ecirc:"Shkronja e madhe latine E me theks lakor",Euml:"Shkronja e madhe latine E me dy pika",
-Igrave:"Shkronja e madhe latine I me theks të rëndë",Iacute:"Shkronja e madhe latine I me theks akute",Icirc:"Shkronja e madhe latine I me theks lakor",Iuml:"Shkronja e madhe latine I me dy pika",ETH:"Shkronja e madhe latine Eth",Ntilde:"Shkronja e madhe latine N me tildë",Ograve:"Shkronja e madhe latine O me theks të rëndë",Oacute:"Shkronja e madhe latine O me theks akute",Ocirc:"Shkronja e madhe latine O me theks lakor",Otilde:"Shkronja e madhe latine O me tildë",Ouml:"Shkronja e madhe latine O me dy pika",
-times:"Shenja e shumëzimit",Oslash:"Shkronja e madhe latine O me vizë në mes",Ugrave:"Shkronja e madhe latine U me theks të rëndë",Uacute:"Shkronja e madhe latine U me theks akute",Ucirc:"Shkronja e madhe latine U me theks lakor",Uuml:"Shkronja e madhe latine U me dy pika",Yacute:"Shkronja e madhe latine Y me theks akute",THORN:"Shkronja e madhe latine Thorn",szlig:"Shkronja e vogë latine s e mprehtë",agrave:"Shkronja e vogë latine a me theks të rëndë",aacute:"Shkronja e vogë latine a me theks të mprehtë",
-acirc:"Shkronja e vogël latine a me theks lakor",atilde:"Shkronja e vogël latine a me tildë",auml:"Shkronja e vogël latine a me dy pika",aring:"Shkronja e vogë latine a me unazë mbi",aelig:"Shkronja e vogë latine æ",ccedil:"Shkronja e vogël latine c me hark poshtë",egrave:"Shkronja e vogë latine e me theks të rëndë",eacute:"Shkronja e vogë latine e me theks të mprehtë",ecirc:"Shkronja e vogël latine e me theks lakor",euml:"Shkronja e vogël latine e me dy pika",igrave:"Shkronja e vogë latine i me theks të rëndë",
-iacute:"Shkronja e vogë latine i me theks të mprehtë",icirc:"Shkronja e vogël latine i me theks lakor",iuml:"Shkronja e vogël latine i me dy pika",eth:"Shkronja e vogë latine eth",ntilde:"Shkronja e vogël latine n me tildë",ograve:"Shkronja e vogë latine o me theks të rëndë",oacute:"Shkronja e vogë latine o me theks të mprehtë",ocirc:"Shkronja e vogël latine o me theks lakor",otilde:"Shkronja e vogël latine o me tildë",ouml:"Shkronja e vogël latine o me dy pika",divide:"Shenja ndarëse",oslash:"Shkronja e vogël latine o me vizë në mes",
-ugrave:"Shkronja e vogë latine u me theks të rëndë",uacute:"Shkronja e vogë latine u me theks të mprehtë",ucirc:"Shkronja e vogël latine u me theks lakor",uuml:"Shkronja e vogël latine u me dy pika",yacute:"Shkronja e vogë latine y me theks të mprehtë",thorn:"Shkronja e vogël latine thorn",yuml:"Shkronja e vogël latine y me dy pika",OElig:"Shkronja e madhe e bashkuar latine OE",oelig:"Shkronja e vogël e bashkuar latine oe",372:"Shkronja e madhe latine W me theks lakor",374:"Shkronja e madhe latine Y me theks lakor",
-373:"Shkronja e vogël latine w me theks lakor",375:"Shkronja e vogël latine y me theks lakor",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",trade:"Shenja e Simbolit Tregtarë",9658:"Black right-pointing pointer",bull:"Pulla",rarr:"Shigjeta djathtas",rArr:"Shenja të dyfishta djathtas",hArr:"Shigjeta e dyfishë majtas-djathtas",diams:"Black diamond suit",asymp:"Gati e barabar me"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sv.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sv.js
deleted file mode 100644
index 8f741b93..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/sv.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","sv",{euro:"Eurotecken",lsquo:"Enkelt vänster citattecken",rsquo:"Enkelt höger citattecken",ldquo:"Dubbelt vänster citattecken",rdquo:"Dubbelt höger citattecken",ndash:"Snedstreck",mdash:"Långt tankstreck",iexcl:"Inverterad utropstecken",cent:"Centtecken",pound:"Pundtecken",curren:"Valutatecken",yen:"Yentecken",brvbar:"Brutet lodrätt streck",sect:"Paragraftecken",uml:"Diaeresis",copy:"Upphovsrättstecken",ordf:"Feminit ordningstalsindikator",laquo:"Vänsterställt dubbelt vinkelcitationstecken",
-not:"Icke-tecken",reg:"Registrerad",macr:"Macron",deg:"Grader",sup2:"Upphöjt två",sup3:"Upphöjt tre",acute:"Akut accent",micro:"Mikrotecken",para:"Alinea",middot:"Centrerad prick",cedil:"Cedilj",sup1:"Upphöjt en",ordm:"Maskulina ordningsändelsen",raquo:"Högerställt dubbelt vinkelcitationstecken",frac14:"Bråktal - en kvart",frac12:"Bråktal - en halv",frac34:"Bråktal - tre fjärdedelar",iquest:"Inverterat frågetecken",Agrave:"Stort A med grav accent",Aacute:"Stort A med akutaccent",Acirc:"Stort A med circumflex",
-Atilde:"Stort A med tilde",Auml:"Stort A med diaresis",Aring:"Stort A med ring ovan",AElig:"Stort Æ",Ccedil:"Stort C med cedilj",Egrave:"Stort E med grav accent",Eacute:"Stort E med aktuaccent",Ecirc:"Stort E med circumflex",Euml:"Stort E med diaeresis",Igrave:"Stort I med grav accent",Iacute:"Stort I med akutaccent",Icirc:"Stort I med circumflex",Iuml:"Stort I med diaeresis",ETH:"Stort Eth",Ntilde:"Stort N med tilde",Ograve:"Stort O med grav accent",Oacute:"Stort O med aktuaccent",Ocirc:"Stort O med circumflex",
-Otilde:"Stort O med tilde",Ouml:"Stort O med diaeresis",times:"Multiplicera",Oslash:"Stor Ø",Ugrave:"Stort U med grav accent",Uacute:"Stort U med akutaccent",Ucirc:"Stort U med circumflex",Uuml:"Stort U med diaeresis",Yacute:"Stort Y med akutaccent",THORN:"Stort Thorn",szlig:"Litet dubbel-s/Eszett",agrave:"Litet a med grav accent",aacute:"Litet a med akutaccent",acirc:"Litet a med circumflex",atilde:"Litet a med tilde",auml:"Litet a med diaeresis",aring:"Litet a med ring ovan",aelig:"Bokstaven æ",
-ccedil:"Litet c med cedilj",egrave:"Litet e med grav accent",eacute:"Litet e med akutaccent",ecirc:"Litet e med circumflex",euml:"Litet e med diaeresis",igrave:"Litet i med grav accent",iacute:"Litet i med akutaccent",icirc:"LItet i med circumflex",iuml:"Litet i med didaeresis",eth:"Litet eth",ntilde:"Litet n med tilde",ograve:"LItet o med grav accent",oacute:"LItet o med akutaccent",ocirc:"Litet o med circumflex",otilde:"LItet o med tilde",ouml:"Litet o med diaeresis",divide:"Division",oslash:"ø",
-ugrave:"Litet u med grav accent",uacute:"Litet u med akutaccent",ucirc:"LItet u med circumflex",uuml:"Litet u med diaeresis",yacute:"Litet y med akutaccent",thorn:"Litet thorn",yuml:"Litet y med diaeresis",OElig:"Stor ligatur av OE",oelig:"Liten ligatur av oe",372:"Stort W med circumflex",374:"Stort Y med circumflex",373:"Litet w med circumflex",375:"Litet y med circumflex",sbquo:"Enkelt lågt 9-citationstecken",8219:"Enkelt högt bakvänt 9-citationstecken",bdquo:"Dubbelt lågt 9-citationstecken",hellip:"Horisontellt uteslutningstecken",
-trade:"Varumärke",9658:"Svart högervänd pekare",bull:"Listpunkt",rarr:"Högerpil",rArr:"Dubbel högerpil",hArr:"Dubbel vänsterpil",diams:"Svart ruter",asymp:"Ungefär lika med"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/th.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/th.js
deleted file mode 100644
index ae0b00e5..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/th.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","th",{euro:"Euro sign",lsquo:"Left single quotation mark",rsquo:"Right single quotation mark",ldquo:"Left double quotation mark",rdquo:"Right double quotation mark",ndash:"En dash",mdash:"Em dash",iexcl:"Inverted exclamation mark",cent:"Cent sign",pound:"Pound sign",curren:"สัญลักษณ์สกุลเงิน",yen:"สัญลักษณ์เงินเยน",brvbar:"Broken bar",sect:"Section sign",uml:"Diaeresis",copy:"Copyright sign",ordf:"Feminine ordinal indicator",laquo:"Left-pointing double angle quotation mark",
-not:"Not sign",reg:"Registered sign",macr:"Macron",deg:"Degree sign",sup2:"Superscript two",sup3:"Superscript three",acute:"Acute accent",micro:"Micro sign",para:"Pilcrow sign",middot:"Middle dot",cedil:"Cedilla",sup1:"Superscript one",ordm:"Masculine ordinal indicator",raquo:"Right-pointing double angle quotation mark",frac14:"Vulgar fraction one quarter",frac12:"Vulgar fraction one half",frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",
-Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",
-Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",
-Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",
-aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",
-ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",
-yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",
-trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"สัญลักษณ์หัวข้อย่อย",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tr.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tr.js
deleted file mode 100644
index 3dd220a3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tr.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","tr",{euro:"Euro işareti",lsquo:"Sol tek tırnak işareti",rsquo:"Sağ tek tırnak işareti",ldquo:"Sol çift tırnak işareti",rdquo:"Sağ çift tırnak işareti",ndash:"En tire",mdash:"Em tire",iexcl:"Ters ünlem işareti",cent:"Cent işareti",pound:"Pound işareti",curren:"Para birimi işareti",yen:"Yen işareti",brvbar:"Kırık bar",sect:"Bölüm işareti",uml:"İki sesli harfin ayrılması",copy:"Telif hakkı işareti",ordf:"Dişil sıralı gösterge",laquo:"Sol-işaret çift açı tırnak işareti",
-not:"Not işareti",reg:"Kayıtlı işareti",macr:"Makron",deg:"Derece işareti",sup2:"İkili üstsimge",sup3:"Üçlü üstsimge",acute:"Aksan işareti",micro:"Mikro işareti",para:"Pilcrow işareti",middot:"Orta nokta",cedil:"Kedilla",sup1:"Üstsimge",ordm:"Eril sıralı gösterge",raquo:"Sağ işaret çift açı tırnak işareti",frac14:"Bayağı kesrin dörtte biri",frac12:"Bayağı kesrin bir yarım",frac34:"Bayağı kesrin dörtte üç",iquest:"Ters soru işareti",Agrave:"Aksanlı latin harfi",Aacute:"Aşırı aksanıyla Latin harfi",
-Acirc:"Çarpık Latin harfi",Atilde:"Tilde latin harfi",Auml:"Sesli harf ayrılımlıı latin harfi",Aring:"Halkalı latin büyük A harfi",AElig:"Latin büyük Æ harfi",Ccedil:"Latin büyük C harfi ile kedilla",Egrave:"Aksanlı latin büyük E harfi",Eacute:"Aşırı vurgulu latin büyük E harfi",Ecirc:"Çarpık latin büyük E harfi",Euml:"Sesli harf ayrılımlıı latin büyük E harfi",Igrave:"Aksanlı latin büyük I harfi",Iacute:"Aşırı aksanlı latin büyük I harfi",Icirc:"Çarpık latin büyük I harfi",Iuml:"Sesli harf ayrılımlıı latin büyük I harfi",
-ETH:"Latin büyük Eth harfi",Ntilde:"Tildeli latin büyük N harfi",Ograve:"Aksanlı latin büyük O harfi",Oacute:"Aşırı aksanlı latin büyük O harfi",Ocirc:"Çarpık latin büyük O harfi",Otilde:"Tildeli latin büyük O harfi",Ouml:"Sesli harf ayrılımlı latin büyük O harfi",times:"Çarpma işareti",Oslash:"Vurgulu latin büyük O harfi",Ugrave:"Aksanlı latin büyük U harfi",Uacute:"Aşırı aksanlı latin büyük U harfi",Ucirc:"Çarpık latin büyük U harfi",Uuml:"Sesli harf ayrılımlı latin büyük U harfi",Yacute:"Aşırı aksanlı latin büyük Y harfi",
-THORN:"Latin büyük Thorn harfi",szlig:"Latin küçük keskin s harfi",agrave:"Aksanlı latin küçük a harfi",aacute:"Aşırı aksanlı latin küçük a harfi",acirc:"Çarpık latin küçük a harfi",atilde:"Tildeli latin küçük a harfi",auml:"Sesli harf ayrılımlı latin küçük a harfi",aring:"Halkalı latin küçük a harfi",aelig:"Latin büyük æ harfi",ccedil:"Kedillalı latin küçük c harfi",egrave:"Aksanlı latin küçük e harfi",eacute:"Aşırı aksanlı latin küçük e harfi",ecirc:"Çarpık latin küçük e harfi",euml:"Sesli harf ayrılımlı latin küçük e harfi",
-igrave:"Aksanlı latin küçük i harfi",iacute:"Aşırı aksanlı latin küçük i harfi",icirc:"Çarpık latin küçük i harfi",iuml:"Sesli harf ayrılımlı latin küçük i harfi",eth:"Latin küçük eth harfi",ntilde:"Tildeli latin küçük n harfi",ograve:"Aksanlı latin küçük o harfi",oacute:"Aşırı aksanlı latin küçük o harfi",ocirc:"Çarpık latin küçük o harfi",otilde:"Tildeli latin küçük o harfi",ouml:"Sesli harf ayrılımlı latin küçük o harfi",divide:"Bölme işareti",oslash:"Vurgulu latin küçük o harfi",ugrave:"Aksanlı latin küçük u harfi",
-uacute:"Aşırı aksanlı latin küçük u harfi",ucirc:"Çarpık latin küçük u harfi",uuml:"Sesli harf ayrılımlı latin küçük u harfi",yacute:"Aşırı aksanlı latin küçük y harfi",thorn:"Latin küçük thorn harfi",yuml:"Sesli harf ayrılımlı latin küçük y harfi",OElig:"Latin büyük bağlı OE harfi",oelig:"Latin küçük bağlı oe harfi",372:"Çarpık latin büyük W harfi",374:"Çarpık latin büyük Y harfi",373:"Çarpık latin küçük w harfi",375:"Çarpık latin küçük y harfi",sbquo:"Tek düşük-9 tırnak işareti",8219:"Tek yüksek-ters-9 tırnak işareti",
-bdquo:"Çift düşük-9 tırnak işareti",hellip:"Yatay elips",trade:"Marka tescili işareti",9658:"Siyah sağ işaret işaretçisi",bull:"Koyu nokta",rarr:"Sağa doğru ok",rArr:"Sağa doğru çift ok",hArr:"Sol, sağ çift ok",diams:"Siyah elmas takımı",asymp:"Hemen hemen eşit"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tt.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tt.js
deleted file mode 100644
index 2eadb9f7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/tt.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","tt",{euro:"Евро тамгасы",lsquo:"Сул бер иңле куштырнаклар",rsquo:"Уң бер иңле куштырнаклар",ldquo:"Сул ике иңле куштырнаклар",rdquo:"Уң ике иңле куштырнаклар",ndash:"Кыска сызык",mdash:"Озын сызык",iexcl:"Әйләндерелгән өндәү билгесе",cent:"Цент тамгасы",pound:"Фунт тамгасы",curren:"Акча берәмлеге тамгасы",yen:"Иена тамгасы",brvbar:"Broken bar",sect:"Section sign",uml:"Диерезис",copy:"Хокук иясе булу билгесе",ordf:"Feminine ordinal indicator",laquo:"Ачылучы чыршысыман җәя",
-not:"Not sign",reg:"Теркәләнгән булу билгесе",macr:"Макрон",deg:"Градус билгесе",sup2:"Икенче өске индекс",sup3:"Өченче өске индекс",acute:"Басым билгесе",micro:"Микро билгесе",para:"Параграф билгесе",middot:"Middle dot",cedil:"Седиль",sup1:"Беренче өске индекс",ordm:"Masculine ordinal indicator",raquo:"Ябылучы чыршысыман җәя",frac14:"Гади дүрттән бер билгесе",frac12:"Гади икедән бер билгесе",frac34:"Гади дүрттән өч билгесе",iquest:"Әйләндерелгән өндәү билгесе",Agrave:"Гравис белән латин A баш хәрефе",
-Aacute:"Басым билгесе белән латин A баш хәрефе",Acirc:"Циркумфлекс белән латин A баш хәрефе",Atilde:"Тильда белән латин A баш хәрефе",Auml:"Диерезис белән латин A баш хәрефе",Aring:"Өстендә боҗра булган латин A баш хәрефе",AElig:"Латин Æ баш хәрефе",Ccedil:"Седиль белән латин C баш хәрефе",Egrave:"Гравис белән латин E баш хәрефе",Eacute:"Басым билгесе белән латин E баш хәрефе",Ecirc:"Циркумфлекс белән латин E баш хәрефе",Euml:"Диерезис белән латин E баш хәрефе",Igrave:"Гравис белән латин I баш хәрефе",
-Iacute:"Басым билгесе белән латин I баш хәрефе",Icirc:"Циркумфлекс белән латин I баш хәрефе",Iuml:"Диерезис белән латин I баш хәрефе",ETH:"Латин Eth баш хәрефе",Ntilde:"Тильда белән латин N баш хәрефе",Ograve:"Гравис белән латин O баш хәрефе",Oacute:"Басым билгесе белән латин O баш хәрефе",Ocirc:"Циркумфлекс белән латин O баш хәрефе",Otilde:"Тильда белән латин O баш хәрефе",Ouml:"Диерезис белән латин O баш хәрефе",times:"Тапкырлау билгесе",Oslash:"Сызык белән латин O баш хәрефе",Ugrave:"Гравис белән латин U баш хәрефе",
-Uacute:"Басым билгесе белән латин U баш хәрефе",Ucirc:"Циркумфлекс белән латин U баш хәрефе",Uuml:"Диерезис белән латин U баш хәрефе",Yacute:"Басым билгесе белән латин Y баш хәрефе",THORN:"Латин Thorn баш хәрефе",szlig:"Латин beta юл хәрефе",agrave:"Гравис белән латин a юл хәрефе",aacute:"Басым билгесе белән латин a юл хәрефе",acirc:"Циркумфлекс белән латин a юл хәрефе",atilde:"Тильда белән латин a юл хәрефе",auml:"Диерезис белән латин a юл хәрефе",aring:"Өстендә боҗра булган латин a юл хәрефе",aelig:"Латин æ юл хәрефе",
-ccedil:"Седиль белән латин c юл хәрефе",egrave:"Гравис белән латин e юл хәрефе",eacute:"Басым билгесе белән латин e юл хәрефе",ecirc:"Циркумфлекс белән латин e юл хәрефе",euml:"Диерезис белән латин e юл хәрефе",igrave:"Гравис белән латин i юл хәрефе",iacute:"Басым билгесе белән латин i юл хәрефе",icirc:"Циркумфлекс белән латин i юл хәрефе",iuml:"Диерезис белән латин i юл хәрефе",eth:"Латин eth юл хәрефе",ntilde:"Тильда белән латин n юл хәрефе",ograve:"Гравис белән латин o юл хәрефе",oacute:"Басым билгесе белән латин o юл хәрефе",
-ocirc:"Циркумфлекс белән латин o юл хәрефе",otilde:"Тильда белән латин o юл хәрефе",ouml:"Диерезис белән латин o юл хәрефе",divide:"Бүлү билгесе",oslash:"Сызык белән латин o юл хәрефе",ugrave:"Гравис белән латин u юл хәрефе",uacute:"Басым билгесе белән латин u юл хәрефе",ucirc:"Циркумфлекс белән латин u юл хәрефе",uuml:"Диерезис белән латин u юл хәрефе",yacute:"Басым билгесе белән латин y юл хәрефе",thorn:"Латин thorn юл хәрефе",yuml:"Диерезис белән латин y юл хәрефе",OElig:"Латин лигатура OE баш хәрефе",
-oelig:"Латин лигатура oe юл хәрефе",372:"Циркумфлекс белән латин W баш хәрефе",374:"Циркумфлекс белән латин Y баш хәрефе",373:"Циркумфлекс белән латин w юл хәрефе",375:"Циркумфлекс белән латин y юл хәрефе",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Ятма эллипс",trade:"Сәүдә маркасы билгесе",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",
-diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ug.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ug.js
deleted file mode 100644
index 51f4c1d9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/ug.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","ug",{euro:"ياۋرو بەلگىسى",lsquo:"يالاڭ پەش سول",rsquo:"يالاڭ پەش ئوڭ",ldquo:"قوش پەش سول",rdquo:"قوش پەش ئوڭ",ndash:"سىزىقچە",mdash:"سىزىق",iexcl:"ئۈندەش",cent:"تىيىن بەلگىسى",pound:"فوند ستېرلىڭ",curren:"پۇل بەلگىسى",yen:"ياپونىيە يىنى",brvbar:"ئۈزۈك بالداق",sect:"پاراگراف بەلگىسى",uml:"تاۋۇش ئايرىش بەلگىسى",copy:"نەشر ھوقۇقى بەلگىسى",ordf:"Feminine ordinal indicator",laquo:"قوش تىرناق سول",not:"غەيرى بەلگە",reg:"خەتلەتكەن تاۋار ماركىسى",macr:"سوزۇش بەلگىسى",
-deg:"گىرادۇس بەلگىسى",sup2:"يۇقىرى ئىندېكىس 2",sup3:"يۇقىرى ئىندېكىس 3",acute:"ئۇرغۇ بەلگىسى",micro:"Micro sign",para:"ئابزاس بەلگىسى",middot:"ئوتتۇرا چېكىت",cedil:"ئاستىغا قوشۇلىدىغان بەلگە",sup1:"يۇقىرى ئىندېكىس 1",ordm:"Masculine ordinal indicator",raquo:"قوش تىرناق ئوڭ",frac14:"ئاددىي كەسىر تۆتتىن بىر",frac12:"ئاددىي كەسىر ئىككىدىن بىر",frac34:"ئاددىي كەسىر ئۈچتىن تۆرت",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",Aacute:"Latin capital letter A with acute accent",
-Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"Latin capital letter A with diaeresis",Aring:"Latin capital letter A with ring above",AElig:"Latin Capital letter Æ",Ccedil:"Latin capital letter C with cedilla",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",Igrave:"Latin capital letter I with grave accent",Iacute:"Latin capital letter I with acute accent",
-Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"قوش پەش ئوڭ",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",times:"Multiplication sign",Oslash:"Latin capital letter O with stroke",Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",
-Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",auml:"Latin small letter a with diaeresis",aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",
-ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",eth:"Latin small letter eth",ntilde:"تىك موللاق سوئال بەلگىسى",ograve:"Latin small letter o with grave accent",
-oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"بۆلۈش بەلگىسى",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",
-yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",hellip:"Horizontal ellipsis",trade:"خەتلەتكەن تاۋار ماركىسى بەلگىسى",9658:"Black right-pointing pointer",
-bull:"Bullet",rarr:"ئوڭ يا ئوق",rArr:"ئوڭ قوش سىزىق يا ئوق",hArr:"ئوڭ سول قوش سىزىق يا ئوق",diams:"ئۇيۇل غىچ",asymp:"تەخمىنەن تەڭ"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/uk.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/uk.js
deleted file mode 100644
index 845e7524..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/uk.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","uk",{euro:"Знак євро",lsquo:"Ліві одинарні лапки",rsquo:"Праві одинарні лапки",ldquo:"Ліві подвійні лапки",rdquo:"Праві подвійні лапки",ndash:"Середнє тире",mdash:"Довге тире",iexcl:"Перевернутий знак оклику",cent:"Знак цента",pound:"Знак фунта",curren:"Знак валюти",yen:"Знак єни",brvbar:"Переривчаста вертикальна лінія",sect:"Знак параграфу",uml:"Умлаут",copy:"Знак авторських прав",ordf:"Жіночий порядковий вказівник",laquo:"ліві вказівні подвійні кутові дужки",
-not:"Заперечення",reg:"Знак охорони суміжних прав",macr:"Макрон",deg:"Знак градуса",sup2:"два у верхньому індексі",sup3:"три у верхньому індексі",acute:"Знак акута",micro:"Знак мікро",para:"Знак абзацу",middot:"Інтерпункт",cedil:"Седиль",sup1:"Один у верхньому індексі",ordm:"Чоловічий порядковий вказівник",raquo:"праві вказівні подвійні кутові дужки",frac14:"Одна четвертина",frac12:"Одна друга",frac34:"три четвертих",iquest:"Перевернутий знак питання",Agrave:"Велика латинська A з гравісом",Aacute:"Велика латинська А з акутом",
-Acirc:"Велика латинська А з циркумфлексом",Atilde:"Велика латинська А з тильдою",Auml:"Велике латинське А з умлаутом",Aring:"Велика латинська A з кільцем згори",AElig:"Велика латинська Æ",Ccedil:"Велика латинська C з седиллю",Egrave:"Велика латинська E з гравісом",Eacute:"Велика латинська E з акутом",Ecirc:"Велика латинська E з циркумфлексом",Euml:"Велика латинська А з умлаутом",Igrave:"Велика латинська I з гравісом",Iacute:"Велика латинська I з акутом",Icirc:"Велика латинська I з циркумфлексом",
-Iuml:"Велика латинська І з умлаутом",ETH:"Велика латинська Eth",Ntilde:"Велика латинська N з тильдою",Ograve:"Велика латинська O з гравісом",Oacute:"Велика латинська O з акутом",Ocirc:"Велика латинська O з циркумфлексом",Otilde:"Велика латинська O з тильдою",Ouml:"Велика латинська О з умлаутом",times:"Знак множення",Oslash:"Велика латинська перекреслена O ",Ugrave:"Велика латинська U з гравісом",Uacute:"Велика латинська U з акутом",Ucirc:"Велика латинська U з циркумфлексом",Uuml:"Велика латинська U з умлаутом",
-Yacute:"Велика латинська Y з акутом",THORN:"Велика латинська Торн",szlig:"Мала латинська есцет",agrave:"Мала латинська a з гравісом",aacute:"Мала латинська a з акутом",acirc:"Мала латинська a з циркумфлексом",atilde:"Мала латинська a з тильдою",auml:"Мала латинська a з умлаутом",aring:"Мала латинська a з кільцем згори",aelig:"Мала латинська æ",ccedil:"Мала латинська C з седиллю",egrave:"Мала латинська e з гравісом",eacute:"Мала латинська e з акутом",ecirc:"Мала латинська e з циркумфлексом",euml:"Мала латинська e з умлаутом",
-igrave:"Мала латинська i з гравісом",iacute:"Мала латинська i з акутом",icirc:"Мала латинська i з циркумфлексом",iuml:"Мала латинська i з умлаутом",eth:"Мала латинська Eth",ntilde:"Мала латинська n з тильдою",ograve:"Мала латинська o з гравісом",oacute:"Мала латинська o з акутом",ocirc:"Мала латинська o з циркумфлексом",otilde:"Мала латинська o з тильдою",ouml:"Мала латинська o з умлаутом",divide:"Знак ділення",oslash:"Мала латинська перекреслена o",ugrave:"Мала латинська u з гравісом",uacute:"Мала латинська u з акутом",
-ucirc:"Мала латинська u з циркумфлексом",uuml:"Мала латинська u з умлаутом",yacute:"Мала латинська y з акутом",thorn:"Мала латинська торн",yuml:"Мала латинська y з умлаутом",OElig:"Велика латинська лігатура OE",oelig:"Мала латинська лігатура oe",372:"Велика латинська W з циркумфлексом",374:"Велика латинська Y з циркумфлексом",373:"Мала латинська w з циркумфлексом",375:"Мала латинська y з циркумфлексом",sbquo:"Одиничні нижні лабки",8219:"Верхні одиничні обернені лабки",bdquo:"Подвійні нижні лабки",
-hellip:"Три крапки",trade:"Знак торгової марки",9658:"Чорний правий вказівник",bull:"Маркер списку",rarr:"Стрілка вправо",rArr:"Подвійна стрілка вправо",hArr:"Подвійна стрілка вліво-вправо",diams:"Чорний діамонт",asymp:"Наближено дорівнює"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/vi.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/vi.js
deleted file mode 100644
index d4e4d37a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/vi.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","vi",{euro:"Ký hiệu Euro",lsquo:"Dấu ngoặc đơn trái",rsquo:"Dấu ngoặc đơn phải",ldquo:"Dấu ngoặc đôi trái",rdquo:"Dấu ngoặc đôi phải",ndash:"Gạch ngang tiếng anh",mdash:"Gạch ngang Em",iexcl:"Chuyển đổi dấu chấm than",cent:"Ký tự tiền Mỹ",pound:"Ký tự tiền Anh",curren:"Ký tự tiền tệ",yen:"Ký tự tiền Yên Nhật",brvbar:"Thanh hỏng",sect:"Ký tự khu vực",uml:"Dấu tách đôi",copy:"Ký tự bản quyền",ordf:"Phần chỉ thị giống cái",laquo:"Chọn dấu ngoặc đôi trái",not:"Không có ký tự",
-reg:"Ký tự đăng ký",macr:"Dấu nguyên âm dài",deg:"Ký tự độ",sup2:"Chữ trồi lên trên dạng 2",sup3:"Chữ trồi lên trên dạng 3",acute:"Dấu trọng âm",micro:"Ký tự micro",para:"Ký tự đoạn văn",middot:"Dấu chấm tròn",cedil:"Dấu móc lưới",sup1:"Ký tự trồi lên cấp 1",ordm:"Ký tự biểu hiện giống đực",raquo:"Chọn dấu ngoặc đôi phải",frac14:"Tỉ lệ một phần tư",frac12:"Tỉ lệ một nửa",frac34:"Tỉ lệ ba phần tư",iquest:"Chuyển đổi dấu chấm hỏi",Agrave:"Ký tự la-tinh viết hoa A với dấu huyền",Aacute:"Ký tự la-tinh viết hoa A với dấu sắc",
-Acirc:"Ký tự la-tinh viết hoa A với dấu mũ",Atilde:"Ký tự la-tinh viết hoa A với dấu ngã",Auml:"Ký tự la-tinh viết hoa A với dấu hai chấm trên đầu",Aring:"Ký tự la-tinh viết hoa A với biểu tượng vòng tròn trên đầu",AElig:"Ký tự la-tinh viết hoa của Æ",Ccedil:"Ký tự la-tinh viết hoa C với dấu móc bên dưới",Egrave:"Ký tự la-tinh viết hoa E với dấu huyền",Eacute:"Ký tự la-tinh viết hoa E với dấu sắc",Ecirc:"Ký tự la-tinh viết hoa E với dấu mũ",Euml:"Ký tự la-tinh viết hoa E với dấu hai chấm trên đầu",
-Igrave:"Ký tự la-tinh viết hoa I với dấu huyền",Iacute:"Ký tự la-tinh viết hoa I với dấu sắc",Icirc:"Ký tự la-tinh viết hoa I với dấu mũ",Iuml:"Ký tự la-tinh viết hoa I với dấu hai chấm trên đầu",ETH:"Viết hoa của ký tự Eth",Ntilde:"Ký tự la-tinh viết hoa N với dấu ngã",Ograve:"Ký tự la-tinh viết hoa O với dấu huyền",Oacute:"Ký tự la-tinh viết hoa O với dấu sắc",Ocirc:"Ký tự la-tinh viết hoa O với dấu mũ",Otilde:"Ký tự la-tinh viết hoa O với dấu ngã",Ouml:"Ký tự la-tinh viết hoa O với dấu hai chấm trên đầu",
-times:"Ký tự phép toán nhân",Oslash:"Ký tự la-tinh viết hoa A với dấu ngã xuống",Ugrave:"Ký tự la-tinh viết hoa U với dấu huyền",Uacute:"Ký tự la-tinh viết hoa U với dấu sắc",Ucirc:"Ký tự la-tinh viết hoa U với dấu mũ",Uuml:"Ký tự la-tinh viết hoa U với dấu hai chấm trên đầu",Yacute:"Ký tự la-tinh viết hoa Y với dấu sắc",THORN:"Phần viết hoa của ký tự Thorn",szlig:"Ký tự viết nhỏ la-tinh của chữ s",agrave:"Ký tự la-tinh thường với dấu huyền",aacute:"Ký tự la-tinh thường với dấu sắc",acirc:"Ký tự la-tinh thường với dấu mũ",
-atilde:"Ký tự la-tinh thường với dấu ngã",auml:"Ký tự la-tinh thường với dấu hai chấm trên đầu",aring:"Ký tự la-tinh viết thường với biểu tượng vòng tròn trên đầu",aelig:"Ký tự la-tinh viết thường của æ",ccedil:"Ký tự la-tinh viết thường của c với dấu móc bên dưới",egrave:"Ký tự la-tinh viết thường e với dấu huyền",eacute:"Ký tự la-tinh viết thường e với dấu sắc",ecirc:"Ký tự la-tinh viết thường e với dấu mũ",euml:"Ký tự la-tinh viết thường e với dấu hai chấm trên đầu",igrave:"Ký tự la-tinh viết thường i với dấu huyền",
-iacute:"Ký tự la-tinh viết thường i với dấu sắc",icirc:"Ký tự la-tinh viết thường i với dấu mũ",iuml:"Ký tự la-tinh viết thường i với dấu hai chấm trên đầu",eth:"Ký tự la-tinh viết thường của eth",ntilde:"Ký tự la-tinh viết thường n với dấu ngã",ograve:"Ký tự la-tinh viết thường o với dấu huyền",oacute:"Ký tự la-tinh viết thường o với dấu sắc",ocirc:"Ký tự la-tinh viết thường o với dấu mũ",otilde:"Ký tự la-tinh viết thường o với dấu ngã",ouml:"Ký tự la-tinh viết thường o với dấu hai chấm trên đầu",
-divide:"Ký hiệu phép tính chia",oslash:"Ký tự la-tinh viết thường o với dấu ngã",ugrave:"Ký tự la-tinh viết thường u với dấu huyền",uacute:"Ký tự la-tinh viết thường u với dấu sắc",ucirc:"Ký tự la-tinh viết thường u với dấu mũ",uuml:"Ký tự la-tinh viết thường u với dấu hai chấm trên đầu",yacute:"Ký tự la-tinh viết thường y với dấu sắc",thorn:"Ký tự la-tinh viết thường của chữ thorn",yuml:"Ký tự la-tinh viết thường y với dấu hai chấm trên đầu",OElig:"Ký tự la-tinh viết hoa gạch nối OE",oelig:"Ký tự la-tinh viết thường gạch nối OE",
-372:"Ký tự la-tinh viết hoa W với dấu mũ",374:"Ký tự la-tinh viết hoa Y với dấu mũ",373:"Ký tự la-tinh viết thường w với dấu mũ",375:"Ký tự la-tinh viết thường y với dấu mũ",sbquo:"Dấu ngoặc đơn thấp số-9",8219:"Dấu ngoặc đơn đảo ngược số-9",bdquo:"Gấp đôi dấu ngoặc đơn số-9",hellip:"Tĩnh dược chiều ngang",trade:"Ký tự thương hiệu",9658:"Ký tự trỏ về hướng bên phải màu đen",bull:"Ký hiệu",rarr:"Mũi tên hướng bên phải",rArr:"Mũi tên hướng bên phải dạng đôi",hArr:"Mũi tên hướng bên trái dạng đôi",diams:"Ký hiệu hình thoi",
-asymp:"Gần bằng với"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js
deleted file mode 100644
index 6896e912..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","zh-cn",{euro:"欧元符号",lsquo:"左单引号",rsquo:"右单引号",ldquo:"左双引号",rdquo:"右双引号",ndash:"短划线",mdash:"长划线",iexcl:"竖翻叹号",cent:"分币符号",pound:"英镑符号",curren:"货币符号",yen:"日元符号",brvbar:"间断条",sect:"节标记",uml:"分音符",copy:"版权所有标记",ordf:"阴性顺序指示符",laquo:"左指双尖引号",not:"非标记",reg:"注册标记",macr:"长音符",deg:"度标记",sup2:"上标二",sup3:"上标三",acute:"锐音符",micro:"微符",para:"段落标记",middot:"中间点",cedil:"下加符",sup1:"上标一",ordm:"阳性顺序指示符",raquo:"右指双尖引号",frac14:"普通分数四分之一",frac12:"普通分数二分之一",frac34:"普通分数四分之三",iquest:"竖翻问号",
-Agrave:"带抑音符的拉丁文大写字母 A",Aacute:"带锐音符的拉丁文大写字母 A",Acirc:"带扬抑符的拉丁文大写字母 A",Atilde:"带颚化符的拉丁文大写字母 A",Auml:"带分音符的拉丁文大写字母 A",Aring:"带上圆圈的拉丁文大写字母 A",AElig:"拉丁文大写字母 Ae",Ccedil:"带下加符的拉丁文大写字母 C",Egrave:"带抑音符的拉丁文大写字母 E",Eacute:"带锐音符的拉丁文大写字母 E",Ecirc:"带扬抑符的拉丁文大写字母 E",Euml:"带分音符的拉丁文大写字母 E",Igrave:"带抑音符的拉丁文大写字母 I",Iacute:"带锐音符的拉丁文大写字母 I",Icirc:"带扬抑符的拉丁文大写字母 I",Iuml:"带分音符的拉丁文大写字母 I",ETH:"拉丁文大写字母 Eth",Ntilde:"带颚化符的拉丁文大写字母 N",Ograve:"带抑音符的拉丁文大写字母 O",Oacute:"带锐音符的拉丁文大写字母 O",Ocirc:"带扬抑符的拉丁文大写字母 O",Otilde:"带颚化符的拉丁文大写字母 O",
-Ouml:"带分音符的拉丁文大写字母 O",times:"乘号",Oslash:"带粗线的拉丁文大写字母 O",Ugrave:"带抑音符的拉丁文大写字母 U",Uacute:"带锐音符的拉丁文大写字母 U",Ucirc:"带扬抑符的拉丁文大写字母 U",Uuml:"带分音符的拉丁文大写字母 U",Yacute:"带抑音符的拉丁文大写字母 Y",THORN:"拉丁文大写字母 Thorn",szlig:"拉丁文小写字母清音 S",agrave:"带抑音符的拉丁文小写字母 A",aacute:"带锐音符的拉丁文小写字母 A",acirc:"带扬抑符的拉丁文小写字母 A",atilde:"带颚化符的拉丁文小写字母 A",auml:"带分音符的拉丁文小写字母 A",aring:"带上圆圈的拉丁文小写字母 A",aelig:"拉丁文小写字母 Ae",ccedil:"带下加符的拉丁文小写字母 C",egrave:"带抑音符的拉丁文小写字母 E",eacute:"带锐音符的拉丁文小写字母 E",ecirc:"带扬抑符的拉丁文小写字母 E",euml:"带分音符的拉丁文小写字母 E",igrave:"带抑音符的拉丁文小写字母 I",
-iacute:"带锐音符的拉丁文小写字母 I",icirc:"带扬抑符的拉丁文小写字母 I",iuml:"带分音符的拉丁文小写字母 I",eth:"拉丁文小写字母 Eth",ntilde:"带颚化符的拉丁文小写字母 N",ograve:"带抑音符的拉丁文小写字母 O",oacute:"带锐音符的拉丁文小写字母 O",ocirc:"带扬抑符的拉丁文小写字母 O",otilde:"带颚化符的拉丁文小写字母 O",ouml:"带分音符的拉丁文小写字母 O",divide:"除号",oslash:"带粗线的拉丁文小写字母 O",ugrave:"带抑音符的拉丁文小写字母 U",uacute:"带锐音符的拉丁文小写字母 U",ucirc:"带扬抑符的拉丁文小写字母 U",uuml:"带分音符的拉丁文小写字母 U",yacute:"带抑音符的拉丁文小写字母 Y",thorn:"拉丁文小写字母 Thorn",yuml:"带分音符的拉丁文小写字母 Y",OElig:"拉丁文大写连字 Oe",oelig:"拉丁文小写连字 Oe",372:"带扬抑符的拉丁文大写字母 W",374:"带扬抑符的拉丁文大写字母 Y",
-373:"带扬抑符的拉丁文小写字母 W",375:"带扬抑符的拉丁文小写字母 Y",sbquo:"单下 9 形引号",8219:"单高横翻 9 形引号",bdquo:"双下 9 形引号",hellip:"水平省略号",trade:"商标标志",9658:"实心右指指针",bull:"加重号",rarr:"向右箭头",rArr:"向右双线箭头",hArr:"左右双线箭头",diams:"实心方块纸牌",asymp:"约等于"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh.js
deleted file mode 100644
index 7bc2b556..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/lang/zh.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.plugins.setLang("specialchar","zh",{euro:"歐元符號",lsquo:"左單引號",rsquo:"右單引號",ldquo:"左雙引號",rdquo:"右雙引號",ndash:"短破折號",mdash:"長破折號",iexcl:"倒置的驚嘆號",cent:"美分符號",pound:"英鎊符號",curren:"貨幣符號",yen:"日圓符號",brvbar:"Broken bar",sect:"章節符號",uml:"分音符號",copy:"版權符號",ordf:"雌性符號",laquo:"左雙角括號",not:"Not 符號",reg:"註冊商標符號",macr:"長音符號",deg:"度數符號",sup2:"上標字 2",sup3:"上標字 3",acute:"尖音符號",micro:"Micro sign",para:"段落符號",middot:"中間點",cedil:"字母 C 下面的尾型符號 ",sup1:"上標",ordm:"雄性符號",raquo:"右雙角括號",frac14:"四分之一符號",frac12:"Vulgar fraction one half",
-frac34:"Vulgar fraction three quarters",iquest:"Inverted question mark",Agrave:"Latin capital letter A with grave accent",Aacute:"Latin capital letter A with acute accent",Acirc:"Latin capital letter A with circumflex",Atilde:"Latin capital letter A with tilde",Auml:"拉丁大寫字母 E 帶分音符號",Aring:"拉丁大寫字母 A 帶上圓圈",AElig:"拉丁大寫字母 Æ",Ccedil:"拉丁大寫字母 C 帶下尾符號",Egrave:"Latin capital letter E with grave accent",Eacute:"Latin capital letter E with acute accent",Ecirc:"Latin capital letter E with circumflex",Euml:"Latin capital letter E with diaeresis",
-Igrave:"Latin capital letter I with grave accent",Iacute:"Latin capital letter I with acute accent",Icirc:"Latin capital letter I with circumflex",Iuml:"Latin capital letter I with diaeresis",ETH:"Latin capital letter Eth",Ntilde:"Latin capital letter N with tilde",Ograve:"Latin capital letter O with grave accent",Oacute:"Latin capital letter O with acute accent",Ocirc:"Latin capital letter O with circumflex",Otilde:"Latin capital letter O with tilde",Ouml:"Latin capital letter O with diaeresis",
-times:"乘號",Oslash:"拉丁大寫字母 O 帶粗線符號",Ugrave:"Latin capital letter U with grave accent",Uacute:"Latin capital letter U with acute accent",Ucirc:"Latin capital letter U with circumflex",Uuml:"Latin capital letter U with diaeresis",Yacute:"Latin capital letter Y with acute accent",THORN:"Latin capital letter Thorn",szlig:"Latin small letter sharp s",agrave:"Latin small letter a with grave accent",aacute:"Latin small letter a with acute accent",acirc:"Latin small letter a with circumflex",atilde:"Latin small letter a with tilde",
-auml:"Latin small letter a with diaeresis",aring:"Latin small letter a with ring above",aelig:"Latin small letter æ",ccedil:"Latin small letter c with cedilla",egrave:"Latin small letter e with grave accent",eacute:"Latin small letter e with acute accent",ecirc:"Latin small letter e with circumflex",euml:"Latin small letter e with diaeresis",igrave:"Latin small letter i with grave accent",iacute:"Latin small letter i with acute accent",icirc:"Latin small letter i with circumflex",iuml:"Latin small letter i with diaeresis",
-eth:"Latin small letter eth",ntilde:"Latin small letter n with tilde",ograve:"Latin small letter o with grave accent",oacute:"Latin small letter o with acute accent",ocirc:"Latin small letter o with circumflex",otilde:"Latin small letter o with tilde",ouml:"Latin small letter o with diaeresis",divide:"Division sign",oslash:"Latin small letter o with stroke",ugrave:"Latin small letter u with grave accent",uacute:"Latin small letter u with acute accent",ucirc:"Latin small letter u with circumflex",
-uuml:"Latin small letter u with diaeresis",yacute:"Latin small letter y with acute accent",thorn:"Latin small letter thorn",yuml:"Latin small letter y with diaeresis",OElig:"Latin capital ligature OE",oelig:"Latin small ligature oe",372:"Latin capital letter W with circumflex",374:"Latin capital letter Y with circumflex",373:"Latin small letter w with circumflex",375:"Latin small letter y with circumflex",sbquo:"Single low-9 quotation mark",8219:"Single high-reversed-9 quotation mark",bdquo:"Double low-9 quotation mark",
-hellip:"Horizontal ellipsis",trade:"Trade mark sign",9658:"Black right-pointing pointer",bull:"Bullet",rarr:"Rightwards arrow",rArr:"Rightwards double arrow",hArr:"Left right double arrow",diams:"Black diamond suit",asymp:"Almost equal to"}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/specialchar.js b/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/specialchar.js
deleted file mode 100644
index c4d1696b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/specialchar/dialogs/specialchar.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("specialchar",function(i){var e,l=i.lang.specialchar,k=function(c){var b,c=c.data?c.data.getTarget():new CKEDITOR.dom.element(c);if("a"==c.getName()&&(b=c.getChild(0).getHtml()))c.removeClass("cke_light_background"),e.hide(),c=i.document.createElement("span"),c.setHtml(b),i.insertText(c.getText())},m=CKEDITOR.tools.addFunction(k),j,g=function(c,b){var a,b=b||c.data.getTarget();"span"==b.getName()&&(b=b.getParent());if("a"==b.getName()&&(a=b.getChild(0).getHtml())){j&&d(null,j);
-var f=e.getContentElement("info","htmlPreview").getElement();e.getContentElement("info","charPreview").getElement().setHtml(a);f.setHtml(CKEDITOR.tools.htmlEncode(a));b.getParent().addClass("cke_light_background");j=b}},d=function(c,b){b=b||c.data.getTarget();"span"==b.getName()&&(b=b.getParent());"a"==b.getName()&&(e.getContentElement("info","charPreview").getElement().setHtml("&nbsp;"),e.getContentElement("info","htmlPreview").getElement().setHtml("&nbsp;"),b.getParent().removeClass("cke_light_background"),
-j=void 0)},n=CKEDITOR.tools.addFunction(function(c){var c=new CKEDITOR.dom.event(c),b=c.getTarget(),a;a=c.getKeystroke();var f="rtl"==i.lang.dir;switch(a){case 38:if(a=b.getParent().getParent().getPrevious())a=a.getChild([b.getParent().getIndex(),0]),a.focus(),d(null,b),g(null,a);c.preventDefault();break;case 40:if(a=b.getParent().getParent().getNext())if((a=a.getChild([b.getParent().getIndex(),0]))&&1==a.type)a.focus(),d(null,b),g(null,a);c.preventDefault();break;case 32:k({data:c});c.preventDefault();
-break;case f?37:39:if(a=b.getParent().getNext())a=a.getChild(0),1==a.type?(a.focus(),d(null,b),g(null,a),c.preventDefault(!0)):d(null,b);else if(a=b.getParent().getParent().getNext())(a=a.getChild([0,0]))&&1==a.type?(a.focus(),d(null,b),g(null,a),c.preventDefault(!0)):d(null,b);break;case f?39:37:(a=b.getParent().getPrevious())?(a=a.getChild(0),a.focus(),d(null,b),g(null,a),c.preventDefault(!0)):(a=b.getParent().getParent().getPrevious())?(a=a.getLast().getChild(0),a.focus(),d(null,b),g(null,a),c.preventDefault(!0)):
-d(null,b)}});return{title:l.title,minWidth:430,minHeight:280,buttons:[CKEDITOR.dialog.cancelButton],charColumns:17,onLoad:function(){for(var c=this.definition.charColumns,b=i.config.specialChars,a=CKEDITOR.tools.getNextId()+"_specialchar_table_label",f=['<table role="listbox" aria-labelledby="'+a+'" style="width: 320px; height: 100%; border-collapse: separate;" align="center" cellspacing="2" cellpadding="2" border="0">'],d=0,g=b.length,h,e;d<g;){f.push('<tr role="presentation">');for(var j=0;j<c;j++,
-d++){if(h=b[d]){h instanceof Array?(e=h[1],h=h[0]):(e=h.replace("&","").replace(";","").replace("#",""),e=l[e]||h);var k="cke_specialchar_label_"+d+"_"+CKEDITOR.tools.getNextNumber();f.push('<td class="cke_dark_background" style="cursor: default" role="presentation"><a href="javascript: void(0);" role="option" aria-posinset="'+(d+1)+'"',' aria-setsize="'+g+'"',' aria-labelledby="'+k+'"',' class="cke_specialchar" title="',CKEDITOR.tools.htmlEncode(e),'" onkeydown="CKEDITOR.tools.callFunction( '+n+
-', event, this )" onclick="CKEDITOR.tools.callFunction('+m+', this); return false;" tabindex="-1"><span style="margin: 0 auto;cursor: inherit">'+h+'</span><span class="cke_voice_label" id="'+k+'">'+e+"</span></a>")}else f.push('<td class="cke_dark_background">&nbsp;');f.push("</td>")}f.push("</tr>")}f.push("</tbody></table>",'<span id="'+a+'" class="cke_voice_label">'+l.options+"</span>");this.getContentElement("info","charContainer").getElement().setHtml(f.join(""))},contents:[{id:"info",label:i.lang.common.generalTab,
-title:i.lang.common.generalTab,padding:0,align:"top",elements:[{type:"hbox",align:"top",widths:["320px","90px"],children:[{type:"html",id:"charContainer",html:"",onMouseover:g,onMouseout:d,focus:function(){var c=this.getElement().getElementsByTag("a").getItem(0);setTimeout(function(){c.focus();g(null,c)},0)},onShow:function(){var c=this.getElement().getChild([0,0,0,0,0]);setTimeout(function(){c.focus();g(null,c)},0)},onLoad:function(c){e=c.sender}},{type:"hbox",align:"top",widths:["100%"],children:[{type:"vbox",
-align:"top",children:[{type:"html",html:"<div></div>"},{type:"html",id:"charPreview",className:"cke_dark_background",style:"border:1px solid #eeeeee;font-size:28px;height:40px;width:70px;padding-top:9px;font-family:'Microsoft Sans Serif',Arial,Helvetica,Verdana;text-align:center;",html:"<div>&nbsp;</div>"},{type:"html",id:"htmlPreview",className:"cke_dark_background",style:"border:1px solid #eeeeee;font-size:14px;height:20px;width:70px;padding-top:2px;font-family:'Microsoft Sans Serif',Arial,Helvetica,Verdana;text-align:center;",
-html:"<div>&nbsp;</div>"}]}]}]}]}]}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/table/dialogs/table.js b/wqflask/wqflask/static/packages/ckeditor/plugins/table/dialogs/table.js
deleted file mode 100644
index 6f656817..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/table/dialogs/table.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){function r(a){for(var e=0,l=0,k=0,m,g=a.$.rows.length;k<g;k++){m=a.$.rows[k];for(var d=e=0,c,b=m.cells.length;d<b;d++)c=m.cells[d],e+=c.colSpan;e>l&&(l=e)}return l}function o(a){return function(){var e=this.getValue(),e=!!(CKEDITOR.dialog.validate.integer()(e)&&0<e);e||(alert(a),this.select());return e}}function n(a,e){var l=function(g){return new CKEDITOR.dom.element(g,a.document)},n=a.editable(),m=a.plugins.dialogadvtab;return{title:a.lang.table.title,minWidth:310,minHeight:CKEDITOR.env.ie?
-310:280,onLoad:function(){var g=this,a=g.getContentElement("advanced","advStyles");if(a)a.on("change",function(){var a=this.getStyle("width",""),b=g.getContentElement("info","txtWidth");b&&b.setValue(a,!0);a=this.getStyle("height","");(b=g.getContentElement("info","txtHeight"))&&b.setValue(a,!0)})},onShow:function(){var g=a.getSelection(),d=g.getRanges(),c,b=this.getContentElement("info","txtRows"),h=this.getContentElement("info","txtCols"),p=this.getContentElement("info","txtWidth"),f=this.getContentElement("info",
-"txtHeight");"tableProperties"==e&&((g=g.getSelectedElement())&&g.is("table")?c=g:0<d.length&&(CKEDITOR.env.webkit&&d[0].shrink(CKEDITOR.NODE_ELEMENT),c=a.elementPath(d[0].getCommonAncestor(!0)).contains("table",1)),this._.selectedElement=c);c?(this.setupContent(c),b&&b.disable(),h&&h.disable()):(b&&b.enable(),h&&h.enable());p&&p.onChange();f&&f.onChange()},onOk:function(){var g=a.getSelection(),d=this._.selectedElement&&g.createBookmarks(),c=this._.selectedElement||l("table"),b={};this.commitContent(b,
-c);if(b.info){b=b.info;if(!this._.selectedElement)for(var h=c.append(l("tbody")),e=parseInt(b.txtRows,10)||0,f=parseInt(b.txtCols,10)||0,i=0;i<e;i++)for(var j=h.append(l("tr")),k=0;k<f;k++)j.append(l("td")).appendBogus();e=b.selHeaders;if(!c.$.tHead&&("row"==e||"both"==e)){j=new CKEDITOR.dom.element(c.$.createTHead());h=c.getElementsByTag("tbody").getItem(0);h=h.getElementsByTag("tr").getItem(0);for(i=0;i<h.getChildCount();i++)f=h.getChild(i),f.type==CKEDITOR.NODE_ELEMENT&&!f.data("cke-bookmark")&&
-(f.renameNode("th"),f.setAttribute("scope","col"));j.append(h.remove())}if(null!==c.$.tHead&&!("row"==e||"both"==e)){j=new CKEDITOR.dom.element(c.$.tHead);h=c.getElementsByTag("tbody").getItem(0);for(k=h.getFirst();0<j.getChildCount();){h=j.getFirst();for(i=0;i<h.getChildCount();i++)f=h.getChild(i),f.type==CKEDITOR.NODE_ELEMENT&&(f.renameNode("td"),f.removeAttribute("scope"));h.insertBefore(k)}j.remove()}if(!this.hasColumnHeaders&&("col"==e||"both"==e))for(j=0;j<c.$.rows.length;j++)f=new CKEDITOR.dom.element(c.$.rows[j].cells[0]),
-f.renameNode("th"),f.setAttribute("scope","row");if(this.hasColumnHeaders&&!("col"==e||"both"==e))for(i=0;i<c.$.rows.length;i++)j=new CKEDITOR.dom.element(c.$.rows[i]),"tbody"==j.getParent().getName()&&(f=new CKEDITOR.dom.element(j.$.cells[0]),f.renameNode("td"),f.removeAttribute("scope"));b.txtHeight?c.setStyle("height",b.txtHeight):c.removeStyle("height");b.txtWidth?c.setStyle("width",b.txtWidth):c.removeStyle("width");c.getAttribute("style")||c.removeAttribute("style")}if(this._.selectedElement)try{g.selectBookmarks(d)}catch(m){}else a.insertElement(c),
-setTimeout(function(){var g=new CKEDITOR.dom.element(c.$.rows[0].cells[0]),b=a.createRange();b.moveToPosition(g,CKEDITOR.POSITION_AFTER_START);b.select()},0)},contents:[{id:"info",label:a.lang.table.title,elements:[{type:"hbox",widths:[null,null],styles:["vertical-align:top"],children:[{type:"vbox",padding:0,children:[{type:"text",id:"txtRows","default":3,label:a.lang.table.rows,required:!0,controlStyle:"width:5em",validate:o(a.lang.table.invalidRows),setup:function(a){this.setValue(a.$.rows.length)},
-commit:k},{type:"text",id:"txtCols","default":2,label:a.lang.table.columns,required:!0,controlStyle:"width:5em",validate:o(a.lang.table.invalidCols),setup:function(a){this.setValue(r(a))},commit:k},{type:"html",html:"&nbsp;"},{type:"select",id:"selHeaders",requiredContent:"th","default":"",label:a.lang.table.headers,items:[[a.lang.table.headersNone,""],[a.lang.table.headersRow,"row"],[a.lang.table.headersColumn,"col"],[a.lang.table.headersBoth,"both"]],setup:function(a){var d=this.getDialog();d.hasColumnHeaders=
-!0;for(var c=0;c<a.$.rows.length;c++){var b=a.$.rows[c].cells[0];if(b&&"th"!=b.nodeName.toLowerCase()){d.hasColumnHeaders=!1;break}}null!==a.$.tHead?this.setValue(d.hasColumnHeaders?"both":"row"):this.setValue(d.hasColumnHeaders?"col":"")},commit:k},{type:"text",id:"txtBorder",requiredContent:"table[border]","default":a.filter.check("table[border]")?1:0,label:a.lang.table.border,controlStyle:"width:3em",validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidBorder),setup:function(a){this.setValue(a.getAttribute("border")||
-"")},commit:function(a,d){this.getValue()?d.setAttribute("border",this.getValue()):d.removeAttribute("border")}},{id:"cmbAlign",type:"select",requiredContent:"table[align]","default":"",label:a.lang.common.align,items:[[a.lang.common.notSet,""],[a.lang.common.alignLeft,"left"],[a.lang.common.alignCenter,"center"],[a.lang.common.alignRight,"right"]],setup:function(a){this.setValue(a.getAttribute("align")||"")},commit:function(a,d){this.getValue()?d.setAttribute("align",this.getValue()):d.removeAttribute("align")}}]},
-{type:"vbox",padding:0,children:[{type:"hbox",widths:["5em"],children:[{type:"text",id:"txtWidth",requiredContent:"table{width}",controlStyle:"width:5em",label:a.lang.common.width,title:a.lang.common.cssLengthTooltip,"default":a.filter.check("table{width}")?500>n.getSize("width")?"100%":500:0,getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.width)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles");a&&
-a.updateStyle("width",this.getValue())},setup:function(a){this.setValue(a.getStyle("width"))},commit:k}]},{type:"hbox",widths:["5em"],children:[{type:"text",id:"txtHeight",requiredContent:"table{height}",controlStyle:"width:5em",label:a.lang.common.height,title:a.lang.common.cssLengthTooltip,"default":"",getValue:q,validate:CKEDITOR.dialog.validate.cssLength(a.lang.common.invalidCssLength.replace("%1",a.lang.common.height)),onChange:function(){var a=this.getDialog().getContentElement("advanced","advStyles");
-a&&a.updateStyle("height",this.getValue())},setup:function(a){(a=a.getStyle("height"))&&this.setValue(a)},commit:k}]},{type:"html",html:"&nbsp;"},{type:"text",id:"txtCellSpace",requiredContent:"table[cellspacing]",controlStyle:"width:3em",label:a.lang.table.cellSpace,"default":a.filter.check("table[cellspacing]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellSpacing),setup:function(a){this.setValue(a.getAttribute("cellSpacing")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellSpacing",
-this.getValue()):d.removeAttribute("cellSpacing")}},{type:"text",id:"txtCellPad",requiredContent:"table[cellpadding]",controlStyle:"width:3em",label:a.lang.table.cellPad,"default":a.filter.check("table[cellpadding]")?1:0,validate:CKEDITOR.dialog.validate.number(a.lang.table.invalidCellPadding),setup:function(a){this.setValue(a.getAttribute("cellPadding")||"")},commit:function(a,d){this.getValue()?d.setAttribute("cellPadding",this.getValue()):d.removeAttribute("cellPadding")}}]}]},{type:"html",align:"right",
-html:""},{type:"vbox",padding:0,children:[{type:"text",id:"txtCaption",requiredContent:"caption",label:a.lang.table.caption,setup:function(a){this.enable();a=a.getElementsByTag("caption");if(0<a.count()){var a=a.getItem(0),d=a.getFirst(CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT));d&&!d.equals(a.getBogus())?(this.disable(),this.setValue(a.getText())):(a=CKEDITOR.tools.trim(a.getText()),this.setValue(a))}},commit:function(e,d){if(this.isEnabled()){var c=this.getValue(),b=d.getElementsByTag("caption");
-if(c)0<b.count()?(b=b.getItem(0),b.setHtml("")):(b=new CKEDITOR.dom.element("caption",a.document),d.getChildCount()?b.insertBefore(d.getFirst()):b.appendTo(d)),b.append(new CKEDITOR.dom.text(c,a.document));else if(0<b.count())for(c=b.count()-1;0<=c;c--)b.getItem(c).remove()}}},{type:"text",id:"txtSummary",requiredContent:"table[summary]",label:a.lang.table.summary,setup:function(a){this.setValue(a.getAttribute("summary")||"")},commit:function(a,d){this.getValue()?d.setAttribute("summary",this.getValue()):
-d.removeAttribute("summary")}}]}]},m&&m.createAdvancedTab(a,null,"table")]}}var q=CKEDITOR.tools.cssLength,k=function(a){var e=this.id;a.info||(a.info={});a.info[e]=this.getValue()};CKEDITOR.dialog.add("table",function(a){return n(a,"table")});CKEDITOR.dialog.add("tableProperties",function(a){return n(a,"tableProperties")})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/dialogs/tableCell.js b/wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/dialogs/tableCell.js
deleted file mode 100644
index fb8e99ad..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/tabletools/dialogs/tableCell.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("cellProperties",function(g){function d(a){return function(b){for(var c=a(b[0]),d=1;d<b.length;d++)if(a(b[d])!==c){c=null;break}"undefined"!=typeof c&&(this.setValue(c),CKEDITOR.env.gecko&&("select"==this.type&&!c)&&(this.getInputElement().$.selectedIndex=-1))}}function j(a){if(a=l.exec(a.getStyle("width")||a.getAttribute("width")))return a[2]}var h=g.lang.table,c=h.cell,e=g.lang.common,i=CKEDITOR.dialog.validate,l=/^(\d+(?:\.\d+)?)(px|%)$/,f={type:"html",html:"&nbsp;"},m="rtl"==
-g.lang.dir,k=g.plugins.colordialog;return{title:c.title,minWidth:CKEDITOR.env.ie&&CKEDITOR.env.quirks?450:410,minHeight:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?230:220,contents:[{id:"info",label:c.title,accessKey:"I",elements:[{type:"hbox",widths:["40%","5%","40%"],children:[{type:"vbox",padding:0,children:[{type:"hbox",widths:["70%","30%"],children:[{type:"text",id:"width",width:"100px",label:e.width,validate:i.number(c.invalidWidth),onLoad:function(){var a=this.getDialog().getContentElement("info",
-"widthType").getElement(),b=this.getInputElement(),c=b.getAttribute("aria-labelledby");b.setAttribute("aria-labelledby",[c,a.$.id].join(" "))},setup:d(function(a){var b=parseInt(a.getAttribute("width"),10),a=parseInt(a.getStyle("width"),10);return!isNaN(a)?a:!isNaN(b)?b:""}),commit:function(a){var b=parseInt(this.getValue(),10),c=this.getDialog().getValueOf("info","widthType")||j(a);isNaN(b)?a.removeStyle("width"):a.setStyle("width",b+c);a.removeAttribute("width")},"default":""},{type:"select",id:"widthType",
-label:g.lang.table.widthUnit,labelStyle:"visibility:hidden","default":"px",items:[[h.widthPx,"px"],[h.widthPc,"%"]],setup:d(j)}]},{type:"hbox",widths:["70%","30%"],children:[{type:"text",id:"height",label:e.height,width:"100px","default":"",validate:i.number(c.invalidHeight),onLoad:function(){var a=this.getDialog().getContentElement("info","htmlHeightType").getElement(),b=this.getInputElement(),c=b.getAttribute("aria-labelledby");b.setAttribute("aria-labelledby",[c,a.$.id].join(" "))},setup:d(function(a){var b=
-parseInt(a.getAttribute("height"),10),a=parseInt(a.getStyle("height"),10);return!isNaN(a)?a:!isNaN(b)?b:""}),commit:function(a){var b=parseInt(this.getValue(),10);isNaN(b)?a.removeStyle("height"):a.setStyle("height",CKEDITOR.tools.cssLength(b));a.removeAttribute("height")}},{id:"htmlHeightType",type:"html",html:"<br />"+h.widthPx}]},f,{type:"select",id:"wordWrap",label:c.wordWrap,"default":"yes",items:[[c.yes,"yes"],[c.no,"no"]],setup:d(function(a){var b=a.getAttribute("noWrap");if("nowrap"==a.getStyle("white-space")||
-b)return"no"}),commit:function(a){"no"==this.getValue()?a.setStyle("white-space","nowrap"):a.removeStyle("white-space");a.removeAttribute("noWrap")}},f,{type:"select",id:"hAlign",label:c.hAlign,"default":"",items:[[e.notSet,""],[e.alignLeft,"left"],[e.alignCenter,"center"],[e.alignRight,"right"],[e.alignJustify,"justify"]],setup:d(function(a){var b=a.getAttribute("align");return a.getStyle("text-align")||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("text-align",b):a.removeStyle("text-align");
-a.removeAttribute("align")}},{type:"select",id:"vAlign",label:c.vAlign,"default":"",items:[[e.notSet,""],[e.alignTop,"top"],[e.alignMiddle,"middle"],[e.alignBottom,"bottom"],[c.alignBaseline,"baseline"]],setup:d(function(a){var b=a.getAttribute("vAlign"),a=a.getStyle("vertical-align");switch(a){case "top":case "middle":case "bottom":case "baseline":break;default:a=""}return a||b||""}),commit:function(a){var b=this.getValue();b?a.setStyle("vertical-align",b):a.removeStyle("vertical-align");a.removeAttribute("vAlign")}}]},
-f,{type:"vbox",padding:0,children:[{type:"select",id:"cellType",label:c.cellType,"default":"td",items:[[c.data,"td"],[c.header,"th"]],setup:d(function(a){return a.getName()}),commit:function(a){a.renameNode(this.getValue())}},f,{type:"text",id:"rowSpan",label:c.rowSpan,"default":"",validate:i.integer(c.invalidRowSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("rowSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("rowSpan",this.getValue()):
-a.removeAttribute("rowSpan")}},{type:"text",id:"colSpan",label:c.colSpan,"default":"",validate:i.integer(c.invalidColSpan),setup:d(function(a){if((a=parseInt(a.getAttribute("colSpan"),10))&&1!=a)return a}),commit:function(a){var b=parseInt(this.getValue(),10);b&&1!=b?a.setAttribute("colSpan",this.getValue()):a.removeAttribute("colSpan")}},f,{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"bgColor",label:c.bgColor,"default":"",setup:d(function(a){var b=a.getAttribute("bgColor");
-return a.getStyle("background-color")||b}),commit:function(a){this.getValue()?a.setStyle("background-color",this.getValue()):a.removeStyle("background-color");a.removeAttribute("bgColor")}},k?{type:"button",id:"bgColorChoose","class":"colorChooser",label:c.chooseColor,onLoad:function(){this.getElement().getParent().setStyle("vertical-align","bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","bgColor").setValue(a);this.focus()},this)}}:f]},f,
-{type:"hbox",padding:0,widths:["60%","40%"],children:[{type:"text",id:"borderColor",label:c.borderColor,"default":"",setup:d(function(a){var b=a.getAttribute("borderColor");return a.getStyle("border-color")||b}),commit:function(a){this.getValue()?a.setStyle("border-color",this.getValue()):a.removeStyle("border-color");a.removeAttribute("borderColor")}},k?{type:"button",id:"borderColorChoose","class":"colorChooser",label:c.chooseColor,style:(m?"margin-right":"margin-left")+": 10px",onLoad:function(){this.getElement().getParent().setStyle("vertical-align",
-"bottom")},onClick:function(){g.getColorFromDialog(function(a){a&&this.getDialog().getContentElement("info","borderColor").setValue(a);this.focus()},this)}}:f]}]}]}]}],onShow:function(){this.cells=CKEDITOR.plugins.tabletools.getSelectedCells(this._.editor.getSelection());this.setupContent(this.cells)},onOk:function(){for(var a=this._.editor.getSelection(),b=a.createBookmarks(),c=this.cells,d=0;d<c.length;d++)this.commitContent(c[d]);this._.editor.forceNextSelectionCheck();a.selectBookmarks(b);this._.editor.selectionChange()},
-onLoad:function(){var a={};this.foreach(function(b){b.setup&&b.commit&&(b.setup=CKEDITOR.tools.override(b.setup,function(c){return function(){c.apply(this,arguments);a[b.id]=b.getValue()}}),b.commit=CKEDITOR.tools.override(b.commit,function(c){return function(){a[b.id]!==b.getValue()&&c.apply(this,arguments)}}))})}}}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.css b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.css
deleted file mode 100644
index 66bc388e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.css
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-
-.cke_tpl_list
-{
- border: #dcdcdc 2px solid;
- background-color: #ffffff;
- overflow-y: auto;
- overflow-x: hidden;
- width: 100%;
- height: 220px;
-}
-
-.cke_tpl_item
-{
- margin: 5px;
- padding: 7px;
- border: #eeeeee 1px solid;
- *width: 88%;
-}
-
-.cke_tpl_preview
-{
- border-collapse: separate;
- text-indent:0;
- width: 100%;
-}
-.cke_tpl_preview td
-{
- padding: 2px;
- vertical-align: middle;
-}
-.cke_tpl_preview .cke_tpl_preview_img
-{
- width: 100px;
-}
-.cke_tpl_preview span
-{
- white-space: normal;
-}
-
-.cke_tpl_title
-{
- font-weight: bold;
-}
-
-.cke_tpl_list a:hover .cke_tpl_item,
-.cke_tpl_list a:focus .cke_tpl_item,
-.cke_tpl_list a:active .cke_tpl_item
-{
- border: #ff9933 1px solid;
- background-color: #fffacd;
-}
-
-.cke_tpl_list a:hover *,
-.cke_tpl_list a:focus *,
-.cke_tpl_list a:active *
-{
- cursor: pointer;
-}
-
-/* IE Quirks contextual selectors children will not get :hover transition until
- the hover style of the link itself contains certain CSS declarations. */
-.cke_browser_quirks .cke_tpl_list a:active,
-.cke_browser_quirks .cke_tpl_list a:hover,
-.cke_browser_quirks .cke_tpl_list a:focus
-{
- background-position: 0 0;
-}
-
-.cke_hc .cke_tpl_list a:hover .cke_tpl_item,
-.cke_hc .cke_tpl_list a:focus .cke_tpl_item,
-.cke_hc .cke_tpl_list a:active .cke_tpl_item
-{
- border-width: 3px;
-}
-
-.cke_tpl_empty, .cke_tpl_loading
-{
- text-align: center;
- padding: 5px;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.js b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.js
deleted file mode 100644
index bd7832d6..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/dialogs/templates.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-(function(){CKEDITOR.dialog.add("templates",function(c){function o(a,b){var k=CKEDITOR.dom.element.createFromHtml('<a href="javascript:void(0)" tabIndex="-1" role="option" ><div class="cke_tpl_item"></div></a>'),d='<table style="width:350px;" class="cke_tpl_preview" role="presentation"><tr>';a.image&&b&&(d+='<td class="cke_tpl_preview_img"><img src="'+CKEDITOR.getUrl(b+a.image)+'"'+(CKEDITOR.env.ie6Compat?' onload="this.width=this.width"':"")+' alt="" title=""></td>');d+='<td style="white-space:normal;"><span class="cke_tpl_title">'+
-a.title+"</span><br/>";a.description&&(d+="<span>"+a.description+"</span>");k.getFirst().setHtml(d+"</td></tr></table>");k.on("click",function(){p(a.html)});return k}function p(a){var b=CKEDITOR.dialog.getCurrent();b.getValueOf("selectTpl","chkInsertOpt")?(c.fire("saveSnapshot"),c.setData(a,function(){b.hide();var a=c.createRange();a.moveToElementEditStart(c.editable());a.select();setTimeout(function(){c.fire("saveSnapshot")},0)})):(c.insertHtml(a),b.hide())}function i(a){var b=a.data.getTarget(),
-c=g.equals(b);if(c||g.contains(b)){var d=a.data.getKeystroke(),f=g.getElementsByTag("a"),e;if(f){if(c)e=f.getItem(0);else switch(d){case 40:e=b.getNext();break;case 38:e=b.getPrevious();break;case 13:case 32:b.fire("click")}e&&(e.focus(),a.data.preventDefault())}}}var h=CKEDITOR.plugins.get("templates");CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl(h.path+"dialogs/templates.css"));var g,h="cke_tpl_list_label_"+CKEDITOR.tools.getNextNumber(),f=c.lang.templates,l=c.config;return{title:c.lang.templates.title,
-minWidth:CKEDITOR.env.ie?440:400,minHeight:340,contents:[{id:"selectTpl",label:f.title,elements:[{type:"vbox",padding:5,children:[{id:"selectTplText",type:"html",html:"<span>"+f.selectPromptMsg+"</span>"},{id:"templatesList",type:"html",focus:!0,html:'<div class="cke_tpl_list" tabIndex="-1" role="listbox" aria-labelledby="'+h+'"><div class="cke_tpl_loading"><span></span></div></div><span class="cke_voice_label" id="'+h+'">'+f.options+"</span>"},{id:"chkInsertOpt",type:"checkbox",label:f.insertOption,
-"default":l.templates_replaceContent}]}]}],buttons:[CKEDITOR.dialog.cancelButton],onShow:function(){var a=this.getContentElement("selectTpl","templatesList");g=a.getElement();CKEDITOR.loadTemplates(l.templates_files,function(){var b=(l.templates||"default").split(",");if(b.length){var c=g;c.setHtml("");for(var d=0,h=b.length;d<h;d++)for(var e=CKEDITOR.getTemplates(b[d]),i=e.imagesPath,e=e.templates,n=e.length,j=0;j<n;j++){var m=o(e[j],i);m.setAttribute("aria-posinset",j+1);m.setAttribute("aria-setsize",
-n);c.append(m)}a.focus()}else g.setHtml('<div class="cke_tpl_empty"><span>'+f.emptyListMsg+"</span></div>")});this._.element.on("keydown",i)},onHide:function(){this._.element.removeListener("keydown",i)}}})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/default.js b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/default.js
deleted file mode 100644
index d8c172e3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/default.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-CKEDITOR.addTemplates("default",{imagesPath:CKEDITOR.getUrl(CKEDITOR.plugins.getPath("templates")+"templates/images/"),templates:[{title:"Image and Title",image:"template1.gif",description:"One main image with a title and text that surround the image.",html:'<h3><img src=" " alt="" style="margin-right: 10px" height="100" width="100" align="left" />Type the title here</h3><p>Type the text here</p>'},{title:"Strange Template",image:"template2.gif",description:"A template that defines two colums, each one with a title, and some text.",
-html:'<table cellspacing="0" cellpadding="0" style="width:100%" border="0"><tr><td style="width:50%"><h3>Title 1</h3></td><td></td><td style="width:50%"><h3>Title 2</h3></td></tr><tr><td>Text 1</td><td></td><td>Text 2</td></tr></table><p>More text goes here.</p>'},{title:"Text and Table",image:"template3.gif",description:"A title with some text and a table.",html:'<div style="width: 80%"><h3>Title goes here</h3><table style="width:150px;float: right" cellspacing="0" cellpadding="0" border="1"><caption style="border:solid 1px black"><strong>Table title</strong></caption><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></table><p>Type the text here</p></div>'}]}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template1.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template1.gif
deleted file mode 100644
index efdabbeb..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template1.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template2.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template2.gif
deleted file mode 100644
index d1cebb3a..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template2.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template3.gif b/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template3.gif
deleted file mode 100644
index db41cb4f..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/templates/templates/images/template3.gif
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/LICENSE.md b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/LICENSE.md
deleted file mode 100644
index 6096de23..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/LICENSE.md
+++ /dev/null
@@ -1,28 +0,0 @@
-Software License Agreement
-==========================
-
-**CKEditor WSC Plugin**
-Copyright &copy; 2012, [CKSource](http://cksource.com) - Frederico Knabben. All rights reserved.
-
-Licensed under the terms of any of the following licenses at your choice:
-
-* GNU General Public License Version 2 or later (the "GPL"):
- http://www.gnu.org/licenses/gpl.html
-
-* GNU Lesser General Public License Version 2.1 or later (the "LGPL"):
- http://www.gnu.org/licenses/lgpl.html
-
-* Mozilla Public License Version 1.1 or later (the "MPL"):
- http://www.mozilla.org/MPL/MPL-1.1.html
-
-You are not required to, but if you want to explicitly declare the license you have chosen to be bound to when using, reproducing, modifying and distributing this software, just include a text file titled "legal.txt" in your version of this software, indicating your license choice.
-
-Sources of Intellectual Property Included in this plugin
---------------------------------------------------------
-
-Where not otherwise indicated, all plugin content is authored by CKSource engineers and consists of CKSource-owned intellectual property. In some specific instances, the plugin will incorporate work done by developers outside of CKSource with their express permission.
-
-Trademarks
-----------
-
-CKEditor is a trademark of CKSource - Frederico Knabben. All other brand and product names are trademarks, registered trademarks or service marks of their respective holders.
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/README.md b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/README.md
deleted file mode 100644
index 346e2ab1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/README.md
+++ /dev/null
@@ -1,25 +0,0 @@
-CKEditor WebSpellChecker Plugin
-===============================
-
-This plugin brings Web Spell Checker (WSC) into CKEditor.
-
-WSC is "installation-less", using the web-services of [WebSpellChecker.net](http://www.webspellchecker.net/). It's an out of the box solution.
-
-Installation
-------------
-
-1. Clone/copy this repository contents in a new "plugins/wsc" folder in your CKEditor installation.
-2. Enable the "wsc" plugin in the CKEditor configuration file (config.js):
-
- config.extraPlugins = 'wsc';
-
-That's all. WSC will appear on the editor toolbar and will be ready to use.
-
-License
--------
-
-Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).
-
-See LICENSE.md for more information.
-
-Developed in cooperation with [WebSpellChecker.net](http://www.webspellchecker.net/).
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/ciframe.html b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/ciframe.html
deleted file mode 100644
index 8e0a10df..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/ciframe.html
+++ /dev/null
@@ -1,66 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
--->
-<html>
-<head>
- <title></title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <script type="text/javascript">
-
-function gup( name )
-{
- name = name.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' ) ;
- var regexS = '[\\?&]' + name + '=([^&#]*)' ;
- var regex = new RegExp( regexS ) ;
- var results = regex.exec( window.location.href ) ;
-
- if ( results )
- return results[ 1 ] ;
- else
- return '' ;
-}
-
-var interval;
-
-function sendData2Master()
-{
- var destination = window.parent.parent ;
- try
- {
- if ( destination.XDTMaster )
- {
- var t = destination.XDTMaster.read( [ gup( 'cmd' ), gup( 'data' ) ] ) ;
- window.clearInterval( interval ) ;
- }
- }
- catch (e) {}
-}
-
-function OnMessage (event) {
- var message = event.data;
- var destination = window.parent.parent;
- destination.XDTMaster.read( [ 'end', message, 'fpm' ] ) ;
-}
-
-function listenPostMessage() {
- if (window.addEventListener) { // all browsers except IE before version 9
- window.addEventListener ("message", OnMessage, false);
- }else {
- if (window.attachEvent) { // IE before version 9
- window.attachEvent("onmessage", OnMessage);
- }
- }
-}
-
-function onLoad()
-{
- interval = window.setInterval( sendData2Master, 100 );
- listenPostMessage();
-}
-
-</script>
-</head>
-<body onload="onLoad()"><p></p></body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/tmpFrameset.html b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/tmpFrameset.html
deleted file mode 100644
index 61203e03..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/tmpFrameset.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
--->
-<html>
-<head>
- <title></title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <script type="text/javascript">
-
-function doLoadScript( url )
-{
- if ( !url )
- return false ;
-
- var s = document.createElement( "script" ) ;
- s.type = "text/javascript" ;
- s.src = url ;
- document.getElementsByTagName( "head" )[ 0 ].appendChild( s ) ;
-
- return true ;
-}
-
-var opener;
-function tryLoad()
-{
- opener = window.parent;
-
- // get access to global parameters
- var oParams = window.opener.oldFramesetPageParams;
-
- // make frameset rows string prepare
- var sFramesetRows = ( parseInt( oParams.firstframeh, 10 ) || '30') + ",*," + ( parseInt( oParams.thirdframeh, 10 ) || '150' ) + ',0' ;
- document.getElementById( 'itFrameset' ).rows = sFramesetRows ;
-
- // dynamic including init frames and crossdomain transport code
- // from config sproxy_js_frameset url
- var addScriptUrl = oParams.sproxy_js_frameset ;
- doLoadScript( addScriptUrl ) ;
-}
-
- </script>
-</head>
-
-<frameset id="itFrameset" onload="tryLoad();" border="0" rows="30,*,*,0">
- <frame scrolling="no" framespacing="0" frameborder="0" noresize="noresize" marginheight="0" marginwidth="2" src="" name="navbar"></frame>
- <frame scrolling="auto" framespacing="0" frameborder="0" noresize="noresize" marginheight="0" marginwidth="0" src="" name="mid"></frame>
- <frame scrolling="no" framespacing="0" frameborder="0" noresize="noresize" marginheight="1" marginwidth="1" src="" name="bot"></frame>
- <frame scrolling="no" framespacing="0" frameborder="0" noresize="noresize" marginheight="1" marginwidth="1" src="" name="spellsuggestall"></frame>
-</frameset>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.css b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.css
deleted file mode 100644
index da2f1743..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.css
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-
-html, body
-{
- background-color: transparent;
- margin: 0px;
- padding: 0px;
-}
-
-body
-{
- padding: 10px;
-}
-
-body, td, input, select, textarea
-{
- font-size: 11px;
- font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
-}
-
-.midtext
-{
- padding:0px;
- margin:10px;
-}
-
-.midtext p
-{
- padding:0px;
- margin:10px;
-}
-
-.Button
-{
- border: #737357 1px solid;
- color: #3b3b1f;
- background-color: #c7c78f;
-}
-
-.PopupTabArea
-{
- color: #737357;
- background-color: #e3e3c7;
-}
-
-.PopupTitleBorder
-{
- border-bottom: #d5d59d 1px solid;
-}
-.PopupTabEmptyArea
-{
- padding-left: 10px;
- border-bottom: #d5d59d 1px solid;
-}
-
-.PopupTab, .PopupTabSelected
-{
- border-right: #d5d59d 1px solid;
- border-top: #d5d59d 1px solid;
- border-left: #d5d59d 1px solid;
- padding: 3px 5px 3px 5px;
- color: #737357;
-}
-
-.PopupTab
-{
- margin-top: 1px;
- border-bottom: #d5d59d 1px solid;
- cursor: pointer;
-}
-
-.PopupTabSelected
-{
- font-weight: bold;
- cursor: default;
- padding-top: 4px;
- border-bottom: #f1f1e3 1px solid;
- background-color: #f1f1e3;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.js b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.js
deleted file mode 100644
index 443145c9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc.js
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-(function(){function y(a){if(!a)throw"Languages-by-groups list are required for construct selectbox";var c=[],d="",f;for(f in a)for(var g in a[f]){var h=a[f][g];"en_US"==h?d=h:c.push(h)}c.sort();d&&c.unshift(d);return{getCurrentLangGroup:function(c){a:{for(var d in a)for(var f in a[d])if(f.toUpperCase()===c.toUpperCase()){c=d;break a}c=""}return c},setLangList:function(){var c={},d;for(d in a)for(var f in a[d])c[a[d][f]]=f;return c}()}}var e=function(){var a=function(a,b,f){var f=f||{},g=f.expires;
-if("number"==typeof g&&g){var h=new Date;h.setTime(h.getTime()+1E3*g);g=f.expires=h}g&&g.toUTCString&&(f.expires=g.toUTCString());var b=encodeURIComponent(b),a=a+"="+b,e;for(e in f)b=f[e],a+="; "+e,!0!==b&&(a+="="+b);document.cookie=a};return{postMessage:{init:function(a){window.addEventListener?window.addEventListener("message",a,!1):window.attachEvent("onmessage",a)},send:function(a){var b=Object.prototype.toString,f=a.fn||null,g=a.id||"",e=a.target||window,i=a.message||{id:g};a.message&&"[object Object]"==
-b.call(a.message)&&(a.message.id||(a.message.id=g),i=a.message);a=window.JSON.stringify(i,f);e.postMessage(a,"*")},unbindHandler:function(a){window.removeEventListener?window.removeEventListener("message",a,!1):window.detachEvent("onmessage",a)}},hash:{create:function(){},parse:function(){}},cookie:{set:a,get:function(a){return(a=document.cookie.match(RegExp("(?:^|; )"+a.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,"\\$1")+"=([^;]*)")))?decodeURIComponent(a[1]):void 0},remove:function(c){a(c,"",{expires:-1})}},
-misc:{findFocusable:function(a){var b=null;a&&(b=a.find("a[href], area[href], input, select, textarea, button, *[tabindex], *[contenteditable]"));return b},isVisible:function(a){return!(0===a.offsetWidth||0==a.offsetHeight||"none"===(document.defaultView&&document.defaultView.getComputedStyle?document.defaultView.getComputedStyle(a,null).display:a.currentStyle?a.currentStyle.display:a.style.display))},hasClass:function(a,b){return!(!a.className||!a.className.match(RegExp("(\\s|^)"+b+"(\\s|$)")))}}}}(),
-a=a||{};a.TextAreaNumber=null;a.load=!0;a.cmd={SpellTab:"spell",Thesaurus:"thes",GrammTab:"grammar"};a.dialog=null;a.optionNode=null;a.selectNode=null;a.grammerSuggest=null;a.textNode={};a.iframeMain=null;a.dataTemp="";a.div_overlay=null;a.textNodeInfo={};a.selectNode={};a.selectNodeResponce={};a.langList=null;a.langSelectbox=null;a.banner="";a.show_grammar=null;a.div_overlay_no_check=null;a.targetFromFrame={};a.onLoadOverlay=null;a.LocalizationComing={};a.OverlayPlace=null;a.LocalizationButton={ChangeTo:{instance:null,
-text:"Change to"},ChangeAll:{instance:null,text:"Change All"},IgnoreWord:{instance:null,text:"Ignore word"},IgnoreAllWords:{instance:null,text:"Ignore all words"},Options:{instance:null,text:"Options",optionsDialog:{instance:null}},AddWord:{instance:null,text:"Add word"},FinishChecking:{instance:null,text:"Finish Checking"}};a.LocalizationLabel={ChangeTo:{instance:null,text:"Change to"},Suggestions:{instance:null,text:"Suggestions"}};var z=function(b){var c,d;for(d in b)c=b[d].instance.getElement().getFirst()||
-b[d].instance.getElement(),c.setText(a.LocalizationComing[d])},A=function(b){for(var c in b){if(!b[c].instance.setLabel)break;b[c].instance.setLabel(a.LocalizationComing[c])}},j,q;a.framesetHtml=function(b){return"<iframe id="+a.iframeNumber+"_"+b+' frameborder="0" allowtransparency="1" style="width:100%;border: 1px solid #AEB3B9;overflow: auto;background:#fff; border-radius: 3px;"></iframe>'};a.setIframe=function(b,c){var d;d=a.framesetHtml(c);var f=a.iframeNumber+"_"+c;b.getElement().setHtml(d);
-d=document.getElementById(f);d=d.contentWindow?d.contentWindow:d.contentDocument.document?d.contentDocument.document:d.contentDocument;d.document.open();d.document.write('<!DOCTYPE html><html><head><meta charset="UTF-8"><title>iframe</title><style>html,body{margin: 0;height: 100%;font: 13px/1.555 "Trebuchet MS", sans-serif;}a{color: #888;font-weight: bold;text-decoration: none;border-bottom: 1px solid #888;}.main-box {color:#252525;padding: 3px 5px;text-align: justify;}.main-box p{margin: 0 0 14px;}.main-box .cerr{color: #f00000;border-bottom-color: #f00000;}</style></head><body><div id="content" class="main-box"></div><iframe src="" frameborder="0" id="spelltext" name="spelltext" style="display:none; width: 100%" ></iframe><iframe src="" frameborder="0" id="loadsuggestfirst" name="loadsuggestfirst" style="display:none; width: 100%" ></iframe><iframe src="" frameborder="0" id="loadspellsuggestall" name="loadspellsuggestall" style="display:none; width: 100%" ></iframe><iframe src="" frameborder="0" id="loadOptionsForm" name="loadOptionsForm" style="display:none; width: 100%" ></iframe><script>(function(window) {var ManagerPostMessage = function() {var _init = function(handler) {if (document.addEventListener) {window.addEventListener("message", handler, false);} else {window.attachEvent("onmessage", handler);};};var _sendCmd = function(o) {var str,type = Object.prototype.toString,fn = o.fn || null,id = o.id || "",target = o.target || window,message = o.message || { "id": id };if (o.message && type.call(o.message) == "[object Object]") {(o.message["id"]) ? o.message["id"] : o.message["id"] = id;message = o.message;};str = JSON.stringify(message, fn);target.postMessage(str, "*");};return {init: _init,send: _sendCmd};};var manageMessageTmp = new ManagerPostMessage;var appString = (function(){var spell = parent.CKEDITOR.config.wsc.DefaultParams.scriptPath;var serverUrl = parent.CKEDITOR.config.wsc.DefaultParams.serviceHost;return serverUrl + spell;})();function loadScript(src, callback) {var scriptTag = document.createElement("script");scriptTag.type = "text/javascript";callback ? callback : callback = function() {};if(scriptTag.readyState) {scriptTag.onreadystatechange = function() {if (scriptTag.readyState == "loaded" ||scriptTag.readyState == "complete") {scriptTag.onreadystatechange = null;setTimeout(function(){scriptTag.parentNode.removeChild(scriptTag)},1);callback();}};}else{scriptTag.onload = function() {setTimeout(function(){scriptTag.parentNode.removeChild(scriptTag)},1);callback();};};scriptTag.src = src;document.getElementsByTagName("head")[0].appendChild(scriptTag);};window.onload = function(){loadScript(appString, function(){manageMessageTmp.send({"id": "iframeOnload","target": window.parent});});}})(this);<\/script></body></html>');
-d.document.close()};a.setCurrentIframe=function(b){a.setIframe(a.dialog._.contents[b].Content,b)};a.setHeightBannerFrame=function(){var b=a.dialog.getContentElement("SpellTab","banner").getElement(),c=a.dialog.getContentElement("GrammTab","banner").getElement(),d=a.dialog.getContentElement("Thesaurus","banner").getElement();b.setStyle("height","90px");c.setStyle("height","90px");d.setStyle("height","90px")};a.setHeightFrame=function(){document.getElementById(a.iframeNumber+"_"+a.dialog._.currentTabId).style.height=
-"240px"};a.sendData=function(b){var c=b._.currentTabId,d=b._.contents[c].Content,f,g;a.setIframe(d,c);var e=function(e){e=e||window.event;e.data.getTarget().is("a")&&c!=b._.currentTabId&&(c=b._.currentTabId,d=b._.contents[c].Content,f=a.iframeNumber+"_"+c,a.div_overlay.setEnable(),d.getElement().getChildCount()?u(a.targetFromFrame[f],a.cmd[c]):(a.setIframe(d,c),g=document.getElementById(f),a.targetFromFrame[f]=g.contentWindow))};b.parts.tabs.removeListener("click",e);b.parts.tabs.on("click",e)};a.buildSelectLang=
-function(a){var c=new CKEDITOR.dom.element("div"),d=new CKEDITOR.dom.element("select"),a="wscLang"+a;c.addClass("cke_dialog_ui_input_select");c.setAttribute("role","presentation");c.setStyles({height:"auto",position:"absolute",right:"0",top:"-1px",width:"160px","white-space":"normal"});d.setAttribute("id",a);d.addClass("cke_dialog_ui_input_select");d.setStyles({width:"160px"});c.append(d);return c};a.buildOptionLang=function(b,c){var d=document.getElementById("wscLang"+c),f=document.createDocumentFragment(),
-g,e,i=[];if(0===d.options.length){for(g in b)i.push([g,b[g]]);i.sort();for(var k=0;k<i.length;k++)g=document.createElement("option"),g.setAttribute("value",i[k][1]),e=document.createTextNode(i[k][0]),g.appendChild(e),i[k][1]==a.selectingLang&&g.setAttribute("selected","selected"),f.appendChild(g);d.appendChild(f)}};a.buildOptionSynonyms=function(b){b=a.selectNodeResponce[b];a.selectNode.synonyms.clear();for(var c=0;c<b.length;c++)a.selectNode.synonyms.add(b[c],b[c]);a.selectNode.synonyms.getInputElement().$.firstChild.selected=
-!0;a.textNode.Thesaurus.setValue(a.selectNode.synonyms.getInputElement().getValue())};var r=function(a){var c=document,d=a.target||c.body,f=a.id||"overlayBlock",e=a.opacity||"0.9",a=a.background||"#f1f1f1",h=c.getElementById(f),i=h||c.createElement("div");i.style.cssText="position: absolute;top:30px;bottom:41px;left:1px;right:1px;z-index: 10020;padding:0;margin:0;background:"+a+";opacity: "+e+";filter: alpha(opacity="+100*e+");display: none;";i.id=f;h||d.appendChild(i);return{setDisable:function(){i.style.display=
-"none"},setEnable:function(){i.style.display="block"}}},B=function(b,c,d){var f=new CKEDITOR.dom.element("div"),e=new CKEDITOR.dom.element("input"),h=new CKEDITOR.dom.element("label"),i="wscGrammerSuggest"+b+"_"+c;f.addClass("cke_dialog_ui_input_radio");f.setAttribute("role","presentation");f.setStyles({width:"97%",padding:"5px","white-space":"normal"});e.setAttributes({type:"radio",value:c,name:"wscGrammerSuggest",id:i});e.setStyles({"float":"left"});e.on("click",function(b){a.textNode.GrammTab.setValue(b.sender.getValue())});
-d&&e.setAttribute("checked",!0);e.addClass("cke_dialog_ui_radio_input");h.appendText(b);h.setAttribute("for",i);h.setStyles({display:"block","line-height":"16px","margin-left":"18px","white-space":"normal"});f.append(e);f.append(h);return f},v=function(a){a=a||"true";null!==a&&"false"==a&&m()},n=function(b){var c=new y(b),b="wscLang"+a.dialog.getParentEditor().name,b=document.getElementById(b),d=a.iframeNumber+"_"+a.dialog._.currentTabId;a.buildOptionLang(c.setLangList,a.dialog.getParentEditor().name);
-w[c.getCurrentLangGroup(a.selectingLang)]();v(a.show_grammar);b.onchange=function(){w[c.getCurrentLangGroup(this.value)]();v(a.show_grammar);a.div_overlay.setEnable();a.selectingLang=this.value;e.postMessage.send({message:{changeLang:a.selectingLang,text:a.dataTemp},target:a.targetFromFrame[d],id:"selectionLang_outer__page"})}},C=function(b){if("no_any_suggestions"==b){b="No suggestions";a.LocalizationButton.ChangeTo.instance.disable();a.LocalizationButton.ChangeAll.instance.disable();var c=function(b){b=
-a.LocalizationButton[b].instance;b.getElement().hasClass("cke_disabled")?b.getElement().setStyle("color","#a0a0a0"):b.disable()};c("ChangeTo");c("ChangeAll")}else a.LocalizationButton.ChangeTo.instance.enable(),a.LocalizationButton.ChangeAll.instance.enable(),a.LocalizationButton.ChangeTo.instance.getElement().setStyle("color","#333"),a.LocalizationButton.ChangeAll.instance.getElement().setStyle("color","#333");return b},E={iframeOnload:function(){a.div_overlay.setEnable();var b=a.dialog._.currentTabId;
-u(a.targetFromFrame[a.iframeNumber+"_"+b],a.cmd[b])},suggestlist:function(b){delete b.id;a.div_overlay_no_check.setDisable();s();n(a.langList);var c=C(b.word),d="";c instanceof Array&&(c=b.word[0]);d=c=c.split(",");q.clear();a.textNode.SpellTab.setValue(d[0]);for(b=0;b<d.length;b++)q.add(d[b],d[b]);l();a.div_overlay.setDisable()},grammerSuggest:function(b){delete b.id;delete b.mocklangs;s();n(a.langList);var c=b.grammSuggest[0];a.grammerSuggest.getElement().setHtml("");a.textNode.GrammTab.reset();
-a.textNode.GrammTab.setValue(c);a.textNodeInfo.GrammTab.getElement().setHtml("");a.textNodeInfo.GrammTab.getElement().setText(b.info);for(var b=b.grammSuggest,c=b.length,d=!0,f=0;f<c;f++)a.grammerSuggest.getElement().append(B(b[f],b[f],d)),d=!1;l();a.div_overlay.setDisable()},thesaurusSuggest:function(b){delete b.id;delete b.mocklangs;s();n(a.langList);a.selectNodeResponce=b;a.textNode.Thesaurus.reset();a.selectNode.categories.clear();for(var c in b)a.selectNode.categories.add(c,c);b=a.selectNode.categories.getInputElement().getChildren().$[0].value;
-a.selectNode.categories.getInputElement().getChildren().$[0].selected=!0;a.buildOptionSynonyms(b);l();a.div_overlay.setDisable()},finish:function(b){delete b.id;D();b=a.dialog.getContentElement(a.dialog._.currentTabId,"BlockFinishChecking").getElement();b.removeStyle("display");b.removeStyle("position");b.removeStyle("left");b.show();a.div_overlay.setDisable()},settext:function(b){delete b.id;a.dialog.getParentEditor().getCommand("checkspell");var c=a.dialog.getParentEditor();try{c.focus()}catch(d){}c.setData(b.text,
-function(){a.dataTemp="";c.unlockSelection();c.fire("saveSnapshot");a.dialog.hide()})},ReplaceText:function(b){delete b.id;a.div_overlay.setEnable();a.dataTemp=b.text;a.selectingLang=b.currentLang;window.setTimeout(function(){try{a.div_overlay.setDisable()}catch(b){}},500);z(a.LocalizationButton);A(a.LocalizationLabel)},options_checkbox_send:function(b){delete b.id;b={osp:e.cookie.get("osp"),udn:e.cookie.get("udn"),cust_dic_ids:a.cust_dic_ids};e.postMessage.send({message:b,target:a.targetFromFrame[a.iframeNumber+
-"_"+a.dialog._.currentTabId],id:"options_outer__page"})},getOptions:function(b){var c=b.DefOptions.udn;a.LocalizationComing=b.DefOptions.localizationButtonsAndText;a.show_grammar=b.show_grammar;a.langList=b.lang;if(a.bnr=b.bannerId){a.setHeightBannerFrame();var d=b.banner;a.dialog.getContentElement(a.dialog._.currentTabId,"banner").getElement().setHtml(d)}else a.setHeightFrame();"undefined"==c&&(a.userDictionaryName?(c=a.userDictionaryName,d={osp:e.cookie.get("osp"),udn:a.userDictionaryName,cust_dic_ids:a.cust_dic_ids,
-id:"options_dic_send",udnCmd:"create"},e.postMessage.send({message:d,target:a.targetFromFrame[void 0]})):c="");e.cookie.set("osp",b.DefOptions.osp);e.cookie.set("udn",c);e.cookie.set("cust_dic_ids",b.DefOptions.cust_dic_ids);e.postMessage.send({id:"giveOptions"})},options_dic_send:function(){var b={osp:e.cookie.get("osp"),udn:e.cookie.get("udn"),cust_dic_ids:a.cust_dic_ids,id:"options_dic_send",udnCmd:e.cookie.get("udnCmd")};e.postMessage.send({message:b,target:a.targetFromFrame[a.iframeNumber+"_"+
-a.dialog._.currentTabId]})},data:function(a){delete a.id},giveOptions:function(){},setOptionsConfirmF:function(){},setOptionsConfirmT:function(){j.setValue("")},clickBusy:function(){a.div_overlay.setEnable()},suggestAllCame:function(){a.div_overlay.setDisable();a.div_overlay_no_check.setDisable()},TextCorrect:function(){n(a.langList)}},x=function(a){a=a||window.event;if((a=window.JSON.parse(a.data))&&a.id)E[a.id](a)},u=function(b,c,d,f){c=c||CKEDITOR.config.wsc_cmd;d=d||a.dataTemp;e.postMessage.send({message:{customerId:a.wsc_customerId,
-text:d,txt_ctrl:a.TextAreaNumber,cmd:c,cust_dic_ids:a.cust_dic_ids,udn:a.userDictionaryName,slang:a.selectingLang,reset_suggest:f||!1},target:b,id:"data_outer__page"});a.div_overlay.setEnable()},w={superset:function(){a.dialog.showPage("Thesaurus");a.dialog.showPage("GrammTab");o()},usual:function(){t();m();o()},rtl:function(){t();m();o()}},F=function(b){var c=new function(a){var b={};return{getCmdByTab:function(c){for(var e in a)b[a[e]]=e;return b[c]}}}(a.cmd);b.selectPage(c.getCmdByTab(CKEDITOR.config.wsc_cmd));
-a.sendData(b)},t=function(){a.dialog.hidePage("Thesaurus")},m=function(){a.dialog.hidePage("GrammTab")},o=function(){a.dialog.showPage("SpellTab")},l=function(){var b=a.dialog.getContentElement(a.dialog._.currentTabId,"bottomGroup").getElement();b.removeStyle("display");b.removeStyle("position");b.removeStyle("left");b.show()},D=function(){var b=a.dialog.getContentElement(a.dialog._.currentTabId,"bottomGroup").getElement(),c=document.activeElement,d;b.setStyles({display:"block",position:"absolute",
-left:"-9999px"});setTimeout(function(){b.removeStyle("display");b.removeStyle("position");b.removeStyle("left");b.hide();a.dialog._.editor.focusManager.currentActive.focusNext();d=e.misc.findFocusable(a.dialog.parts.contents);if(!e.misc.hasClass(c,"cke_dialog_tab")&&!e.misc.hasClass(c,"cke_dialog_contents_body")&&e.misc.isVisible(c))try{c.focus()}catch(f){}else for(var g=0,h;g<d.count();g++)if(h=d.getItem(g),e.misc.isVisible(h.$)){try{h.$.focus()}catch(i){}break}},0)},s=function(){var b=a.dialog.getContentElement(a.dialog._.currentTabId,
-"BlockFinishChecking").getElement(),c=document.activeElement,d;b.setStyles({display:"block",position:"absolute",left:"-9999px"});setTimeout(function(){b.removeStyle("display");b.removeStyle("position");b.removeStyle("left");b.hide();a.dialog._.editor.focusManager.currentActive.focusNext();d=e.misc.findFocusable(a.dialog.parts.contents);if(!e.misc.hasClass(c,"cke_dialog_tab")&&!e.misc.hasClass(c,"cke_dialog_contents_body")&&e.misc.isVisible(c))try{c.focus()}catch(f){}else for(var g=0,h;g<d.count();g++)if(h=
-d.getItem(g),e.misc.isVisible(h.$)){try{h.$.focus()}catch(i){}break}},0)};CKEDITOR.dialog.add("checkspell",function(b){var c=function(){this.getElement().focus();a.div_overlay.setEnable();var c=a.dialog._.currentTabId,f=a.iframeNumber+"_"+c,g=a.textNode[c].getValue(),h=this.getElement().getAttribute("title-cmd");e.postMessage.send({message:{cmd:h,tabId:c,new_word:g},target:a.targetFromFrame[f],id:"cmd_outer__page"});("ChangeTo"==h||"ChangeAll"==h)&&b.fire("saveSnapshot");"FinishChecking"==h&&b.config.wsc_onFinish.call(CKEDITOR.document.getWindow().getFrame())};
-return{title:b.config.wsc_dialogTitle||b.lang.wsc.title,minWidth:560,minHeight:444,buttons:[CKEDITOR.dialog.cancelButton],onLoad:function(){a.dialog=this;t();m();o()},onShow:function(){b.lockSelection(b.getSelection());a.TextAreaNumber="cke_textarea_"+CKEDITOR.currentInstance.name;e.postMessage.init(x);a.dataTemp=CKEDITOR.currentInstance.getData();a.OverlayPlace=a.dialog.parts.tabs.getParent().$;if(CKEDITOR&&CKEDITOR.config){a.wsc_customerId=b.config.wsc_customerId;a.cust_dic_ids=b.config.wsc_customDictionaryIds;
-a.userDictionaryName=b.config.wsc_userDictionaryName;a.defaultLanguage=CKEDITOR.config.defaultLanguage;var c="file:"==document.location.protocol?"http:":document.location.protocol;CKEDITOR.scriptLoader.load(b.config.wsc_customLoaderScript||c+"//loader.webspellchecker.net/sproxy_fck/sproxy.php?plugin=fck2&customerid="+a.wsc_customerId+"&cmd=script&doc=wsc&schema=22",function(c){CKEDITOR.config&&CKEDITOR.config.wsc&&CKEDITOR.config.wsc.DefaultParams?(a.serverLocationHash=CKEDITOR.config.wsc.DefaultParams.serviceHost,
-a.logotype=CKEDITOR.config.wsc.DefaultParams.logoPath,a.loadIcon=CKEDITOR.config.wsc.DefaultParams.iconPath,a.loadIconEmptyEditor=CKEDITOR.config.wsc.DefaultParams.iconPathEmptyEditor,a.LangComparer=new CKEDITOR.config.wsc.DefaultParams._SP_FCK_LangCompare):(a.serverLocationHash=DefaultParams.serviceHost,a.logotype=DefaultParams.logoPath,a.loadIcon=DefaultParams.iconPath,a.loadIconEmptyEditor=DefaultParams.iconPathEmptyEditor,a.LangComparer=new _SP_FCK_LangCompare);a.pluginPath=CKEDITOR.getUrl(b.plugins.wsc.path);
-a.iframeNumber=a.TextAreaNumber;a.templatePath=a.pluginPath+"dialogs/tmp.html";a.LangComparer.setDefaulLangCode(a.defaultLanguage);a.currentLang=b.config.wsc_lang||a.LangComparer.getSPLangCode(b.langCode);a.selectingLang=a.currentLang;a.div_overlay=new r({opacity:"1",background:"#fff url("+a.loadIcon+") no-repeat 50% 50%",target:a.OverlayPlace});var d=a.dialog.parts.tabs.getId(),d=CKEDITOR.document.getById(d);d.setStyle("width","97%");d.getElementsByTag("DIV").count()||d.append(a.buildSelectLang(a.dialog.getParentEditor().name));
-a.div_overlay_no_check=new r({opacity:"1",id:"no_check_over",background:"#fff url("+a.loadIconEmptyEditor+") no-repeat 50% 50%",target:a.OverlayPlace});c&&(F(a.dialog),a.dialog.setupContent(a.dialog))})}else a.dialog.hide()},onHide:function(){var c=CKEDITOR.plugins.scayt,f=b.scayt;b.unlockSelection();c&&(f&&c.state[b.name]&&f.setMarkupPaused)&&f.setMarkupPaused(!1);a.dataTemp="";e.postMessage.unbindHandler(x)},contents:[{id:"SpellTab",label:"SpellChecker",accessKey:"S",elements:[{type:"html",id:"banner",
-label:"banner",style:"",html:"<div></div>"},{type:"html",id:"Content",label:"spellContent",html:"",setup:function(b){var b=a.iframeNumber+"_"+b._.currentTabId,c=document.getElementById(b);a.targetFromFrame[b]=c.contentWindow}},{type:"hbox",id:"bottomGroup",style:"width:560px; margin: 0 auto;",widths:["50%","50%"],children:[{type:"hbox",id:"leftCol",align:"left",width:"50%",children:[{type:"vbox",id:"rightCol1",widths:["50%","50%"],children:[{type:"text",id:"text",label:a.LocalizationLabel.ChangeTo.text+
-":",labelLayout:"horizontal",labelStyle:"font: 12px/25px arial, sans-serif;",width:"140px","default":"",onShow:function(){a.textNode.SpellTab=this;a.LocalizationLabel.ChangeTo.instance=this},onHide:function(){this.reset()}},{type:"hbox",id:"rightCol",align:"right",width:"30%",children:[{type:"vbox",id:"rightCol_col__left",children:[{type:"text",id:"labelSuggestions",label:a.LocalizationLabel.Suggestions.text+":",onShow:function(){a.LocalizationLabel.Suggestions.instance=this;this.getInputElement().setStyles({display:"block",
-position:"absolute",left:"-9999px"})}},{type:"html",id:"logo",html:'<img width="99" height="68" border="0" src="" title="WebSpellChecker.net" alt="WebSpellChecker.net" style="display: inline-block;">',setup:function(){this.getElement().$.src=a.logotype;this.getElement().getParent().setStyles({"text-align":"left"})}}]},{type:"select",id:"list_of_suggestions",labelStyle:"font: 12px/25px arial, sans-serif;",size:"6",inputStyle:"width: 140px; height: auto;",items:[["loading..."]],onShow:function(){q=
-this},onHide:function(){this.clear()},onChange:function(){a.textNode.SpellTab.setValue(this.getValue())}}]}]}]},{type:"hbox",id:"rightCol",align:"right",width:"50%",children:[{type:"vbox",id:"rightCol_col__left",widths:["50%","50%","50%","50%"],children:[{type:"button",id:"ChangeTo",label:a.LocalizationButton.ChangeTo.text,title:"Change to",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.ChangeTo.instance=this},onClick:c},{type:"button",
-id:"ChangeAll",label:a.LocalizationButton.ChangeAll.text,title:"Change All",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.ChangeAll.instance=this},onClick:c},{type:"button",id:"AddWord",label:a.LocalizationButton.AddWord.text,title:"Add word",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.AddWord.instance=this},onClick:c},{type:"button",id:"FinishChecking",label:a.LocalizationButton.FinishChecking.text,
-title:"Finish Checking",style:"width: 100%;margin-top: 9px;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.FinishChecking.instance=this},onClick:c}]},{type:"vbox",id:"rightCol_col__right",widths:["50%","50%","50%"],children:[{type:"button",id:"IgnoreWord",label:a.LocalizationButton.IgnoreWord.text,title:"Ignore word",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.IgnoreWord.instance=this},
-onClick:c},{type:"button",id:"IgnoreAllWords",label:a.LocalizationButton.IgnoreAllWords.text,title:"Ignore all words",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id);a.LocalizationButton.IgnoreAllWords.instance=this},onClick:c},{type:"button",id:"option",label:a.LocalizationButton.Options.text,title:"Option",style:"width: 100%;",onLoad:function(){a.LocalizationButton.Options.instance=this;"file:"==document.location.protocol&&this.disable()},onClick:function(){this.getElement().focus();
-"file:"==document.location.protocol?alert("WSC: Options functionality is disabled when runing from file system"):(p=document.activeElement,b.openDialog("options"))}}]}]}]},{type:"hbox",id:"BlockFinishChecking",style:"width:560px; margin: 0 auto;",widths:["70%","30%"],onShow:function(){this.getElement().setStyles({display:"block",position:"absolute",left:"-9999px"})},onHide:l,children:[{type:"hbox",id:"leftCol",align:"left",width:"70%",children:[{type:"vbox",id:"rightCol1",setup:function(){this.getChild()[0].getElement().$.src=
-a.logotype;this.getChild()[0].getElement().getParent().setStyles({"text-align":"center"})},children:[{type:"html",id:"logo",html:'<img width="99" height="68" border="0" src="" title="WebSpellChecker.net" alt="WebSpellChecker.net" style="display: inline-block;">'}]}]},{type:"hbox",id:"rightCol",align:"right",width:"30%",children:[{type:"vbox",id:"rightCol_col__left",children:[{type:"button",id:"Option_button",label:a.LocalizationButton.Options.text,title:"Option",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",
-this.id);"file:"==document.location.protocol&&this.disable()},onClick:function(){this.getElement().focus();"file:"==document.location.protocol?alert("WSC: Options functionality is disabled when runing from file system"):(p=document.activeElement,b.openDialog("options"))}},{type:"button",id:"FinishChecking",label:a.LocalizationButton.FinishChecking.text,title:"Finish Checking",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c}]}]}]}]},{id:"GrammTab",
-label:"Grammar",accessKey:"G",elements:[{type:"html",id:"banner",label:"banner",style:"",html:"<div></div>"},{type:"html",id:"Content",label:"GrammarContent",html:"",setup:function(){var b=a.iframeNumber+"_"+a.dialog._.currentTabId,c=document.getElementById(b);a.targetFromFrame[b]=c.contentWindow}},{type:"vbox",id:"bottomGroup",style:"width:560px; margin: 0 auto;",children:[{type:"hbox",id:"leftCol",widths:["66%","34%"],children:[{type:"vbox",children:[{type:"text",id:"text",label:"Change to:",labelLayout:"horizontal",
-labelStyle:"font: 12px/25px arial, sans-serif;",inputStyle:"float: right; width: 200px;","default":"",onShow:function(){a.textNode.GrammTab=this},onHide:function(){this.reset()}},{type:"html",id:"html_text",html:"<div style='min-height: 17px; line-height: 17px; padding: 5px; text-align: left;background: #F1F1F1;color: #595959; white-space: normal!important;'></div>",onShow:function(){a.textNodeInfo.GrammTab=this}},{type:"html",id:"radio",html:"",onShow:function(){a.grammerSuggest=this}}]},{type:"vbox",
-children:[{type:"button",id:"ChangeTo",label:"Change to",title:"Change to",style:"width: 133px; float: right;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c},{type:"button",id:"IgnoreWord",label:"Ignore word",title:"Ignore word",style:"width: 133px; float: right;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c},{type:"button",id:"IgnoreAllWords",label:"Ignore Problem",title:"Ignore Problem",style:"width: 133px; float: right;",onLoad:function(){this.getElement().setAttribute("title-cmd",
-this.id)},onClick:c},{type:"button",id:"FinishChecking",label:"Finish Checking",title:"Finish Checking",style:"width: 133px; float: right; margin-top: 9px;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c}]}]}]},{type:"hbox",id:"BlockFinishChecking",style:"width:560px; margin: 0 auto;",widths:["70%","30%"],onShow:function(){this.getElement().setStyles({display:"block",position:"absolute",left:"-9999px"})},onHide:l,children:[{type:"hbox",id:"leftCol",align:"left",width:"70%",
-children:[{type:"vbox",id:"rightCol1",children:[{type:"html",id:"logo",html:'<img width="99" height="68" border="0" src="" title="WebSpellChecker.net" alt="WebSpellChecker.net" style="display: inline-block;">',setup:function(){this.getElement().$.src=a.logotype;this.getElement().getParent().setStyles({"text-align":"center"})}}]}]},{type:"hbox",id:"rightCol",align:"right",width:"30%",children:[{type:"vbox",id:"rightCol_col__left",children:[{type:"button",id:"FinishChecking",label:"Finish Checking",
-title:"Finish Checking",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c}]}]}]}]},{id:"Thesaurus",label:"Thesaurus",accessKey:"T",elements:[{type:"html",id:"banner",label:"banner",style:"",html:"<div></div>"},{type:"html",id:"Content",label:"spellContent",html:"",setup:function(){var b=a.iframeNumber+"_"+a.dialog._.currentTabId,c=document.getElementById(b);a.targetFromFrame[b]=c.contentWindow}},{type:"vbox",id:"bottomGroup",style:"width:560px; margin: -10px auto; overflow: hidden;",
-children:[{type:"hbox",widths:["75%","25%"],children:[{type:"vbox",children:[{type:"hbox",widths:["65%","35%"],children:[{type:"text",id:"ChangeTo",label:"Change to:",labelLayout:"horizontal",inputStyle:"width: 160px;",labelStyle:"font: 12px/25px arial, sans-serif;","default":"",onShow:function(){a.textNode.Thesaurus=this},onHide:function(){this.reset()}},{type:"button",id:"ChangeTo",label:"Change to",title:"Change to",style:"width: 121px; margin-top: 1px;",onLoad:function(){this.getElement().setAttribute("title-cmd",
-this.id)},onClick:c}]},{type:"hbox",children:[{type:"select",id:"categories",label:"Categories:",labelStyle:"font: 12px/25px arial, sans-serif;",size:"5",inputStyle:"width: 180px; height: auto;",items:[],onShow:function(){a.selectNode.categories=this},onHide:function(){this.clear()},onChange:function(){a.buildOptionSynonyms(this.getValue())}},{type:"select",id:"synonyms",label:"Synonyms:",labelStyle:"font: 12px/25px arial, sans-serif;",size:"5",inputStyle:"width: 180px; height: auto;",items:[],onShow:function(){a.selectNode.synonyms=
-this;a.textNode.Thesaurus.setValue(this.getValue())},onHide:function(){this.clear()},onChange:function(){a.textNode.Thesaurus.setValue(this.getValue())}}]}]},{type:"vbox",width:"120px",style:"margin-top:46px;",children:[{type:"html",id:"logotype",label:"WebSpellChecker.net",html:'<img width="99" height="68" border="0" src="" title="WebSpellChecker.net" alt="WebSpellChecker.net" style="display: inline-block;">',setup:function(){this.getElement().$.src=a.logotype;this.getElement().getParent().setStyles({"text-align":"center"})}},
-{type:"button",id:"FinishChecking",label:"Finish Checking",title:"Finish Checking",style:"width: 121px; float: right; margin-top: 9px;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c}]}]}]},{type:"hbox",id:"BlockFinishChecking",style:"width:560px; margin: 0 auto;",widths:["70%","30%"],onShow:function(){this.getElement().setStyles({display:"block",position:"absolute",left:"-9999px"})},children:[{type:"hbox",id:"leftCol",align:"left",width:"70%",children:[{type:"vbox",
-id:"rightCol1",children:[{type:"html",id:"logo",html:'<img width="99" height="68" border="0" src="" title="WebSpellChecker.net" alt="WebSpellChecker.net" style="display: inline-block;">',setup:function(){this.getElement().$.src=a.logotype;this.getElement().getParent().setStyles({"text-align":"center"})}}]}]},{type:"hbox",id:"rightCol",align:"right",width:"30%",children:[{type:"vbox",id:"rightCol_col__left",children:[{type:"button",id:"FinishChecking",label:"Finish Checking",title:"Finish Checking",
-style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onClick:c}]}]}]}]}]}});var p=null;CKEDITOR.dialog.add("options",function(){var b=null,c={},d={},f=null,g=null;e.cookie.get("udn");e.cookie.get("osp");var h=function(){g=this.getElement().getAttribute("title-cmd");var a=[];a[0]=d.IgnoreAllCapsWords;a[1]=d.IgnoreWordsNumbers;a[2]=d.IgnoreMixedCaseWords;a[3]=d.IgnoreDomainNames;a=a.toString().replace(/,/g,"");e.cookie.set("osp",a);e.cookie.set("udnCmd",g?g:"ignore");
-"delete"!=g&&(a="",""!==j.getValue()&&(a=j.getValue()),e.cookie.set("udn",a));e.postMessage.send({id:"options_dic_send"})},i=function(){f.getElement().setHtml(a.LocalizationComing.error);f.getElement().show()};return{title:a.LocalizationComing.Options,minWidth:430,minHeight:130,resizable:CKEDITOR.DIALOG_RESIZE_NONE,contents:[{id:"OptionsTab",label:"Options",accessKey:"O",elements:[{type:"hbox",id:"options_error",children:[{type:"html",style:"display: block;text-align: center;white-space: normal!important; font-size: 12px;color:red",
-html:"<div></div>",onShow:function(){f=this}}]},{type:"vbox",id:"Options_content",children:[{type:"hbox",id:"Options_manager",widths:["52%","48%"],children:[{type:"fieldset",label:"Spell Checking Options",style:"border: none;margin-top: 13px;padding: 10px 0 10px 10px",onShow:function(){this.getInputElement().$.children[0].innerHTML=a.LocalizationComing.SpellCheckingOptions},children:[{type:"vbox",id:"Options_checkbox",children:[{type:"checkbox",id:"IgnoreAllCapsWords",label:"Ignore All-Caps Words",
-labelStyle:"margin-left: 5px; font: 12px/16px arial, sans-serif;display: inline-block;white-space: normal;",style:"float:left; min-height: 16px;","default":"",onClick:function(){d[this.id]=!this.getValue()?0:1}},{type:"checkbox",id:"IgnoreWordsNumbers",label:"Ignore Words with Numbers",labelStyle:"margin-left: 5px; font: 12px/16px arial, sans-serif;display: inline-block;white-space: normal;",style:"float:left; min-height: 16px;","default":"",onClick:function(){d[this.id]=!this.getValue()?0:1}},{type:"checkbox",
-id:"IgnoreMixedCaseWords",label:"Ignore Mixed-Case Words",labelStyle:"margin-left: 5px; font: 12px/16px arial, sans-serif;display: inline-block;white-space: normal;",style:"float:left; min-height: 16px;","default":"",onClick:function(){d[this.id]=!this.getValue()?0:1}},{type:"checkbox",id:"IgnoreDomainNames",label:"Ignore Domain Names",labelStyle:"margin-left: 5px; font: 12px/16px arial, sans-serif;display: inline-block;white-space: normal;",style:"float:left; min-height: 16px;","default":"",onClick:function(){d[this.id]=
-!this.getValue()?0:1}}]}]},{type:"vbox",id:"Options_DictionaryName",children:[{type:"text",id:"DictionaryName",style:"margin-bottom: 10px",label:"Dictionary Name:",labelLayout:"vertical",labelStyle:"font: 12px/25px arial, sans-serif;","default":"",onLoad:function(){j=this;this.setValue(a.userDictionaryName?a.userDictionaryName:(e.cookie.get("udn"),this.getValue()))},onShow:function(){j=this;this.setValue(!e.cookie.get("udn")?this.getValue():e.cookie.get("udn"));this.setLabel(a.LocalizationComing.DictionaryName)},
-onHide:function(){this.reset()}},{type:"hbox",id:"Options_buttons",children:[{type:"vbox",id:"Options_leftCol_col",widths:["50%","50%"],children:[{type:"button",id:"create",label:"Create",title:"Create",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onShow:function(){(this.getElement().getFirst()||this.getElement()).setText(a.LocalizationComing.Create)},onClick:h},{type:"button",id:"restore",label:"Restore",title:"Restore",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",
-this.id)},onShow:function(){(this.getElement().getFirst()||this.getElement()).setText(a.LocalizationComing.Restore)},onClick:h}]},{type:"vbox",id:"Options_rightCol_col",widths:["50%","50%"],children:[{type:"button",id:"rename",label:"Rename",title:"Rename",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onShow:function(){(this.getElement().getFirst()||this.getElement()).setText(a.LocalizationComing.Rename)},onClick:h},{type:"button",id:"delete",label:"Remove",
-title:"Remove",style:"width: 100%;",onLoad:function(){this.getElement().setAttribute("title-cmd",this.id)},onShow:function(){(this.getElement().getFirst()||this.getElement()).setText(a.LocalizationComing.Remove)},onClick:h}]}]}]}]},{type:"hbox",id:"Options_text",children:[{type:"html",style:"text-align: justify;margin-top: 15px;white-space: normal!important; font-size: 12px;color:#777;",html:"<div>"+a.LocalizationComing.OptionsTextIntro+"</div>",onShow:function(){this.getElement().setText(a.LocalizationComing.OptionsTextIntro)}}]}]}]}],
-buttons:[CKEDITOR.dialog.okButton,CKEDITOR.dialog.cancelButton],onOk:function(){var a=[];a[0]=d.IgnoreAllCapsWords;a[1]=d.IgnoreWordsNumbers;a[2]=d.IgnoreMixedCaseWords;a[3]=d.IgnoreDomainNames;a=a.toString().replace(/,/g,"");e.cookie.set("osp",a);e.cookie.set("udn",j.getValue());e.postMessage.send({id:"options_checkbox_send"});f.getElement().hide();f.getElement().setHtml(" ")},onLoad:function(){b=this;c.IgnoreAllCapsWords=b.getContentElement("OptionsTab","IgnoreAllCapsWords");c.IgnoreWordsNumbers=
-b.getContentElement("OptionsTab","IgnoreWordsNumbers");c.IgnoreMixedCaseWords=b.getContentElement("OptionsTab","IgnoreMixedCaseWords");c.IgnoreDomainNames=b.getContentElement("OptionsTab","IgnoreDomainNames")},onShow:function(){e.postMessage.init(i);var b=e.cookie.get("osp").split("");d.IgnoreAllCapsWords=b[0];d.IgnoreWordsNumbers=b[1];d.IgnoreMixedCaseWords=b[2];d.IgnoreDomainNames=b[3];!parseInt(d.IgnoreAllCapsWords,10)?c.IgnoreAllCapsWords.setValue("",!1):c.IgnoreAllCapsWords.setValue("checked",
-!1);!parseInt(d.IgnoreWordsNumbers,10)?c.IgnoreWordsNumbers.setValue("",!1):c.IgnoreWordsNumbers.setValue("checked",!1);!parseInt(d.IgnoreMixedCaseWords,10)?c.IgnoreMixedCaseWords.setValue("",!1):c.IgnoreMixedCaseWords.setValue("checked",!1);!parseInt(d.IgnoreDomainNames,10)?c.IgnoreDomainNames.setValue("",!1):c.IgnoreDomainNames.setValue("checked",!1);d.IgnoreAllCapsWords=!c.IgnoreAllCapsWords.getValue()?0:1;d.IgnoreWordsNumbers=!c.IgnoreWordsNumbers.getValue()?0:1;d.IgnoreMixedCaseWords=!c.IgnoreMixedCaseWords.getValue()?
-0:1;d.IgnoreDomainNames=!c.IgnoreDomainNames.getValue()?0:1;c.IgnoreAllCapsWords.getElement().$.lastChild.innerHTML=a.LocalizationComing.IgnoreAllCapsWords;c.IgnoreWordsNumbers.getElement().$.lastChild.innerHTML=a.LocalizationComing.IgnoreWordsWithNumbers;c.IgnoreMixedCaseWords.getElement().$.lastChild.innerHTML=a.LocalizationComing.IgnoreMixedCaseWords;c.IgnoreDomainNames.getElement().$.lastChild.innerHTML=a.LocalizationComing.IgnoreDomainNames},onHide:function(){e.postMessage.unbindHandler(i);if(p)try{p.focus()}catch(a){}}}});
-CKEDITOR.dialog.on("resize",function(b){var b=b.data,c=b.dialog,d=CKEDITOR.document.getById(a.iframeNumber+"_"+c._.currentTabId);"checkspell"==c._.name&&(a.bnr?d&&d.setSize("height",b.height-310):d&&d.setSize("height",b.height-220))});CKEDITOR.on("dialogDefinition",function(b){if("checkspell"===b.data.name){var c=b.data.definition;a.onLoadOverlay=new r({opacity:"1",background:"#fff",target:c.dialog.parts.tabs.getParent().$});a.onLoadOverlay.setEnable();c.dialog.on("cancel",function(){c.dialog.getParentEditor().config.wsc_onClose.call(this.document.getWindow().getFrame());
-a.div_overlay.setDisable();a.onLoadOverlay.setDisable();return!1},this,null,-1)}})})(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc_ie.js b/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc_ie.js
deleted file mode 100644
index 10487d16..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/plugins/wsc/dialogs/wsc_ie.js
+++ /dev/null
@@ -1,11 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.html or http://ckeditor.com/license
-*/
-CKEDITOR.dialog.add("checkspell",function(a){function c(a,c){var d=0;return function(){"function"==typeof window.doSpell?("undefined"!=typeof e&&window.clearInterval(e),j(a)):180==d++&&window._cancelOnError(c)}}function j(c){var f=new window._SP_FCK_LangCompare,b=CKEDITOR.getUrl(a.plugins.wsc.path+"dialogs/"),e=b+"tmpFrameset.html";window.gFCKPluginName="wsc";f.setDefaulLangCode(a.config.defaultLanguage);window.doSpell({ctrl:g,lang:a.config.wsc_lang||f.getSPLangCode(a.langCode),intLang:a.config.wsc_uiLang||
-f.getSPLangCode(a.langCode),winType:d,onCancel:function(){c.hide()},onFinish:function(b){a.focus();c.getParentEditor().setData(b.value);c.hide()},staticFrame:e,framesetPath:e,iframePath:b+"ciframe.html",schemaURI:b+"wsc.css",userDictionaryName:a.config.wsc_userDictionaryName,customDictionaryName:a.config.wsc_customDictionaryIds&&a.config.wsc_customDictionaryIds.split(","),domainName:a.config.wsc_domainName});CKEDITOR.document.getById(h).setStyle("display","none");CKEDITOR.document.getById(d).setStyle("display",
-"block")}var b=CKEDITOR.tools.getNextNumber(),d="cke_frame_"+b,g="cke_data_"+b,h="cke_error_"+b,e,b=document.location.protocol||"http:",i=a.lang.wsc.notAvailable,k='<textarea style="display: none" id="'+g+'" rows="10" cols="40"> </textarea><div id="'+h+'" style="display:none;color:red;font-size:16px;font-weight:bold;padding-top:160px;text-align:center;z-index:11;"></div><iframe src="" style="width:100%;background-color:#f1f1e3;" frameborder="0" name="'+d+'" id="'+d+'" allowtransparency="1"></iframe>',
-l=a.config.wsc_customLoaderScript||b+"//loader.webspellchecker.net/sproxy_fck/sproxy.php?plugin=fck2&customerid="+a.config.wsc_customerId+"&cmd=script&doc=wsc&schema=22";a.config.wsc_customLoaderScript&&(i+='<p style="color:#000;font-size:11px;font-weight: normal;text-align:center;padding-top:10px">'+a.lang.wsc.errorLoading.replace(/%s/g,a.config.wsc_customLoaderScript)+"</p>");window._cancelOnError=function(c){if("undefined"==typeof window.WSC_Error){CKEDITOR.document.getById(d).setStyle("display",
-"none");var b=CKEDITOR.document.getById(h);b.setStyle("display","block");b.setHtml(c||a.lang.wsc.notAvailable)}};return{title:a.config.wsc_dialogTitle||a.lang.wsc.title,minWidth:485,minHeight:380,buttons:[CKEDITOR.dialog.cancelButton],onShow:function(){var b=this.getContentElement("general","content").getElement();b.setHtml(k);b.getChild(2).setStyle("height",this._.contentSize.height+"px");"function"!=typeof window.doSpell&&CKEDITOR.document.getHead().append(CKEDITOR.document.createElement("script",
-{attributes:{type:"text/javascript",src:l}}));b=a.getData();CKEDITOR.document.getById(g).setValue(b);e=window.setInterval(c(this,i),250)},onHide:function(){window.ooo=void 0;window.int_framsetLoaded=void 0;window.framesetLoaded=void 0;window.is_window_opened=!1},contents:[{id:"general",label:a.config.wsc_dialogTitle||a.lang.wsc.title,padding:0,elements:[{type:"html",id:"content",html:""}]}]}});
-CKEDITOR.dialog.on("resize",function(a){var a=a.data,c=a.dialog;"checkspell"==c._.name&&((c=(c=c.getContentElement("general","content").getElement())&&c.getChild(2))&&c.setSize("height",a.height),c&&c.setSize("width",a.width))}); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/ajax.html b/wqflask/wqflask/static/packages/ckeditor/samples/ajax.html
deleted file mode 100644
index 59333eb1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/ajax.html
+++ /dev/null
@@ -1,82 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Ajax &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
- <script>
-
- var editor, html = '';
-
- function createEditor() {
- if ( editor )
- return;
-
- // Create a new editor inside the <div id="editor">, setting its value to html
- var config = {};
- editor = CKEDITOR.appendTo( 'editor', config, html );
- }
-
- function removeEditor() {
- if ( !editor )
- return;
-
- // Retrieve the editor contents. In an Ajax application, this data would be
- // sent to the server or used in any other way.
- document.getElementById( 'editorcontents' ).innerHTML = html = editor.getData();
- document.getElementById( 'contents' ).style.display = '';
-
- // Destroy the editor.
- editor.destroy();
- editor = null;
- }
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Create and Destroy Editor Instances for Ajax Applications
- </h1>
- <div class="description">
- <p>
- This sample shows how to create and destroy CKEditor instances on the fly. After the removal of CKEditor the content created inside the editing
- area will be displayed in a <code>&lt;div&gt;</code> element.
- </p>
- <p>
- For details of how to create this setup check the source code of this sample page
- for JavaScript code responsible for the creation and destruction of a CKEditor instance.
- </p>
- </div>
- <p>Click the buttons to create and remove a CKEditor instance.</p>
- <p>
- <input onclick="createEditor();" type="button" value="Create Editor">
- <input onclick="removeEditor();" type="button" value="Remove Editor">
- </p>
- <!-- This div will hold the editor. -->
- <div id="editor">
- </div>
- <div id="contents" style="display: none">
- <p>
- Edited Contents:
- </p>
- <!-- This div will be used to display the editor contents. -->
- <div id="editorcontents">
- </div>
- </div>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/api.html b/wqflask/wqflask/static/packages/ckeditor/samples/api.html
deleted file mode 100644
index a957eed0..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/api.html
+++ /dev/null
@@ -1,207 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>API Usage &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
- <script>
-
-// The instanceReady event is fired, when an instance of CKEditor has finished
-// its initialization.
-CKEDITOR.on( 'instanceReady', function( ev ) {
- // Show the editor name and description in the browser status bar.
- document.getElementById( 'eMessage' ).innerHTML = 'Instance <code>' + ev.editor.name + '<\/code> loaded.';
-
- // Show this sample buttons.
- document.getElementById( 'eButtons' ).style.display = 'block';
-});
-
-function InsertHTML() {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
- var value = document.getElementById( 'htmlArea' ).value;
-
- // Check the active editing mode.
- if ( editor.mode == 'wysiwyg' )
- {
- // Insert HTML code.
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertHtml
- editor.insertHtml( value );
- }
- else
- alert( 'You must be in WYSIWYG mode!' );
-}
-
-function InsertText() {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
- var value = document.getElementById( 'txtArea' ).value;
-
- // Check the active editing mode.
- if ( editor.mode == 'wysiwyg' )
- {
- // Insert as plain text.
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-insertText
- editor.insertText( value );
- }
- else
- alert( 'You must be in WYSIWYG mode!' );
-}
-
-function SetContents() {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
- var value = document.getElementById( 'htmlArea' ).value;
-
- // Set editor contents (replace current contents).
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setData
- editor.setData( value );
-}
-
-function GetContents() {
- // Get the editor instance that you want to interact with.
- var editor = CKEDITOR.instances.editor1;
-
- // Get editor contents
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-getData
- alert( editor.getData() );
-}
-
-function ExecuteCommand( commandName ) {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
-
- // Check the active editing mode.
- if ( editor.mode == 'wysiwyg' )
- {
- // Execute the command.
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-execCommand
- editor.execCommand( commandName );
- }
- else
- alert( 'You must be in WYSIWYG mode!' );
-}
-
-function CheckDirty() {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
- // Checks whether the current editor contents present changes when compared
- // to the contents loaded into the editor at startup
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-checkDirty
- alert( editor.checkDirty() );
-}
-
-function ResetDirty() {
- // Get the editor instance that we want to interact with.
- var editor = CKEDITOR.instances.editor1;
- // Resets the "dirty state" of the editor (see CheckDirty())
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-resetDirty
- editor.resetDirty();
- alert( 'The "IsDirty" status has been reset' );
-}
-
-function Focus() {
- CKEDITOR.instances.editor1.focus();
-}
-
-function onFocus() {
- document.getElementById( 'eMessage' ).innerHTML = '<b>' + this.name + ' is focused </b>';
-}
-
-function onBlur() {
- document.getElementById( 'eMessage' ).innerHTML = this.name + ' lost focus';
-}
-
- </script>
-
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Using CKEditor JavaScript API
- </h1>
- <div class="description">
- <p>
- This sample shows how to use the
- <a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.editor">CKEditor JavaScript API</a>
- to interact with the editor at runtime.
- </p>
- <p>
- For details on how to create this setup check the source code of this sample page.
- </p>
- </div>
-
- <!-- This <div> holds alert messages to be display in the sample page. -->
- <div id="alerts">
- <noscript>
- <p>
- <strong>CKEditor requires JavaScript to run</strong>. In a browser with no JavaScript
- support, like yours, you should still see the contents (HTML data) and you should
- be able to edit it normally, without a rich editor interface.
- </p>
- </noscript>
- </div>
- <form action="../../../samples/sample_posteddata.php" method="post">
- <textarea cols="100" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
-
- <script>
- // Replace the <textarea id="editor1"> with an CKEditor instance.
- CKEDITOR.replace( 'editor1', {
- on: {
- focus: onFocus,
- blur: onBlur,
-
- // Check for availability of corresponding plugins.
- pluginsLoaded: function( evt ) {
- var doc = CKEDITOR.document, ed = evt.editor;
- if ( !ed.getCommand( 'bold' ) )
- doc.getById( 'exec-bold' ).hide();
- if ( !ed.getCommand( 'link' ) )
- doc.getById( 'exec-link' ).hide();
- }
- }
- });
- </script>
-
- <p id="eMessage">
- </p>
-
- <div id="eButtons" style="display: none">
- <input id="exec-bold" onclick="ExecuteCommand('bold');" type="button" value="Execute &quot;bold&quot; Command">
- <input id="exec-link" onclick="ExecuteCommand('link');" type="button" value="Execute &quot;link&quot; Command">
- <input onclick="Focus();" type="button" value="Focus">
- <br><br>
- <input onclick="InsertHTML();" type="button" value="Insert HTML">
- <input onclick="SetContents();" type="button" value="Set Editor Contents">
- <input onclick="GetContents();" type="button" value="Get Editor Contents (HTML)">
- <br>
- <textarea cols="100" id="htmlArea" rows="3">&lt;h2&gt;Test&lt;/h2&gt;&lt;p&gt;This is some &lt;a href="/Test1.html"&gt;sample&lt;/a&gt; HTML code.&lt;/p&gt;</textarea>
- <br>
- <br>
- <input onclick="InsertText();" type="button" value="Insert Text">
- <br>
- <textarea cols="100" id="txtArea" rows="3"> First line with some leading whitespaces.
-
-Second line of text preceded by two line breaks.</textarea>
- <br>
- <br>
- <input onclick="CheckDirty();" type="button" value="checkDirty()">
- <input onclick="ResetDirty();" type="button" value="resetDirty()">
- </div>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/appendto.html b/wqflask/wqflask/static/packages/ckeditor/samples/appendto.html
deleted file mode 100644
index b8467702..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/appendto.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Append To Page Element Using JavaScript Code &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Append To Page Element Using JavaScript Code
- </h1>
- <div id="section1">
- <div class="description">
- <p>
- The <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR-method-appendTo">CKEDITOR.appendTo()</a></code> method serves to to place editors inside existing DOM elements. Unlike <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR-method-replace">CKEDITOR.replace()</a></code>,
- a target container to be replaced is no longer necessary. A new editor
- instance is inserted directly wherever it is desired.
- </p>
-<pre class="samples">CKEDITOR.appendTo( '<em>container_id</em>',
- { /* Configuration options to be used. */ }
- 'Editor content to be used.'
-);</pre>
- </div>
- <script>
-
- // This call can be placed at any point after the
- // DOM element to append CKEditor to or inside the <head><script>
- // in a window.onload event handler.
-
- // Append a CKEditor instance using the default configuration and the
- // provided content to the <div> element of ID "section1".
- CKEDITOR.appendTo( 'section1',
- null,
- '<p>This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p>'
- );
-
- </script>
- </div>
- <br>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/assets/inlineall/logo.png b/wqflask/wqflask/static/packages/ckeditor/samples/assets/inlineall/logo.png
deleted file mode 100644
index b4d5979e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/assets/inlineall/logo.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/assets/outputxhtml/outputxhtml.css b/wqflask/wqflask/static/packages/ckeditor/samples/assets/outputxhtml/outputxhtml.css
deleted file mode 100644
index fa0ff379..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/assets/outputxhtml/outputxhtml.css
+++ /dev/null
@@ -1,204 +0,0 @@
-/*
- * Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- *
- * Styles used by the XHTML 1.1 sample page (xhtml.html).
- */
-
-/**
- * Basic definitions for the editing area.
- */
-body
-{
- font-family: Arial, Verdana, sans-serif;
- font-size: 80%;
- color: #000000;
- background-color: #ffffff;
- padding: 5px;
- margin: 0px;
-}
-
-/**
- * Core styles.
- */
-
-.Bold
-{
- font-weight: bold;
-}
-
-.Italic
-{
- font-style: italic;
-}
-
-.Underline
-{
- text-decoration: underline;
-}
-
-.StrikeThrough
-{
- text-decoration: line-through;
-}
-
-.Subscript
-{
- vertical-align: sub;
- font-size: smaller;
-}
-
-.Superscript
-{
- vertical-align: super;
- font-size: smaller;
-}
-
-/**
- * Font faces.
- */
-
-.FontComic
-{
- font-family: 'Comic Sans MS';
-}
-
-.FontCourier
-{
- font-family: 'Courier New';
-}
-
-.FontTimes
-{
- font-family: 'Times New Roman';
-}
-
-/**
- * Font sizes.
- */
-
-.FontSmaller
-{
- font-size: smaller;
-}
-
-.FontLarger
-{
- font-size: larger;
-}
-
-.FontSmall
-{
- font-size: 8pt;
-}
-
-.FontBig
-{
- font-size: 14pt;
-}
-
-.FontDouble
-{
- font-size: 200%;
-}
-
-/**
- * Font colors.
- */
-.FontColor1
-{
- color: #ff9900;
-}
-
-.FontColor2
-{
- color: #0066cc;
-}
-
-.FontColor3
-{
- color: #ff0000;
-}
-
-.FontColor1BG
-{
- background-color: #ff9900;
-}
-
-.FontColor2BG
-{
- background-color: #0066cc;
-}
-
-.FontColor3BG
-{
- background-color: #ff0000;
-}
-
-/**
- * Indentation.
- */
-
-.Indent1
-{
- margin-left: 40px;
-}
-
-.Indent2
-{
- margin-left: 80px;
-}
-
-.Indent3
-{
- margin-left: 120px;
-}
-
-/**
- * Alignment.
- */
-
-.JustifyLeft
-{
- text-align: left;
-}
-
-.JustifyRight
-{
- text-align: right;
-}
-
-.JustifyCenter
-{
- text-align: center;
-}
-
-.JustifyFull
-{
- text-align: justify;
-}
-
-/**
- * Other.
- */
-
-code
-{
- font-family: courier, monospace;
- background-color: #eeeeee;
- padding-left: 1px;
- padding-right: 1px;
- border: #c0c0c0 1px solid;
-}
-
-kbd
-{
- padding: 0px 1px 0px 1px;
- border-width: 1px 2px 2px 1px;
- border-style: solid;
-}
-
-blockquote
-{
- color: #808080;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/assets/posteddata.php b/wqflask/wqflask/static/packages/ckeditor/samples/assets/posteddata.php
deleted file mode 100644
index 6b26aae3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/assets/posteddata.php
+++ /dev/null
@@ -1,59 +0,0 @@
-<!DOCTYPE html>
-<?php
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-?>
-<html>
-<head>
- <meta charset="utf-8">
- <title>Sample &mdash; CKEditor</title>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- CKEditor &mdash; Posted Data
- </h1>
- <table border="1" cellspacing="0" id="outputSample">
- <colgroup><col width="120"></colgroup>
- <thead>
- <tr>
- <th>Field&nbsp;Name</th>
- <th>Value</th>
- </tr>
- </thead>
-<?php
-
-if (!empty($_POST))
-{
- foreach ( $_POST as $key => $value )
- {
- if ( ( !is_string($value) && !is_numeric($value) ) || !is_string($key) )
- continue;
-
- if ( get_magic_quotes_gpc() )
- $value = htmlspecialchars( stripslashes((string)$value) );
- else
- $value = htmlspecialchars( (string)$value );
-?>
- <tr>
- <th style="vertical-align: top"><?php echo htmlspecialchars( (string)$key ); ?></th>
- <td><pre class="samples"><?php echo $value; ?></pre></td>
- </tr>
- <?php
- }
-}
-?>
- </table>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/assets/sample.jpg b/wqflask/wqflask/static/packages/ckeditor/samples/assets/sample.jpg
deleted file mode 100644
index 9498271c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/assets/sample.jpg
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/assets/uilanguages/languages.js b/wqflask/wqflask/static/packages/ckeditor/samples/assets/uilanguages/languages.js
deleted file mode 100644
index 3f7ff624..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/assets/uilanguages/languages.js
+++ /dev/null
@@ -1,7 +0,0 @@
-/*
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-var CKEDITOR_LANGS=function(){var c={af:"Afrikaans",ar:"Arabic",bg:"Bulgarian",bn:"Bengali/Bangla",bs:"Bosnian",ca:"Catalan",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English","en-au":"English (Australia)","en-ca":"English (Canadian)","en-gb":"English (United Kingdom)",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",fa:"Persian",fi:"Finnish",fo:"Faroese",fr:"French","fr-ca":"French (Canada)",gl:"Galician",gu:"Gujarati",he:"Hebrew",hi:"Hindi",hr:"Croatian",hu:"Hungarian",id:"Indonesian",
-is:"Icelandic",it:"Italian",ja:"Japanese",ka:"Georgian",km:"Khmer",ko:"Korean",ku:"Kurdish",lt:"Lithuanian",lv:"Latvian",mk:"Macedonian",mn:"Mongolian",ms:"Malay",nb:"Norwegian Bokmal",nl:"Dutch",no:"Norwegian",pl:"Polish",pt:"Portuguese (Portugal)","pt-br":"Portuguese (Brazil)",ro:"Romanian",ru:"Russian",si:"Sinhala",sk:"Slovak",sq:"Albanian",sl:"Slovenian",sr:"Serbian (Cyrillic)","sr-latn":"Serbian (Latin)",sv:"Swedish",th:"Thai",tr:"Turkish",tt:"Tatar",ug:"Uighur",uk:"Ukrainian",vi:"Vietnamese",
-zh:"Chinese Traditional","zh-cn":"Chinese Simplified"},b=[],a;for(a in CKEDITOR.lang.languages)b.push({code:a,name:c[a]||a});b.sort(function(a,b){return a.name<b.name?-1:1});return b}(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/datafiltering.html b/wqflask/wqflask/static/packages/ckeditor/samples/datafiltering.html
deleted file mode 100644
index 7f2f2a73..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/datafiltering.html
+++ /dev/null
@@ -1,401 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Data Filtering &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
- <script>
- // Remove advanced tabs for all editors.
- CKEDITOR.config.removeDialogTabs = 'image:advanced;link:advanced;flash:advanced;creatediv:advanced;editdiv:advanced';
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Data Filtering and Features Activation
- </h1>
- <div class="description">
- <p>
- This sample page demonstrates the idea of Advanced Content Filter
- (<abbr title="Advanced Content Filter">ACF</abbr>), a sophisticated
- tool that takes control over what kind of data is accepted by the editor and what
- kind of output is produced.
- </p>
- <h2>When and what is being filtered?</h2>
- <p>
- <abbr title="Advanced Content Filter">ACF</abbr> controls
- <strong>every single source of data</strong> that comes to the editor.
- It process both HTML that is inserted manually (i.e. pasted by the user)
- and programmatically like:
- </p>
-<pre class="samples">
-editor.setData( '&lt;p&gt;Hello world!&lt;/p&gt;' );
-</pre>
- <p>
- <abbr title="Advanced Content Filter">ACF</abbr> discards invalid,
- useless HTML tags and attributes so the editor remains "clean" during
- runtime. <abbr title="Advanced Content Filter">ACF</abbr> behaviour
- can be configured and adjusted for a particular case to prevent the
- output HTML (i.e. in CMS systems) from being polluted.
-
- This kind of filtering is a first, client-side line of defense
- against "<a href="http://en.wikipedia.org/wiki/Tag_soup">tag soups</a>",
- the tool that precisely restricts which tags, attributes and styles
- are allowed (desired). When properly configured, <abbr title="Advanced Content Filter">ACF</abbr>
- is an easy and fast way to produce a high-quality, intentionally filtered HTML.
- </p>
-
- <h3>How to configure or disable ACF?</h3>
- <p>
- Advanced Content Filter is enabled by default, working in "automatic mode", yet
- it provides a set of easy rules that allow adjusting filtering rules
- and disabling the entire feature when necessary. The config property
- responsible for this feature is <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">config.allowedContent</a></code>.
- </p>
- <p>
- By "automatic mode" is meant that loaded plugins decide which kind
- of content is enabled and which is not. For example, if the link
- plugin is loaded it implies that <code>&lt;a&gt;</code> tag is
- automatically allowed. Each plugin is given a set
- of predefined <abbr title="Advanced Content Filter">ACF</abbr> rules
- that control the editor until <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
- config.allowedContent</a></code>
- is defined manually.
- </p>
- <p>
- Let's assume our intention is to restrict the editor to accept (produce) <strong>paragraphs
- only: no attributes, no styles, no other tags</strong>.
- With <abbr title="Advanced Content Filter">ACF</abbr>
- this is very simple. Basically set <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
- config.allowedContent</a></code> to <code>'p'</code>:
- </p>
-<pre class="samples">
-var editor = CKEDITOR.replace( <em>textarea_id</em>, {
- <strong>allowedContent: 'p'</strong>
-} );
-</pre>
- <p>
- Now try to play with allowed content:
- </p>
-<pre class="samples">
-// Trying to insert disallowed tag and attribute.
-editor.setData( '&lt;p <strong>style="color: red"</strong>&gt;Hello <strong>&lt;em&gt;world&lt;/em&gt;</strong>!&lt;/p&gt;' );
-alert( editor.getData() );
-
-// Filtered data is returned.
-"&lt;p&gt;Hello world!&lt;/p&gt;"
-</pre>
- <p>
- What happened? Since <code>config.allowedContent: 'p'</code> is set the editor assumes
- that only plain <code>&lt;p&gt;</code> are accepted. Nothing more. This is why
- <code>style</code> attribute and <code>&lt;em&gt;</code> tag are gone. The same
- filtering would happen if we pasted disallowed HTML into this editor.
- </p>
- <p>
- This is just a small sample of what <abbr title="Advanced Content Filter">ACF</abbr>
- can do. To know more, please refer to the sample section below and
- <a href="http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter">the official Advanced Content Filter guide</a>.
- </p>
- <p>
- You may, of course, want CKEditor to avoid filtering of any kind.
- To get rid of <abbr title="Advanced Content Filter">ACF</abbr>,
- basically set <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
- config.allowedContent</a></code> to <code>true</code> like this:
- </p>
-<pre class="samples">
-CKEDITOR.replace( <em>textarea_id</em>, {
- <strong>allowedContent: true</strong>
-} );
-</pre>
-
- <h2>Beyond data flow: Features activation</h2>
- <p>
- <abbr title="Advanced Content Filter">ACF</abbr> is far more than
- <abbr title="Input/Output">I/O</abbr> control: the entire
- <abbr title="User Interface">UI</abbr> of the editor is adjusted to what
- filters restrict. For example: if <code>&lt;a&gt;</code> tag is
- <strong>disallowed</strong>
- by <abbr title="Advanced Content Filter">ACF</abbr>,
- then accordingly <code>link</code> command, toolbar button and link dialog
- are also disabled. Editor is smart: it knows which features must be
- removed from the interface to match filtering rules.
- </p>
- <p>
- CKEditor can be far more specific. If <code>&lt;a&gt;</code> tag is
- <strong>allowed</strong> by filtering rules to be used but it is restricted
- to have only one attribute (<code>href</code>)
- <code>config.allowedContent = 'a[!href]'</code>, then
- "Target" tab of the link dialog is automatically disabled as <code>target</code>
- attribute isn't included in <abbr title="Advanced Content Filter">ACF</abbr> rules
- for <code>&lt;a&gt;</code>. This behaviour applies to dialog fields, context
- menus and toolbar buttons.
- </p>
-
- <h2>Sample configurations</h2>
- <p>
- There are several editor instances below that present different
- <abbr title="Advanced Content Filter">ACF</abbr> setups. <strong>All of them,
- except the last inline instance, share the same HTML content</strong> to visualize
- how different filtering rules affect the same input data.
- </p>
- </div>
-
- <div>
- <label for="editor1">
- Editor 1:
- </label>
- <div class="description">
- <p>
- This editor is using default configuration ("automatic mode"). It means that
- <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
- config.allowedContent</a></code> is defined by loaded plugins.
- Each plugin extends filtering rules to make it's own associated content
- available for the user.
- </p>
- </div>
- <textarea cols="80" id="editor1" name="editor1" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
-
- <script>
-
- CKEDITOR.replace( 'editor1' );
-
- </script>
- </div>
-
- <br>
-
- <div>
- <label for="editor2">
- Editor 2:
- </label>
- <div class="description">
- <p>
- This editor is using a custom configuration for
- <abbr title="Advanced Content Filter">ACF</abbr>:
- </p>
-<pre class="samples">
-CKEDITOR.replace( 'editor2', {
- allowedContent:
- 'h1 h2 h3 p blockquote strong em;' +
- 'a[!href];' +
- 'img(left,right)[!src,alt,width,height];' +
- 'table tr th td caption;' +
- 'span{!font-family};' +'
- 'span{!color};' +
- 'span(!marker);' +
- 'del ins'
-} );
-</pre>
- <p>
- The following rules may require additional explanation:
- </p>
- <ul>
- <li>
- <code>h1 h2 h3 p blockquote strong em</code> - These tags
- are accepted by the editor. Any tag attributes will be discarded.
- </li>
- <li>
- <code>a[!href]</code> - <code>href</code> attribute is obligatory
- for <code>&lt;a&gt;</code> tag. Tags without this attribute
- are disarded. No other attribute will be accepted.
- </li>
- <li>
- <code>img(left,right)[!src,alt,width,height]</code> - <code>src</code>
- attribute is obligatory for <code>&lt;img&gt;</code> tag.
- <code>alt</code>, <code>width</code>, <code>height</code>
- and <code>class</code> attributes are accepted but
- <code>class</code> must be either <code>class="left"</code>
- or <code>class="right"</code>
- </li>
- <li>
- <code>table tr th td caption</code> - These tags
- are accepted by the editor. Any tag attributes will be discarded.
- </li>
- <li>
- <code>span{!font-family}</code>, <code>span{!color}</code>,
- <code>span(!marker)</code> - <code>&lt;span&gt;</code> tags
- will be accepted if either <code>font-family</code> or
- <code>color</code> style is set or <code>class="marker"</code>
- is present.
- </li>
- <li>
- <code>del ins</code> - These tags
- are accepted by the editor. Any tag attributes will be discarded.
- </li>
- </ul>
- <p>
- Please note that <strong><abbr title="User Interface">UI</abbr> of the
- editor is different</strong>. It's a response to what happened to the filters.
- Since <code>text-align</code> isn't allowed, the align toolbar is gone.
- The same thing happened to subscript/superscript, strike, underline
- (<code>&lt;u&gt;</code>, <code>&lt;sub&gt;</code>, <code>&lt;sup&gt;</code>
- are disallowed by <code><a class="samples"
- href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
- config.allowedContent</a></code>) and many other buttons.
- </p>
- </div>
- <textarea cols="80" id="editor2" name="editor2" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- <script>
-
- CKEDITOR.replace( 'editor2', {
- allowedContent:
- 'h1 h2 h3 p blockquote strong em;' +
- 'a[!href];' +
- 'img(left,right)[!src,alt,width,height];' +
- 'table tr th td caption;' +
- 'span{!font-family};' +
- 'span{!color};' +
- 'span(!marker);' +
- 'del ins'
- } );
-
- </script>
- </div>
-
- <br>
-
- <div>
- <label for="editor3">
- Editor 3:
- </label>
- <div class="description">
- <p>
- This editor is using a custom configuration for
- <abbr title="Advanced Content Filter">ACF</abbr>.
- Note that filters can be configured as an object literal
- as an alternative to a string-based definition.
- </p>
-<pre class="samples">
-CKEDITOR.replace( 'editor3', {
- allowedContent: {
- 'b i ul ol big small': true,
- 'h1 h2 h3 p blockquote li': {
- styles: 'text-align'
- },
- a: { attributes: '!href,target' },
- img: {
- attributes: '!src,alt',
- styles: 'width,height',
- classes: 'left,right'
- }
- }
-} );
-</pre>
- </div>
- <textarea cols="80" id="editor3" name="editor3" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- <script>
-
- CKEDITOR.replace( 'editor3', {
- allowedContent: {
- 'b i ul ol big small': true,
- 'h1 h2 h3 p blockquote li': {
- styles: 'text-align'
- },
- a: { attributes: '!href,target' },
- img: {
- attributes: '!src,alt',
- styles: 'width,height',
- classes: 'left,right'
- }
- }
- } );
-
- </script>
- </div>
-
- <br>
-
- <div>
- <label for="editor4">
- Editor 4:
- </label>
- <div class="description">
- <p>
- This editor is using a custom set of plugins and buttons.
- </p>
-<pre class="samples">
-CKEDITOR.replace( 'editor4', {
- removePlugins: 'bidi,font,forms,flash,horizontalrule,iframe,justify,table,tabletools,smiley',
- removeButtons: 'Anchor,Underline,Strike,Subscript,Superscript,Image',
- format_tags: 'p;h1;h2;h3;pre;address'
-} );
-</pre>
- <p>
- As you can see, removing plugins and buttons implies filtering.
- Several tags are not allowed in the editor because there's no
- plugin/button that is responsible for creating and editing this
- kind of content (for example: the image is missing because
- of <code>removeButtons: 'Image'</code>). The conclusion is that
- <abbr title="Advanced Content Filter">ACF</abbr> works "backwards"
- as well: <strong>modifying <abbr title="User Interface">UI</abbr>
- elements is changing allowed content rules</strong>.
- </p>
- </div>
- <textarea cols="80" id="editor4" name="editor4" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- <script>
-
- CKEDITOR.replace( 'editor4', {
- removePlugins: 'bidi,div,font,forms,flash,horizontalrule,iframe,justify,table,tabletools,smiley',
- removeButtons: 'Anchor,Underline,Strike,Subscript,Superscript,Image',
- format_tags: 'p;h1;h2;h3;pre;address'
- } );
-
- </script>
- </div>
-
- <br>
-
- <div>
- <label for="editor5">
- Editor 5:
- </label>
- <div class="description">
- <p>
- This editor is built on editable <code>&lt;h1&gt;</code> element.
- <abbr title="Advanced Content Filter">ACF</abbr> takes care of
- what can be included in <code>&lt;h1&gt;</code>. Note that there
- are no block styles in Styles combo. Also why lists, indentation,
- blockquote, div, form and other buttons are missing.
- </p>
- <p>
- <abbr title="Advanced Content Filter">ACF</abbr> makes sure that
- no disallowed tags will come to <code>&lt;h1&gt;</code> so the final
- markup is valid. If the user tried to paste some invalid HTML
- into this editor (let's say a list), it would be automatically
- converted into plain text.
- </p>
- </div>
- <h1 id="editor5" contenteditable="true">
- <em>Apollo 11</em> was the spaceflight that landed the first humans, Americans <a href="http://en.wikipedia.org/wiki/Neil_Armstrong" title="Neil Armstrong">Neil Armstrong</a> and <a href="http://en.wikipedia.org/wiki/Buzz_Aldrin" title="Buzz Aldrin">Buzz Aldrin</a>, on the Moon on July 20, 1969, at 20:18 UTC.
- </h1>
- </div>
-
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/divreplace.html b/wqflask/wqflask/static/packages/ckeditor/samples/divreplace.html
deleted file mode 100644
index 873c8c2e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/divreplace.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Replace DIV &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- div.editable
- {
- border: solid 2px transparent;
- padding-left: 15px;
- padding-right: 15px;
- }
-
- div.editable:hover
- {
- border-color: black;
- }
-
- </style>
- <script>
-
- // Uncomment the following code to test the "Timeout Loading Method".
- // CKEDITOR.loadFullCoreTimeout = 5;
-
- window.onload = function() {
- // Listen to the double click event.
- if ( window.addEventListener )
- document.body.addEventListener( 'dblclick', onDoubleClick, false );
- else if ( window.attachEvent )
- document.body.attachEvent( 'ondblclick', onDoubleClick );
-
- };
-
- function onDoubleClick( ev ) {
- // Get the element which fired the event. This is not necessarily the
- // element to which the event has been attached.
- var element = ev.target || ev.srcElement;
-
- // Find out the div that holds this element.
- var name;
-
- do {
- element = element.parentNode;
- }
- while ( element && ( name = element.nodeName.toLowerCase() ) &&
- ( name != 'div' || element.className.indexOf( 'editable' ) == -1 ) && name != 'body' );
-
- if ( name == 'div' && element.className.indexOf( 'editable' ) != -1 )
- replaceDiv( element );
- }
-
- var editor;
-
- function replaceDiv( div ) {
- if ( editor )
- editor.destroy();
-
- editor = CKEDITOR.replace( div );
- }
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Replace DIV with CKEditor on the Fly
- </h1>
- <div class="description">
- <p>
- This sample shows how to automatically replace <code>&lt;div&gt;</code> elements
- with a CKEditor instance on the fly, following user's doubleclick. The content
- that was previously placed inside the <code>&lt;div&gt;</code> element will now
- be moved into CKEditor editing area.
- </p>
- <p>
- For details on how to create this setup check the source code of this sample page.
- </p>
- </div>
- <p>
- Double-click any of the following <code>&lt;div&gt;</code> elements to transform them into
- editor instances.
- </p>
- <div class="editable">
- <h3>
- Part 1
- </h3>
- <p>
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi
- semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna
- rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla
- nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce
- eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus.
- </p>
- </div>
- <div class="editable">
- <h3>
- Part 2
- </h3>
- <p>
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi
- semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna
- rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla
- nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce
- eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus.
- </p>
- <p>
- Donec velit. Mauris massa. Vestibulum non nulla. Nam suscipit arcu nec elit. Phasellus
- sollicitudin iaculis ante. Ut non mauris et sapien tincidunt adipiscing. Vestibulum
- vitae leo. Suspendisse nec mi tristique nulla laoreet vulputate.
- </p>
- </div>
- <div class="editable">
- <h3>
- Part 3
- </h3>
- <p>
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras et ipsum quis mi
- semper accumsan. Integer pretium dui id massa. Suspendisse in nisl sit amet urna
- rutrum imperdiet. Nulla eu tellus. Donec ante nisi, ullamcorper quis, fringilla
- nec, sagittis eleifend, pede. Nulla commodo interdum massa. Donec id metus. Fusce
- eu ipsum. Suspendisse auctor. Phasellus fermentum porttitor risus.
- </p>
- </div>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/index.html b/wqflask/wqflask/static/packages/ckeditor/samples/index.html
deleted file mode 100644
index 09e08bde..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/index.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>CKEditor Samples</title>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- CKEditor Samples
- </h1>
- <div class="twoColumns">
- <div class="twoColumnsLeft">
- <h2 class="samples">
- Basic Samples
- </h2>
- <dl class="samples">
- <dt><a class="samples" href="replacebyclass.html">Replace textarea elements by class name</a></dt>
- <dd>Automatic replacement of all textarea elements of a given class with a CKEditor instance.</dd>
-
- <dt><a class="samples" href="replacebycode.html">Replace textarea elements by code</a></dt>
- <dd>Replacement of textarea elements with CKEditor instances by using a JavaScript call.</dd>
-
- <dt><a class="samples" href="jquery.html">Create editors with jQuery</a></dt>
- <dd>Creating standard and inline CKEditor instances with jQuery adapter.</dd>
- </dl>
-
- <h2 class="samples">
- Basic Customization
- </h2>
- <dl class="samples">
- <dt><a class="samples" href="uicolor.html">User Interface color</a></dt>
- <dd>Changing CKEditor User Interface color and adding a toolbar button that lets the user set the UI color.</dd>
-
- <dt><a class="samples" href="uilanguages.html">User Interface languages</a></dt>
- <dd>Changing CKEditor User Interface language and adding a drop-down list that lets the user choose the UI language.</dd>
- </dl>
-
-
- <h2 class="samples">Plugins</h2>
-<dl class="samples">
-<dt><a class="samples" href="plugins/magicline/magicline.html">Magicline plugin</a></dt>
-<dd>Using the Magicline plugin to access difficult focus spaces.</dd>
-
-<dt><a class="samples" href="plugins/wysiwygarea/fullpage.html">Full page support</a></dt>
-<dd>CKEditor inserted with a JavaScript call and used to edit the whole page from &lt;html&gt; to &lt;/html&gt;.</dd>
-</dl>
- </div>
- <div class="twoColumnsRight">
- <h2 class="samples">
- Inline Editing
- </h2>
- <dl class="samples">
- <dt><a class="samples" href="inlineall.html">Massive inline editor creation</a></dt>
- <dd>Turn all elements with <code>contentEditable = true</code> attribute into inline editors.</dd>
-
- <dt><a class="samples" href="inlinebycode.html">Convert element into an inline editor by code</a></dt>
- <dd>Conversion of DOM elements into inline CKEditor instances by using a JavaScript call.</dd>
-
- <dt><a class="samples" href="inlinetextarea.html">Replace textarea with inline editor</a> <span class="new">New!</span></dt>
- <dd>A form with a textarea that is replaced by an inline editor at runtime.</dd>
-
-
- </dl>
-
- <h2 class="samples">
- Advanced Samples
- </h2>
- <dl class="samples">
- <dt><a class="samples" href="datafiltering.html">Data filtering and features activation</a> <span class="new">New!</span></dt>
- <dd>Data filtering and automatic features activation basing on configuration.</dd>
-
- <dt><a class="samples" href="divreplace.html">Replace DIV elements on the fly</a></dt>
- <dd>Transforming a <code>div</code> element into an instance of CKEditor with a mouse click.</dd>
-
- <dt><a class="samples" href="appendto.html">Append editor instances</a></dt>
- <dd>Appending editor instances to existing DOM elements.</dd>
-
- <dt><a class="samples" href="ajax.html">Create and destroy editor instances for Ajax applications</a></dt>
- <dd>Creating and destroying CKEditor instances on the fly and saving the contents entered into the editor window.</dd>
-
- <dt><a class="samples" href="api.html">Basic usage of the API</a></dt>
- <dd>Using the CKEditor JavaScript API to interact with the editor at runtime.</dd>
-
- <dt><a class="samples" href="xhtmlstyle.html">XHTML-compliant style</a></dt>
- <dd>Configuring CKEditor to produce XHTML 1.1 compliant attributes and styles.</dd>
-
- <dt><a class="samples" href="readonly.html">Read-only mode</a></dt>
- <dd>Using the readOnly API to block introducing changes to the editor contents.</dd>
-
- <dt><a class="samples" href="tabindex.html">"Tab" key-based navigation</a></dt>
- <dd>Navigating among editor instances with tab key.</dd>
-
-
-
-<dt><a class="samples" href="plugins/dialog/dialog.html">Using the JavaScript API to customize dialog windows</a></dt>
-<dd>Using the dialog windows API to customize dialog windows without changing the original editor code.</dd>
-
-<dt><a class="samples" href="plugins/enterkey/enterkey.html">Using the &quot;Enter&quot; key in CKEditor</a></dt>
-<dd>Configuring the behavior of <em>Enter</em> and <em>Shift+Enter</em> keys.</dd>
-
-<dt><a class="samples" href="plugins/htmlwriter/outputforflash.html">Output for Flash</a></dt>
-<dd>Configuring CKEditor to produce HTML code that can be used with Adobe Flash.</dd>
-
-<dt><a class="samples" href="plugins/htmlwriter/outputhtml.html">Output HTML</a></dt>
-<dd>Configuring CKEditor to produce legacy HTML 4 code.</dd>
-
-<dt><a class="samples" href="plugins/toolbar/toolbar.html">Toolbar Configurations</a></dt>
-<dd>Configuring CKEditor to display full or custom toolbar layout.</dd>
-
- </dl>
- </div>
- </div>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/inlineall.html b/wqflask/wqflask/static/packages/ckeditor/samples/inlineall.html
deleted file mode 100644
index f82af1db..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/inlineall.html
+++ /dev/null
@@ -1,311 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Massive inline editing &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <script>
-
- // This code is generally not necessary, but it is here to demonstrate
- // how to customize specific editor instances on the fly. This fits well
- // this demo because we have editable elements (like headers) that
- // require less features.
-
- // The "instanceCreated" event is fired for every editor instance created.
- CKEDITOR.on( 'instanceCreated', function( event ) {
- var editor = event.editor,
- element = editor.element;
-
- // Customize editors for headers and tag list.
- // These editors don't need features like smileys, templates, iframes etc.
- if ( element.is( 'h1', 'h2', 'h3' ) || element.getAttribute( 'id' ) == 'taglist' ) {
- // Customize the editor configurations on "configLoaded" event,
- // which is fired after the configuration file loading and
- // execution. This makes it possible to change the
- // configurations before the editor initialization takes place.
- editor.on( 'configLoaded', function() {
-
- // Remove unnecessary plugins to make the editor simpler.
- editor.config.removePlugins = 'colorbutton,find,flash,font,' +
- 'forms,iframe,image,newpage,removeformat,' +
- 'smiley,specialchar,stylescombo,templates';
-
- // Rearrange the layout of the toolbar.
- editor.config.toolbarGroups = [
- { name: 'editing', groups: [ 'basicstyles', 'links' ] },
- { name: 'undo' },
- { name: 'clipboard', groups: [ 'selection', 'clipboard' ] },
- { name: 'about' }
- ];
- });
- }
- });
-
- </script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- /* The following styles are just to make the page look nice. */
-
- /* Workaround to show Arial Black in Firefox. */
- @font-face
- {
- font-family: 'arial-black';
- src: local('Arial Black');
- }
-
- *[contenteditable="true"]
- {
- padding: 10px;
- }
-
- #container
- {
- width: 960px;
- margin: 30px auto 0;
- }
-
- #header
- {
- overflow: hidden;
- padding: 0 0 30px;
- border-bottom: 5px solid #05B2D2;
- position: relative;
- }
-
- #headerLeft,
- #headerRight
- {
- width: 49%;
- overflow: hidden;
- }
-
- #headerLeft
- {
- float: left;
- padding: 10px 1px 1px;
- }
-
- #headerLeft h2,
- #headerLeft h3
- {
- text-align: right;
- margin: 0;
- overflow: hidden;
- font-weight: normal;
- }
-
- #headerLeft h2
- {
- font-family: "Arial Black",arial-black;
- font-size: 4.6em;
- line-height: 1.1;
- text-transform: uppercase;
- }
-
- #headerLeft h3
- {
- font-size: 2.3em;
- line-height: 1.1;
- margin: .2em 0 0;
- color: #666;
- }
-
- #headerRight
- {
- float: right;
- padding: 1px;
- }
-
- #headerRight p
- {
- line-height: 1.8;
- text-align: justify;
- margin: 0;
- }
-
- #headerRight p + p
- {
- margin-top: 20px;
- }
-
- #headerRight > div
- {
- padding: 20px;
- margin: 0 0 0 30px;
- font-size: 1.4em;
- color: #666;
- }
-
- #columns
- {
- color: #333;
- overflow: hidden;
- padding: 20px 0;
- }
-
- #columns > div
- {
- float: left;
- width: 33.3%;
- }
-
- #columns #column1 > div
- {
- margin-left: 1px;
- }
-
- #columns #column3 > div
- {
- margin-right: 1px;
- }
-
- #columns > div > div
- {
- margin: 0px 10px;
- padding: 10px 20px;
- }
-
- #columns blockquote
- {
- margin-left: 15px;
- }
-
- #tagLine
- {
- border-top: 5px solid #05B2D2;
- padding-top: 20px;
- }
-
- #taglist {
- display: inline-block;
- margin-left: 20px;
- font-weight: bold;
- margin: 0 0 0 20px;
- }
-
- </style>
-</head>
-<body>
-<div>
- <h1 class="samples"><a href="index.html">CKEditor Samples</a> &raquo; Massive inline editing</h1>
- <div class="description">
- <p>This sample page demonstrates the inline editing feature - CKEditor instances will be created automatically from page elements with <strong>contentEditable</strong> attribute set to value <strong>true</strong>:</p>
- <pre class="samples">&lt;div <strong>contenteditable="true</strong>" &gt; ... &lt;/div&gt;</pre>
- <p>Click inside of any element below to start editing.</p>
- </div>
-</div>
-<div id="container">
- <div id="header">
- <div id="headerLeft">
- <h2 id="sampleTitle" contenteditable="true">
- CKEditor<br> Goes Inline!
- </h2>
- <h3 contenteditable="true">
- Lorem ipsum dolor sit amet dolor duis blandit vestibulum faucibus a, tortor.
- </h3>
- </div>
- <div id="headerRight">
- <div contenteditable="true">
- <p>
- Lorem ipsum dolor sit amet enim. Etiam ullamcorper. Suspendisse a pellentesque dui, non felis. Maecenas malesuada elit lectus felis, malesuada ultricies.
- </p>
- <p>
- Curabitur et ligula. Ut molestie a, ultricies porta urna. Vestibulum commodo volutpat a, convallis ac, laoreet enim. Phasellus fermentum in, dolor. Pellentesque facilisis. Nulla imperdiet sit amet magna. Vestibulum dapibus, mauris nec malesuada fames ac.
- </p>
- </div>
- </div>
- </div>
- <div id="columns">
- <div id="column1">
- <div contenteditable="true">
- <h3>
- Fusce vitae porttitor
- </h3>
- <p>
- <strong>
- Lorem ipsum dolor sit amet dolor. Duis blandit vestibulum faucibus a, tortor.
- </strong>
- </p>
- <p>
- Proin nunc justo felis mollis tincidunt, risus risus pede, posuere cubilia Curae, Nullam euismod, enim. Etiam nibh ultricies dolor ac dignissim erat volutpat. Vivamus fermentum <a href="http://ckeditor.com/">nisl nulla sem in</a> metus. Maecenas wisi. Donec nec erat volutpat.
- </p>
- <blockquote>
- <p>
- Fusce vitae porttitor a, euismod convallis nisl, blandit risus tortor, pretium.
- Vehicula vitae, imperdiet vel, ornare enim vel sodales rutrum
- </p>
- </blockquote>
- <blockquote>
- <p>
- Libero nunc, rhoncus ante ipsum non ipsum. Nunc eleifend pede turpis id sollicitudin fringilla. Phasellus ultrices, velit ac arcu.
- </p>
- </blockquote>
- <p>Pellentesque nunc. Donec suscipit erat. Pellentesque habitant morbi tristique ullamcorper.</p>
- <p><s>Mauris mattis feugiat lectus nec mauris. Nullam vitae ante.</s></p>
- </div>
- </div>
- <div id="column2">
- <div contenteditable="true">
- <h3>
- Integer condimentum sit amet
- </h3>
- <p>
- <strong>Aenean nonummy a, mattis varius. Cras aliquet.</strong>
- Praesent <a href="http://ckeditor.com/">magna non mattis ac, rhoncus nunc</a>, rhoncus eget, cursus pulvinar mollis.</p>
- <p>Proin id nibh. Sed eu libero posuere sed, lectus. Phasellus dui gravida gravida feugiat mattis ac, felis.</p>
- <p>Integer condimentum sit amet, tempor elit odio, a dolor non ante at sapien. Sed ac lectus. Nulla ligula quis eleifend mi, id leo velit pede cursus arcu id nulla ac lectus. Phasellus vestibulum. Nunc viverra enim quis diam.</p>
- </div>
- <div contenteditable="true">
- <h3>
- Praesent wisi accumsan sit amet nibh
- </h3>
- <p>Donec ullamcorper, risus tortor, pretium porttitor. Morbi quam quis lectus non leo.</p>
- <p style="margin-left: 40px; ">Integer faucibus scelerisque. Proin faucibus at, aliquet vulputate, odio at eros. Fusce <a href="http://ckeditor.com/">gravida, erat vitae augue</a>. Fusce urna fringilla gravida.</p>
- <p>In hac habitasse platea dictumst. Praesent wisi accumsan sit amet nibh. Maecenas orci luctus a, lacinia quam sem, posuere commodo, odio condimentum tempor, pede semper risus. Suspendisse pede. In hac habitasse platea dictumst. Nam sed laoreet sit amet erat. Integer.</p>
- </div>
- </div>
- <div id="column3">
- <div contenteditable="true">
- <p>
- <img src="assets/inlineall/logo.png" alt="CKEditor logo" style="float:left">
- </p>
- <p>Quisque justo neque, mattis sed, fermentum ultrices <strong>posuere cubilia Curae</strong>, Vestibulum elit metus, quis placerat ut, lectus. Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis. Fusce porttitor, nulla quis turpis. Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi. Donec odio nec velit ac nunc sit amet, accumsan cursus aliquet. Vestibulum ante sit amet sagittis mi.</p>
- <h3>
- Nullam laoreet vel consectetuer tellus suscipit
- </h3>
- <ul>
- <li>Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis.</li>
- <li>Fusce porttitor, nulla quis turpis. Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi.</li>
- <li>Mauris eget tellus. Donec non felis. Nam eget dolor. Vestibulum enim. Donec.</li>
- </ul>
- <p>Quisque justo neque, mattis sed, <a href="http://ckeditor.com/">fermentum ultrices posuere cubilia</a> Curae, Vestibulum elit metus, quis placerat ut, lectus.</p>
- <p>Nullam laoreet vel, consectetuer tellus suscipit ultricies, hendrerit wisi. Ut sagittis, nunc libero, egestas consequat lobortis velit rutrum ut, faucibus turpis. Fusce porttitor, nulla quis turpis.</p>
- <p>Donec odio nec velit ac nunc sit amet, accumsan cursus aliquet. Vestibulum ante sit amet sagittis mi. Sed in nonummy faucibus turpis. Mauris eget tellus. Donec non felis. Nam eget dolor. Vestibulum enim. Donec.</p>
- </div>
- </div>
- </div>
- <div id="tagLine">
- Tags of this article:
- <p id="taglist" contenteditable="true">
- inline, editing, floating, CKEditor
- </p>
- </div>
-</div>
-<div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">
- http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a>
- - Frederico Knabben. All rights reserved.
- </p>
-</div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/inlinebycode.html b/wqflask/wqflask/static/packages/ckeditor/samples/inlinebycode.html
deleted file mode 100644
index 4e475367..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/inlinebycode.html
+++ /dev/null
@@ -1,121 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Inline Editing by Code &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- #editable
- {
- padding: 10px;
- float: left;
- }
-
- </style>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Inline Editing by Code
- </h1>
- <div class="description">
- <p>
- This sample shows how to create an inline editor instance of CKEditor. It is created
- with a JavaScript call using the following code:
- </p>
-<pre class="samples">
-// This property tells CKEditor to not activate every element with contenteditable=true element.
-CKEDITOR.disableAutoInline = true;
-
-var editor = CKEDITOR.inline( document.getElementById( 'editable' ) );
-</pre>
- <p>
- Note that <code>editable</code> in the code above is the <code>id</code>
- attribute of the <code>&lt;div&gt;</code> element to be converted into an inline instance.
- </p>
- </div>
- <div id="editable" contenteditable="true">
- <h1><img alt="Saturn V carrying Apollo 11" class="right" src="assets/sample.jpg" /> Apollo 11</h1>
-
- <p><b>Apollo 11</b> was the spaceflight that landed the first humans, Americans <a href="http://en.wikipedia.org/wiki/Neil_Armstrong" title="Neil Armstrong">Neil Armstrong</a> and <a href="http://en.wikipedia.org/wiki/Buzz_Aldrin" title="Buzz Aldrin">Buzz Aldrin</a>, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.</p>
-
- <p>Armstrong spent about <s>three and a half</s> two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&nbsp;kg) of lunar material for return to Earth. A third member of the mission, <a href="http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)" title="Michael Collins (astronaut)">Michael Collins</a>, piloted the <a href="http://en.wikipedia.org/wiki/Apollo_Command/Service_Module" title="Apollo Command/Service Module">command</a> spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.</p>
-
- <h2>Broadcasting and <em>quotes</em> <a id="quotes" name="quotes"></a></h2>
-
- <p>Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:</p>
-
- <blockquote>
- <p>One small step for [a] man, one giant leap for mankind.</p>
- </blockquote>
-
- <p>Apollo 11 effectively ended the <a href="http://en.wikipedia.org/wiki/Space_Race" title="Space Race">Space Race</a> and fulfilled a national goal proposed in 1961 by the late U.S. President <a href="http://en.wikipedia.org/wiki/John_F._Kennedy" title="John F. Kennedy">John F. Kennedy</a> in a speech before the United States Congress:</p>
-
- <blockquote>
- <p>[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.</p>
- </blockquote>
-
- <h2>Technical details <a id="tech-details" name="tech-details"></a></h2>
-
- <table align="right" border="1" bordercolor="#ccc" cellpadding="5" cellspacing="0" style="border-collapse:collapse;margin:10px 0 10px 15px;">
- <caption><strong>Mission crew</strong></caption>
- <thead>
- <tr>
- <th scope="col">Position</th>
- <th scope="col">Astronaut</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>Commander</td>
- <td>Neil A. Armstrong</td>
- </tr>
- <tr>
- <td>Command Module Pilot</td>
- <td>Michael Collins</td>
- </tr>
- <tr>
- <td>Lunar Module Pilot</td>
- <td>Edwin &quot;Buzz&quot; E. Aldrin, Jr.</td>
- </tr>
- </tbody>
- </table>
-
- <p>Launched by a <strong>Saturn V</strong> rocket from <a href="http://en.wikipedia.org/wiki/Kennedy_Space_Center" title="Kennedy Space Center">Kennedy Space Center</a> in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of <a href="http://en.wikipedia.org/wiki/NASA" title="NASA">NASA</a>&#39;s Apollo program. The Apollo spacecraft had three parts:</p>
-
- <ol>
- <li><strong>Command Module</strong> with a cabin for the three astronauts which was the only part which landed back on Earth</li>
- <li><strong>Service Module</strong> which supported the Command Module with propulsion, electrical power, oxygen and water</li>
- <li><strong>Lunar Module</strong> for landing on the Moon.</li>
- </ol>
-
- <p>After being sent to the Moon by the Saturn V&#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the <a href="http://en.wikipedia.org/wiki/Mare_Tranquillitatis" title="Mare Tranquillitatis">Sea of Tranquility</a>. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the <a href="http://en.wikipedia.org/wiki/Pacific_Ocean" title="Pacific Ocean">Pacific Ocean</a> on July 24.</p>
-
- <hr />
- <p style="text-align: right;"><small>Source: <a href="http://en.wikipedia.org/wiki/Apollo_11">Wikipedia.org</a></small></p>
- </div>
-
- <script>
- // We need to turn off the automatic editor creation first.
- CKEDITOR.disableAutoInline = true;
-
- var editor = CKEDITOR.inline( 'editable' );
- </script>
- <div id="footer">
- <hr>
- <p contenteditable="true">
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">
- http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a>
- - Frederico Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/inlinetextarea.html b/wqflask/wqflask/static/packages/ckeditor/samples/inlinetextarea.html
deleted file mode 100644
index fd27c0f1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/inlinetextarea.html
+++ /dev/null
@@ -1,110 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Replace Textarea with Inline Editor &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- /* Style the CKEditor element to look like a textfield */
- .cke_textarea_inline
- {
- padding: 10px;
- height: 200px;
- overflow: auto;
-
- border: 1px solid gray;
- -webkit-appearance: textfield;
- }
-
- </style>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Replace Textarea with Inline Editor
- </h1>
- <div class="description">
- <p>
- You can also create an inline editor from a <code>textarea</code>
- element. In this case the <code>textarea</code> will be replaced
- by a <code>div</code> element with inline editing enabled.
- </p>
-<pre class="samples">
-// "article-body" is the name of a textarea element.
-var editor = CKEDITOR.inline( 'article-body' );
-</pre>
- </div>
- <form action="sample_posteddata.php" method="post">
- <h2>This is a sample form with some fields</h2>
- <p>
- Title:<br>
- <input type="text" name="title" value="Sample Form"></p>
- <p>
- Article Body (Textarea converted to CKEditor):<br>
- <textarea name="article-body" style="height: 200px">
- &lt;h2&gt;Technical details &lt;a id="tech-details" name="tech-details"&gt;&lt;/a&gt;&lt;/h2&gt;
-
- &lt;table align="right" border="1" bordercolor="#ccc" cellpadding="5" cellspacing="0" style="border-collapse:collapse;margin:10px 0 10px 15px;"&gt;
- &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt;
- &lt;thead&gt;
- &lt;tr&gt;
- &lt;th scope="col"&gt;Position&lt;/th&gt;
- &lt;th scope="col"&gt;Astronaut&lt;/th&gt;
- &lt;/tr&gt;
- &lt;/thead&gt;
- &lt;tbody&gt;
- &lt;tr&gt;
- &lt;td&gt;Commander&lt;/td&gt;
- &lt;td&gt;Neil A. Armstrong&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;Command Module Pilot&lt;/td&gt;
- &lt;td&gt;Michael Collins&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;Lunar Module Pilot&lt;/td&gt;
- &lt;td&gt;Edwin &quot;Buzz&quot; E. Aldrin, Jr.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;/tbody&gt;
- &lt;/table&gt;
-
- &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href="http://en.wikipedia.org/wiki/Kennedy_Space_Center" title="Kennedy Space Center"&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href="http://en.wikipedia.org/wiki/NASA" title="NASA"&gt;NASA&lt;/a&gt;&#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt;
-
- &lt;ol&gt;
- &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt;
- &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt;
- &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt;
- &lt;/ol&gt;
-
- &lt;p&gt;After being sent to the Moon by the Saturn V&#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href="http://en.wikipedia.org/wiki/Mare_Tranquillitatis" title="Mare Tranquillitatis"&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href="http://en.wikipedia.org/wiki/Pacific_Ocean" title="Pacific Ocean"&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt;
-
- &lt;hr /&gt;
- &lt;p style="text-align: right;"&gt;&lt;small&gt;Source: &lt;a href="http://en.wikipedia.org/wiki/Apollo_11"&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
-
- <script>
- CKEDITOR.inline( 'article-body' );
- </script>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">
- http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a>
- - Frederico Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/jquery.html b/wqflask/wqflask/static/packages/ckeditor/samples/jquery.html
deleted file mode 100644
index 380b8284..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/jquery.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>jQuery Adapter &mdash; CKEditor Sample</title>
- <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
- <script src="../ckeditor.js"></script>
- <script src="../adapters/jquery.js"></script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- #editable
- {
- padding: 10px;
- float: left;
- }
-
- </style>
- <script>
-
- CKEDITOR.disableAutoInline = true;
-
- $( document ).ready( function() {
- $( '#editor1' ).ckeditor(); // Use CKEDITOR.replace() if element is <textarea>.
- $( '#editable' ).ckeditor(); // Use CKEDITOR.inline().
- } );
-
- function setValue() {
- $( '#editor1' ).val( $( 'input#val' ).val() );
- }
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html" id="a-test">CKEditor Samples</a> &raquo; Create Editors with jQuery
- </h1>
- <form action="sample_posteddata.php" method="post">
- <div class="description">
- <p>
- This sample shows how to use the <a href="http://docs.ckeditor.com/#!/guide/dev_jquery">jQuery adapter</a>.
- Note that you have to include both CKEditor and jQuery scripts before including the adapter.
- </p>
-
-<pre class="samples">
-&lt;script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"&gt;&lt;/script&gt;
-&lt;script src="/ckeditor/ckeditor.js"&gt;&lt;/script&gt;
-&lt;script src="/ckeditor/adapters/jquery.js"&gt;&lt;/script&gt;
-</pre>
-
- <p>Then you can replace HTML elements with a CKEditor instance using the <code>ckeditor()</code> method.</p>
-
-<pre class="samples">
-$( document ).ready( function() {
- $( 'textarea#editor1' ).ckeditor();
-} );
-</pre>
- </div>
-
- <h2 class="samples">Inline Example</h2>
-
- <div id="editable" contenteditable="true">
- <p><img alt="Saturn V carrying Apollo 11" class="right" src="assets/sample.jpg"/><b>Apollo 11</b> was the spaceflight that landed the first humans, Americans <a href="http://en.wikipedia.org/wiki/Neil_Armstrong" title="Neil Armstrong">Neil Armstrong</a> and <a href="http://en.wikipedia.org/wiki/Buzz_Aldrin" title="Buzz Aldrin">Buzz Aldrin</a>, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.</p>
- <p>Armstrong spent about <s>three and a half</s> two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&nbsp;kg) of lunar material for return to Earth. A third member of the mission, <a href="http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)" title="Michael Collins (astronaut)">Michael Collins</a>, piloted the <a href="http://en.wikipedia.org/wiki/Apollo_Command/Service_Module" title="Apollo Command/Service Module">command</a> spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.
- <p>Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:</p>
- <blockquote><p>One small step for [a] man, one giant leap for mankind.</p></blockquote> <p>Apollo 11 effectively ended the <a href="http://en.wikipedia.org/wiki/Space_Race" title="Space Race">Space Race</a> and fulfilled a national goal proposed in 1961 by the late U.S. President <a href="http://en.wikipedia.org/wiki/John_F._Kennedy" title="John F. Kennedy">John F. Kennedy</a> in a speech before the United States Congress:</p> <blockquote><p>[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.</p></blockquote>
- </div>
-
- <br style="clear: both">
-
- <h2 class="samples">Classic (iframe-based) Example</h2>
-
- <textarea cols="80" id="editor1" name="editor1" rows="10">
- &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
-
- <p style="overflow: hidden">
- <input style="float: left" type="submit" value="Submit">
- <span style="float: right">
- <input type="text" id="val" value="I'm using jQuery val()!" size="30">
- <input onclick="setValue();" type="button" value="Set value">
- </span>
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/assets/my_dialog.js b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/assets/my_dialog.js
deleted file mode 100644
index 3edd0728..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/assets/my_dialog.js
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- */
-
-CKEDITOR.dialog.add( 'myDialog', function( editor ) {
- return {
- title: 'My Dialog',
- minWidth: 400,
- minHeight: 200,
- contents: [
- {
- id: 'tab1',
- label: 'First Tab',
- title: 'First Tab',
- elements: [
- {
- id: 'input1',
- type: 'text',
- label: 'Text Field'
- },
- {
- id: 'select1',
- type: 'select',
- label: 'Select Field',
- items: [
- [ 'option1', 'value1' ],
- [ 'option2', 'value2' ]
- ]
- }
- ]
- },
- {
- id: 'tab2',
- label: 'Second Tab',
- title: 'Second Tab',
- elements: [
- {
- id: 'button1',
- type: 'button',
- label: 'Button Field'
- }
- ]
- }
- ]
- };
-} );
-
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/dialog.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/dialog.html
deleted file mode 100644
index df09d25b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/dialog/dialog.html
+++ /dev/null
@@ -1,187 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Using API to Customize Dialog Windows &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <link rel="stylesheet" href="../../../samples/sample.css">
- <meta name="ckeditor-sample-name" content="Using the JavaScript API to customize dialog windows">
- <meta name="ckeditor-sample-group" content="Advanced Samples">
- <meta name="ckeditor-sample-description" content="Using the dialog windows API to customize dialog windows without changing the original editor code.">
- <style>
-
- .cke_button__mybutton_icon
- {
- display: none !important;
- }
-
- .cke_button__mybutton_label
- {
- display: inline !important;
- }
-
- </style>
- <script>
-
- CKEDITOR.on( 'instanceCreated', function( ev ){
- var editor = ev.editor;
-
- // Listen for the "pluginsLoaded" event, so we are sure that the
- // "dialog" plugin has been loaded and we are able to do our
- // customizations.
- editor.on( 'pluginsLoaded', function() {
-
- // If our custom dialog has not been registered, do that now.
- if ( !CKEDITOR.dialog.exists( 'myDialog' ) ) {
- // We need to do the following trick to find out the dialog
- // definition file URL path. In the real world, you would simply
- // point to an absolute path directly, like "/mydir/mydialog.js".
- var href = document.location.href.split( '/' );
- href.pop();
- href.push( 'assets/my_dialog.js' );
- href = href.join( '/' );
-
- // Finally, register the dialog.
- CKEDITOR.dialog.add( 'myDialog', href );
- }
-
- // Register the command used to open the dialog.
- editor.addCommand( 'myDialogCmd', new CKEDITOR.dialogCommand( 'myDialog' ) );
-
- // Add the a custom toolbar buttons, which fires the above
- // command..
- editor.ui.add( 'MyButton', CKEDITOR.UI_BUTTON, {
- label: 'My Dialog',
- command: 'myDialogCmd'
- });
- });
- });
-
- // When opening a dialog, its "definition" is created for it, for
- // each editor instance. The "dialogDefinition" event is then
- // fired. We should use this event to make customizations to the
- // definition of existing dialogs.
- CKEDITOR.on( 'dialogDefinition', function( ev ) {
- // Take the dialog name and its definition from the event data.
- var dialogName = ev.data.name;
- var dialogDefinition = ev.data.definition;
-
- // Check if the definition is from the dialog we're
- // interested on (the "Link" dialog).
- if ( dialogName == 'myDialog' && ev.editor.name == 'editor2' ) {
- // Get a reference to the "Link Info" tab.
- var infoTab = dialogDefinition.getContents( 'tab1' );
-
- // Add a new text field to the "tab1" tab page.
- infoTab.add( {
- type: 'text',
- label: 'My Custom Field',
- id: 'customField',
- 'default': 'Sample!',
- validate: function() {
- if ( ( /\d/ ).test( this.getValue() ) )
- return 'My Custom Field must not contain digits';
- }
- });
-
- // Remove the "select1" field from the "tab1" tab.
- infoTab.remove( 'select1' );
-
- // Set the default value for "input1" field.
- var input1 = infoTab.get( 'input1' );
- input1[ 'default' ] = 'www.example.com';
-
- // Remove the "tab2" tab page.
- dialogDefinition.removeContents( 'tab2' );
-
- // Add a new tab to the "Link" dialog.
- dialogDefinition.addContents( {
- id: 'customTab',
- label: 'My Tab',
- accessKey: 'M',
- elements: [
- {
- id: 'myField1',
- type: 'text',
- label: 'My Text Field'
- },
- {
- id: 'myField2',
- type: 'text',
- label: 'Another Text Field'
- }
- ]
- });
-
- // Provide the focus handler to start initial focus in "customField" field.
- dialogDefinition.onFocus = function() {
- var urlField = this.getContentElement( 'tab1', 'customField' );
- urlField.select();
- };
- }
- });
-
- var config = {
- extraPlugins: 'dialog',
- toolbar: [ [ 'MyButton' ] ]
- };
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Using CKEditor Dialog API
- </h1>
- <div class="description">
- <p>
- This sample shows how to use the
- <a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.dialog">CKEditor Dialog API</a>
- to customize CKEditor dialog windows without changing the original editor code.
- The following customizations are being done in the example below:
- </p>
- <p>
- For details on how to create this setup check the source code of this sample page.
- </p>
- </div>
- <p>A custom dialog is added to the editors using the <code>pluginsLoaded</code> event, from an external <a target="_blank" href="assets/my_dialog.js">dialog definition file</a>:</p>
- <ol>
- <li><strong>Creating a custom dialog window</strong> &ndash; "My Dialog" dialog window opened with the "My Dialog" toolbar button.</li>
- <li><strong>Creating a custom button</strong> &ndash; Add button to open the dialog with "My Dialog" toolbar button.</li>
- </ol>
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
- // Replace the <textarea id="editor1"> with an CKEditor instance.
- CKEDITOR.replace( 'editor1', config );
- </script>
- <p>The below editor modify the dialog definition of the above added dialog using the <code>dialogDefinition</code> event:</p>
- <ol>
- <li><strong>Adding dialog tab</strong> &ndash; Add new tab "My Tab" to dialog window.</li>
- <li><strong>Removing a dialog window tab</strong> &ndash; Remove "Second Tab" page from the dialog window.</li>
- <li><strong>Adding dialog window fields</strong> &ndash; Add "My Custom Field" to the dialog window.</li>
- <li><strong>Removing dialog window field</strong> &ndash; Remove "Select Field" selection field from the dialog window.</li>
- <li><strong>Setting default values for dialog window fields</strong> &ndash; Set default value of "Text Field" text field. </li>
- <li><strong>Setup initial focus for dialog window</strong> &ndash; Put initial focus on "My Custom Field" text field. </li>
- </ol>
- <textarea cols="80" id="editor2" name="editor2" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
-
- // Replace the <textarea id="editor1"> with an CKEditor instance.
- CKEDITOR.replace( 'editor2', config );
-
- </script>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/enterkey/enterkey.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/enterkey/enterkey.html
deleted file mode 100644
index 2d515012..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/enterkey/enterkey.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>ENTER Key Configuration &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <link href="../../../samples/sample.css" rel="stylesheet">
- <meta name="ckeditor-sample-name" content="Using the &quot;Enter&quot; key in CKEditor">
- <meta name="ckeditor-sample-group" content="Advanced Samples">
- <meta name="ckeditor-sample-description" content="Configuring the behavior of &lt;em&gt;Enter&lt;/em&gt; and &lt;em&gt;Shift+Enter&lt;/em&gt; keys.">
- <script>
-
- var editor;
-
- function changeEnter() {
- // If we already have an editor, let's destroy it first.
- if ( editor )
- editor.destroy( true );
-
- // Create the editor again, with the appropriate settings.
- editor = CKEDITOR.replace( 'editor1', {
- extraPlugins: 'enterkey',
- enterMode: Number( document.getElementById( 'xEnter' ).value ),
- shiftEnterMode: Number( document.getElementById( 'xShiftEnter' ).value )
- });
- }
-
- window.onload = changeEnter;
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; ENTER Key Configuration
- </h1>
- <div class="description">
- <p>
- This sample shows how to configure the <em>Enter</em> and <em>Shift+Enter</em> keys
- to perform actions specified in the
- <a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-enterMode"><code>enterMode</code></a>
- and <a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-shiftEnterMode"><code>shiftEnterMode</code></a>
- parameters, respectively.
- You can choose from the following options:
- </p>
- <ul class="samples">
- <li><strong><code>ENTER_P</code></strong> &ndash; new <code>&lt;p&gt;</code> paragraphs are created;</li>
- <li><strong><code>ENTER_BR</code></strong> &ndash; lines are broken with <code>&lt;br&gt;</code> elements;</li>
- <li><strong><code>ENTER_DIV</code></strong> &ndash; new <code>&lt;div&gt;</code> blocks are created.</li>
- </ul>
- <p>
- The sample code below shows how to configure CKEditor to create a <code>&lt;div&gt;</code> block when <em>Enter</em> key is pressed.
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- <strong>enterMode: CKEDITOR.ENTER_DIV</strong>
-});</pre>
- <p>
- Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
- the <code>&lt;textarea&gt;</code> element to be replaced.
- </p>
- </div>
- <div style="float: left; margin-right: 20px">
- When <em>Enter</em> is pressed:<br>
- <select id="xEnter" onchange="changeEnter();">
- <option selected="selected" value="1">Create a new &lt;P&gt; (recommended)</option>
- <option value="3">Create a new &lt;DIV&gt;</option>
- <option value="2">Break the line with a &lt;BR&gt;</option>
- </select>
- </div>
- <div style="float: left">
- When <em>Shift+Enter</em> is pressed:<br>
- <select id="xShiftEnter" onchange="changeEnter();">
- <option value="1">Create a new &lt;P&gt;</option>
- <option value="3">Create a new &lt;DIV&gt;</option>
- <option selected="selected" value="2">Break the line with a &lt;BR&gt; (recommended)</option>
- </select>
- </div>
- <br style="clear: both">
- <form action="../../../samples/sample_posteddata.php" method="post">
- <p>
- <br>
- <textarea cols="80" id="editor1" name="editor1" rows="10">This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.</textarea>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla
deleted file mode 100644
index 27e68ccd..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf
deleted file mode 100644
index dbe17b6b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js
deleted file mode 100644
index 95fdf0a7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js
+++ /dev/null
@@ -1,18 +0,0 @@
-var swfobject=function(){function u(){if(!s){try{var a=d.getElementsByTagName("body")[0].appendChild(d.createElement("span"));a.parentNode.removeChild(a)}catch(b){return}s=!0;for(var a=x.length,c=0;c<a;c++)x[c]()}}function L(a){s?a():x[x.length]=a}function M(a){if(typeof m.addEventListener!=i)m.addEventListener("load",a,!1);else if(typeof d.addEventListener!=i)d.addEventListener("load",a,!1);else if(typeof m.attachEvent!=i)U(m,"onload",a);else if("function"==typeof m.onload){var b=m.onload;m.onload=
-function(){b();a()}}else m.onload=a}function V(){var a=d.getElementsByTagName("body")[0],b=d.createElement(r);b.setAttribute("type",y);var c=a.appendChild(b);if(c){var f=0;(function(){if(typeof c.GetVariable!=i){var g=c.GetVariable("$version");g&&(g=g.split(" ")[1].split(","),e.pv=[parseInt(g[0],10),parseInt(g[1],10),parseInt(g[2],10)])}else if(10>f){f++;setTimeout(arguments.callee,10);return}a.removeChild(b);c=null;D()})()}else D()}function D(){var a=p.length;if(0<a)for(var b=0;b<a;b++){var c=p[b].id,
-f=p[b].callbackFn,g={success:!1,id:c};if(0<e.pv[0]){var d=n(c);if(d)if(z(p[b].swfVersion)&&!(e.wk&&312>e.wk))t(c,!0),f&&(g.success=!0,g.ref=E(c),f(g));else if(p[b].expressInstall&&F()){g={};g.data=p[b].expressInstall;g.width=d.getAttribute("width")||"0";g.height=d.getAttribute("height")||"0";d.getAttribute("class")&&(g.styleclass=d.getAttribute("class"));d.getAttribute("align")&&(g.align=d.getAttribute("align"));for(var h={},d=d.getElementsByTagName("param"),j=d.length,k=0;k<j;k++)"movie"!=d[k].getAttribute("name").toLowerCase()&&
-(h[d[k].getAttribute("name")]=d[k].getAttribute("value"));G(g,h,c,f)}else W(d),f&&f(g)}else if(t(c,!0),f){if((c=E(c))&&typeof c.SetVariable!=i)g.success=!0,g.ref=c;f(g)}}}function E(a){var b=null;if((a=n(a))&&"OBJECT"==a.nodeName)typeof a.SetVariable!=i?b=a:(a=a.getElementsByTagName(r)[0])&&(b=a);return b}function F(){return!A&&z("6.0.65")&&(e.win||e.mac)&&!(e.wk&&312>e.wk)}function G(a,b,c,f){A=!0;H=f||null;N={success:!1,id:c};var g=n(c);if(g){"OBJECT"==g.nodeName?(w=I(g),B=null):(w=g,B=c);a.id=
-O;if(typeof a.width==i||!/%$/.test(a.width)&&310>parseInt(a.width,10))a.width="310";if(typeof a.height==i||!/%$/.test(a.height)&&137>parseInt(a.height,10))a.height="137";d.title=d.title.slice(0,47)+" - Flash Player Installation";f=e.ie&&e.win?"ActiveX":"PlugIn";f="MMredirectURL="+m.location.toString().replace(/&/g,"%26")+"&MMplayerType="+f+"&MMdoctitle="+d.title;b.flashvars=typeof b.flashvars!=i?b.flashvars+("&"+f):f;e.ie&&(e.win&&4!=g.readyState)&&(f=d.createElement("div"),c+="SWFObjectNew",f.setAttribute("id",
-c),g.parentNode.insertBefore(f,g),g.style.display="none",function(){g.readyState==4?g.parentNode.removeChild(g):setTimeout(arguments.callee,10)}());J(a,b,c)}}function W(a){if(e.ie&&e.win&&4!=a.readyState){var b=d.createElement("div");a.parentNode.insertBefore(b,a);b.parentNode.replaceChild(I(a),b);a.style.display="none";(function(){4==a.readyState?a.parentNode.removeChild(a):setTimeout(arguments.callee,10)})()}else a.parentNode.replaceChild(I(a),a)}function I(a){var b=d.createElement("div");if(e.win&&
-e.ie)b.innerHTML=a.innerHTML;else if(a=a.getElementsByTagName(r)[0])if(a=a.childNodes)for(var c=a.length,f=0;f<c;f++)!(1==a[f].nodeType&&"PARAM"==a[f].nodeName)&&8!=a[f].nodeType&&b.appendChild(a[f].cloneNode(!0));return b}function J(a,b,c){var f,g=n(c);if(e.wk&&312>e.wk)return f;if(g)if(typeof a.id==i&&(a.id=c),e.ie&&e.win){var o="",h;for(h in a)a[h]!=Object.prototype[h]&&("data"==h.toLowerCase()?b.movie=a[h]:"styleclass"==h.toLowerCase()?o+=' class="'+a[h]+'"':"classid"!=h.toLowerCase()&&(o+=" "+
-h+'="'+a[h]+'"'));h="";for(var j in b)b[j]!=Object.prototype[j]&&(h+='<param name="'+j+'" value="'+b[j]+'" />');g.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+o+">"+h+"</object>";C[C.length]=a.id;f=n(a.id)}else{j=d.createElement(r);j.setAttribute("type",y);for(var k in a)a[k]!=Object.prototype[k]&&("styleclass"==k.toLowerCase()?j.setAttribute("class",a[k]):"classid"!=k.toLowerCase()&&j.setAttribute(k,a[k]));for(o in b)b[o]!=Object.prototype[o]&&"movie"!=o.toLowerCase()&&
-(a=j,h=o,k=b[o],c=d.createElement("param"),c.setAttribute("name",h),c.setAttribute("value",k),a.appendChild(c));g.parentNode.replaceChild(j,g);f=j}return f}function P(a){var b=n(a);b&&"OBJECT"==b.nodeName&&(e.ie&&e.win?(b.style.display="none",function(){if(4==b.readyState){var c=n(a);if(c){for(var f in c)"function"==typeof c[f]&&(c[f]=null);c.parentNode.removeChild(c)}}else setTimeout(arguments.callee,10)}()):b.parentNode.removeChild(b))}function n(a){var b=null;try{b=d.getElementById(a)}catch(c){}return b}
-function U(a,b,c){a.attachEvent(b,c);v[v.length]=[a,b,c]}function z(a){var b=e.pv,a=a.split(".");a[0]=parseInt(a[0],10);a[1]=parseInt(a[1],10)||0;a[2]=parseInt(a[2],10)||0;return b[0]>a[0]||b[0]==a[0]&&b[1]>a[1]||b[0]==a[0]&&b[1]==a[1]&&b[2]>=a[2]?!0:!1}function Q(a,b,c,f){if(!e.ie||!e.mac){var g=d.getElementsByTagName("head")[0];if(g){c=c&&"string"==typeof c?c:"screen";f&&(K=l=null);if(!l||K!=c)f=d.createElement("style"),f.setAttribute("type","text/css"),f.setAttribute("media",c),l=g.appendChild(f),
-e.ie&&(e.win&&typeof d.styleSheets!=i&&0<d.styleSheets.length)&&(l=d.styleSheets[d.styleSheets.length-1]),K=c;e.ie&&e.win?l&&typeof l.addRule==r&&l.addRule(a,b):l&&typeof d.createTextNode!=i&&l.appendChild(d.createTextNode(a+" {"+b+"}"))}}}function t(a,b){if(R){var c=b?"visible":"hidden";s&&n(a)?n(a).style.visibility=c:Q("#"+a,"visibility:"+c)}}function S(a){return null!=/[\\\"<>\.;]/.exec(a)&&typeof encodeURIComponent!=i?encodeURIComponent(a):a}var i="undefined",r="object",y="application/x-shockwave-flash",
-O="SWFObjectExprInst",m=window,d=document,q=navigator,T=!1,x=[function(){T?V():D()}],p=[],C=[],v=[],w,B,H,N,s=!1,A=!1,l,K,R=!0,e=function(){var a=typeof d.getElementById!=i&&typeof d.getElementsByTagName!=i&&typeof d.createElement!=i,b=q.userAgent.toLowerCase(),c=q.platform.toLowerCase(),f=c?/win/.test(c):/win/.test(b),c=c?/mac/.test(c):/mac/.test(b),b=/webkit/.test(b)?parseFloat(b.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):!1,g=!+"\v1",e=[0,0,0],h=null;if(typeof q.plugins!=i&&typeof q.plugins["Shockwave Flash"]==
-r){if((h=q.plugins["Shockwave Flash"].description)&&!(typeof q.mimeTypes!=i&&q.mimeTypes[y]&&!q.mimeTypes[y].enabledPlugin))T=!0,g=!1,h=h.replace(/^.*\s+(\S+\s+\S+$)/,"$1"),e[0]=parseInt(h.replace(/^(.*)\..*$/,"$1"),10),e[1]=parseInt(h.replace(/^.*\.(.*)\s.*$/,"$1"),10),e[2]=/[a-zA-Z]/.test(h)?parseInt(h.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}else if(typeof m.ActiveXObject!=i)try{var j=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if(j&&(h=j.GetVariable("$version")))g=!0,h=h.split(" ")[1].split(","),
-e=[parseInt(h[0],10),parseInt(h[1],10),parseInt(h[2],10)]}catch(k){}return{w3:a,pv:e,wk:b,ie:g,win:f,mac:c}}();(function(){e.w3&&((typeof d.readyState!=i&&"complete"==d.readyState||typeof d.readyState==i&&(d.getElementsByTagName("body")[0]||d.body))&&u(),s||(typeof d.addEventListener!=i&&d.addEventListener("DOMContentLoaded",u,!1),e.ie&&e.win&&(d.attachEvent("onreadystatechange",function(){"complete"==d.readyState&&(d.detachEvent("onreadystatechange",arguments.callee),u())}),m==top&&function(){if(!s){try{d.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,
-0);return}u()}}()),e.wk&&function(){s||(/loaded|complete/.test(d.readyState)?u():setTimeout(arguments.callee,0))}(),M(u)))})();(function(){e.ie&&e.win&&window.attachEvent("onunload",function(){for(var a=v.length,b=0;b<a;b++)v[b][0].detachEvent(v[b][1],v[b][2]);a=C.length;for(b=0;b<a;b++)P(C[b]);for(var c in e)e[c]=null;e=null;for(var f in swfobject)swfobject[f]=null;swfobject=null})})();return{registerObject:function(a,b,c,f){if(e.w3&&a&&b){var d={};d.id=a;d.swfVersion=b;d.expressInstall=c;d.callbackFn=
-f;p[p.length]=d;t(a,!1)}else f&&f({success:!1,id:a})},getObjectById:function(a){if(e.w3)return E(a)},embedSWF:function(a,b,c,d,g,o,h,j,k,m){var n={success:!1,id:b};e.w3&&!(e.wk&&312>e.wk)&&a&&b&&c&&d&&g?(t(b,!1),L(function(){c+="";d+="";var e={};if(k&&typeof k===r)for(var l in k)e[l]=k[l];e.data=a;e.width=c;e.height=d;l={};if(j&&typeof j===r)for(var p in j)l[p]=j[p];if(h&&typeof h===r)for(var q in h)l.flashvars=typeof l.flashvars!=i?l.flashvars+("&"+q+"="+h[q]):q+"="+h[q];if(z(g))p=J(e,l,b),e.id==
-b&&t(b,!0),n.success=!0,n.ref=p;else{if(o&&F()){e.data=o;G(e,l,b,m);return}t(b,!0)}m&&m(n)})):m&&m(n)},switchOffAutoHideShow:function(){R=!1},ua:e,getFlashPlayerVersion:function(){return{major:e.pv[0],minor:e.pv[1],release:e.pv[2]}},hasFlashPlayerVersion:z,createSWF:function(a,b,c){if(e.w3)return J(a,b,c)},showExpressInstall:function(a,b,c,d){e.w3&&F()&&G(a,b,c,d)},removeSWF:function(a){e.w3&&P(a)},createCSS:function(a,b,c,d){e.w3&&Q(a,b,c,d)},addDomLoadEvent:L,addLoadEvent:M,getQueryParamValue:function(a){var b=
-d.location.search||d.location.hash;if(b){/\?/.test(b)&&(b=b.split("?")[1]);if(null==a)return S(b);for(var b=b.split("&"),c=0;c<b.length;c++)if(b[c].substring(0,b[c].indexOf("="))==a)return S(b[c].substring(b[c].indexOf("=")+1))}return""},expressInstallCallback:function(){if(A){var a=n(O);a&&w&&(a.parentNode.replaceChild(w,a),B&&(t(B,!0),e.ie&&e.win&&(w.style.display="block")),H&&H(N));A=!1}}}}(); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputforflash.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputforflash.html
deleted file mode 100644
index 738ad667..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputforflash.html
+++ /dev/null
@@ -1,280 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Output for Flash &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <script src="../../../samples/sample.js"></script>
- <script src="assets/outputforflash/swfobject.js"></script>
- <link href="../../../samples/sample.css" rel="stylesheet">
- <meta name="ckeditor-sample-required-plugins" content="sourcearea">
- <meta name="ckeditor-sample-name" content="Output for Flash">
- <meta name="ckeditor-sample-group" content="Advanced Samples">
- <meta name="ckeditor-sample-description" content="Configuring CKEditor to produce HTML code that can be used with Adobe Flash.">
- <style>
-
- .alert
- {
- background: #ffa84c;
- padding: 10px 15px;
- font-weight: bold;
- display: block;
- margin-bottom: 20px;
- }
-
- </style>
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Producing Flash Compliant HTML Output
- </h1>
- <div class="description">
- <p>
- This sample shows how to configure CKEditor to output
- HTML code that can be used with
- <a class="samples" href="http://www.adobe.com/livedocs/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&amp;file=00000922.html">
- Adobe Flash</a>.
- The code will contain a subset of standard HTML elements like <code>&lt;b&gt;</code>,
- <code>&lt;i&gt;</code>, and <code>&lt;p&gt;</code> as well as HTML attributes.
- </p>
- <p>
- To add a CKEditor instance outputting Flash compliant HTML code, load the editor using a standard
- JavaScript call, and define CKEditor features to use HTML elements and attributes.
- </p>
- <p>
- For details on how to create this setup check the source code of this sample page.
- </p>
- </div>
- <p>
- To see how it works, create some content in the editing area of CKEditor on the left
- and send it to the Flash object on the right side of the page by using the
- <strong>Send to Flash</strong> button.
- </p>
- <table style="width: 100%; border-spacing: 0; border-collapse:collapse;">
- <tr>
- <td style="width: 100%">
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;&lt;b&gt;&lt;font size=&quot;18&quot; style=&quot;font-size:18px;&quot;&gt;Flash and HTML&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;It is possible to have &lt;a href=&quot;http://ckeditor.com&quot;&gt;CKEditor&lt;/a&gt; creating content that will be later loaded inside &lt;b&gt;Flash&lt;/b&gt; objects and animations.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Flash has a few limitations when dealing with HTML:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;It has limited support on tags.&lt;/li&gt;&lt;li&gt;There is no margin between block elements, like paragraphs.&lt;/li&gt;&lt;/ul&gt;</textarea>
- <script>
-
- if ( document.location.protocol == 'file:' )
- alert( 'Warning: This samples does not work when loaded from local filesystem' +
- 'due to security restrictions implemented in Flash.' +
- '\n\nPlease load the sample from a web server instead.' );
-
- var editor = CKEDITOR.replace( 'editor1', {
- /*
- * Ensure that htmlwriter plugin, which is required for this sample, is loaded.
- */
- extraPlugins: 'htmlwriter',
-
- height: 290,
- width: '100%',
- toolbar: [
- [ 'Source', '-', 'Bold', 'Italic', 'Underline', '-', 'BulletedList', '-', 'Link', 'Unlink' ],
- [ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock' ],
- '/',
- [ 'Font', 'FontSize' ],
- [ 'TextColor', '-', 'About' ]
- ],
-
- /*
- * Style sheet for the contents
- */
- contentsCss: 'body {color:#000; background-color#FFF; font-family: Arial; font-size:80%;} p, ol, ul {margin-top: 0px; margin-bottom: 0px;}',
-
- /*
- * Quirks doctype
- */
- docType: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">',
-
- /*
- * Core styles.
- */
- coreStyles_bold: { element: 'b' },
- coreStyles_italic: { element: 'i' },
- coreStyles_underline: { element: 'u' },
-
- /*
- * Font face.
- */
-
- // Define the way font elements will be applied to the document. The "font"
- // element will be used.
- font_style: {
- element: 'font',
- attributes: { 'face': '#(family)' }
- },
-
- /*
- * Font sizes.
- */
-
- // The CSS part of the font sizes isn't used by Flash, it is there to get the
- // font rendered correctly in CKEditor.
- fontSize_sizes: '8px/8;9px/9;10px/10;11px/11;12px/12;14px/14;16px/16;18px/18;20px/20;22px/22;24px/24;26px/26;28px/28;36px/36;48px/48;72px/72',
- fontSize_style: {
- element: 'font',
- attributes: { 'size': '#(size)' },
- styles: { 'font-size': '#(size)px' }
- } ,
-
- /*
- * Font colors.
- */
- colorButton_enableMore: true,
-
- colorButton_foreStyle: {
- element: 'font',
- attributes: { 'color': '#(color)' }
- },
-
- colorButton_backStyle: {
- element: 'font',
- styles: { 'background-color': '#(color)' }
- },
-
- on: { 'instanceReady': configureFlashOutput }
- });
-
- /*
- * Adjust the behavior of the dataProcessor to match the
- * requirements of Flash
- */
- function configureFlashOutput( ev ) {
- var editor = ev.editor,
- dataProcessor = editor.dataProcessor,
- htmlFilter = dataProcessor && dataProcessor.htmlFilter;
-
- // Out self closing tags the HTML4 way, like <br>.
- dataProcessor.writer.selfClosingEnd = '>';
-
- // Make output formatting match Flash expectations
- var dtd = CKEDITOR.dtd;
- for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
- dataProcessor.writer.setRules( e, {
- indent: false,
- breakBeforeOpen: false,
- breakAfterOpen: false,
- breakBeforeClose: false,
- breakAfterClose: false
- });
- }
- dataProcessor.writer.setRules( 'br', {
- indent: false,
- breakBeforeOpen: false,
- breakAfterOpen: false,
- breakBeforeClose: false,
- breakAfterClose: false
- });
-
- // Output properties as attributes, not styles.
- htmlFilter.addRules( {
- elements: {
- $: function( element ) {
- var style, match, width, height, align;
-
- // Output dimensions of images as width and height
- if ( element.name == 'img' ) {
- style = element.attributes.style;
-
- if ( style ) {
- // Get the width from the style.
- match = ( /(?:^|\s)width\s*:\s*(\d+)px/i ).exec( style );
- width = match && match[1];
-
- // Get the height from the style.
- match = ( /(?:^|\s)height\s*:\s*(\d+)px/i ).exec( style );
- height = match && match[1];
-
- if ( width ) {
- element.attributes.style = element.attributes.style.replace( /(?:^|\s)width\s*:\s*(\d+)px;?/i , '' );
- element.attributes.width = width;
- }
-
- if ( height ) {
- element.attributes.style = element.attributes.style.replace( /(?:^|\s)height\s*:\s*(\d+)px;?/i , '' );
- element.attributes.height = height;
- }
- }
- }
-
- // Output alignment of paragraphs using align
- if ( element.name == 'p' ) {
- style = element.attributes.style;
-
- if ( style ) {
- // Get the align from the style.
- match = ( /(?:^|\s)text-align\s*:\s*(\w*);?/i ).exec( style );
- align = match && match[1];
-
- if ( align ) {
- element.attributes.style = element.attributes.style.replace( /(?:^|\s)text-align\s*:\s*(\w*);?/i , '' );
- element.attributes.align = align;
- }
- }
- }
-
- if ( element.attributes.style === '' )
- delete element.attributes.style;
-
- return element;
- }
- }
- });
- }
-
- function sendToFlash() {
- var html = CKEDITOR.instances.editor1.getData() ;
-
- // Quick fix for link color.
- html = html.replace( /<a /g, '<font color="#0000FF"><u><a ' )
- html = html.replace( /<\/a>/g, '</a></u></font>' )
-
- var flash = document.getElementById( 'ckFlashContainer' ) ;
- flash.setData( html ) ;
- }
-
- CKEDITOR.domReady( function() {
- if ( !swfobject.hasFlashPlayerVersion( '8' ) ) {
- CKEDITOR.dom.element.createFromHtml( '<span class="alert">' +
- 'At least Adobe Flash Player 8 is required to run this sample. ' +
- 'You can download it from <a href="http://get.adobe.com/flashplayer">Adobe\'s website</a>.' +
- '</span>' ).insertBefore( editor.element );
- }
-
- swfobject.embedSWF(
- 'assets/outputforflash/outputforflash.swf',
- 'ckFlashContainer',
- '550',
- '400',
- '8',
- { wmode: 'transparent' }
- );
- });
-
- </script>
- <p>
- <input type="button" value="Send to Flash" onclick="sendToFlash();">
- </p>
- </td>
- <td style="vertical-align: top; padding-left: 20px">
- <div id="ckFlashContainer"></div>
- </td>
- </tr>
- </table>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputhtml.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputhtml.html
deleted file mode 100644
index f25697df..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/htmlwriter/outputhtml.html
+++ /dev/null
@@ -1,221 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>HTML Compliant Output &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <script src="../../../samples/sample.js"></script>
- <link href="../../../samples/sample.css" rel="stylesheet">
- <meta name="ckeditor-sample-required-plugins" content="sourcearea">
- <meta name="ckeditor-sample-name" content="Output HTML">
- <meta name="ckeditor-sample-group" content="Advanced Samples">
- <meta name="ckeditor-sample-description" content="Configuring CKEditor to produce legacy HTML 4 code.">
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Producing HTML Compliant Output
- </h1>
- <div class="description">
- <p>
- This sample shows how to configure CKEditor to output valid
- <a class="samples" href="http://www.w3.org/TR/html401/">HTML 4.01</a> code.
- Traditional HTML elements like <code>&lt;b&gt;</code>,
- <code>&lt;i&gt;</code>, and <code>&lt;font&gt;</code> are used in place of
- <code>&lt;strong&gt;</code>, <code>&lt;em&gt;</code>, and CSS styles.
- </p>
- <p>
- To add a CKEditor instance outputting legacy HTML 4.01 code, load the editor using a standard
- JavaScript call, and define CKEditor features to use the HTML compliant elements and attributes.
- </p>
- <p>
- A snippet of the configuration code can be seen below; check the source of this page for
- full definition:
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- coreStyles_bold: { element: 'b' },
- coreStyles_italic: { element: 'i' },
-
- fontSize_style: {
- element: 'font',
- attributes: { 'size': '#(size)' }
- }
-
- ...
-});</pre>
- </div>
- <form action="../../../samples/sample_posteddata.php" method="post">
- <p>
- <label for="editor1">
- Editor 1:
- </label>
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;b&gt;sample text&lt;/b&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
-
- CKEDITOR.replace( 'editor1', {
- /*
- * Ensure that htmlwriter plugin, which is required for this sample, is loaded.
- */
- extraPlugins: 'htmlwriter',
-
- /*
- * Style sheet for the contents
- */
- contentsCss: 'body {color:#000; background-color#:FFF;}',
-
- /*
- * Simple HTML5 doctype
- */
- docType: '<!DOCTYPE HTML>',
-
- /*
- * Allowed content rules which beside limiting allowed HTML
- * will also take care of transforming styles to attributes
- * (currently only for img - see transformation rules defined below).
- *
- * Read more: http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter
- */
- allowedContent:
- 'h1 h2 h3 p pre[align]; ' +
- 'blockquote code kbd samp var del ins cite q b i u strike ul ol li hr table tbody tr td th caption; ' +
- 'img[!src,alt,align,width,height]; font[!face]; font[!family]; font[!color]; font[!size]; font{!background-color}; a[!href]; a[!name]',
-
- /*
- * Core styles.
- */
- coreStyles_bold: { element: 'b' },
- coreStyles_italic: { element: 'i' },
- coreStyles_underline: { element: 'u' },
- coreStyles_strike: { element: 'strike' },
-
- /*
- * Font face.
- */
-
- // Define the way font elements will be applied to the document.
- // The "font" element will be used.
- font_style: {
- element: 'font',
- attributes: { 'face': '#(family)' }
- },
-
- /*
- * Font sizes.
- */
- fontSize_sizes: 'xx-small/1;x-small/2;small/3;medium/4;large/5;x-large/6;xx-large/7',
- fontSize_style: {
- element: 'font',
- attributes: { 'size': '#(size)' }
- },
-
- /*
- * Font colors.
- */
-
- colorButton_foreStyle: {
- element: 'font',
- attributes: { 'color': '#(color)' }
- },
-
- colorButton_backStyle: {
- element: 'font',
- styles: { 'background-color': '#(color)' }
- },
-
- /*
- * Styles combo.
- */
- stylesSet: [
- { name: 'Computer Code', element: 'code' },
- { name: 'Keyboard Phrase', element: 'kbd' },
- { name: 'Sample Text', element: 'samp' },
- { name: 'Variable', element: 'var' },
- { name: 'Deleted Text', element: 'del' },
- { name: 'Inserted Text', element: 'ins' },
- { name: 'Cited Work', element: 'cite' },
- { name: 'Inline Quotation', element: 'q' }
- ],
-
- on: {
- pluginsLoaded: configureTransformations,
- loaded: configureHtmlWriter
- }
- });
-
- /*
- * Add missing content transformations.
- */
- function configureTransformations( evt ) {
- var editor = evt.editor;
-
- editor.dataProcessor.htmlFilter.addRules( {
- attributes: {
- style: function( value, element ) {
- // Return #RGB for background and border colors
- return CKEDITOR.tools.convertRgbToHex( value );
- }
- }
- } );
-
- // Default automatic content transformations do not yet take care of
- // align attributes on blocks, so we need to add our own transformation rules.
- function alignToAttribute( element ) {
- if ( element.styles[ 'text-align' ] ) {
- element.attributes.align = element.styles[ 'text-align' ];
- delete element.styles[ 'text-align' ];
- }
- }
- editor.filter.addTransformations( [
- [ { element: 'p', right: alignToAttribute } ],
- [ { element: 'h1', right: alignToAttribute } ],
- [ { element: 'h2', right: alignToAttribute } ],
- [ { element: 'h3', right: alignToAttribute } ],
- [ { element: 'pre', right: alignToAttribute } ]
- ] );
- }
-
- /*
- * Adjust the behavior of htmlWriter to make it output HTML like FCKeditor.
- */
- function configureHtmlWriter( evt ) {
- var editor = evt.editor,
- dataProcessor = editor.dataProcessor;
-
- // Out self closing tags the HTML4 way, like <br>.
- dataProcessor.writer.selfClosingEnd = '>';
-
- // Make output formatting behave similar to FCKeditor.
- var dtd = CKEDITOR.dtd;
- for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) {
- dataProcessor.writer.setRules( e, {
- indent: true,
- breakBeforeOpen: true,
- breakAfterOpen: false,
- breakBeforeClose: !dtd[ e ][ '#' ],
- breakAfterClose: true
- });
- }
- }
-
- </script>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/magicline/magicline.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/magicline/magicline.html
deleted file mode 100644
index 800fbb3b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/magicline/magicline.html
+++ /dev/null
@@ -1,206 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Using Magicline plugin &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <link rel="stylesheet" href="../../../samples/sample.css">
- <meta name="ckeditor-sample-name" content="Magicline plugin">
- <meta name="ckeditor-sample-group" content="Plugins">
- <meta name="ckeditor-sample-description" content="Using the Magicline plugin to access difficult focus spaces.">
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Using Magicline plugin
- </h1>
- <div class="description">
- <p>
- This sample shows the advantages of <strong>Magicline</strong> plugin
- which is to enhance the editing process. Thanks to this plugin,
- a number of difficult focus spaces which are inaccessible due to
- browser issues can now be focused.
- </p>
- <p>
- <strong>Magicline</strong> plugin shows a red line with a handler
- which, when clicked, inserts a paragraph and allows typing. To see this,
- focus an editor and move your mouse above the focus space you want
- to access. The plugin is enabled by default so no additional
- configuration is necessary.
- </p>
- </div>
- <div>
- <label for="editor1">
- Editor 1:
- </label>
- <div class="description">
- <p>
- This editor uses a default <strong>Magicline</strong> setup.
- </p>
- </div>
- <textarea cols="80" id="editor1" name="editor1" rows="10">
- &lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 100%; &quot;&gt;
- &lt;tbody&gt;
- &lt;tr&gt;
- &lt;td&gt;This table&lt;/td&gt;
- &lt;td&gt;is the&lt;/td&gt;
- &lt;td&gt;very first&lt;/td&gt;
- &lt;td&gt;element of the document.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;We are still&lt;/td&gt;
- &lt;td&gt;able to acces&lt;/td&gt;
- &lt;td&gt;the space before it.&lt;/td&gt;
- &lt;td&gt;
- &lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 100%; &quot;&gt;
- &lt;tbody&gt;
- &lt;tr&gt;
- &lt;td&gt;This table is inside of a cell of another table.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;We can type&amp;nbsp;either before or after it though.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;/tbody&gt;
- &lt;/table&gt;
- &lt;/td&gt;
- &lt;/tr&gt;
- &lt;/tbody&gt;
- &lt;/table&gt;
-
- &lt;p&gt;Two succesive horizontal lines (&lt;tt&gt;HR&lt;/tt&gt; tags). We can access the space in between:&lt;/p&gt;
-
- &lt;hr /&gt;
- &lt;hr /&gt;
- &lt;ol&gt;
- &lt;li&gt;This numbered list...&lt;/li&gt;
- &lt;li&gt;...is a neighbour of a horizontal line...&lt;/li&gt;
- &lt;li&gt;...and another list.&lt;/li&gt;
- &lt;/ol&gt;
-
- &lt;ul&gt;
- &lt;li&gt;We can type between the lists...&lt;/li&gt;
- &lt;li&gt;...thanks to &lt;strong&gt;Magicline&lt;/strong&gt;.&lt;/li&gt;
- &lt;/ul&gt;
-
- &lt;p&gt;Lorem ipsum dolor sit amet dui. Morbi vel turpis. Nullam et leo. Etiam rutrum, urna tellus dui vel tincidunt mattis egestas, justo fringilla vel, massa. Phasellus.&lt;/p&gt;
-
- &lt;p&gt;Quisque iaculis, dui lectus varius vitae, tortor. Proin lacus. Pellentesque ac lacus. Aenean nonummy commodo nec, pede. Etiam blandit risus elit.&lt;/p&gt;
-
- &lt;p&gt;Ut pretium. Vestibulum rutrum in, adipiscing elit. Sed in quam in purus sem vitae pede. Pellentesque bibendum, urna sem vel risus. Vivamus posuere metus. Aliquam gravida iaculis nisl. Nam enim. Aliquam erat ac lacus tellus ac felis.&lt;/p&gt;
-
- &lt;div style=&quot;border: 2px dashed green; background: #ddd; text-align: center;&quot;&gt;
- &lt;p&gt;This text is wrapped in a&amp;nbsp;&lt;tt&gt;DIV&lt;/tt&gt;&amp;nbsp;element. We can type after this element though.&lt;/p&gt;
- &lt;/div&gt;
- </textarea>
- <script>
-
- // This call can be placed at any point after the
- // <textarea>, or inside a <head><script> in a
- // window.onload event handler.
-
- CKEDITOR.replace( 'editor1', {
- extraPlugins: 'magicline', // Ensure that magicline plugin, which is required for this sample, is loaded.
- allowedContent: true // Switch off the ACF, so very complex content created to
- // show magicline's power isn't filtered.
- } );
-
- </script>
- </div>
- <br>
- <div>
- <label for="editor2">
- Editor 2:
- </label>
- <div class="description">
- <p>
- This editor is using a blue line.
- </p>
-<pre class="samples">
-CKEDITOR.replace( 'editor2', {
- magicline_color: 'blue'
-});</pre>
- </div>
- <textarea cols="80" id="editor2" name="editor2" rows="10">
- &lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 100%; &quot;&gt;
- &lt;tbody&gt;
- &lt;tr&gt;
- &lt;td&gt;This table&lt;/td&gt;
- &lt;td&gt;is the&lt;/td&gt;
- &lt;td&gt;very first&lt;/td&gt;
- &lt;td&gt;element of the document.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;We are still&lt;/td&gt;
- &lt;td&gt;able to acces&lt;/td&gt;
- &lt;td&gt;the space before it.&lt;/td&gt;
- &lt;td&gt;
- &lt;table border=&quot;1&quot; cellpadding=&quot;1&quot; cellspacing=&quot;1&quot; style=&quot;width: 100%; &quot;&gt;
- &lt;tbody&gt;
- &lt;tr&gt;
- &lt;td&gt;This table is inside of a cell of another table.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;tr&gt;
- &lt;td&gt;We can type&amp;nbsp;either before or after it though.&lt;/td&gt;
- &lt;/tr&gt;
- &lt;/tbody&gt;
- &lt;/table&gt;
- &lt;/td&gt;
- &lt;/tr&gt;
- &lt;/tbody&gt;
- &lt;/table&gt;
-
- &lt;p&gt;Two succesive horizontal lines (&lt;tt&gt;HR&lt;/tt&gt; tags). We can access the space in between:&lt;/p&gt;
-
- &lt;hr /&gt;
- &lt;hr /&gt;
- &lt;ol&gt;
- &lt;li&gt;This numbered list...&lt;/li&gt;
- &lt;li&gt;...is a neighbour of a horizontal line...&lt;/li&gt;
- &lt;li&gt;...and another list.&lt;/li&gt;
- &lt;/ol&gt;
-
- &lt;ul&gt;
- &lt;li&gt;We can type between the lists...&lt;/li&gt;
- &lt;li&gt;...thanks to &lt;strong&gt;Magicline&lt;/strong&gt;.&lt;/li&gt;
- &lt;/ul&gt;
-
- &lt;p&gt;Lorem ipsum dolor sit amet dui. Morbi vel turpis. Nullam et leo. Etiam rutrum, urna tellus dui vel tincidunt mattis egestas, justo fringilla vel, massa. Phasellus.&lt;/p&gt;
-
- &lt;p&gt;Quisque iaculis, dui lectus varius vitae, tortor. Proin lacus. Pellentesque ac lacus. Aenean nonummy commodo nec, pede. Etiam blandit risus elit.&lt;/p&gt;
-
- &lt;p&gt;Ut pretium. Vestibulum rutrum in, adipiscing elit. Sed in quam in purus sem vitae pede. Pellentesque bibendum, urna sem vel risus. Vivamus posuere metus. Aliquam gravida iaculis nisl. Nam enim. Aliquam erat ac lacus tellus ac felis.&lt;/p&gt;
-
- &lt;div style=&quot;border: 2px dashed green; background: #ddd; text-align: center;&quot;&gt;
- &lt;p&gt;This text is wrapped in a&amp;nbsp;&lt;tt&gt;DIV&lt;/tt&gt;&amp;nbsp;element. We can type after this element though.&lt;/p&gt;
- &lt;/div&gt;
- </textarea>
- <script>
-
- // This call can be placed at any point after the
- // <textarea>, or inside a <head><script> in a
- // window.onload event handler.
-
- CKEDITOR.replace( 'editor2', {
- extraPlugins: 'magicline', // Ensure that magicline plugin, which is required for this sample, is loaded.
- magicline_color: 'blue', // Blue line
- allowedContent: true // Switch off the ACF, so very complex content created to
- // show magicline's power isn't filtered.
- });
-
- </script>
- </div>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/toolbar/toolbar.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/toolbar/toolbar.html
deleted file mode 100644
index 6cf2ddf1..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/toolbar/toolbar.html
+++ /dev/null
@@ -1,232 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Toolbar Configuration &mdash; CKEditor Sample</title>
- <meta name="ckeditor-sample-name" content="Toolbar Configurations">
- <meta name="ckeditor-sample-group" content="Advanced Samples">
- <meta name="ckeditor-sample-description" content="Configuring CKEditor to display full or custom toolbar layout.">
- <script src="../../../ckeditor.js"></script>
- <link href="../../../samples/sample.css" rel="stylesheet">
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Toolbar Configuration
- </h1>
- <div class="description">
- <p>
- This sample page demonstrates editor with loaded <a href="#fullToolbar">full toolbar</a> (all registered buttons) and, if
- current editor's configuration modifies default settings, also editor with <a href="#currentToolbar">modified toolbar</a>.
- </p>
-
- <p>Since CKEditor 4 there are two ways to configure toolbar buttons.</p>
-
- <h2 class="samples">By <a href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-toolbar">config.toolbar</a></h2>
-
- <p>
- You can explicitly define which buttons are displayed in which groups and in which order.
- This is the more precise setting, but less flexible. If newly added plugin adds its
- own button you'll have to add it manually to your <code>config.toolbar</code> setting as well.
- </p>
-
- <p>To add a CKEditor instance with custom toolbar setting, insert the following JavaScript call to your code:</p>
-
- <pre class="samples">
-CKEDITOR.replace( <em>'textarea_id'</em>, {
- <strong>toolbar:</strong> [
- { name: 'document', items: [ 'Source', '-', 'NewPage', 'Preview', '-', 'Templates' ] }, // Defines toolbar group with name (used to create voice label) and items in 3 subgroups.
- [ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ], // Defines toolbar group without name.
- '/', // Line break - next group will be placed in new line.
- { name: 'basicstyles', items: [ 'Bold', 'Italic' ] }
- ]
-});</pre>
-
- <h2 class="samples">By <a href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-toolbarGroups">config.toolbarGroups</a></h2>
-
- <p>
- You can define which groups of buttons (like e.g. <code>basicstyles</code>, <code>clipboard</code>
- and <code>forms</code>) are displayed and in which order. Registered buttons are associated
- with toolbar groups by <code>toolbar</code> property in their definition.
- This setting's advantage is that you don't have to modify toolbar configuration
- when adding/removing plugins which register their own buttons.
- </p>
-
- <p>To add a CKEditor instance with custom toolbar groups setting, insert the following JavaScript call to your code:</p>
-
- <pre class="samples">
-CKEDITOR.replace( <em>'textarea_id'</em>, {
- <strong>toolbarGroups:</strong> [
- { name: 'document', groups: [ 'mode', 'document' ] }, // Displays document group with its two subgroups.
- { name: 'clipboard', groups: [ 'clipboard', 'undo' ] }, // Group's name will be used to create voice label.
- '/', // Line break - next group will be placed in new line.
- { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
- { name: 'links' }
- ]
-
- // NOTE: Remember to leave 'toolbar' property with the default value (null).
-});</pre>
- </div>
-
- <div id="currentToolbar" style="display: none">
- <h2 class="samples">Current toolbar configuration</h2>
- <p>Below you can see editor with current toolbar definition.</p>
- <textarea cols="80" id="editorCurrent" name="editorCurrent" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <pre id="editorCurrentCfg" class="samples"></pre>
- </div>
-
- <div id="fullToolbar">
- <h2 class="samples">Full toolbar configuration</h2>
- <p>Below you can see editor with full toolbar, generated automatically by the editor.</p>
- <p>
- <strong>Note</strong>: To create editor instance with full toolbar you don't have to set anything.
- Just leave <code>toolbar</code> and <code>toolbarGroups</code> with the default, <code>null</code> values.
- </p>
- <textarea cols="80" id="editorFull" name="editorFull" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <pre id="editorFullCfg" class="samples"></pre>
- </div>
-
- <script>
-
-(function() {
- 'use strict';
-
- var buttonsNames;
-
- CKEDITOR.config.extraPlugins = 'toolbar';
-
- CKEDITOR.on( 'instanceReady', function( evt ) {
- var editor = evt.editor,
- editorCurrent = editor.name == 'editorCurrent',
- defaultToolbar = !( editor.config.toolbar || editor.config.toolbarGroups || editor.config.removeButtons ),
- pre = CKEDITOR.document.getById( editor.name + 'Cfg' ),
- output = '';
-
- if ( editorCurrent ) {
- // If default toolbar configuration has been modified, show "current toolbar" section.
- if ( !defaultToolbar )
- CKEDITOR.document.getById( 'currentToolbar' ).show();
- else
- return;
- }
-
- if ( !buttonsNames )
- buttonsNames = createButtonsNamesHash( editor.ui.items );
-
- // Toolbar isn't set explicitly, so it was created automatically from toolbarGroups.
- if ( !editor.config.toolbar ) {
- output +=
- '// Toolbar configuration generated automatically by the editor based on config.toolbarGroups.\n' +
- dumpToolbarConfiguration( editor ) +
- '\n\n' +
- '// Toolbar groups configuration.\n' +
- dumpToolbarConfiguration( editor, true )
- }
- // Toolbar groups doesn't count in this case - print only toolbar.
- else {
- output += '// Toolbar configuration.\n' +
- dumpToolbarConfiguration( editor );
- }
-
- // Recreate to avoid old IE from loosing whitespaces on filling <pre> content.
- var preOutput = pre.getOuterHtml().replace( /(?=<\/)/, output );
- CKEDITOR.dom.element.createFromHtml( preOutput ).replace( pre );
- } );
-
- CKEDITOR.replace( 'editorCurrent', { height: 100 } );
- CKEDITOR.replace( 'editorFull', {
- // Reset toolbar settings, so full toolbar will be generated automatically.
- toolbar: null,
- toolbarGroups: null,
- removeButtons: null,
- height: 100
- } );
-
- function dumpToolbarConfiguration( editor, printGroups ) {
- var output = [],
- toolbar = editor.toolbar;
-
- for ( var i = 0; i < toolbar.length; ++i ) {
- var group = dumpToolbarGroup( toolbar[ i ], printGroups );
- if ( group )
- output.push( group );
- }
-
- return 'config.toolbar' + ( printGroups ? 'Groups' : '' ) + ' = [\n\t' + output.join( ',\n\t' ) + '\n];';
- }
-
- function dumpToolbarGroup( group, printGroups ) {
- var output = [];
-
- if ( typeof group == 'string' )
- return '\'' + group + '\'';
- if ( CKEDITOR.tools.isArray( group ) )
- return dumpToolbarItems( group );
- // Skip group when printing entire toolbar configuration and there are no items in this group.
- if ( !printGroups && !group.items )
- return;
-
- if ( group.name )
- output.push( 'name: \'' + group.name + '\'' );
-
- if ( group.groups )
- output.push( 'groups: ' + dumpToolbarItems( group.groups ) );
-
- if ( !printGroups )
- output.push( 'items: ' + dumpToolbarItems( group.items ) );
-
- return '{ ' + output.join( ', ' ) + ' }';
- }
-
- function dumpToolbarItems( items ) {
- if ( typeof items == 'string' )
- return '\'' + items + '\'';
-
- var names = [],
- i, item;
-
- for ( var i = 0; i < items.length; ++i ) {
- item = items[ i ];
- if ( typeof item == 'string' )
- names.push( item );
- else {
- if ( item.type == CKEDITOR.UI_SEPARATOR )
- names.push( '-' );
- else
- names.push( buttonsNames[ item.name ] );
- }
- }
-
- return '[ \'' + names.join( '\', \'' ) + '\' ]';
- }
-
- // Creates { 'lowercased': 'LowerCased' } buttons names hash.
- function createButtonsNamesHash( items ) {
- var hash = {},
- name;
-
- for ( name in items ) {
- hash[ items[ name ].name ] = name;
- }
-
- return hash;
- }
-
-})();
- </script>
-
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/wysiwygarea/fullpage.html b/wqflask/wqflask/static/packages/ckeditor/samples/plugins/wysiwygarea/fullpage.html
deleted file mode 100644
index 174a25f3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/plugins/wysiwygarea/fullpage.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Full Page Editing &mdash; CKEditor Sample</title>
- <script src="../../../ckeditor.js"></script>
- <script src="../../../samples/sample.js"></script>
- <link rel="stylesheet" href="../../../samples/sample.css">
- <meta name="ckeditor-sample-required-plugins" content="sourcearea">
- <meta name="ckeditor-sample-name" content="Full page support">
- <meta name="ckeditor-sample-group" content="Plugins">
- <meta name="ckeditor-sample-description" content="CKEditor inserted with a JavaScript call and used to edit the whole page from &lt;html&gt; to &lt;/html&gt;.">
-</head>
-<body>
- <h1 class="samples">
- <a href="../../../samples/index.html">CKEditor Samples</a> &raquo; Full Page Editing
- </h1>
- <div class="description">
- <p>
- This sample shows how to configure CKEditor to edit entire HTML pages, from the
- <code>&lt;html&gt;</code> tag to the <code>&lt;/html&gt;</code> tag.
- </p>
- <p>
- The CKEditor instance below is inserted with a JavaScript call using the following code:
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- <strong>fullPage: true</strong>,
- <strong>allowedContent: true</strong>
-});
-</pre>
- <p>
- Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
- the <code>&lt;textarea&gt;</code> element to be replaced.
- </p>
- <p>
- The <code><em>allowedContent</em></code> in the code above is set to <code>true</code> to disable content filtering.
- Setting this option is not obligatory, but in full page mode there is a strong chance that one may want be able to freely enter any HTML content in source mode without any limitations.
- </p>
- </div>
- <form action="../../../samples/sample_posteddata.php" method="post">
- <label for="editor1">
- CKEditor output the entire page including content outside of
- <code>&lt;body&gt;</code> element, so content like meta and title can be changed:
- </label>
- <textarea cols="80" id="editor1" name="editor1" rows="10">
- &lt;h1&gt;&lt;img align=&quot;right&quot; alt=&quot;Saturn V carrying Apollo 11&quot; src=&quot;../../../samples/assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- <script>
-
- CKEDITOR.replace( 'editor1', {
- fullPage: true,
- allowedContent: true,
- extraPlugins: 'wysiwygarea'
- });
-
- </script>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/readonly.html b/wqflask/wqflask/static/packages/ckeditor/samples/readonly.html
deleted file mode 100644
index 58f97069..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/readonly.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Using the CKEditor Read-Only API &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
- <script>
-
- var editor;
-
- // The instanceReady event is fired, when an instance of CKEditor has finished
- // its initialization.
- CKEDITOR.on( 'instanceReady', function( ev ) {
- editor = ev.editor;
-
- // Show this "on" button.
- document.getElementById( 'readOnlyOn' ).style.display = '';
-
- // Event fired when the readOnly property changes.
- editor.on( 'readOnly', function() {
- document.getElementById( 'readOnlyOn' ).style.display = this.readOnly ? 'none' : '';
- document.getElementById( 'readOnlyOff' ).style.display = this.readOnly ? '' : 'none';
- });
- });
-
- function toggleReadOnly( isReadOnly ) {
- // Change the read-only state of the editor.
- // http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setReadOnly
- editor.setReadOnly( isReadOnly );
- }
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Using the CKEditor Read-Only API
- </h1>
- <div class="description">
- <p>
- This sample shows how to use the
- <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.editor-method-setReadOnly">setReadOnly</a></code>
- API to put editor into the read-only state that makes it impossible for users to change the editor contents.
- </p>
- <p>
- For details on how to create this setup check the source code of this sample page.
- </p>
- </div>
- <form action="sample_posteddata.php" method="post">
- <p>
- <textarea class="ckeditor" id="editor1" name="editor1" cols="100" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- </p>
- <p>
- <input id="readOnlyOn" onclick="toggleReadOnly();" type="button" value="Make it read-only" style="display:none">
- <input id="readOnlyOff" onclick="toggleReadOnly( false );" type="button" value="Make it editable again" style="display:none">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/replacebyclass.html b/wqflask/wqflask/static/packages/ckeditor/samples/replacebyclass.html
deleted file mode 100644
index 6fc3e6fe..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/replacebyclass.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Replace Textareas by Class Name &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Replace Textarea Elements by Class Name
- </h1>
- <div class="description">
- <p>
- This sample shows how to automatically replace all <code>&lt;textarea&gt;</code> elements
- of a given class with a CKEditor instance.
- </p>
- <p>
- To replace a <code>&lt;textarea&gt;</code> element, simply assign it the <code>ckeditor</code>
- class, as in the code below:
- </p>
-<pre class="samples">
-&lt;textarea <strong>class="ckeditor</strong>" name="editor1"&gt;&lt;/textarea&gt;
-</pre>
- <p>
- Note that other <code>&lt;textarea&gt;</code> attributes (like <code>id</code> or <code>name</code>) need to be adjusted to your document.
- </p>
- </div>
- <form action="sample_posteddata.php" method="post">
- <p>
- <label for="editor1">
- Editor 1:
- </label>
- <textarea class="ckeditor" cols="80" id="editor1" name="editor1" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/replacebycode.html b/wqflask/wqflask/static/packages/ckeditor/samples/replacebycode.html
deleted file mode 100644
index e5a4c5ba..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/replacebycode.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>Replace Textarea by Code &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Replace Textarea Elements Using JavaScript Code
- </h1>
- <form action="sample_posteddata.php" method="post">
- <div class="description">
- <p>
- This editor is using an <code>&lt;iframe&gt;</code> element-based editing area, provided by the <strong>Wysiwygarea</strong> plugin.
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>' )
-</pre>
- </div>
- <textarea cols="80" id="editor1" name="editor1" rows="10">
- &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
- </textarea>
- <script>
-
- // This call can be placed at any point after the
- // <textarea>, or inside a <head><script> in a
- // window.onload event handler.
-
- // Replace the <textarea id="editor"> with an CKEditor
- // instance, using default configurations.
-
- CKEDITOR.replace( 'editor1' );
-
- </script>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/sample.css b/wqflask/wqflask/static/packages/ckeditor/samples/sample.css
deleted file mode 100644
index 8fd71aaa..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/sample.css
+++ /dev/null
@@ -1,365 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-
-html, body, h1, h2, h3, h4, h5, h6, div, span, blockquote, p, address, form, fieldset, img, ul, ol, dl, dt, dd, li, hr, table, td, th, strong, em, sup, sub, dfn, ins, del, q, cite, var, samp, code, kbd, tt, pre
-{
- line-height: 1.5;
-}
-
-body
-{
- padding: 10px 30px;
-}
-
-input, textarea, select, option, optgroup, button, td, th
-{
- font-size: 100%;
-}
-
-pre
-{
- -moz-tab-size: 4;
- -o-tab-size: 4;
- -webkit-tab-size: 4;
- tab-size: 4;
-}
-
-pre, code, kbd, samp, tt
-{
- font-family: monospace,monospace;
- font-size: 1em;
-}
-
-body {
- width: 960px;
- margin: 0 auto;
-}
-
-code
-{
- background: #f3f3f3;
- border: 1px solid #ddd;
- padding: 1px 4px;
-
- -moz-border-radius: 3px;
- -webkit-border-radius: 3px;
- border-radius: 3px;
-}
-
-abbr
-{
- border-bottom: 1px dotted #555;
- cursor: pointer;
-}
-
-.new, .beta
-{
- text-transform: uppercase;
- font-size: 10px;
- font-weight: bold;
- padding: 1px 4px;
- margin: 0 0 0 5px;
- color: #fff;
- float: right;
-
- -moz-border-radius: 3px;
- -webkit-border-radius: 3px;
- border-radius: 3px;
-}
-
-.new
-{
- background: #FF7E00;
- border: 1px solid #DA8028;
- text-shadow: 0 1px 0 #C97626;
-
- -moz-box-shadow: 0 2px 3px 0 #FFA54E inset;
- -webkit-box-shadow: 0 2px 3px 0 #FFA54E inset;
- box-shadow: 0 2px 3px 0 #FFA54E inset;
-}
-
-.beta
-{
- background: #18C0DF;
- border: 1px solid #19AAD8;
- text-shadow: 0 1px 0 #048CAD;
- font-style: italic;
-
- -moz-box-shadow: 0 2px 3px 0 #50D4FD inset;
- -webkit-box-shadow: 0 2px 3px 0 #50D4FD inset;
- box-shadow: 0 2px 3px 0 #50D4FD inset;
-}
-
-h1.samples
-{
- color: #0782C1;
- font-size: 200%;
- font-weight: normal;
- margin: 0;
- padding: 0;
-}
-
-h1.samples a
-{
- color: #0782C1;
- text-decoration: none;
- border-bottom: 1px dotted #0782C1;
-}
-
-.samples a:hover
-{
- border-bottom: 1px dotted #0782C1;
-}
-
-h2.samples
-{
- color: #000000;
- font-size: 130%;
- margin: 15px 0 0 0;
- padding: 0;
-}
-
-p, blockquote, address, form, pre, dl, h1.samples, h2.samples
-{
- margin-bottom: 15px;
-}
-
-ul.samples
-{
- margin-bottom: 15px;
-}
-
-.clear
-{
- clear: both;
-}
-
-fieldset
-{
- margin: 0;
- padding: 10px;
-}
-
-body, input, textarea
-{
- color: #333333;
- font-family: Arial, Helvetica, sans-serif;
-}
-
-body
-{
- font-size: 75%;
-}
-
-a.samples
-{
- color: #189DE1;
- text-decoration: none;
-}
-
-form
-{
- margin: 0;
- padding: 0;
-}
-
-pre.samples
-{
- background-color: #F7F7F7;
- border: 1px solid #D7D7D7;
- overflow: auto;
- padding: 0.25em;
- white-space: pre-wrap; /* CSS 2.1 */
- word-wrap: break-word; /* IE7 */
-}
-
-#footer
-{
- clear: both;
- padding-top: 10px;
-}
-
-#footer hr
-{
- margin: 10px 0 15px 0;
- height: 1px;
- border: solid 1px gray;
- border-bottom: none;
-}
-
-#footer p
-{
- margin: 0 10px 10px 10px;
- float: left;
-}
-
-#footer #copy
-{
- float: right;
-}
-
-#outputSample
-{
- width: 100%;
- table-layout: fixed;
-}
-
-#outputSample thead th
-{
- color: #dddddd;
- background-color: #999999;
- padding: 4px;
- white-space: nowrap;
-}
-
-#outputSample tbody th
-{
- vertical-align: top;
- text-align: left;
-}
-
-#outputSample pre
-{
- margin: 0;
- padding: 0;
-}
-
-.description
-{
- border: 1px dotted #B7B7B7;
- margin-bottom: 10px;
- padding: 10px 10px 0;
- overflow: hidden;
-}
-
-label
-{
- display: block;
- margin-bottom: 6px;
-}
-
-/**
- * CKEditor editables are automatically set with the "cke_editable" class
- * plus cke_editable_(inline|themed) depending on the editor type.
- */
-
-/* Style a bit the inline editables. */
-.cke_editable.cke_editable_inline
-{
- cursor: pointer;
-}
-
-/* Once an editable element gets focused, the "cke_focus" class is
- added to it, so we can style it differently. */
-.cke_editable.cke_editable_inline.cke_focus
-{
- box-shadow: inset 0px 0px 20px 3px #ddd, inset 0 0 1px #000;
- outline: none;
- background: #eee;
- cursor: text;
-}
-
-/* Avoid pre-formatted overflows inline editable. */
-.cke_editable_inline pre
-{
- white-space: pre-wrap;
- word-wrap: break-word;
-}
-
-/**
- * Samples index styles.
- */
-
-.twoColumns,
-.twoColumnsLeft,
-.twoColumnsRight
-{
- overflow: hidden;
-}
-
-.twoColumnsLeft,
-.twoColumnsRight
-{
- width: 45%;
-}
-
-.twoColumnsLeft
-{
- float: left;
-}
-
-.twoColumnsRight
-{
- float: right;
-}
-
-dl.samples
-{
- padding: 0 0 0 40px;
-}
-dl.samples > dt
-{
- display: list-item;
- list-style-type: disc;
- list-style-position: outside;
- margin: 0 0 3px;
-}
-dl.samples > dd
-{
- margin: 0 0 3px;
-}
-.warning
-{
- color: #ff0000;
- background-color: #FFCCBA;
- border: 2px dotted #ff0000;
- padding: 15px 10px;
- margin: 10px 0;
-}
-
-/* Used on inline samples */
-
-blockquote
-{
- font-style: italic;
- font-family: Georgia, Times, "Times New Roman", serif;
- padding: 2px 0;
- border-style: solid;
- border-color: #ccc;
- border-width: 0;
-}
-
-.cke_contents_ltr blockquote
-{
- padding-left: 20px;
- padding-right: 8px;
- border-left-width: 5px;
-}
-
-.cke_contents_rtl blockquote
-{
- padding-left: 8px;
- padding-right: 20px;
- border-right-width: 5px;
-}
-
-img.right {
- border: 1px solid #ccc;
- float: right;
- margin-left: 15px;
- padding: 5px;
-}
-
-img.left {
- border: 1px solid #ccc;
- float: left;
- margin-right: 15px;
- padding: 5px;
-}
-
-.marker
-{
- background-color: Yellow;
-}
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/sample.js b/wqflask/wqflask/static/packages/ckeditor/samples/sample.js
deleted file mode 100644
index b25482d3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/sample.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- */
-
-// Tool scripts for the sample pages.
-// This file can be ignored and is not required to make use of CKEditor.
-
-( function() {
- CKEDITOR.on( 'instanceReady', function( ev ) {
- // Check for sample compliance.
- var editor = ev.editor,
- meta = CKEDITOR.document.$.getElementsByName( 'ckeditor-sample-required-plugins' ),
- requires = meta.length ? CKEDITOR.dom.element.get( meta[ 0 ] ).getAttribute( 'content' ).split( ',' ) : [],
- missing = [],
- i;
-
- if ( requires.length ) {
- for ( i = 0; i < requires.length; i++ ) {
- if ( !editor.plugins[ requires[ i ] ] )
- missing.push( '<code>' + requires[ i ] + '</code>' );
- }
-
- if ( missing.length ) {
- var warn = CKEDITOR.dom.element.createFromHtml(
- '<div class="warning">' +
- '<span>To fully experience this demo, the ' + missing.join( ', ' ) + ' plugin' + ( missing.length > 1 ? 's are' : ' is' ) + ' required.</span>' +
- '</div>'
- );
- warn.insertBefore( editor.container );
- }
- }
-
- // Set icons.
- var doc = new CKEDITOR.dom.document( document ),
- icons = doc.find( '.button_icon' );
-
- for ( i = 0; i < icons.count(); i++ ) {
- var icon = icons.getItem( i ),
- name = icon.getAttribute( 'data-icon' ),
- style = CKEDITOR.skin.getIconStyle( name, ( CKEDITOR.lang.dir == 'rtl' ) );
-
- icon.addClass( 'cke_button_icon' );
- icon.addClass( 'cke_button__' + name + '_icon' );
- icon.setAttribute( 'style', style );
- icon.setStyle( 'float', 'none' );
-
- }
- } );
-} )();
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/sample_posteddata.php b/wqflask/wqflask/static/packages/ckeditor/samples/sample_posteddata.php
deleted file mode 100644
index e4869b7c..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/sample_posteddata.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php /* <body><pre>
-
--------------------------------------------------------------------------------------------
- CKEditor - Posted Data
-
- We are sorry, but your Web server does not support the PHP language used in this script.
-
- Please note that CKEditor can be used with any other server-side language than just PHP.
- To save the content created with CKEditor you need to read the POST data on the server
- side and write it to a file or the database.
-
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or <a href="http://ckeditor.com/license">http://ckeditor.com/license</a>
--------------------------------------------------------------------------------------------
-
-</pre><div style="display:none"></body> */ include "assets/posteddata.php"; ?>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/tabindex.html b/wqflask/wqflask/static/packages/ckeditor/samples/tabindex.html
deleted file mode 100644
index 89521668..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/tabindex.html
+++ /dev/null
@@ -1,75 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>TAB Key-Based Navigation &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link href="sample.css" rel="stylesheet">
- <style>
-
- .cke_focused,
- .cke_editable.cke_focused
- {
- outline: 3px dotted blue !important;
- *border: 3px dotted blue !important; /* For IE7 */
- }
-
- </style>
- <script>
-
- CKEDITOR.on( 'instanceReady', function( evt ) {
- var editor = evt.editor;
- editor.setData( 'This editor has it\'s tabIndex set to <strong>' + editor.tabIndex + '</strong>' );
-
- // Apply focus class name.
- editor.on( 'focus', function() {
- editor.container.addClass( 'cke_focused' );
- });
- editor.on( 'blur', function() {
- editor.container.removeClass( 'cke_focused' );
- });
-
- // Put startup focus on the first editor in tab order.
- if ( editor.tabIndex == 1 )
- editor.focus();
- });
-
- </script>
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; TAB Key-Based Navigation
- </h1>
- <div class="description">
- <p>
- This sample shows how tab key navigation among editor instances is
- affected by the <code>tabIndex</code> attribute from
- the original page element. Use TAB key to move between the editors.
- </p>
- </div>
- <p>
- <textarea class="ckeditor" cols="80" id="editor4" rows="10" tabindex="1"></textarea>
- </p>
- <div class="ckeditor" contenteditable="true" id="editor1" tabindex="4"></div>
- <p>
- <textarea class="ckeditor" cols="80" id="editor2" rows="10" tabindex="2"></textarea>
- </p>
- <p>
- <textarea class="ckeditor" cols="80" id="editor3" rows="10" tabindex="3"></textarea>
- </p>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/uicolor.html b/wqflask/wqflask/static/packages/ckeditor/samples/uicolor.html
deleted file mode 100644
index ce4b2a26..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/uicolor.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>UI Color Picker &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; UI Color
- </h1>
- <div class="description">
- <p>
- This sample shows how to automatically replace <code>&lt;textarea&gt;</code> elements
- with a CKEditor instance with an option to change the color of its user interface.<br>
- <strong>Note:</strong>The UI skin color feature depends on the CKEditor skin
- compatibility. The Moono and Kama skins are examples of skins that work with it.
- </p>
- </div>
- <form action="sample_posteddata.php" method="post">
- <p>
- This editor instance has a UI color value defined in configuration to change the skin color,
- To specify the color of the user interface, set the <code>uiColor</code> property:
- </p>
- <pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- <strong>uiColor: '#14B8C4'</strong>
-});</pre>
- <p>
- Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
- the <code>&lt;textarea&gt;</code> element to be replaced.
- </p>
- <p>
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
-
- // Replace the <textarea id="editor"> with an CKEditor
- // instance, using default configurations.
- CKEDITOR.replace( 'editor1', {
- uiColor: '#14B8C4',
- toolbar: [
- [ 'Bold', 'Italic', '-', 'NumberedList', 'BulletedList', '-', 'Link', 'Unlink' ],
- [ 'FontSize', 'TextColor', 'BGColor' ]
- ]
- });
-
- </script>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/uilanguages.html b/wqflask/wqflask/static/packages/ckeditor/samples/uilanguages.html
deleted file mode 100644
index 66acca43..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/uilanguages.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>User Interface Globalization &mdash; CKEditor Sample</title>
- <script src="../ckeditor.js"></script>
- <script src="assets/uilanguages/languages.js"></script>
- <link rel="stylesheet" href="sample.css">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; User Interface Languages
- </h1>
- <div class="description">
- <p>
- This sample shows how to automatically replace <code>&lt;textarea&gt;</code> elements
- with a CKEditor instance with an option to change the language of its user interface.
- </p>
- <p>
- It pulls the language list from CKEditor <code>_languages.js</code> file that contains the list of supported languages and creates
- a drop-down list that lets the user change the UI language.
- </p>
- <p>
- By default, CKEditor automatically localizes the editor to the language of the user.
- The UI language can be controlled with two configuration options:
- <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-language">language</a></code> and
- <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-defaultLanguage">
- defaultLanguage</a></code>. The <code>defaultLanguage</code> setting specifies the
- default CKEditor language to be used when a localization suitable for user's settings is not available.
- </p>
- <p>
- To specify the user interface language that will be used no matter what language is
- specified in user's browser or operating system, set the <code>language</code> property:
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- // Load the German interface.
- <strong>language: 'de'</strong>
-});</pre>
- <p>
- Note that <code><em>textarea_id</em></code> in the code above is the <code>id</code> attribute of
- the <code>&lt;textarea&gt;</code> element to be replaced.
- </p>
- </div>
- <form action="sample_posteddata.php" method="post">
- <p>
- Available languages (<span id="count"> </span> languages!):<br>
- <script>
-
- document.write( '<select disabled="disabled" id="languages" onchange="createEditor( this.value );">' );
-
- // Get the language list from the _languages.js file.
- for ( var i = 0 ; i < window.CKEDITOR_LANGS.length ; i++ ) {
- document.write(
- '<option value="' + window.CKEDITOR_LANGS[i].code + '">' +
- window.CKEDITOR_LANGS[i].name +
- '</option>' );
- }
-
- document.write( '</select>' );
-
- </script>
- <br>
- <span style="color: #888888">
- (You may see strange characters if your system does not support the selected language)
- </span>
- </p>
- <p>
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
-
- // Set the number of languages.
- document.getElementById( 'count' ).innerHTML = window.CKEDITOR_LANGS.length;
-
- var editor;
-
- function createEditor( languageCode ) {
- if ( editor )
- editor.destroy();
-
- // Replace the <textarea id="editor"> with an CKEditor
- // instance, using default configurations.
- editor = CKEDITOR.replace( 'editor1', {
- language: languageCode,
-
- on: {
- instanceReady: function() {
- // Wait for the editor to be ready to set
- // the language combo.
- var languages = document.getElementById( 'languages' );
- languages.value = this.langCode;
- languages.disabled = false;
- }
- }
- });
- }
-
- // At page startup, load the default language:
- createEditor( '' );
-
- </script>
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/samples/xhtmlstyle.html b/wqflask/wqflask/static/packages/ckeditor/samples/xhtmlstyle.html
deleted file mode 100644
index f219d11d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/samples/xhtmlstyle.html
+++ /dev/null
@@ -1,231 +0,0 @@
-<!DOCTYPE html>
-<!--
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
--->
-<html>
-<head>
- <meta charset="utf-8">
- <title>XHTML Compliant Output &mdash; CKEditor Sample</title>
- <meta name="ckeditor-sample-required-plugins" content="sourcearea">
- <script src="../ckeditor.js"></script>
- <script src="../samples/sample.js"></script>
- <link href="sample.css" rel="stylesheet">
-</head>
-<body>
- <h1 class="samples">
- <a href="index.html">CKEditor Samples</a> &raquo; Producing XHTML Compliant Output
- </h1>
- <div class="description">
- <p>
- This sample shows how to configure CKEditor to output valid
- <a class="samples" href="http://www.w3.org/TR/xhtml11/">XHTML 1.1</a> code.
- Deprecated elements (<code>&lt;font&gt;</code>, <code>&lt;u&gt;</code>) or attributes
- (<code>size</code>, <code>face</code>) will be replaced with XHTML compliant code.
- </p>
- <p>
- To add a CKEditor instance outputting valid XHTML code, load the editor using a standard
- JavaScript call and define CKEditor features to use the XHTML compliant elements and styles.
- </p>
- <p>
- A snippet of the configuration code can be seen below; check the source of this page for
- full definition:
- </p>
-<pre class="samples">
-CKEDITOR.replace( '<em>textarea_id</em>', {
- contentsCss: 'assets/outputxhtml.css',
-
- coreStyles_bold: {
- element: 'span',
- attributes: { 'class': 'Bold' }
- },
- coreStyles_italic: {
- element: 'span',
- attributes: { 'class': 'Italic' }
- },
-
- ...
-});</pre>
- </div>
- <form action="sample_posteddata.php" method="post">
- <p>
- <label for="editor1">
- Editor 1:
- </label>
- <textarea cols="80" id="editor1" name="editor1" rows="10">&lt;p&gt;This is some &lt;span class="Bold"&gt;sample text&lt;/span&gt;. You are using &lt;a href="http://ckeditor.com/"&gt;CKEditor&lt;/a&gt;.&lt;/p&gt;</textarea>
- <script>
-
- CKEDITOR.replace( 'editor1', {
- /*
- * Style sheet for the contents
- */
- contentsCss: 'assets/outputxhtml/outputxhtml.css',
-
- /*
- * Special allowed content rules for spans used by
- * font face, size, and color buttons.
- *
- * Note: all rules have been written separately so
- * it was possible to specify required classes.
- */
- extraAllowedContent: 'span(!FontColor1);span(!FontColor2);span(!FontColor3);' +
- 'span(!FontColor1BG);span(!FontColor2BG);span(!FontColor3BG);' +
- 'span(!FontComic);span(!FontCourier);span(!FontTimes);' +
- 'span(!FontSmaller);span(!FontLarger);span(!FontSmall);span(!FontBig);span(!FontDouble)',
-
- /*
- * Core styles.
- */
- coreStyles_bold: {
- element: 'span',
- attributes: { 'class': 'Bold' }
- },
- coreStyles_italic: {
- element: 'span',
- attributes: { 'class': 'Italic' }
- },
- coreStyles_underline: {
- element: 'span',
- attributes: { 'class': 'Underline' }
- },
- coreStyles_strike: {
- element: 'span',
- attributes: { 'class': 'StrikeThrough' },
- overrides: 'strike'
- },
- coreStyles_subscript: {
- element: 'span',
- attributes: { 'class': 'Subscript' },
- overrides: 'sub'
- },
- coreStyles_superscript: {
- element: 'span',
- attributes: { 'class': 'Superscript' },
- overrides: 'sup'
- },
-
- /*
- * Font face.
- */
-
- // List of fonts available in the toolbar combo. Each font definition is
- // separated by a semi-colon (;). We are using class names here, so each font
- // is defined by {Combo Label}/{Class Name}.
- font_names: 'Comic Sans MS/FontComic;Courier New/FontCourier;Times New Roman/FontTimes',
-
- // Define the way font elements will be applied to the document. The "span"
- // element will be used. When a font is selected, the font name defined in the
- // above list is passed to this definition with the name "Font", being it
- // injected in the "class" attribute.
- // We must also instruct the editor to replace span elements that are used to
- // set the font (Overrides).
- font_style: {
- element: 'span',
- attributes: { 'class': '#(family)' },
- overrides: [
- {
- element: 'span',
- attributes: {
- 'class': /^Font(?:Comic|Courier|Times)$/
- }
- }
- ]
- },
-
- /*
- * Font sizes.
- */
- fontSize_sizes: 'Smaller/FontSmaller;Larger/FontLarger;8pt/FontSmall;14pt/FontBig;Double Size/FontDouble',
- fontSize_style: {
- element: 'span',
- attributes: { 'class': '#(size)' },
- overrides: [
- {
- element: 'span',
- attributes: {
- 'class': /^Font(?:Smaller|Larger|Small|Big|Double)$/
- }
- }
- ]
- } ,
-
- /*
- * Font colors.
- */
- colorButton_enableMore: false,
-
- colorButton_colors: 'FontColor1/FF9900,FontColor2/0066CC,FontColor3/F00',
- colorButton_foreStyle: {
- element: 'span',
- attributes: { 'class': '#(color)' },
- overrides: [
- {
- element: 'span',
- attributes: {
- 'class': /^FontColor(?:1|2|3)$/
- }
- }
- ]
- },
-
- colorButton_backStyle: {
- element: 'span',
- attributes: { 'class': '#(color)BG' },
- overrides: [
- {
- element: 'span',
- attributes: {
- 'class': /^FontColor(?:1|2|3)BG$/
- }
- }
- ]
- },
-
- /*
- * Indentation.
- */
- indentClasses: [ 'Indent1', 'Indent2', 'Indent3' ],
-
- /*
- * Paragraph justification.
- */
- justifyClasses: [ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyFull' ],
-
- /*
- * Styles combo.
- */
- stylesSet: [
- { name: 'Strong Emphasis', element: 'strong' },
- { name: 'Emphasis', element: 'em' },
-
- { name: 'Computer Code', element: 'code' },
- { name: 'Keyboard Phrase', element: 'kbd' },
- { name: 'Sample Text', element: 'samp' },
- { name: 'Variable', element: 'var' },
-
- { name: 'Deleted Text', element: 'del' },
- { name: 'Inserted Text', element: 'ins' },
-
- { name: 'Cited Work', element: 'cite' },
- { name: 'Inline Quotation', element: 'q' }
- ]
- });
-
- </script>
- </p>
- <p>
- <input type="submit" value="Submit">
- </p>
- </form>
- <div id="footer">
- <hr>
- <p>
- CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
- </p>
- <p id="copy">
- Copyright &copy; 2003-2014, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
- Knabben. All rights reserved.
- </p>
- </div>
-</body>
-</html>
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog.css
deleted file mode 100644
index 1504938d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie.css
deleted file mode 100644
index 93cf7aed..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie7.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie7.css
deleted file mode 100644
index 4b98ae57..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie7.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_title{zoom:1}.cke_dialog_footer{border-top:1px solid #bfbfbf}.cke_dialog_footer_buttons{position:static}.cke_dialog_footer_buttons a.cke_dialog_ui_button{vertical-align:top}.cke_dialog .cke_resizer_ltr{padding-left:4px}.cke_dialog .cke_resizer_rtl{padding-right:4px}.cke_dialog_ui_input_text,.cke_dialog_ui_input_password,.cke_dialog_ui_input_textarea,.cke_dialog_ui_input_select{padding:0!important}.cke_dialog_ui_checkbox_input,.cke_dialog_ui_ratio_input,.cke_btn_reset,.cke_btn_locked,.cke_btn_unlocked{border:1px solid transparent!important} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie8.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie8.css
deleted file mode 100644
index 4f2edca9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_ie8.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{display:block} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_iequirks.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_iequirks.css
deleted file mode 100644
index bb36a95d..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/dialog_iequirks.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_dialog{visibility:visible}.cke_dialog_body{z-index:1;background:#eaeaea;border:1px solid #b2b2b2;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_dialog strong{font-weight:bold}.cke_dialog_title{font-weight:bold;font-size:13px;cursor:move;position:relative;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #999;padding:6px 10px;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_dialog_contents{background-color:#fff;overflow:auto;padding:15px 10px 5px 10px;margin-top:30px;border-top:1px solid #bfbfbf;-moz-border-radius:0 0 3px 3px;-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.cke_dialog_contents_body{overflow:auto;padding:17px 10px 5px 10px;margin-top:22px}.cke_dialog_footer{text-align:right;position:relative;border:0;outline:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0 0 2px 2px;border-radius:0 0 2px 2px;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_rtl .cke_dialog_footer{text-align:left}.cke_hc .cke_dialog_footer{outline:0;border-top:1px solid #fff}.cke_dialog .cke_resizer{margin-top:22px}.cke_dialog .cke_resizer_rtl{margin-left:5px}.cke_dialog .cke_resizer_ltr{margin-right:5px}.cke_dialog_tabs{height:24px;display:inline-block;margin:5px 0 0;position:absolute;z-index:2;left:10px}.cke_rtl .cke_dialog_tabs{right:10px}a.cke_dialog_tab{height:16px;padding:4px 8px;margin-right:3px;display:inline-block;cursor:pointer;line-height:16px;outline:0;color:#595959;border:1px solid #bfbfbf;-moz-border-radius:3px 3px 0 0;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0;background:#d4d4d4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fafafa),to(#ededed));background-image:-moz-linear-gradient(top,#fafafa,#ededed);background-image:-webkit-linear-gradient(top,#fafafa,#ededed);background-image:-o-linear-gradient(top,#fafafa,#ededed);background-image:-ms-linear-gradient(top,#fafafa,#ededed);background-image:linear-gradient(top,#fafafa,#ededed);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#fafafa',endColorstr='#ededed')}.cke_rtl a.cke_dialog_tab{margin-right:0;margin-left:3px}a.cke_dialog_tab:hover{background:#ebebeb;background:-moz-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ebebeb),color-stop(100%,#dfdfdf));background:-webkit-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-o-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:-ms-linear-gradient(top,#ebebeb 0,#dfdfdf 100%);background:linear-gradient(to bottom,#ebebeb 0,#dfdfdf 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb',endColorstr='#dfdfdf',GradientType=0)}a.cke_dialog_tab_selected{background:#fff;color:#383838;border-bottom-color:#fff;cursor:default;filter:none}a.cke_dialog_tab_selected:hover{background:#ededed;background:-moz-linear-gradient(top,#ededed 0,#fff 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#ededed),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#ededed 0,#fff 100%);background:-o-linear-gradient(top,#ededed 0,#fff 100%);background:-ms-linear-gradient(top,#ededed 0,#fff 100%);background:linear-gradient(to bottom,#ededed 0,#fff 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed',endColorstr='#ffffff',GradientType=0)}.cke_hc a.cke_dialog_tab:hover,.cke_hc a.cke_dialog_tab_selected{border:3px solid;padding:2px 6px}a.cke_dialog_tab_disabled{color:#bababa;cursor:default}.cke_single_page .cke_dialog_tabs{display:none}.cke_single_page .cke_dialog_contents{padding-top:5px;margin-top:0;border-top:0}.cke_dialog_close_button{background-image:url(images/close.png);background-repeat:no-repeat;background-position:50%;position:absolute;cursor:pointer;text-align:center;height:20px;width:20px;top:5px;z-index:5;opacity:.8;filter:alpha(opacity = 80)}.cke_dialog_close_button:hover{opacity:1;filter:alpha(opacity = 100)}.cke_hidpi .cke_dialog_close_button{background-image:url(images/hidpi/close.png);background-size:16px}.cke_dialog_close_button span{display:none}.cke_hc .cke_dialog_close_button span{display:inline;cursor:pointer;font-weight:bold;position:relative;top:3px}.cke_ltr .cke_dialog_close_button{right:5px}.cke_rtl .cke_dialog_close_button{left:6px}.cke_dialog_close_button{top:4px}div.cke_disabled .cke_dialog_ui_labeled_content div *{background-color:#ddd;cursor:default}.cke_dialog_ui_vbox table,.cke_dialog_ui_hbox table{margin:auto}.cke_dialog_ui_vbox_child{padding:5px 0}.cke_dialog_ui_hbox{width:100%}.cke_dialog_ui_hbox_first,.cke_dialog_ui_hbox_child,.cke_dialog_ui_hbox_last{vertical-align:top}.cke_ltr .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_ui_hbox_child{padding-right:10px}.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_child{padding-left:10px}.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_ltr .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-right:5px}.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_footer_buttons .cke_dialog_ui_hbox_child{padding-left:5px;padding-right:0}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:1px solid}textarea.cke_dialog_ui_input_textarea{overflow:auto;resize:none}input.cke_dialog_ui_input_text,input.cke_dialog_ui_input_password,textarea.cke_dialog_ui_input_textarea{background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:4px 6px;outline:0;width:100%;*width:95%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}input.cke_dialog_ui_input_text:hover,input.cke_dialog_ui_input_password:hover,textarea.cke_dialog_ui_input_textarea:hover{border:1px solid #aeb3b9;border-top-color:#a0a6ad}input.cke_dialog_ui_input_text:focus,input.cke_dialog_ui_input_password:focus,textarea.cke_dialog_ui_input_textarea:focus,select.cke_dialog_ui_input_select:focus{outline:0;border:1px solid #139ff7;border-top-color:#1392e9}a.cke_dialog_ui_button{display:inline-block;*display:inline;*zoom:1;padding:4px 0;margin:0;text-align:center;color:#333;vertical-align:middle;cursor:pointer;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}span.cke_dialog_ui_button{padding:0 10px}a.cke_dialog_ui_button:hover{border-color:#9e9e9e;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}a.cke_dialog_ui_button:focus,a.cke_dialog_ui_button:active{border-color:#969696;outline:0;-moz-box-shadow:0 0 6px rgba(0,0,0,.4) inset;-webkit-box-shadow:0 0 6px rgba(0,0,0,.4) inset;box-shadow:0 0 6px rgba(0,0,0,.4) inset}.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button:focus,.cke_hc a.cke_dialog_ui_button:active{border:3px solid;padding-top:1px;padding-bottom:1px}.cke_hc a.cke_dialog_ui_button:hover span,.cke_hc a.cke_dialog_ui_button:focus span,.cke_hc a.cke_dialog_ui_button:active span{padding-left:10px;padding-right:10px}.cke_dialog_footer_buttons a.cke_dialog_ui_button span{color:inherit;font-size:12px;font-weight:bold;line-height:18px;padding:0 12px}a.cke_dialog_ui_button_ok{color:#fff;text-shadow:0 -1px 0 #55830c;border-color:#62a60a #62a60a #4d9200;background:#69b10b;background-image:-webkit-gradient(linear,0 0,0 100%,from(#9ad717),to(#69b10b));background-image:-webkit-linear-gradient(top,#9ad717,#69b10b);background-image:-o-linear-gradient(top,#9ad717,#69b10b);background-image:linear-gradient(to bottom,#9ad717,#69b10b);background-image:-moz-linear-gradient(top,#9ad717,#69b10b);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#9ad717',endColorstr='#69b10b')}a.cke_dialog_ui_button_ok:hover{border-color:#5b9909 #5b9909 #478500;background:#88be14;background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#88be14),color-stop(100%,#5d9c0a));background:-webkit-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:-o-linear-gradient(top,#88be14 0,#5d9c0a 100%);background:linear-gradient(to bottom,#88be14 0,#5d9c0a 100%);background:-moz-linear-gradient(top,#88be14 0,#5d9c0a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#88be14',endColorstr='#5d9c0a',GradientType=0)}a.cke_dialog_ui_button span{text-shadow:0 1px 0 #fff}a.cke_dialog_ui_button_ok span{text-shadow:0 -1px 0 #55830c}span.cke_dialog_ui_button{cursor:pointer}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active,a.cke_dialog_ui_button_cancel:focus,a.cke_dialog_ui_button_cancel:active{border-width:2px;padding:3px 0}a.cke_dialog_ui_button_ok:focus,a.cke_dialog_ui_button_ok:active{border-color:#568c0a}a.cke_dialog_ui_button_ok:focus span,a.cke_dialog_ui_button_ok:active span,a.cke_dialog_ui_button_cancel:focus span,a.cke_dialog_ui_button_cancel:active span{padding:0 11px}.cke_dialog_footer_buttons{display:inline-table;margin:5px;width:auto;position:relative;vertical-align:middle}div.cke_dialog_ui_input_select{display:table}select.cke_dialog_ui_input_select{height:25px;line-height:25px;background-color:#fff;border:1px solid #c9cccf;border-top-color:#aeb3b9;padding:3px 3px 3px 6px;outline:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15) inset;box-shadow:0 1px 2px rgba(0,0,0,.15) inset}.cke_dialog_ui_input_file{width:100%;height:25px}.cke_hc .cke_dialog_ui_labeled_content input:focus,.cke_hc .cke_dialog_ui_labeled_content select:focus,.cke_hc .cke_dialog_ui_labeled_content textarea:focus{outline:1px dotted}.cke_dialog .cke_dark_background{background-color:#dedede}.cke_dialog .cke_light_background{background-color:#ebebeb}.cke_dialog .cke_centered{text-align:center}.cke_dialog a.cke_btn_reset{float:right;background:url(images/refresh.png) top left no-repeat;width:16px;height:16px;border:1px none;font-size:1px}.cke_hidpi .cke_dialog a.cke_btn_reset{background-size:16px;background-image:url(images/hidpi/refresh.png)}.cke_rtl .cke_dialog a.cke_btn_reset{float:left}.cke_dialog a.cke_btn_locked,.cke_dialog a.cke_btn_unlocked{float:left;width:16px;height:16px;background-repeat:no-repeat;border:none 1px;font-size:1px}.cke_dialog a.cke_btn_locked .cke_icon{display:none}.cke_rtl .cke_dialog a.cke_btn_locked,.cke_rtl .cke_dialog a.cke_btn_unlocked{float:right}.cke_dialog a.cke_btn_locked{background-image:url(images/lock.png)}.cke_dialog a.cke_btn_unlocked{background-image:url(images/lock-open.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked,.cke_hidpi .cke_dialog a.cke_btn_locked{background-size:16px}.cke_hidpi .cke_dialog a.cke_btn_locked{background-image:url(images/hidpi/lock.png)}.cke_hidpi .cke_dialog a.cke_btn_unlocked{background-image:url(images/hidpi/lock-open.png)}.cke_dialog .cke_btn_over{border:outset 1px;cursor:pointer}.cke_dialog .ImagePreviewBox{border:2px ridge black;overflow:scroll;height:200px;width:300px;padding:2px;background-color:white}.cke_dialog .ImagePreviewBox table td{white-space:normal}.cke_dialog .ImagePreviewLoader{position:absolute;white-space:normal;overflow:hidden;height:160px;width:230px;margin:2px;padding:2px;opacity:.9;filter:alpha(opacity = 90);background-color:#e4e4e4}.cke_dialog .FlashPreviewBox{white-space:normal;border:2px ridge black;overflow:auto;height:160px;width:390px;padding:2px;background-color:white}.cke_dialog .cke_pastetext{width:346px;height:170px}.cke_dialog .cke_pastetext textarea{width:340px;height:170px;resize:none}.cke_dialog iframe.cke_pasteframe{width:346px;height:130px;background-color:white;border:1px solid #aeb3b9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.cke_dialog .cke_hand{cursor:pointer}.cke_disabled{color:#a0a0a0}.cke_dialog_body .cke_label{display:none}.cke_dialog_body label{display:inline;margin-bottom:auto;cursor:default}.cke_dialog_body label.cke_required{font-weight:bold}a.cke_smile{overflow:hidden;display:block;text-align:center;padding:.3em 0}a.cke_smile img{vertical-align:middle}a.cke_specialchar{cursor:inherit;display:block;height:1.25em;padding:.2em .3em;text-align:center}a.cke_smile,a.cke_specialchar{border:1px solid transparent}a.cke_smile:hover,a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:hover,a.cke_specialchar:focus,a.cke_specialchar:active{background:#fff;outline:0}a.cke_smile:hover,a.cke_specialchar:hover{border-color:#888}a.cke_smile:focus,a.cke_smile:active,a.cke_specialchar:focus,a.cke_specialchar:active{border-color:#139ff7}.cke_dialog_contents a.colorChooser{display:block;margin-top:6px;margin-left:10px;width:80px}.cke_rtl .cke_dialog_contents a.colorChooser{margin-right:10px}.cke_dialog_ui_checkbox_input:focus,.cke_dialog_ui_radio_input:focus,.cke_btn_over{outline:1px dotted #696969}.cke_iframe_shim{display:block;position:absolute;top:0;left:0;z-index:-1;filter:alpha(opacity = 0);width:100%;height:100%}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{padding-right:2px}.cke_rtl div.cke_dialog_ui_input_text,.cke_rtl div.cke_dialog_ui_input_password{padding-left:2px}.cke_rtl div.cke_dialog_ui_input_text{padding-right:1px}.cke_rtl .cke_dialog_ui_vbox_child,.cke_rtl .cke_dialog_ui_hbox_child,.cke_rtl .cke_dialog_ui_hbox_first,.cke_rtl .cke_dialog_ui_hbox_last{padding-right:2px!important}.cke_hc .cke_dialog_title,.cke_hc .cke_dialog_footer,.cke_hc a.cke_dialog_tab,.cke_hc a.cke_dialog_ui_button,.cke_hc a.cke_dialog_ui_button:hover,.cke_hc a.cke_dialog_ui_button_ok,.cke_hc a.cke_dialog_ui_button_ok:hover{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_hc div.cke_dialog_ui_input_text,.cke_hc div.cke_dialog_ui_input_password,.cke_hc div.cke_dialog_ui_input_textarea,.cke_hc div.cke_dialog_ui_input_select,.cke_hc div.cke_dialog_ui_input_file{border:0}.cke_dialog_footer{filter:""} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor.css
deleted file mode 100644
index 324526ce..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_gecko.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_gecko.css
deleted file mode 100644
index 22df7efb..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_gecko.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}.cke_bottom{padding-bottom:3px}.cke_combo_text{margin-bottom:-1px;margin-top:1px}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie.css
deleted file mode 100644
index 42119784..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie7.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie7.css
deleted file mode 100644
index a6607e88..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie7.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_toolbox{display:inline-block;padding-bottom:5px;height:100%}.cke_rtl .cke_toolbox{padding-bottom:0}.cke_toolbar{margin-bottom:5px}.cke_rtl .cke_toolbar{margin-bottom:0}.cke_toolgroup{height:26px}.cke_toolgroup,.cke_combo{position:relative}a.cke_button{float:none;vertical-align:top}.cke_toolbar_separator{display:inline-block;float:none;vertical-align:top;background-color:#c0c0c0}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_rtl .cke_button_arrow{padding-top:8px;margin-right:2px}.cke_rtl .cke_combo_inlinelabel{display:table-cell;vertical-align:middle}.cke_menubutton{display:block;height:24px}.cke_menubutton_inner{display:block;position:relative}.cke_menubutton_icon{height:16px;width:16px}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:inline-block}.cke_menubutton_label{width:auto;vertical-align:top;line-height:24px;height:24px;margin:0 10px 0 0}.cke_menuarrow{width:5px;height:6px;padding:0;position:absolute;right:8px;top:10px;background-position:0 0}.cke_rtl .cke_menubutton_icon{position:absolute;right:0;top:0}.cke_rtl .cke_menubutton_label{float:right;clear:both;margin:0 24px 0 10px}.cke_hc .cke_rtl .cke_menubutton_label{margin-right:0}.cke_rtl .cke_menuarrow{left:8px;right:auto;background-position:0 -24px}.cke_hc .cke_menuarrow{top:5px;padding:0 5px}.cke_rtl input.cke_dialog_ui_input_text,.cke_rtl input.cke_dialog_ui_input_password{position:relative}.cke_wysiwyg_div{padding-top:0!important;padding-bottom:0!important}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie8.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie8.css
deleted file mode 100644
index c10fce39..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_ie8.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_toolbox_collapser .cke_arrow{border-width:4px}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{border-width:3px}.cke_toolbox_collapser .cke_arrow{margin-top:0}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_iequirks.css b/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_iequirks.css
deleted file mode 100644
index 61637ae7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/editor_iequirks.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-For licensing, see LICENSE.md or http://ckeditor.com/license
-*/
-.cke_reset{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none}.cke_reset_all,.cke_reset_all *{margin:0;padding:0;border:0;background:transparent;text-decoration:none;width:auto;height:auto;vertical-align:baseline;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;position:static;-webkit-transition:none;-moz-transition:none;-ms-transition:none;transition:none;border-collapse:collapse;font:normal normal normal 12px Arial,Helvetica,Tahoma,Verdana,Sans-Serif;color:#000;text-align:left;white-space:nowrap;cursor:auto;float:none}.cke_reset_all .cke_rtl *{text-align:right}.cke_reset_all iframe{vertical-align:inherit}.cke_reset_all textarea{white-space:pre}.cke_reset_all textarea,.cke_reset_all input[type="text"],.cke_reset_all input[type="password"]{cursor:text}.cke_reset_all textarea[disabled],.cke_reset_all input[type="text"][disabled],.cke_reset_all input[type="password"][disabled]{cursor:default}.cke_reset_all fieldset{padding:10px;border:2px groove #e0dfe3}.cke_reset_all select{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.cke_chrome{display:block;border:1px solid #b6b6b6;padding:0;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_inner{display:block;-webkit-touch-callout:none;background:#fff;padding:0}.cke_float{border:0}.cke_float .cke_inner{padding-bottom:0}.cke_top,.cke_contents,.cke_bottom{display:block;overflow:hidden}.cke_top{border-bottom:1px solid #b6b6b6;padding:6px 8px 2px;white-space:normal;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_float .cke_top{border:1px solid #b6b6b6;border-bottom-color:#999}.cke_bottom{padding:6px 8px 2px;position:relative;border-top:1px solid #bfbfbf;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#cfd1cf));background-image:-moz-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-webkit-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-o-linear-gradient(top,#ebebeb,#cfd1cf);background-image:-ms-linear-gradient(top,#ebebeb,#cfd1cf);background-image:linear-gradient(top,#ebebeb,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ebebeb',endColorstr='#cfd1cf')}.cke_browser_ios .cke_contents{overflow-y:auto;-webkit-overflow-scrolling:touch}.cke_resizer{width:0;height:0;overflow:hidden;width:0;height:0;overflow:hidden;border-width:10px 10px 0 0;border-color:transparent #666 transparent transparent;border-style:dashed solid dashed dashed;font-size:0;vertical-align:bottom;margin-top:6px;margin-bottom:2px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.3);box-shadow:0 1px 0 rgba(255,255,255,.3)}.cke_hc .cke_resizer{font-size:15px;width:auto;height:auto;border-width:0}.cke_resizer_ltr{cursor:se-resize;float:right;margin-right:-4px}.cke_resizer_rtl{border-width:10px 0 0 10px;border-color:transparent transparent transparent #a5a5a5;border-style:dashed dashed dashed solid;cursor:sw-resize;float:left;margin-left:-4px;right:auto}.cke_wysiwyg_div{display:block;height:100%;overflow:auto;padding:0 8px;outline-style:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.cke_panel{visibility:visible;width:120px;height:100px;overflow:hidden;background-color:#fff;border:1px solid #b6b6b6;border-bottom-color:#999;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 0 3px rgba(0,0,0,.15);-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15)}.cke_menu_panel{padding:0;margin:0}.cke_combopanel{width:150px;height:170px}.cke_panel_frame{width:100%;height:100%;font-size:12px;overflow:auto;overflow-x:hidden}.cke_panel_container{overflow-y:auto;overflow-x:hidden}.cke_panel_list{list-style-type:none;margin:3px;padding:0;white-space:nowrap}.cke_panel_listItem{margin:0;padding-bottom:1px}.cke_panel_listItem a{padding:3px 4px;display:block;border:1px solid #fff;color:inherit!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}* html .cke_panel_listItem a{width:100%;color:#000}*:first-child+html .cke_panel_listItem a{color:#000}.cke_panel_listItem.cke_selected a{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_panel_listItem a:hover,.cke_panel_listItem a:focus,.cke_panel_listItem a:active{border-color:#dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_hc .cke_panel_listItem a{border-style:none}.cke_hc .cke_panel_listItem a:hover,.cke_hc .cke_panel_listItem a:focus,.cke_hc .cke_panel_listItem a:active{border:2px solid;padding:1px 2px}.cke_panel_grouptitle{cursor:default;font-size:11px;font-weight:bold;white-space:nowrap;margin:0;padding:4px 6px;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.75);border-bottom:1px solid #b6b6b6;-moz-border-radius:2px 2px 0 0;-webkit-border-radius:2px 2px 0 0;border-radius:2px 2px 0 0;-moz-box-shadow:0 1px 0 #fff inset;-webkit-box-shadow:0 1px 0 #fff inset;box-shadow:0 1px 0 #fff inset;background:#cfd1cf;background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#cfd1cf));background-image:-moz-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-webkit-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-o-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:-ms-linear-gradient(top,#f5f5f5,#cfd1cf);background-image:linear-gradient(top,#f5f5f5,#cfd1cf);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f5f5f5',endColorstr='#cfd1cf')}.cke_panel_listItem p,.cke_panel_listItem h1,.cke_panel_listItem h2,.cke_panel_listItem h3,.cke_panel_listItem h4,.cke_panel_listItem h5,.cke_panel_listItem h6,.cke_panel_listItem pre{margin-top:0;margin-bottom:0}.cke_colorblock{padding:3px;font-size:11px;font-family:'Microsoft Sans Serif',Tahoma,Arial,Verdana,Sans-Serif}.cke_colorblock,.cke_colorblock a{text-decoration:none;color:#000}span.cke_colorbox{width:10px;height:10px;border:#808080 1px solid;float:left}.cke_rtl span.cke_colorbox{float:right}a.cke_colorbox{border:#fff 1px solid;padding:2px;float:left;width:12px;height:12px}.cke_rtl a.cke_colorbox{float:right}a:hover.cke_colorbox,a:focus.cke_colorbox,a:active.cke_colorbox{border:#b6b6b6 1px solid;background-color:#e5e5e5}a.cke_colorauto,a.cke_colormore{border:#fff 1px solid;padding:2px;display:block;cursor:pointer}a:hover.cke_colorauto,a:hover.cke_colormore,a:focus.cke_colorauto,a:focus.cke_colormore,a:active.cke_colorauto,a:active.cke_colormore{border:#b6b6b6 1px solid;background-color:#e5e5e5}.cke_toolbar{float:left}.cke_rtl .cke_toolbar{float:right}.cke_toolgroup{float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_hc .cke_toolgroup{border:0;margin-right:10px;margin-bottom:10px}.cke_rtl .cke_toolgroup{float:right;margin-left:6px;margin-right:0}a.cke_button{display:inline-block;height:18px;padding:4px 6px;outline:0;cursor:default;float:left;border:0}.cke_ltr .cke_button:last-child,.cke_rtl .cke_button:first-child{-moz-border-radius:0 2px 2px 0;-webkit-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0}.cke_ltr .cke_button:first-child,.cke_rtl .cke_button:last-child{-moz-border-radius:2px 0 0 2px;-webkit-border-radius:2px 0 0 2px;border-radius:2px 0 0 2px}.cke_rtl .cke_button{float:right}.cke_hc .cke_button{border:1px solid black;padding:3px 5px;margin:-2px 4px 0 -2px}.cke_button_on{-moz-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 5px rgba(0,0,0,.6) inset,0 1px 0 rgba(0,0,0,.2);background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc a.cke_button_disabled:hover,.cke_hc a.cke_button_disabled:focus,.cke_hc a.cke_button_disabled:active{border-width:3px;padding:1px 3px}.cke_button_disabled .cke_button_icon{opacity:.3}.cke_hc .cke_button_disabled{opacity:.5}a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{-moz-box-shadow:0 0 1px rgba(0,0,0,.3) inset;-webkit-box-shadow:0 0 1px rgba(0,0,0,.3) inset;box-shadow:0 0 1px rgba(0,0,0,.3) inset;background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_button_icon{cursor:inherit;background-repeat:no-repeat;margin-top:1px;width:16px;height:16px;float:left;display:inline-block}.cke_rtl .cke_button_icon{float:right}.cke_hc .cke_button_icon{display:none}.cke_button_label{display:none;padding-left:3px;margin-top:1px;line-height:17px;vertical-align:middle;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5)}.cke_rtl .cke_button_label{padding-right:3px;padding-left:0;float:right}.cke_hc .cke_button_label{padding:0;display:inline-block;font-size:12px}.cke_button_arrow{display:inline-block;margin:8px 0 0 1px;width:0;height:0;cursor:default;vertical-align:top;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_rtl .cke_button_arrow{margin-right:5px;margin-left:0}.cke_hc .cke_button_arrow{font-size:10px;margin:3px -2px 0 3px;width:auto;border:0}.cke_toolbar_separator{float:left;background-color:#c0c0c0;background-color:rgba(0,0,0,.2);margin:5px 2px 0;height:18px;width:1px;-webkit-box-shadow:1px 0 1px rgba(255,255,255,.5);-moz-box-shadow:1px 0 1px rgba(255,255,255,.5);box-shadow:1px 0 1px rgba(255,255,255,.5)}.cke_rtl .cke_toolbar_separator{float:right;-webkit-box-shadow:-1px 0 1px rgba(255,255,255,.1);-moz-box-shadow:-1px 0 1px rgba(255,255,255,.1);box-shadow:-1px 0 1px rgba(255,255,255,.1)}.cke_hc .cke_toolbar_separator{width:0;border-left:1px solid;margin:1px 5px 0 0}.cke_toolbar_break{display:block;clear:left}.cke_rtl .cke_toolbar_break{clear:right}.cke_toolbox_collapser{width:12px;height:11px;float:right;margin:11px 0 0;font-size:0;cursor:default;text-align:center;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_toolbox_collapser:hover{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc')}.cke_toolbox_collapser.cke_toolbox_collapser_min{margin:0 2px 4px}.cke_rtl .cke_toolbox_collapser{float:left}.cke_toolbox_collapser .cke_arrow{display:inline-block;height:0;width:0;font-size:0;margin-top:1px;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:3px solid #474747;border-top:3px solid transparent}.cke_toolbox_collapser.cke_toolbox_collapser_min .cke_arrow{margin-top:4px;border-bottom-color:transparent;border-top-color:#474747}.cke_hc .cke_toolbox_collapser .cke_arrow{font-size:8px;width:auto;border:0;margin-top:0;margin-right:2px}.cke_menubutton{display:block}.cke_menuitem span{cursor:default}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#d3d3d3;display:block}.cke_hc .cke_menubutton{padding:2px}.cke_hc .cke_menubutton:hover,.cke_hc .cke_menubutton:focus,.cke_hc .cke_menubutton:active{border:2px solid;padding:0}.cke_menubutton_inner{display:table-row}.cke_menubutton_icon,.cke_menubutton_label,.cke_menuarrow{display:table-cell}.cke_menubutton_icon{background-color:#d7d8d7;opacity:.70;filter:alpha(opacity=70);padding:4px}.cke_hc .cke_menubutton_icon{height:16px;width:0;padding:4px 0}.cke_menubutton:hover .cke_menubutton_icon,.cke_menubutton:focus .cke_menubutton_icon,.cke_menubutton:active .cke_menubutton_icon{background-color:#d0d2d0}.cke_menubutton_disabled:hover .cke_menubutton_icon,.cke_menubutton_disabled:focus .cke_menubutton_icon,.cke_menubutton_disabled:active .cke_menubutton_icon{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_label{padding:0 5px;background-color:transparent;width:100%;vertical-align:middle}.cke_menubutton_disabled .cke_menubutton_label{opacity:.3;filter:alpha(opacity=30)}.cke_menubutton_on{border:1px solid #dedede;background-color:#f2f2f2;-moz-box-shadow:0 0 2px rgba(0,0,0,.1) inset;-webkit-box-shadow:0 0 2px rgba(0,0,0,.1) inset;box-shadow:0 0 2px rgba(0,0,0,.1) inset}.cke_menubutton_on .cke_menubutton_icon{padding-right:3px}.cke_menubutton:hover,.cke_menubutton:focus,.cke_menubutton:active{background-color:#eff0ef}.cke_panel_frame .cke_menubutton_label{display:none}.cke_menuseparator{background-color:#d3d3d3;height:1px;filter:alpha(opacity=70);opacity:.70}.cke_menuarrow{background-image:url(images/arrow.png);background-position:0 10px;background-repeat:no-repeat;padding:0 5px}.cke_rtl .cke_menuarrow{background-position:5px -13px;background-repeat:no-repeat}.cke_menuarrow span{display:none}.cke_hc .cke_menuarrow span{vertical-align:middle;display:inline}.cke_combo{display:inline-block;float:left}.cke_rtl .cke_combo{float:right}.cke_hc .cke_combo{margin-top:-2px}.cke_combo_label{display:none;float:left;line-height:26px;vertical-align:top;margin-right:5px}.cke_rtl .cke_combo_label{float:right;margin-left:5px;margin-right:0}.cke_combo_button{cursor:default;display:inline-block;float:left;margin:0 6px 5px 0;border:1px solid #a6a6a6;border-bottom-color:#979797;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 0 2px rgba(255,255,255,.15) inset,0 1px 0 rgba(255,255,255,.15) inset;background:#e4e4e4;background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e4e4e4));background-image:-moz-linear-gradient(top,#fff,#e4e4e4);background-image:-webkit-linear-gradient(top,#fff,#e4e4e4);background-image:-o-linear-gradient(top,#fff,#e4e4e4);background-image:-ms-linear-gradient(top,#fff,#e4e4e4);background-image:linear-gradient(top,#fff,#e4e4e4);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#ffffff',endColorstr='#e4e4e4')}.cke_combo_off a.cke_combo_button:hover,.cke_combo_off a.cke_combo_button:focus{background:#ccc;background-image:-webkit-gradient(linear,left top,left bottom,from(#f2f2f2),to(#ccc));background-image:-moz-linear-gradient(top,#f2f2f2,#ccc);background-image:-webkit-linear-gradient(top,#f2f2f2,#ccc);background-image:-o-linear-gradient(top,#f2f2f2,#ccc);background-image:-ms-linear-gradient(top,#f2f2f2,#ccc);background-image:linear-gradient(top,#f2f2f2,#ccc);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#f2f2f2',endColorstr='#cccccc');outline:0}.cke_combo_off a.cke_combo_button:active,.cke_combo_on a.cke_combo_button{border:1px solid #777;-moz-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;box-shadow:0 1px 0 rgba(255,255,255,.5),0 1px 5px rgba(0,0,0,.6) inset;background:#b5b5b5;background-image:-webkit-gradient(linear,left top,left bottom,from(#aaa),to(#cacaca));background-image:-moz-linear-gradient(top,#aaa,#cacaca);background-image:-webkit-linear-gradient(top,#aaa,#cacaca);background-image:-o-linear-gradient(top,#aaa,#cacaca);background-image:-ms-linear-gradient(top,#aaa,#cacaca);background-image:linear-gradient(top,#aaa,#cacaca);filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='#aaaaaa',endColorstr='#cacaca')}.cke_combo_on a.cke_combo_button:hover,.cke_combo_on a.cke_combo_button:focus,.cke_combo_on a.cke_combo_button:active{-moz-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);-webkit-box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2);box-shadow:0 1px 6px rgba(0,0,0,.7) inset,0 1px 0 rgba(0,0,0,.2)}.cke_rtl .cke_combo_button{float:right;margin-left:5px;margin-right:0}.cke_hc a.cke_combo_button{padding:3px}.cke_hc .cke_combo_on a.cke_combo_button,.cke_hc .cke_combo_off a.cke_combo_button:hover,.cke_hc .cke_combo_off a.cke_combo_button:focus,.cke_hc .cke_combo_off a.cke_combo_button:active{border-width:3px;padding:1px}.cke_combo_text{line-height:26px;padding-left:10px;text-overflow:ellipsis;overflow:hidden;float:left;cursor:default;color:#474747;text-shadow:0 1px 0 rgba(255,255,255,.5);width:60px}.cke_rtl .cke_combo_text{float:right;text-align:right;padding-left:0;padding-right:10px}.cke_hc .cke_combo_text{line-height:18px;font-size:12px}.cke_combo_open{cursor:default;display:inline-block;font-size:0;height:19px;line-height:17px;margin:1px 7px 1px;width:5px}.cke_hc .cke_combo_open{height:12px}.cke_combo_arrow{cursor:default;margin:11px 0 0;float:left;height:0;width:0;font-size:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #474747}.cke_hc .cke_combo_arrow{font-size:10px;width:auto;border:0;margin-top:3px}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{opacity:.3}.cke_path{float:left;margin:-2px 0 2px}.cke_path_item,.cke_path_empty{display:inline-block;float:left;padding:3px 4px;margin-right:2px;cursor:default;text-decoration:none;outline:0;border:0;color:#4c4c4c;text-shadow:0 1px 0 #fff;font-weight:bold;font-size:11px}.cke_rtl .cke_path,.cke_rtl .cke_path_item,.cke_rtl .cke_path_empty{float:right}a.cke_path_item:hover,a.cke_path_item:focus,a.cke_path_item:active{background-color:#bfbfbf;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.5);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);-webkit-box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5);box-shadow:0 0 4px rgba(0,0,0,.5) inset,0 1px 0 rgba(255,255,255,.5)}.cke_hc a.cke_path_item:hover,.cke_hc a.cke_path_item:focus,.cke_hc a.cke_path_item:active{border:2px solid;padding:1px 2px}.cke_button__source_label,.cke_button__sourcedialog_label{display:inline}.cke_combo__fontsize .cke_combo_text{width:30px}.cke_combopanel__fontsize{width:120px}.cke_source{font-family:'Courier New',Monospace;font-size:small;background-color:#fff;white-space:pre}.cke_wysiwyg_frame,.cke_wysiwyg_div{background-color:#fff}.cke_chrome{visibility:inherit}.cke_voice_label{display:none}legend.cke_voice_label{display:none}a.cke_button_disabled,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{filter:alpha(opacity = 30)}.cke_button_disabled .cke_button_icon{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff)}.cke_button_off:hover,.cke_button_off:focus,.cke_button_off:active{filter:alpha(opacity = 100)}.cke_combo_disabled .cke_combo_inlinelabel,.cke_combo_disabled .cke_combo_open{filter:alpha(opacity = 30)}.cke_toolbox_collapser{border:1px solid #a6a6a6}.cke_toolbox_collapser .cke_arrow{margin-top:1px}.cke_hc .cke_top,.cke_hc .cke_bottom,.cke_hc .cke_combo_button,.cke_hc a.cke_combo_button:hover,.cke_hc a.cke_combo_button:focus,.cke_hc .cke_toolgroup,.cke_hc .cke_button_on,.cke_hc a.cke_button_off:hover,.cke_hc a.cke_button_off:focus,.cke_hc a.cke_button_off:active,.cke_hc .cke_toolbox_collapser,.cke_hc .cke_toolbox_collapser:hover,.cke_hc .cke_panel_grouptitle{filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.cke_top,.cke_contents,.cke_bottom{width:100%}.cke_button_arrow{font-size:0}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_button,.cke_rtl .cke_button *,.cke_rtl .cke_combo,.cke_rtl .cke_combo *,.cke_rtl .cke_path_item,.cke_rtl .cke_path_item *,.cke_rtl .cke_path_empty{float:none}.cke_rtl .cke_toolgroup,.cke_rtl .cke_toolbar_separator,.cke_rtl .cke_combo_button,.cke_rtl .cke_combo_button *,.cke_rtl .cke_button,.cke_rtl .cke_button_icon{display:inline-block;vertical-align:top}.cke_rtl .cke_button_icon{float:none}.cke_resizer{width:10px}.cke_source{white-space:normal}.cke_bottom{position:static}.cke_colorbox{font-size:0}.cke_button__about_icon {background: url(icons.png) no-repeat 0 -0px !important;}.cke_button__bold_icon {background: url(icons.png) no-repeat 0 -24px !important;}.cke_button__italic_icon {background: url(icons.png) no-repeat 0 -48px !important;}.cke_button__strike_icon {background: url(icons.png) no-repeat 0 -72px !important;}.cke_button__subscript_icon {background: url(icons.png) no-repeat 0 -96px !important;}.cke_button__superscript_icon {background: url(icons.png) no-repeat 0 -120px !important;}.cke_button__underline_icon {background: url(icons.png) no-repeat 0 -144px !important;}.cke_button__bidiltr_icon {background: url(icons.png) no-repeat 0 -168px !important;}.cke_button__bidirtl_icon {background: url(icons.png) no-repeat 0 -192px !important;}.cke_button__blockquote_icon {background: url(icons.png) no-repeat 0 -216px !important;}.cke_rtl .cke_button__copy_icon, .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -240px !important;}.cke_ltr .cke_button__copy_icon {background: url(icons.png) no-repeat 0 -264px !important;}.cke_rtl .cke_button__cut_icon, .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -288px !important;}.cke_ltr .cke_button__cut_icon {background: url(icons.png) no-repeat 0 -312px !important;}.cke_rtl .cke_button__paste_icon, .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -336px !important;}.cke_ltr .cke_button__paste_icon {background: url(icons.png) no-repeat 0 -360px !important;}.cke_button__bgcolor_icon {background: url(icons.png) no-repeat 0 -384px !important;}.cke_button__textcolor_icon {background: url(icons.png) no-repeat 0 -408px !important;}.cke_rtl .cke_button__templates_icon, .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -432px !important;}.cke_ltr .cke_button__templates_icon {background: url(icons.png) no-repeat 0 -456px !important;}.cke_button__creatediv_icon {background: url(icons.png) no-repeat 0 -480px !important;}.cke_rtl .cke_button__find_icon, .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons.png) no-repeat 0 -504px !important;}.cke_ltr .cke_button__find_icon {background: url(icons.png) no-repeat 0 -528px !important;}.cke_button__replace_icon {background: url(icons.png) no-repeat 0 -552px !important;}.cke_button__flash_icon {background: url(icons.png) no-repeat 0 -576px !important;}.cke_button__button_icon {background: url(icons.png) no-repeat 0 -600px !important;}.cke_button__checkbox_icon {background: url(icons.png) no-repeat 0 -624px !important;}.cke_button__form_icon {background: url(icons.png) no-repeat 0 -648px !important;}.cke_button__hiddenfield_icon {background: url(icons.png) no-repeat 0 -672px !important;}.cke_button__imagebutton_icon {background: url(icons.png) no-repeat 0 -696px !important;}.cke_button__radio_icon {background: url(icons.png) no-repeat 0 -720px !important;}.cke_rtl .cke_button__select_icon, .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons.png) no-repeat 0 -744px !important;}.cke_ltr .cke_button__select_icon {background: url(icons.png) no-repeat 0 -768px !important;}.cke_rtl .cke_button__textarea_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -792px !important;}.cke_ltr .cke_button__textarea_icon {background: url(icons.png) no-repeat 0 -816px !important;}.cke_rtl .cke_button__textfield_icon, .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -840px !important;}.cke_ltr .cke_button__textfield_icon {background: url(icons.png) no-repeat 0 -864px !important;}.cke_button__horizontalrule_icon {background: url(icons.png) no-repeat 0 -888px !important;}.cke_button__iframe_icon {background: url(icons.png) no-repeat 0 -912px !important;}.cke_button__image_icon {background: url(icons.png) no-repeat 0 -936px !important;}.cke_rtl .cke_button__indent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -960px !important;}.cke_ltr .cke_button__indent_icon {background: url(icons.png) no-repeat 0 -984px !important;}.cke_rtl .cke_button__outdent_icon, .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1008px !important;}.cke_ltr .cke_button__outdent_icon {background: url(icons.png) no-repeat 0 -1032px !important;}.cke_button__smiley_icon {background: url(icons.png) no-repeat 0 -1056px !important;}.cke_button__justifyblock_icon {background: url(icons.png) no-repeat 0 -1080px !important;}.cke_button__justifycenter_icon {background: url(icons.png) no-repeat 0 -1104px !important;}.cke_button__justifyleft_icon {background: url(icons.png) no-repeat 0 -1128px !important;}.cke_button__justifyright_icon {background: url(icons.png) no-repeat 0 -1152px !important;}.cke_button__language_icon {background: url(icons.png) no-repeat 0 -1176px !important;}.cke_rtl .cke_button__anchor_icon, .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1200px !important;}.cke_ltr .cke_button__anchor_icon {background: url(icons.png) no-repeat 0 -1224px !important;}.cke_button__link_icon {background: url(icons.png) no-repeat 0 -1248px !important;}.cke_button__unlink_icon {background: url(icons.png) no-repeat 0 -1272px !important;}.cke_rtl .cke_button__bulletedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1296px !important;}.cke_ltr .cke_button__bulletedlist_icon {background: url(icons.png) no-repeat 0 -1320px !important;}.cke_rtl .cke_button__numberedlist_icon, .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1344px !important;}.cke_ltr .cke_button__numberedlist_icon {background: url(icons.png) no-repeat 0 -1368px !important;}.cke_button__maximize_icon {background: url(icons.png) no-repeat 0 -1392px !important;}.cke_rtl .cke_button__newpage_icon, .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1416px !important;}.cke_ltr .cke_button__newpage_icon {background: url(icons.png) no-repeat 0 -1440px !important;}.cke_rtl .cke_button__pagebreak_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1464px !important;}.cke_ltr .cke_button__pagebreak_icon {background: url(icons.png) no-repeat 0 -1488px !important;}.cke_rtl .cke_button__pastetext_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1512px !important;}.cke_ltr .cke_button__pastetext_icon {background: url(icons.png) no-repeat 0 -1536px !important;}.cke_rtl .cke_button__pastefromword_icon, .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1560px !important;}.cke_ltr .cke_button__pastefromword_icon {background: url(icons.png) no-repeat 0 -1584px !important;}.cke_rtl .cke_button__preview_icon, .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1608px !important;}.cke_ltr .cke_button__preview_icon {background: url(icons.png) no-repeat 0 -1632px !important;}.cke_button__print_icon {background: url(icons.png) no-repeat 0 -1656px !important;}.cke_button__removeformat_icon {background: url(icons.png) no-repeat 0 -1680px !important;}.cke_button__save_icon {background: url(icons.png) no-repeat 0 -1704px !important;}.cke_button__selectall_icon {background: url(icons.png) no-repeat 0 -1728px !important;}.cke_rtl .cke_button__showblocks_icon, .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1752px !important;}.cke_ltr .cke_button__showblocks_icon {background: url(icons.png) no-repeat 0 -1776px !important;}.cke_rtl .cke_button__source_icon, .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1800px !important;}.cke_ltr .cke_button__source_icon {background: url(icons.png) no-repeat 0 -1824px !important;}.cke_button__specialchar_icon {background: url(icons.png) no-repeat 0 -1848px !important;}.cke_button__scayt_icon {background: url(icons.png) no-repeat 0 -1872px !important;}.cke_button__table_icon {background: url(icons.png) no-repeat 0 -1896px !important;}.cke_rtl .cke_button__redo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1920px !important;}.cke_ltr .cke_button__redo_icon {background: url(icons.png) no-repeat 0 -1944px !important;}.cke_rtl .cke_button__undo_icon, .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1968px !important;}.cke_ltr .cke_button__undo_icon {background: url(icons.png) no-repeat 0 -1992px !important;}.cke_button__spellchecker_icon {background: url(icons.png) no-repeat 0 -2016px !important;}.cke_hidpi .cke_button__about_icon {background: url(icons_hidpi.png) no-repeat 0 -0px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bold_icon {background: url(icons_hidpi.png) no-repeat 0 -24px !important;background-size: 16px !important;}.cke_hidpi .cke_button__italic_icon {background: url(icons_hidpi.png) no-repeat 0 -48px !important;background-size: 16px !important;}.cke_hidpi .cke_button__strike_icon {background: url(icons_hidpi.png) no-repeat 0 -72px !important;background-size: 16px !important;}.cke_hidpi .cke_button__subscript_icon {background: url(icons_hidpi.png) no-repeat 0 -96px !important;background-size: 16px !important;}.cke_hidpi .cke_button__superscript_icon {background: url(icons_hidpi.png) no-repeat 0 -120px !important;background-size: 16px !important;}.cke_hidpi .cke_button__underline_icon {background: url(icons_hidpi.png) no-repeat 0 -144px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidiltr_icon {background: url(icons_hidpi.png) no-repeat 0 -168px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bidirtl_icon {background: url(icons_hidpi.png) no-repeat 0 -192px !important;background-size: 16px !important;}.cke_hidpi .cke_button__blockquote_icon {background: url(icons_hidpi.png) no-repeat 0 -216px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__copy_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -240px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__copy_icon,.cke_ltr.cke_hidpi .cke_button__copy_icon {background: url(icons_hidpi.png) no-repeat 0 -264px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__cut_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -288px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__cut_icon,.cke_ltr.cke_hidpi .cke_button__cut_icon {background: url(icons_hidpi.png) no-repeat 0 -312px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__paste_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -336px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__paste_icon,.cke_ltr.cke_hidpi .cke_button__paste_icon {background: url(icons_hidpi.png) no-repeat 0 -360px !important;background-size: 16px !important;}.cke_hidpi .cke_button__bgcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -384px !important;background-size: 16px !important;}.cke_hidpi .cke_button__textcolor_icon {background: url(icons_hidpi.png) no-repeat 0 -408px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__templates_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -432px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__templates_icon,.cke_ltr.cke_hidpi .cke_button__templates_icon {background: url(icons_hidpi.png) no-repeat 0 -456px !important;background-size: 16px !important;}.cke_hidpi .cke_button__creatediv_icon {background: url(icons_hidpi.png) no-repeat 0 -480px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__find_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -504px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__find_icon,.cke_ltr.cke_hidpi .cke_button__find_icon {background: url(icons_hidpi.png) no-repeat 0 -528px !important;background-size: 16px !important;}.cke_hidpi .cke_button__replace_icon {background: url(icons_hidpi.png) no-repeat 0 -552px !important;background-size: 16px !important;}.cke_hidpi .cke_button__flash_icon {background: url(icons_hidpi.png) no-repeat 0 -576px !important;background-size: 16px !important;}.cke_hidpi .cke_button__button_icon {background: url(icons_hidpi.png) no-repeat 0 -600px !important;background-size: 16px !important;}.cke_hidpi .cke_button__checkbox_icon {background: url(icons_hidpi.png) no-repeat 0 -624px !important;background-size: 16px !important;}.cke_hidpi .cke_button__form_icon {background: url(icons_hidpi.png) no-repeat 0 -648px !important;background-size: 16px !important;}.cke_hidpi .cke_button__hiddenfield_icon {background: url(icons_hidpi.png) no-repeat 0 -672px !important;background-size: 16px !important;}.cke_hidpi .cke_button__imagebutton_icon {background: url(icons_hidpi.png) no-repeat 0 -696px !important;background-size: 16px !important;}.cke_hidpi .cke_button__radio_icon {background: url(icons_hidpi.png) no-repeat 0 -720px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__select_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -744px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__select_icon,.cke_ltr.cke_hidpi .cke_button__select_icon {background: url(icons_hidpi.png) no-repeat 0 -768px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textarea_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -792px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textarea_icon,.cke_ltr.cke_hidpi .cke_button__textarea_icon {background: url(icons_hidpi.png) no-repeat 0 -816px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__textfield_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -840px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__textfield_icon,.cke_ltr.cke_hidpi .cke_button__textfield_icon {background: url(icons_hidpi.png) no-repeat 0 -864px !important;background-size: 16px !important;}.cke_hidpi .cke_button__horizontalrule_icon {background: url(icons_hidpi.png) no-repeat 0 -888px !important;background-size: 16px !important;}.cke_hidpi .cke_button__iframe_icon {background: url(icons_hidpi.png) no-repeat 0 -912px !important;background-size: 16px !important;}.cke_hidpi .cke_button__image_icon {background: url(icons_hidpi.png) no-repeat 0 -936px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__indent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -960px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__indent_icon,.cke_ltr.cke_hidpi .cke_button__indent_icon {background: url(icons_hidpi.png) no-repeat 0 -984px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__outdent_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1008px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__outdent_icon,.cke_ltr.cke_hidpi .cke_button__outdent_icon {background: url(icons_hidpi.png) no-repeat 0 -1032px !important;background-size: 16px !important;}.cke_hidpi .cke_button__smiley_icon {background: url(icons_hidpi.png) no-repeat 0 -1056px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyblock_icon {background: url(icons_hidpi.png) no-repeat 0 -1080px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifycenter_icon {background: url(icons_hidpi.png) no-repeat 0 -1104px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyleft_icon {background: url(icons_hidpi.png) no-repeat 0 -1128px !important;background-size: 16px !important;}.cke_hidpi .cke_button__justifyright_icon {background: url(icons_hidpi.png) no-repeat 0 -1152px !important;background-size: 16px !important;}.cke_hidpi .cke_button__language_icon {background: url(icons_hidpi.png) no-repeat 0 -1176px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__anchor_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1200px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__anchor_icon,.cke_ltr.cke_hidpi .cke_button__anchor_icon {background: url(icons_hidpi.png) no-repeat 0 -1224px !important;background-size: 16px !important;}.cke_hidpi .cke_button__link_icon {background: url(icons_hidpi.png) no-repeat 0 -1248px !important;background-size: 16px !important;}.cke_hidpi .cke_button__unlink_icon {background: url(icons_hidpi.png) no-repeat 0 -1272px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__bulletedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1296px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__bulletedlist_icon,.cke_ltr.cke_hidpi .cke_button__bulletedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1320px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__numberedlist_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1344px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__numberedlist_icon,.cke_ltr.cke_hidpi .cke_button__numberedlist_icon {background: url(icons_hidpi.png) no-repeat 0 -1368px !important;background-size: 16px !important;}.cke_hidpi .cke_button__maximize_icon {background: url(icons_hidpi.png) no-repeat 0 -1392px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__newpage_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1416px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__newpage_icon,.cke_ltr.cke_hidpi .cke_button__newpage_icon {background: url(icons_hidpi.png) no-repeat 0 -1440px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pagebreak_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1464px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pagebreak_icon,.cke_ltr.cke_hidpi .cke_button__pagebreak_icon {background: url(icons_hidpi.png) no-repeat 0 -1488px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastetext_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1512px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastetext_icon,.cke_ltr.cke_hidpi .cke_button__pastetext_icon {background: url(icons_hidpi.png) no-repeat 0 -1536px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__pastefromword_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1560px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__pastefromword_icon,.cke_ltr.cke_hidpi .cke_button__pastefromword_icon {background: url(icons_hidpi.png) no-repeat 0 -1584px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__preview_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1608px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__preview_icon,.cke_ltr.cke_hidpi .cke_button__preview_icon {background: url(icons_hidpi.png) no-repeat 0 -1632px !important;background-size: 16px !important;}.cke_hidpi .cke_button__print_icon {background: url(icons_hidpi.png) no-repeat 0 -1656px !important;background-size: 16px !important;}.cke_hidpi .cke_button__removeformat_icon {background: url(icons_hidpi.png) no-repeat 0 -1680px !important;background-size: 16px !important;}.cke_hidpi .cke_button__save_icon {background: url(icons_hidpi.png) no-repeat 0 -1704px !important;background-size: 16px !important;}.cke_hidpi .cke_button__selectall_icon {background: url(icons_hidpi.png) no-repeat 0 -1728px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__showblocks_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1752px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__showblocks_icon,.cke_ltr.cke_hidpi .cke_button__showblocks_icon {background: url(icons_hidpi.png) no-repeat 0 -1776px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__source_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1800px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__source_icon,.cke_ltr.cke_hidpi .cke_button__source_icon {background: url(icons_hidpi.png) no-repeat 0 -1824px !important;background-size: 16px !important;}.cke_hidpi .cke_button__specialchar_icon {background: url(icons_hidpi.png) no-repeat 0 -1848px !important;background-size: 16px !important;}.cke_hidpi .cke_button__scayt_icon {background: url(icons_hidpi.png) no-repeat 0 -1872px !important;background-size: 16px !important;}.cke_hidpi .cke_button__table_icon {background: url(icons_hidpi.png) no-repeat 0 -1896px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__redo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1920px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__redo_icon,.cke_ltr.cke_hidpi .cke_button__redo_icon {background: url(icons_hidpi.png) no-repeat 0 -1944px !important;background-size: 16px !important;}.cke_rtl.cke_hidpi .cke_button__undo_icon, .cke_hidpi .cke_mixed_dir_content .cke_rtl .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1968px !important;background-size: 16px !important;}.cke_hidpi .cke_ltr .cke_button__undo_icon,.cke_ltr.cke_hidpi .cke_button__undo_icon {background: url(icons_hidpi.png) no-repeat 0 -1992px !important;background-size: 16px !important;}.cke_hidpi .cke_button__spellchecker_icon {background: url(icons_hidpi.png) no-repeat 0 -2016px !important;background-size: 16px !important;} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons.png
deleted file mode 100644
index 1ec992d9..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons_hidpi.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons_hidpi.png
deleted file mode 100644
index 6e103c05..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/icons_hidpi.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/arrow.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/arrow.png
deleted file mode 100644
index d72b5f3b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/arrow.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/close.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/close.png
deleted file mode 100644
index 6a04ab52..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/close.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/close.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/close.png
deleted file mode 100644
index e406c2c3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/close.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock-open.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock-open.png
deleted file mode 100644
index edbd12f3..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock-open.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock.png
deleted file mode 100644
index 1b87bbb7..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/lock.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/refresh.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/refresh.png
deleted file mode 100644
index c6c2b86e..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/hidpi/refresh.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock-open.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock-open.png
deleted file mode 100644
index 04769877..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock-open.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock.png
deleted file mode 100644
index c5a14400..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/lock.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/refresh.png b/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/refresh.png
deleted file mode 100644
index 1ff63c30..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/images/refresh.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/ckeditor/skins/moono/readme.md b/wqflask/wqflask/static/packages/ckeditor/skins/moono/readme.md
deleted file mode 100644
index d086fe9b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/skins/moono/readme.md
+++ /dev/null
@@ -1,51 +0,0 @@
-"Moono" Skin
-====================
-
-This skin has been chosen for the **default skin** of CKEditor 4.x, elected from the CKEditor
-[skin contest](http://ckeditor.com/blog/new_ckeditor_4_skin) and further shaped by
-the CKEditor team. "Moono" is maintained by the core developers.
-
-For more information about skins, please check the [CKEditor Skin SDK](http://docs.cksource.com/CKEditor_4.x/Skin_SDK)
-documentation.
-
-Features
--------------------
-"Moono" is a monochromatic skin, which offers a modern look coupled with gradients and transparency.
-It comes with the following features:
-
-- Chameleon feature with brightness,
-- high-contrast compatibility,
-- graphics source provided in SVG.
-
-Directory Structure
--------------------
-
-CSS parts:
-- **editor.css**: the main CSS file. It's simply loading several other files, for easier maintenance,
-- **mainui.css**: the file contains styles of entire editor outline structures,
-- **toolbar.css**: the file contains styles of the editor toolbar space (top),
-- **richcombo.css**: the file contains styles of the rich combo ui elements on toolbar,
-- **panel.css**: the file contains styles of the rich combo drop-down, it's not loaded
-until the first panel open up,
-- **elementspath.css**: the file contains styles of the editor elements path bar (bottom),
-- **menu.css**: the file contains styles of all editor menus including context menu and button drop-down,
-it's not loaded until the first menu open up,
-- **dialog.css**: the CSS files for the dialog UI, it's not loaded until the first dialog open,
-- **reset.css**: the file defines the basis of style resets among all editor UI spaces,
-- **preset.css**: the file defines the default styles of some UI elements reflecting the skin preference,
-- **editor_XYZ.css** and **dialog_XYZ.css**: browser specific CSS hacks.
-
-Other parts:
-- **skin.js**: the only JavaScript part of the skin that registers the skin, its browser specific files and its icons and defines the Chameleon feature,
-- **icons/**: contains all skin defined icons,
-- **images/**: contains a fill general used images,
-- **dev/**: contains SVG source of the skin icons.
-
-License
--------
-
-Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
-
-Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).
-
-See LICENSE.md for more information.
diff --git a/wqflask/wqflask/static/packages/ckeditor/styles.js b/wqflask/wqflask/static/packages/ckeditor/styles.js
deleted file mode 100644
index 18e4316b..00000000
--- a/wqflask/wqflask/static/packages/ckeditor/styles.js
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
- * For licensing, see LICENSE.md or http://ckeditor.com/license
- */
-
-// This file contains style definitions that can be used by CKEditor plugins.
-//
-// The most common use for it is the "stylescombo" plugin, which shows a combo
-// in the editor toolbar, containing all styles. Other plugins instead, like
-// the div plugin, use a subset of the styles on their feature.
-//
-// If you don't have plugins that depend on this file, you can simply ignore it.
-// Otherwise it is strongly recommended to customize this file to match your
-// website requirements and design properly.
-
-CKEDITOR.stylesSet.add( 'default', [
- /* Block Styles */
-
- // These styles are already available in the "Format" combo ("format" plugin),
- // so they are not needed here by default. You may enable them to avoid
- // placing the "Format" combo in the toolbar, maintaining the same features.
- /*
- { name: 'Paragraph', element: 'p' },
- { name: 'Heading 1', element: 'h1' },
- { name: 'Heading 2', element: 'h2' },
- { name: 'Heading 3', element: 'h3' },
- { name: 'Heading 4', element: 'h4' },
- { name: 'Heading 5', element: 'h5' },
- { name: 'Heading 6', element: 'h6' },
- { name: 'Preformatted Text',element: 'pre' },
- { name: 'Address', element: 'address' },
- */
-
- { name: 'Italic Title', element: 'h2', styles: { 'font-style': 'italic' } },
- { name: 'Subtitle', element: 'h3', styles: { 'color': '#aaa', 'font-style': 'italic' } },
- {
- name: 'Special Container',
- element: 'div',
- styles: {
- padding: '5px 10px',
- background: '#eee',
- border: '1px solid #ccc'
- }
- },
-
- /* Inline Styles */
-
- // These are core styles available as toolbar buttons. You may opt enabling
- // some of them in the Styles combo, removing them from the toolbar.
- // (This requires the "stylescombo" plugin)
- /*
- { name: 'Strong', element: 'strong', overrides: 'b' },
- { name: 'Emphasis', element: 'em' , overrides: 'i' },
- { name: 'Underline', element: 'u' },
- { name: 'Strikethrough', element: 'strike' },
- { name: 'Subscript', element: 'sub' },
- { name: 'Superscript', element: 'sup' },
- */
-
- { name: 'Marker', element: 'span', attributes: { 'class': 'marker' } },
-
- { name: 'Big', element: 'big' },
- { name: 'Small', element: 'small' },
- { name: 'Typewriter', element: 'tt' },
-
- { name: 'Computer Code', element: 'code' },
- { name: 'Keyboard Phrase', element: 'kbd' },
- { name: 'Sample Text', element: 'samp' },
- { name: 'Variable', element: 'var' },
-
- { name: 'Deleted Text', element: 'del' },
- { name: 'Inserted Text', element: 'ins' },
-
- { name: 'Cited Work', element: 'cite' },
- { name: 'Inline Quotation', element: 'q' },
-
- { name: 'Language: RTL', element: 'span', attributes: { 'dir': 'rtl' } },
- { name: 'Language: LTR', element: 'span', attributes: { 'dir': 'ltr' } },
-
- /* Object Styles */
-
- {
- name: 'Styled image (left)',
- element: 'img',
- attributes: { 'class': 'left' }
- },
-
- {
- name: 'Styled image (right)',
- element: 'img',
- attributes: { 'class': 'right' }
- },
-
- {
- name: 'Compact table',
- element: 'table',
- attributes: {
- cellpadding: '5',
- cellspacing: '0',
- border: '1',
- bordercolor: '#ccc'
- },
- styles: {
- 'border-collapse': 'collapse'
- }
- },
-
- { name: 'Borderless Table', element: 'table', styles: { 'border-style': 'hidden', 'background-color': '#E6E6FA' } },
- { name: 'Square Bulleted List', element: 'ul', styles: { 'list-style-type': 'square' } }
-] );
-
diff --git a/wqflask/wqflask/static/packages/jqplot/MIT-LICENSE.txt b/wqflask/wqflask/static/packages/jqplot/MIT-LICENSE.txt
deleted file mode 100644
index 647db23f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/MIT-LICENSE.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-Title: MIT License
-
-Copyright (c) 2009-2012 Chris Leonello
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE. \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/README.txt b/wqflask/wqflask/static/packages/jqplot/README.txt
deleted file mode 100644
index 4932a00c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/README.txt
+++ /dev/null
@@ -1,77 +0,0 @@
-Title: jqPlot Readme
-
-Pure JavaScript plotting plugin for jQuery.
-
-To learn how to use jqPlot, start with the Basic Usage Instructions below. Then read the
-usage.txt and jqPlotOptions.txt files included with the distribution.
-
-The jqPlot home page is at <http://www.jqplot.com/>.
-
-Downloads can be found at <http://bitbucket.org/cleonello/jqplot/downloads/>.
-
-The mailing list is at <http://groups.google.com/group/jqplot-users>.
-
-Examples and unit tests are at <http://www.jqplot.com/tests/>.
-
-Documentation is at <http://www.jqplot.com/docs/>.
-
-The project page and source code are at <http://www.bitbucket.org/cleonello/jqplot/>.
-
-Bugs, issues, feature requests: <http://www.bitbucket.org/cleonello/jqplot/issues/>.
-
-Basic Usage Instructions:
-
-jqPlot requires jQuery (1.4+ required for certain features). jQuery 1.4.4 is included in
-the distribution. To use jqPlot include jQuery, the jqPlot jQuery plugin, the jqPlot css file and
-optionally the excanvas script to support IE version prior to IE 9 in your web page:
-
-> <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
-> <script language="javascript" type="text/javascript" src="jquery-1.4.4.min.js"></script>
-> <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script>
-> <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
-
-For usage instructions, see <jqPlot Usage> in usage.txt. For available options, see
-<jqPlot Options> in jqPlotOptions.txt.
-
-Building from source:
-
-If you've cloned the repository, you can build a distribution from source.
-You need to have ant <http://ant.apache.org> installed. You can simply
-type "ant" from the jqplot directory to build the default "all" target.
-There are 6 pertinent targets: clean, dist, min, docs, compress and all. Use:
-
-> ant -p
-
-to get a description of the various build targets.
-
-Legal Notices:
-
-Copyright (c) 2009-2010 Chris Leonello
-jqPlot is currently available for use in all personal or commercial projects
-under both the MIT and GPL version 2.0 licenses. This means that you can
-choose the license that best suits your project and use it accordingly.
-
-Although not required, the author would appreciate an email letting him
-know of any substantial use of jqPlot. You can reach the author at:
-chris at jqplot or see http://www.jqplot.com/info.php .
-
-If you are feeling kind and generous, consider supporting the project by
-making a donation at: http://www.jqplot.com/donate.php .
-
-jqPlot includes date instance methods and printf/sprintf functions by other authors:
-
-Date instance methods:
-
- author Ken Snyder (ken d snyder at gmail dot com)
- date 2008-09-10
- version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- license Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
-
-JavaScript printf/sprintf functions.
-
- version 2007.04.27
- author Ash Searle
- http://hexmen.com/blog/2007/03/printf-sprintf/
- http://hexmen.com/js/sprintf.js
- The author (Ash Searle) has placed this code in the public domain:
- "This code is unrestricted: you are free to use it however you like."
diff --git a/wqflask/wqflask/static/packages/jqplot/additional-methods.js b/wqflask/wqflask/static/packages/jqplot/additional-methods.js
deleted file mode 100644
index 801d0b7f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/additional-methods.js
+++ /dev/null
@@ -1,437 +0,0 @@
-/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
-* https://github.com/jzaefferer/jquery-validation
-* Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
-
-/*!
- * jQuery Validation Plugin 1.10.0
- *
- * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
- * http://docs.jquery.com/Plugins/Validation
- *
- * Copyright (c) 2006 - 2011 Jörn Zaefferer
- *
- * Dual licensed under the MIT and GPL licenses:
- * http://www.opensource.org/licenses/mit-license.php
- * http://www.gnu.org/licenses/gpl.html
- */
-
-(function() {
-
- function stripHtml(value) {
- // remove html tags and space chars
- return value.replace(/<.[^<>]*?>/g, ' ').replace(/&nbsp;|&#160;/gi, ' ')
- // remove punctuation
- .replace(/[.(),;:!?%#$'"_+=\/-]*/g,'');
- }
- jQuery.validator.addMethod("maxWords", function(value, element, params) {
- return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length <= params;
- }, jQuery.validator.format("Please enter {0} words or less."));
-
- jQuery.validator.addMethod("minWords", function(value, element, params) {
- return this.optional(element) || stripHtml(value).match(/\b\w+\b/g).length >= params;
- }, jQuery.validator.format("Please enter at least {0} words."));
-
- jQuery.validator.addMethod("rangeWords", function(value, element, params) {
- var valueStripped = stripHtml(value);
- var regex = /\b\w+\b/g;
- return this.optional(element) || valueStripped.match(regex).length >= params[0] && valueStripped.match(regex).length <= params[1];
- }, jQuery.validator.format("Please enter between {0} and {1} words."));
-
-})();
-
-jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
- return this.optional(element) || /^[a-z\-.,()'\"\s]+$/i.test(value);
-}, "Letters or punctuation only please");
-
-jQuery.validator.addMethod("alphanumeric", function(value, element) {
- return this.optional(element) || /^\w+$/i.test(value);
-}, "Letters, numbers, and underscores only please");
-
-jQuery.validator.addMethod("lettersonly", function(value, element) {
- return this.optional(element) || /^[a-z]+$/i.test(value);
-}, "Letters only please");
-
-jQuery.validator.addMethod("nowhitespace", function(value, element) {
- return this.optional(element) || /^\S+$/i.test(value);
-}, "No white space please");
-
-jQuery.validator.addMethod("ziprange", function(value, element) {
- return this.optional(element) || /^90[2-5]\d\{2\}-\d{4}$/.test(value);
-}, "Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx");
-
-jQuery.validator.addMethod("zipcodeUS", function(value, element) {
- return this.optional(element) || /\d{5}-\d{4}$|^\d{5}$/.test(value)
-}, "The specified US ZIP Code is invalid");
-
-jQuery.validator.addMethod("integer", function(value, element) {
- return this.optional(element) || /^-?\d+$/.test(value);
-}, "A positive or negative non-decimal number please");
-
-/**
- * Return true, if the value is a valid vehicle identification number (VIN).
- *
- * Works with all kind of text inputs.
- *
- * @example <input type="text" size="20" name="VehicleID" class="{required:true,vinUS:true}" />
- * @desc Declares a required input element whose value must be a valid vehicle identification number.
- *
- * @name jQuery.validator.methods.vinUS
- * @type Boolean
- * @cat Plugins/Validate/Methods
- */
-jQuery.validator.addMethod("vinUS", function(v) {
- if (v.length != 17) {
- return false;
- }
- var i, n, d, f, cd, cdv;
- var LL = ["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"];
- var VL = [1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9];
- var FL = [8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2];
- var rs = 0;
- for(i = 0; i < 17; i++){
- f = FL[i];
- d = v.slice(i,i+1);
- if (i == 8) {
- cdv = d;
- }
- if (!isNaN(d)) {
- d *= f;
- } else {
- for (n = 0; n < LL.length; n++) {
- if (d.toUpperCase() === LL[n]) {
- d = VL[n];
- d *= f;
- if (isNaN(cdv) && n == 8) {
- cdv = LL[n];
- }
- break;
- }
- }
- }
- rs += d;
- }
- cd = rs % 11;
- if (cd == 10) {
- cd = "X";
- }
- if (cd == cdv) {
- return true;
- }
- return false;
-}, "The specified vehicle identification number (VIN) is invalid.");
-
-/**
- * Return true, if the value is a valid date, also making this formal check dd/mm/yyyy.
- *
- * @example jQuery.validator.methods.date("01/01/1900")
- * @result true
- *
- * @example jQuery.validator.methods.date("01/13/1990")
- * @result false
- *
- * @example jQuery.validator.methods.date("01.01.1900")
- * @result false
- *
- * @example <input name="pippo" class="{dateITA:true}" />
- * @desc Declares an optional input element whose value must be a valid date.
- *
- * @name jQuery.validator.methods.dateITA
- * @type Boolean
- * @cat Plugins/Validate/Methods
- */
-jQuery.validator.addMethod("dateITA", function(value, element) {
- var check = false;
- var re = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
- if( re.test(value)){
- var adata = value.split('/');
- var gg = parseInt(adata[0],10);
- var mm = parseInt(adata[1],10);
- var aaaa = parseInt(adata[2],10);
- var xdata = new Date(aaaa,mm-1,gg);
- if ( ( xdata.getFullYear() == aaaa ) && ( xdata.getMonth () == mm - 1 ) && ( xdata.getDate() == gg ) )
- check = true;
- else
- check = false;
- } else
- check = false;
- return this.optional(element) || check;
-}, "Please enter a correct date");
-
-jQuery.validator.addMethod("dateNL", function(value, element) {
- return this.optional(element) || /^\d\d?[\.\/-]\d\d?[\.\/-]\d\d\d?\d?$/.test(value);
-}, "Vul hier een geldige datum in.");
-
-jQuery.validator.addMethod("time", function(value, element) {
- return this.optional(element) || /^([0-1]\d|2[0-3]):([0-5]\d)$/.test(value);
-}, "Please enter a valid time, between 00:00 and 23:59");
-jQuery.validator.addMethod("time12h", function(value, element) {
- return this.optional(element) || /^((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))$/i.test(value);
-}, "Please enter a valid time, between 00:00 am and 12:00 pm");
-
-/**
- * matches US phone number format
- *
- * where the area code may not start with 1 and the prefix may not start with 1
- * allows '-' or ' ' as a separator and allows parens around area code
- * some people may want to put a '1' in front of their number
- *
- * 1(212)-999-2345 or
- * 212 999 2344 or
- * 212-999-0983
- *
- * but not
- * 111-123-5434
- * and not
- * 212 123 4567
- */
-jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
- phone_number = phone_number.replace(/\s+/g, "");
- return this.optional(element) || phone_number.length > 9 &&
- phone_number.match(/^(\+?1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
-}, "Please specify a valid phone number");
-
-jQuery.validator.addMethod('phoneUK', function(phone_number, element) {
- phone_number = phone_number.replace(/\(|\)|\s+|-/g,'');
- return this.optional(element) || phone_number.length > 9 &&
- phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:(?:\d{5}\)?\s?\d{4,5})|(?:\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3}))|(?:\d{3}\)?\s?\d{3}\s?\d{3,4})|(?:\d{2}\)?\s?\d{4}\s?\d{4}))$/);
-}, 'Please specify a valid phone number');
-
-jQuery.validator.addMethod('mobileUK', function(phone_number, element) {
- phone_number = phone_number.replace(/\s+|-/g,'');
- return this.optional(element) || phone_number.length > 9 &&
- phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[45789]\d{2}|624)\s?\d{3}\s?\d{3})$/);
-}, 'Please specify a valid mobile number');
-
-//Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers
-jQuery.validator.addMethod('phonesUK', function(phone_number, element) {
- phone_number = phone_number.replace(/\s+|-/g,'');
- return this.optional(element) || phone_number.length > 9 &&
- phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[45789]\d{8}|624\d{6})))$/);
-}, 'Please specify a valid uk phone number');
-// On the above three UK functions, do the following server side processing:
-// Compare with ^((?:00\s?|\+)(44)\s?)?\(?0?(?:\)\s?)?([1-9]\d{1,4}\)?[\d\s]+)
-// Extract $2 and set $prefix to '+44<space>' if $2 is '44' otherwise set $prefix to '0'
-// Extract $3 and remove spaces and parentheses. Phone number is combined $2 and $3.
-// A number of very detailed GB telephone number RegEx patterns can also be found at:
-// http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_UK_Telephone_Numbers
-
-//Matches UK postcode. based on http://snipplr.com/view/3152/postcode-validation/
-jQuery.validator.addMethod('postcodeUK', function(postcode, element) {
- postcode = (postcode.toUpperCase()).replace(/\s+/g,'');
- return this.optional(element) || postcode.match(/^([^QZ][^IJZ]{0,1}\d{1,2})(\d[^CIKMOV]{2})$/) || postcode.match(/^([^QV]\d[ABCDEFGHJKSTUW])(\d[^CIKMOV]{2})$/) || postcode.match(/^([^QV][^IJZ]\d[ABEHMNPRVWXY])(\d[^CIKMOV]{2})$/) || postcode.match(/^(GIR)(0AA)$/) || postcode.match(/^(BFPO)(\d{1,4})$/) || postcode.match(/^(BFPO)(C\/O\d{1,3})$/);
-}, 'Please specify a valid postcode');
-
-// TODO check if value starts with <, otherwise don't try stripping anything
-jQuery.validator.addMethod("strippedminlength", function(value, element, param) {
- return jQuery(value).text().length >= param;
-}, jQuery.validator.format("Please enter at least {0} characters"));
-
-// same as email, but TLD is optional
-jQuery.validator.addMethod("email2", function(value, element, param) {
- return this.optional(element) || /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);
-}, jQuery.validator.messages.email);
-
-// same as url, but TLD is optional
-jQuery.validator.addMethod("url2", function(value, element, param) {
- return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
-}, jQuery.validator.messages.url);
-
-// NOTICE: Modified version of Castle.Components.Validator.CreditCardValidator
-// Redistributed under the the Apache License 2.0 at http://www.apache.org/licenses/LICENSE-2.0
-// Valid Types: mastercard, visa, amex, dinersclub, enroute, discover, jcb, unknown, all (overrides all other settings)
-jQuery.validator.addMethod("creditcardtypes", function(value, element, param) {
- if (/[^0-9-]+/.test(value)) {
- return false;
- }
-
- value = value.replace(/\D/g, "");
-
- var validTypes = 0x0000;
-
- if (param.mastercard)
- validTypes |= 0x0001;
- if (param.visa)
- validTypes |= 0x0002;
- if (param.amex)
- validTypes |= 0x0004;
- if (param.dinersclub)
- validTypes |= 0x0008;
- if (param.enroute)
- validTypes |= 0x0010;
- if (param.discover)
- validTypes |= 0x0020;
- if (param.jcb)
- validTypes |= 0x0040;
- if (param.unknown)
- validTypes |= 0x0080;
- if (param.all)
- validTypes = 0x0001 | 0x0002 | 0x0004 | 0x0008 | 0x0010 | 0x0020 | 0x0040 | 0x0080;
-
- if (validTypes & 0x0001 && /^(5[12345])/.test(value)) { //mastercard
- return value.length == 16;
- }
- if (validTypes & 0x0002 && /^(4)/.test(value)) { //visa
- return value.length == 16;
- }
- if (validTypes & 0x0004 && /^(3[47])/.test(value)) { //amex
- return value.length == 15;
- }
- if (validTypes & 0x0008 && /^(3(0[012345]|[68]))/.test(value)) { //dinersclub
- return value.length == 14;
- }
- if (validTypes & 0x0010 && /^(2(014|149))/.test(value)) { //enroute
- return value.length == 15;
- }
- if (validTypes & 0x0020 && /^(6011)/.test(value)) { //discover
- return value.length == 16;
- }
- if (validTypes & 0x0040 && /^(3)/.test(value)) { //jcb
- return value.length == 16;
- }
- if (validTypes & 0x0040 && /^(2131|1800)/.test(value)) { //jcb
- return value.length == 15;
- }
- if (validTypes & 0x0080) { //unknown
- return true;
- }
- return false;
-}, "Please enter a valid credit card number.");
-
-jQuery.validator.addMethod("ipv4", function(value, element, param) {
- return this.optional(element) || /^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(value);
-}, "Please enter a valid IP v4 address.");
-
-jQuery.validator.addMethod("ipv6", function(value, element, param) {
- return this.optional(element) || /^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(value);
-}, "Please enter a valid IP v6 address.");
-
-/**
-* Return true if the field value matches the given format RegExp
-*
-* @example jQuery.validator.methods.pattern("AR1004",element,/^AR\d{4}$/)
-* @result true
-*
-* @example jQuery.validator.methods.pattern("BR1004",element,/^AR\d{4}$/)
-* @result false
-*
-* @name jQuery.validator.methods.pattern
-* @type Boolean
-* @cat Plugins/Validate/Methods
-*/
-jQuery.validator.addMethod("pattern", function(value, element, param) {
- if (this.optional(element)) {
- return true;
- }
- if (typeof param === 'string') {
- param = new RegExp('^(?:' + param + ')$');
- }
- return param.test(value);
-}, "Invalid format.");
-
-
-/*
- * Lets you say "at least X inputs that match selector Y must be filled."
- *
- * The end result is that neither of these inputs:
- *
- * <input class="productinfo" name="partnumber">
- * <input class="productinfo" name="description">
- *
- * ...will validate unless at least one of them is filled.
- *
- * partnumber: {require_from_group: [1,".productinfo"]},
- * description: {require_from_group: [1,".productinfo"]}
- *
- */
-jQuery.validator.addMethod("require_from_group", function(value, element, options) {
- var validator = this;
- var selector = options[1];
- var validOrNot = $(selector, element.form).filter(function() {
- return validator.elementValue(this);
- }).length >= options[0];
-
- if(!$(element).data('being_validated')) {
- var fields = $(selector, element.form);
- fields.data('being_validated', true);
- fields.valid();
- fields.data('being_validated', false);
- }
- return validOrNot;
-}, jQuery.format("Please fill at least {0} of these fields."));
-
-/*
- * Lets you say "either at least X inputs that match selector Y must be filled,
- * OR they must all be skipped (left blank)."
- *
- * The end result, is that none of these inputs:
- *
- * <input class="productinfo" name="partnumber">
- * <input class="productinfo" name="description">
- * <input class="productinfo" name="color">
- *
- * ...will validate unless either at least two of them are filled,
- * OR none of them are.
- *
- * partnumber: {skip_or_fill_minimum: [2,".productinfo"]},
- * description: {skip_or_fill_minimum: [2,".productinfo"]},
- * color: {skip_or_fill_minimum: [2,".productinfo"]}
- *
- */
-jQuery.validator.addMethod("skip_or_fill_minimum", function(value, element, options) {
- var validator = this;
-
- numberRequired = options[0];
- selector = options[1];
- var numberFilled = $(selector, element.form).filter(function() {
- return validator.elementValue(this);
- }).length;
- var valid = numberFilled >= numberRequired || numberFilled === 0;
-
- if(!$(element).data('being_validated')) {
- var fields = $(selector, element.form);
- fields.data('being_validated', true);
- fields.valid();
- fields.data('being_validated', false);
- }
- return valid;
-}, jQuery.format("Please either skip these fields or fill at least {0} of them."));
-
-// Accept a value from a file input based on a required mimetype
-jQuery.validator.addMethod("accept", function(value, element, param) {
- // Split mime on commas incase we have multiple types we can accept
- var typeParam = typeof param === "string" ? param.replace(/,/g, '|') : "image/*",
- optionalValue = this.optional(element),
- i, file;
-
- // Element is optional
- if(optionalValue) {
- return optionalValue;
- }
-
- if($(element).attr("type") === "file") {
- // If we are using a wildcard, make it regex friendly
- typeParam = typeParam.replace("*", ".*");
-
- // Check if the element has a FileList before checking each file
- if(element.files && element.files.length) {
- for(i = 0; i < element.files.length; i++) {
- file = element.files[i];
-
- // Grab the mimtype from the loaded file, verify it matches
- if(!file.type.match(new RegExp( ".?(" + typeParam + ")$", "i"))) {
- return false;
- }
- }
- }
- }
-
- // Either return true because we've validated each file, or because the
- // browser does not support element.files and the FileList feature
- return true;
-}, jQuery.format("Please enter a value with a valid mimetype."));
-
-// Older "accept" file extension method. Old docs: http://docs.jquery.com/Plugins/Validation/Methods/accept
-jQuery.validator.addMethod("extension", function(value, element, param) {
- param = typeof param === "string" ? param.replace(/,/g, '|') : "png|jpe?g|gif";
- return this.optional(element) || value.match(new RegExp(".(" + param + ")$", "i"));
-}, jQuery.format("Please enter a value with a valid extension."));
diff --git a/wqflask/wqflask/static/packages/jqplot/additional-methods.min.js b/wqflask/wqflask/static/packages/jqplot/additional-methods.min.js
deleted file mode 100644
index 60533e43..00000000
--- a/wqflask/wqflask/static/packages/jqplot/additional-methods.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
-* https://github.com/jzaefferer/jquery-validation
-* Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
-(function(){function a(a){return a.replace(/<.[^<>]*?>/g," ").replace(/&nbsp;|&#160;/gi," ").replace(/[.(),;:!?%#$'"_+=\/-]*/g,"")}jQuery.validator.addMethod("maxWords",function(b,c,d){return this.optional(c)||a(b).match(/\b\w+\b/g).length<=d},jQuery.validator.format("Please enter {0} words or less.")),jQuery.validator.addMethod("minWords",function(b,c,d){return this.optional(c)||a(b).match(/\b\w+\b/g).length>=d},jQuery.validator.format("Please enter at least {0} words.")),jQuery.validator.addMethod("rangeWords",function(b,c,d){var e=a(b),f=/\b\w+\b/g;return this.optional(c)||e.match(f).length>=d[0]&&e.match(f).length<=d[1]},jQuery.validator.format("Please enter between {0} and {1} words."))})(),jQuery.validator.addMethod("letterswithbasicpunc",function(a,b){return this.optional(b)||/^[a-z\-.,()'\"\s]+$/i.test(a)},"Letters or punctuation only please"),jQuery.validator.addMethod("alphanumeric",function(a,b){return this.optional(b)||/^\w+$/i.test(a)},"Letters, numbers, and underscores only please"),jQuery.validator.addMethod("lettersonly",function(a,b){return this.optional(b)||/^[a-z]+$/i.test(a)},"Letters only please"),jQuery.validator.addMethod("nowhitespace",function(a,b){return this.optional(b)||/^\S+$/i.test(a)},"No white space please"),jQuery.validator.addMethod("ziprange",function(a,b){return this.optional(b)||/^90[2-5]\d\{2\}-\d{4}$/.test(a)},"Your ZIP-code must be in the range 902xx-xxxx to 905-xx-xxxx"),jQuery.validator.addMethod("zipcodeUS",function(a,b){return this.optional(b)||/\d{5}-\d{4}$|^\d{5}$/.test(a)},"The specified US ZIP Code is invalid"),jQuery.validator.addMethod("integer",function(a,b){return this.optional(b)||/^-?\d+$/.test(a)},"A positive or negative non-decimal number please"),jQuery.validator.addMethod("vinUS",function(a){if(a.length!=17)return!1;var b,c,d,e,f,g,h=["A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z"],i=[1,2,3,4,5,6,7,8,1,2,3,4,5,7,9,2,3,4,5,6,7,8,9],j=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],k=0;for(b=0;b<17;b++){e=j[b],d=a.slice(b,b+1),b==8&&(g=d);if(!isNaN(d))d*=e;else for(c=0;c<h.length;c++)if(d.toUpperCase()===h[c]){d=i[c],d*=e,isNaN(g)&&c==8&&(g=h[c]);break}k+=d}return f=k%11,f==10&&(f="X"),f==g?!0:!1},"The specified vehicle identification number (VIN) is invalid."),jQuery.validator.addMethod("dateITA",function(a,b){var c=!1,d=/^\d{1,2}\/\d{1,2}\/\d{4}$/;if(d.test(a)){var e=a.split("/"),f=parseInt(e[0],10),g=parseInt(e[1],10),h=parseInt(e[2],10),i=new Date(h,g-1,f);i.getFullYear()==h&&i.getMonth()==g-1&&i.getDate()==f?c=!0:c=!1}else c=!1;return this.optional(b)||c},"Please enter a correct date"),jQuery.validator.addMethod("dateNL",function(a,b){return this.optional(b)||/^\d\d?[\.\/-]\d\d?[\.\/-]\d\d\d?\d?$/.test(a)},"Vul hier een geldige datum in."),jQuery.validator.addMethod("time",function(a,b){return this.optional(b)||/^([0-1]\d|2[0-3]):([0-5]\d)$/.test(a)},"Please enter a valid time, between 00:00 and 23:59"),jQuery.validator.addMethod("time12h",function(a,b){return this.optional(b)||/^((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))$/i.test(a)},"Please enter a valid time, between 00:00 am and 12:00 pm"),jQuery.validator.addMethod("phoneUS",function(a,b){return a=a.replace(/\s+/g,""),this.optional(b)||a.length>9&&a.match(/^(\+?1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/)},"Please specify a valid phone number"),jQuery.validator.addMethod("phoneUK",function(a,b){return a=a.replace(/\(|\)|\s+|-/g,""),this.optional(b)||a.length>9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?)|(?:\(?0))(?:(?:\d{5}\)?\s?\d{4,5})|(?:\d{4}\)?\s?(?:\d{5}|\d{3}\s?\d{3}))|(?:\d{3}\)?\s?\d{3}\s?\d{3,4})|(?:\d{2}\)?\s?\d{4}\s?\d{4}))$/)},"Please specify a valid phone number"),jQuery.validator.addMethod("mobileUK",function(a,b){return a=a.replace(/\s+|-/g,""),this.optional(b)||a.length>9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?|0)7(?:[45789]\d{2}|624)\s?\d{3}\s?\d{3})$/)},"Please specify a valid mobile number"),jQuery.validator.addMethod("phonesUK",function(a,b){return a=a.replace(/\s+|-/g,""),this.optional(b)||a.length>9&&a.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[45789]\d{8}|624\d{6})))$/)},"Please specify a valid uk phone number"),jQuery.validator.addMethod("postcodeUK",function(a,b){return a=a.toUpperCase().replace(/\s+/g,""),this.optional(b)||a.match(/^([^QZ][^IJZ]{0,1}\d{1,2})(\d[^CIKMOV]{2})$/)||a.match(/^([^QV]\d[ABCDEFGHJKSTUW])(\d[^CIKMOV]{2})$/)||a.match(/^([^QV][^IJZ]\d[ABEHMNPRVWXY])(\d[^CIKMOV]{2})$/)||a.match(/^(GIR)(0AA)$/)||a.match(/^(BFPO)(\d{1,4})$/)||a.match(/^(BFPO)(C\/O\d{1,3})$/)},"Please specify a valid postcode"),jQuery.validator.addMethod("strippedminlength",function(a,b,c){return jQuery(a).text().length>=c},jQuery.validator.format("Please enter at least {0} characters")),jQuery.validator.addMethod("email2",function(a,b,c){return this.optional(b)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(a)},jQuery.validator.messages.email),jQuery.validator.addMethod("url2",function(a,b,c){return this.optional(b)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)*(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},jQuery.validator.messages.url),jQuery.validator.addMethod("creditcardtypes",function(a,b,c){if(/[^0-9-]+/.test(a))return!1;a=a.replace(/\D/g,"");var d=0;return c.mastercard&&(d|=1),c.visa&&(d|=2),c.amex&&(d|=4),c.dinersclub&&(d|=8),c.enroute&&(d|=16),c.discover&&(d|=32),c.jcb&&(d|=64),c.unknown&&(d|=128),c.all&&(d=255),d&1&&/^(5[12345])/.test(a)?a.length==16:d&2&&/^(4)/.test(a)?a.length==16:d&4&&/^(3[47])/.test(a)?a.length==15:d&8&&/^(3(0[012345]|[68]))/.test(a)?a.length==14:d&16&&/^(2(014|149))/.test(a)?a.length==15:d&32&&/^(6011)/.test(a)?a.length==16:d&64&&/^(3)/.test(a)?a.length==16:d&64&&/^(2131|1800)/.test(a)?a.length==15:d&128?!0:!1},"Please enter a valid credit card number."),jQuery.validator.addMethod("ipv4",function(a,b,c){return this.optional(b)||/^(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)\.(25[0-5]|2[0-4]\d|[01]?\d\d?)$/i.test(a)},"Please enter a valid IP v4 address."),jQuery.validator.addMethod("ipv6",function(a,b,c){return this.optional(b)||/^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))$/i.test(a)},"Please enter a valid IP v6 address."),jQuery.validator.addMethod("pattern",function(a,b,c){return this.optional(b)?!0:(typeof c=="string"&&(c=new RegExp("^(?:"+c+")$")),c.test(a))},"Invalid format."),jQuery.validator.addMethod("require_from_group",function(a,b,c){var d=this,e=c[1],f=$(e,b.form).filter(function(){return d.elementValue(this)}).length>=c[0];if(!$(b).data("being_validated")){var g=$(e,b.form);g.data("being_validated",!0),g.valid(),g.data("being_validated",!1)}return f},jQuery.format("Please fill at least {0} of these fields.")),jQuery.validator.addMethod("skip_or_fill_minimum",function(a,b,c){var d=this;numberRequired=c[0],selector=c[1];var e=$(selector,b.form).filter(function(){return d.elementValue(this)}).length,f=e>=numberRequired||e===0;if(!$(b).data("being_validated")){var g=$(selector,b.form);g.data("being_validated",!0),g.valid(),g.data("being_validated",!1)}return f},jQuery.format("Please either skip these fields or fill at least {0} of them.")),jQuery.validator.addMethod("accept",function(a,b,c){var d=typeof c=="string"?c.replace(/,/g,"|"):"image/*",e=this.optional(b),f,g;if(e)return e;if($(b).attr("type")==="file"){d=d.replace("*",".*");if(b.files&&b.files.length)for(f=0;f<b.files.length;f++){g=b.files[f];if(!g.type.match(new RegExp(".?("+d+")$","i")))return!1}}return!0},jQuery.format("Please enter a value with a valid mimetype.")),jQuery.validator.addMethod("extension",function(a,b,c){return c=typeof c=="string"?c.replace(/,/g,"|"):"png|jpe?g|gif",this.optional(b)||a.match(new RegExp(".("+c+")$","i"))},jQuery.format("Please enter a value with a valid extension.")) \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/changes.txt b/wqflask/wqflask/static/packages/jqplot/changes.txt
deleted file mode 100644
index 79c15677..00000000
--- a/wqflask/wqflask/static/packages/jqplot/changes.txt
+++ /dev/null
@@ -1,395 +0,0 @@
-Title: Change Log
-
-1.0.0b2:
-* Major improvements in memory usage:
-** Merged in changes from Timo Besenruether to reuse canvas elements and improve
- memory performance.
-** Fixed all identifiable DOM leaks.
-** Mergged in changes from cguillot for memory improvements in IE < 9.
-* Added vertical and dashed vertical line support for canvas overlay.
-* Fixed bug where initially hidden plots would not display.
-* Fixed bug with point labels and null data points.
-* Updated to jQuery 1.6.1.
-* Improved pie slice margin calculation and fixed slice margin and pie positioning
- with small slices.
-* Improved bar renderer so bars always start at 0 if:
-** The axis is a linear axis (not log/date).
-** There are no other line types besides bars attached to the axis.
-** The data on the axis is all >= 0.
-** The user has not specified a pad, padMin or forceTickAt0 = true option.
-* Modified tick prefix behavious so prefix no added to all ticks, even if format
- string is specified.
-* Fix to ensure original tick formats are applied when zooming and resetting
- zoom.
-* Updated auto tick format string so format adjusted when zooming.
-* Modified auto tick computation to put less ticks on small plots and more
- ticks on large plots.
-* Update bubble render to support gradients in IE 9.
-
-1.0.0b1:
-* Much improved tick generation algorithm to get precise rounded
- tick values (Thanks Scott Prahl!).
-* Auto compute tick format string if none is provided.
-* Much better "slicing" of pie charts when using "sliceMargin" option to set
- a gap between the slices.
-* Expanded canvasOverlay plugin to create arbitrary dashed and solid
- horizontal and vertical lines on top of plot.
-* Added defaultColors and defaultNegativeColors options to $.jqplot.config.
-* Fixed issue #318, highlighter & bar renderer incompatability.
-* Improve highlighter tooltip positioning with negative bars.
-* Fixed #305, mispelling of jqlotDragStart and jqlotDragStop. MUST NOW BIND
- TO jqplotDragStart and jqplotDragStop.
-* Fixed #290, some variables left in global scope.
-* Fixed #289, OHLC line widths hard coded at 1.5. Now set by lineWidth option.
-* Fixed #296 for determining databounds on log axes.
-* Updated to jQuery 1.5.1
-* Fixed waterfall plot to ensure first and last bars always fill to zero.
-* Added lineJoin and lineCap option to series lines.
-* Bar widths now based on width of grid, not plot target for better scaling.
-* Added looseZoom option to cursor so zooming can produce well rounded ticks.
-* Added forceTickAt0 and forceTickAt100 options to ensure there will always
- be a tick at 0 or 100 in the plot.
-* Fixed bug where cursor legend didn't honor series showLabel option.
-
-
-1.0.0a:
-
-* Series can now be moved forward or backward in stack to e.g. bring a line
- forward when mousing over a point.
-* Can now move outside of grid area while zooming. Can have zoom
- constrained to grid area or allow zooming outside.
-* Fixed issue #142 with tooltip drawn on top of event canvas, hiding
- mouse events.
-* Fixed #147 where pie slices with 0 value not rendering properly in IE.
-* Fixed #130 where stack data not sorted properly.
-* Fixed bug with null values not handled properly in category axes.
-* Fixed #156 where pie charts not rendering on QTWebKit.
-* Now using feature detection for canvas and canvas text capability
- rather than browser version.
-* Added enahncedLegendRenderer plugin to allow multi row/column legends
- and clickable labels to show/hide series.
-* Added fillToValue option to allow filled line plot to fill to an
- arbitrary value.
-* Added block plot plugin.
-* Added funnel type charts.
-* Added meter gauge type charts.
-* Added plot theming support.
-* $.jqplot.config.enablePlugins now false by default.
-* Implemented highlighting on bar, pie, donut, funnel, etc. charts.
-* Fix to pointlabels plugin to align labels properly on multi series plots.
-* Added custom error handling to display error message in plot area.
-* Fixed issue where would call to draw grid border of 0 width would
- result in a default border being drawn.
-* Added options to place legend outside of grid and shrink grid so everything
- stays within plot div.
-* Fixed bug in color generator so now calls to get() continually cycle
- through colors just like next().
-* Added defaultAxisStart option.
-* Added gradient fills to bubbles.
-* Added bubble charts.
-* Added showLabels option to bubble charts.
-* Pass bubble radius to event callback in bubble charts.
-* Fixed #207, typo in docs.
-* Fixed #206 where "value" pie slice data labels were displaying wrong
- value.
-* Fixed #147 with 0 value slices in IE6.
-* Fixed issue #241, disabled varyBarColor option in stacked charts.
-* Added dataRenderer option to allow custom processors for JSON, AJAX
- and anywhere else you might want to get data.
-* Fixed null value handling so plot now properly skip or join over nulls.
-* Fixed showTicks and showTickMarks option conflicts.
-* Fixed issue #185 where pointLabels plugin incompatibility could crash
- pie, donut and other plots.
-* Fixed #23 and #143 to obey gridPadding option.
-* Fixed #233 with highlighter tooltip separator.
-* Fixed #224 where type checking failing on GWT.
-* Fixed #272 with pie highlighting not working on replot.
-* Memory performance improvements.
-* Changes to build script so everything should build when pulled from repo.
-* Fixed issue #275, IE 6/7 don't support array indexing of strings.
-* Added event listener hooks for mouseUp, mouseDown, etc. to all line plots.
-* Fixed bug with highlighter not working when null in data.
-* Updated to jQuery 1.4.4
-* Fixed bug where donut plots showed value of radians of slice instead
- of actual data.
-* Reverted to excanvas r3 so IE8 no longer has to emulate IE7.
-* Added tooltipContentEditor option to highlighter, allowing callback
- to manipulate tooltip content at run time (thanks Tim Bunce!).
-* Fixed bug where axes scale not resetting.
-* Fixed bug with date axes where data bounds not properly set.
-* Fixed issue where tick marks disappear if grid lines turned off.
-* Updated replot method to allow passing in axes options for more control.
-* Added experimental support for "broken" axes.
-* Fixed bug with pies where pies with 0 valued slices did not draw correctly.
-* Added canvasOverlay plugin to allow drawing of arbitrary shapes on a canvas
- over the plot.
-* Added option to display arbitrary text/html (message, animated gif, etc.) if
- plot is constructed without data. Allow a "data loading" indicator to be shown.
-* Added resetAxisValues method to manually update axis ticks without
- redrawing the plot.
-* Fix to labels on negative bars so label postiion of 'n' will be below a negative bar,
- just as it is above a positive bar (thanks guigod!).
-* Added thousands separator character (') to sprintf formatting (thanks yuichi1004!).
-* Re-factored date parsing/formatting to use new jsDate module which does not
- extend the Date prototype.
-
-
-0.9.7:
-
-* Added Mekko chart plot type with enhanced legend and axes support.
-* Implemented vertical waterfall charts. Can create waterfall plot as
- option to bar chart. See examples folder of distribution.
-* Enhanced plot labels for waterfall style.
-* Enhanced bar plots so you can now color each bar of a series
- independently with the "varyBarColor" option.
-* Re-factored series drawing so that each series and series shadow drawn
- on it's own canvas. Allows series to be redrawn independently of each other.
-* Added additional default series colors.
-* Added useNegativeColors option to turn off negative color array and use
- only seriesColors array to define all bar/filled line colors.
-* Fix css for cursor legend.
-* Modified shape renderer so rectangles can be stroked and filled.
-* Re-factored date methods out of dateAxisRenderer so that date formatter
- and methods can be accesses outside of dateAxisRenderer plugin.
-* Fixed #132, now trigger series change event on plot target instead of drag canvas.
-* Fixes issue #116 where some source files had mix of tabs and spaces
- for indentation. Should have been all spaces.
-* Fixed issue #126, some links broken in docs section of web site.
-* Fixed issue #90, trendline plugin incompatibility with pie renderer.
-* Updated samples in examples folder of distribution to include navigation
- links if web server is set up to process .html files with php.
-
-
-0.9.6:
-
-* New, easier to use, replot() method for placing plots in tabs, accordions,
- resizable containers or for changing plot parameters programmatically.
-* Updated legend renderer for pie charts to draw swatches which will
- print correctly.
-* Fixed issue #118 with patch from taum so autoscale option will
- honor tickInterval and numberTicks options
-* Fix to plot diameter calculation for initially hidden plots.
-* Added examples for making plots in jQuery UI tabs and accordions.
-* Fixed issue #120 where pie chart with single slice not displaying
- correctly in IE and Chrome
-
-
-0.9.5.2:
-
-* Fixed #102 where double clicking on plot that has zoom enabled, but
- has not been zoomed resulted in error.
-* Fixed bug where candlestick coloring options not working.
-* Added option to turn individual series labels off in the legend.
-
-
-0.9.5.1:
-
-* Fixed bug where tooltip not working with OHLC and candlestick charts.
-* Added additional marker styles: plus, X and dash.
-
-
-0.9.5:
-
-* Implemented "zoomProxy". zoomProxy allows zooming one plot from another
- such as an overview plot.
-* Zooming can now be constrained to just x or y axis.
-* Enhanced cursor plugin with vertical "dataTracking" line. This is a line
- at the cursor location with a readout of data points at the line location
- which are displayed in the chart legend.
-* Changed cursor tooltip format string. Now one format string is used for
- entire tooltip.
-* Added mechanisms to specify plot size when plot target is hidden or plot
- height/width otherwise cannot be determined from markup.
-* Added $.jqplot.config object to specify jqplot wide configuration options.
- These include enablePlugins to globally set the default plugin state on/off
- and defaultHeight/defaultWidth to specify default plot height/width.
-* Added fillToZero option which forces filled charts to fill to zero as opposed
- to axis minimum. Thus negative filled bar/line values will fill upwards to
- zero axis value.
-* Added option to disable stacking on individual lines.
-* Changed targetId property of the plot object so it now includes a "#" before
- the id string.
-* Improved tick and body sizing of Open Hi Low Close and candlestick charts.
-* Removed lots of web site related files from the repository. This means that,
- if working from the sources, user's won't be able to build the jqplot web
- site and the docs/tests that are hosted on that site. The minified and
- compressed distribution packages will build fine.
-* Lots of examples were added to a separate examples directory to better show
- functionality of jqPlot for local testing with the distribution.
-* Many various bug fixes and other minor enhancements.
-
-
-0.9.4:
-
-* Implemented axis labels. Labels can be rendered in div tags or as canvas
- elements supporting rotated text.
-* Improved rotated axis label positioning so labels will start or end at a
- tick position.
-* Fixed bug where an empty data series would hang plot rendering.
-* completed issue #66 for misc. improvements to documentation.
-* Fixed issue #64 where the same ID's were assigned to cursor and highlighter
- elements.
-* Added option to legend to encode special HTML characters.
-* Fixed undesirable behavior where point labels for points off the plot
- were being rendered.
-* Added edgeTolerance option to point label renderer to control rendering of
- labels near plot edges.
-
-
-0.9.3:
-
-* Preliminary support for axis labels. Currently rendered into DIV tags,
- so no rotated label support. This feature is currently experimental.
-* Fixed bug #52, needed space in tick div tag between style and class declarations
- or plot failed in certain application doctypes.
-* Fixed issue #54, miter style line join for chart lines causing spikes at steep
- changes in slope. Changed miter style to round.
-* Added examples for new autoscaling algorithm.
-* Fixed bug #57, category axis labels disappear on redraw()
-* Improved algorithm which controlled maximum number of labels that would display
- on a category axis.
-* Fixed bug #45 where null values causing errors in plotData and gridData.
-* Fixed issue #60 where seriesColors option was not working.
-
-
-0.9.2:
-
-* Fixed bug #45 where a plot could crash if series had different numbers of points.
-* Fixed issue #50, added option to turn off sorting of series data.
-* Fixed issue #31, implemented a better axis autoscaling algorithm and added an autoscale option.
-
-0.9.1:
-
-* Fixed bug #40, when axis pad, padMax, padMin set to 0, graph would fail to render.
-* Fixed bug #41 where pie and bar charts not rendered correctly on redraw().
-* Fixed bug #11, filled stacked line plots not rendering correctly in IE.
-* Fixed bug #42 where stacked charts not rendering with string date axis ticks.
-* Fixed bug in redraw() method where axes ticks were not reset.
-* Fixed "jqplotPreRedrawEvent" that should have been named "jqplotPostRedraw" event.
-
-0.9.0:
-
-* Added Open Hi Low Close charts, Candlestick charts and Hi Low Close charts.
-* Added support for arbitrary labels on the data points.
-* Enhanced highlighter plugin to allow custom formatting control of entire tooltip.
-* Enhanced highlighter to support multiple y values in a data point.
-* Fixed bug #38 where series with a single point with a negative value would fail.
-* Improvements to examples to show what plugins to include.
-* Expanded documentation for some of the plugins.
-
-0.8.5:
-
-* Added zooming ability with double click or single click options to reset zoom.
-* Modified default tick spacing algorithm for date axes to give more space to ticks.
-* Fixed bug #2 where tickInterval wasn't working properly.
-* Added neighborThreshold option to control how close mouse must be to
- point to trigger neighbor detection.
-* Added double click event handler on plot.
-
-0.8.0:
-
-* Support for up to 9 y axes.
-* Added option to control padding at max/min bounds of axes separately.
-* Closed issue #21, added options to control grid line color and width.
-* Closed issue #20, added options to filled line charts to stoke above
- fill and customize fill color and transparency.
-* Improved structure of on line documentation to make usage and options
- docs default.
-* Added much documentation on options and css styling.
-
-0.7.1:
-
-* Bug fix release
-* Fixed bug #6, missing semi-colons messing up some javascript compressors.
-* Fixed bug #13 where 2D ticks array of [values, labels] would fail to
- renderer with DateAxisRenderer.
-* Fixes bug #16 where pie renderer overwriting options for all plot types
- and crashing non pie plots.
-* Fixes bug #17 constrainTo dragable option mispelled as "contstrainTo".
- Fixed dragable color issue when used with trend lines.
-
-0.7.0:
-
-* Pie chart support
-* Enabled tooltipLocation option in highlighter.
-* Highlighter Tooltip will account for mark size and highlight size when
- positioning itself.
-* Added ability to show just x, y or both axes in highlighter tooltip.
-* Added customization of separator between axes values in highlighter tooltip.
-* Modified how shadows are drawn for lines, bars and markers. Now drawn first,
- so they are always behind the object.
-* Adjustments to shadow parameters on lines to account for new shadow positioning.
-* Added a ColorGenerator class to robustly return next available color
- for a plot with wrap around to first color at end.
-* Udates to docs about css file.
-* Fixed bug with String x values in series and IE error on sorting (Category Axis).
-* Added cursor changes in dragable plugin when cursor near dragable point.
-
-0.6.6b:
-
-* Added excanvas.js and excanvas.min.js to compressed distributions.
-* Added example/test html pages I had locally into repository and to
- compressed distributions.
-
-0.6.6a:
-
-* Removed absolute positioning from dom element and put back into css file.
-* Duplicate of 0.6.6 with a suffix to unambiguously differentiate between
- previously posted 0.6.6 release.
-
-0.6.6:
-
-* Fixed bug #5, trend line plugin failing when no trend line options specified.
-* Added absolute position css spec to axis tick dom element.
-* Enhancement to category axes, more intuitive handling of series with
- missing data values.
-
-0.6.5:
-
-* Fixed bug #4, series of unequal data length not rendering correctly.
- This is a bugfix release only.
-
-0.6.4:
-
-* Fixed bug (issue #1 in tracker) where flat line data series (all x and/or y
- values are euqal) or single value data series would crash.
-
-0.6.3:
-
-* Support for stacked line (a.k.a. area) and stacked bar (horizontal and
- vertical) charts.
-* Refactored barRenderer to use default shape and shadow renderers.
-* Added info (contacts & support information) page to web site.
-
-0.6.2:
-
-* This is a minor upgrade to docs and build only. No functionality has changed.
-* Ant build script generates entire site, examples, tests and distribution.
-* Improvements to documentation.
-
-0.6.1:
-
-* New sprintf implementation from Ash Searle that implements %g.
-* Fix to sprintf e/f formats.
-* Created new format specifier, %p and %P to preserve significance.
-* Modified p/P format to better display larger numbers.
-* Fixed and simplified significant digits calculation for sprintf.
-* Added option to have cursor tooltip follow the mouse or not.
-* Added options to change size of highlight.
-* Updates to handle dates like '6-May-09'.
-* Mods to improve look of web site.
-* Updates to documentation.
-* Added license and copyright statement to source files.
-
-0.6.0:
-
-* Added rotated text support. Uses native canvas text functionality in
- browsers that support it or draws text on canvas with Hershey font
-* metrics for non-supporting browsers.
-* Removed lots of lint in js code.
-* Moved tick css from js code into css file.
-* Fix to tick positioning css. y axis ticks were positioned to wrong side of axis div.
-* Re-factored axis tick renderer instantiation into the axes renderers themselves.
-
-
-For changes prior to 0.6.0 release, please see change log at http://bitbucket.org/cleonello/jqplot/changesets/ \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/copyright.txt b/wqflask/wqflask/static/packages/jqplot/copyright.txt
deleted file mode 100644
index 3730cff0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/copyright.txt
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: @VERSION
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/MIT-LICENSE-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/MIT-LICENSE-txt.html
deleted file mode 100644
index 25aef1a6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/MIT-LICENSE-txt.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>MIT License</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="MIT_License"></a>MIT License</div><div class=CBody><p>Copyright &copy; 2009-2012 Chris Leonello</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &ldquo;Software&rdquo;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &ldquo;AS IS&rdquo;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.&nbsp; IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile id=MSelected>MIT License</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/changes-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/changes-txt.html
deleted file mode 100644
index 2c6f6e56..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/changes-txt.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Change Log</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="Change_Log"></a>Change Log</div><div class=CBody><h4 class=CHeading>1.0.0b2</h4><ul><li>Major improvements in memory usage: ** Merged in changes from Timo Besenruether to reuse canvas elements and improve memory performance.&nbsp; ** Fixed all identifiable DOM leaks.&nbsp; ** Mergged in changes from cguillot for memory improvements in IE &lt; 9.</li><li>Added vertical and dashed vertical line support for canvas overlay.</li><li>Fixed bug where initially hidden plots would not display.</li><li>Fixed bug with point labels and null data points.</li><li>Updated to jQuery 1.6.1.</li><li>Improved pie slice margin calculation and fixed slice margin and pie positioning with small slices.</li><li>Improved bar renderer so bars always start at 0 if: ** The axis is a linear axis (not log/date).&nbsp; ** There are no other line types besides bars attached to the axis.&nbsp; ** The data on the axis is all &gt;= 0.&nbsp; ** The user has not specified a pad, padMin or forceTickAt0 = true option.</li><li>Modified tick prefix behavious so prefix no added to all ticks, even if format string is specified.</li><li>Fix to ensure original tick formats are applied when zooming and resetting zoom.</li><li>Updated auto tick format string so format adjusted when zooming.</li><li>Modified auto tick computation to put less ticks on small plots and more ticks on large plots.</li><li>Update bubble render to support gradients in IE 9.</li></ul><h4 class=CHeading>1.0.0b1</h4><ul><li>Much improved tick generation algorithm to get precise rounded tick values (Thanks Scott Prahl!).</li><li>Auto compute tick format string if none is provided.</li><li>Much better &ldquo;slicing&rdquo; of pie charts when using &ldquo;sliceMargin&rdquo; option to set a gap between the slices.</li><li>Expanded canvasOverlay plugin to create arbitrary dashed and solid horizontal and vertical lines on top of plot.</li><li>Added defaultColors and defaultNegativeColors options to $.jqplot.config.</li><li>Fixed issue #318, highlighter &amp; bar renderer incompatability.</li><li>Improve highlighter tooltip positioning with negative bars.</li><li>Fixed #305, mispelling of jqlotDragStart and jqlotDragStop.&nbsp; MUST NOW BIND TO jqplotDragStart and jqplotDragStop.</li><li>Fixed #290, some variables left in global scope.</li><li>Fixed #289, OHLC line widths hard coded at 1.5.&nbsp; Now set by lineWidth option.</li><li>Fixed #296 for determining databounds on log axes.</li><li>Updated to jQuery 1.5.1</li><li>Fixed waterfall plot to ensure first and last bars always fill to zero.</li><li>Added lineJoin and lineCap option to series lines.</li><li>Bar widths now based on width of grid, not plot target for better scaling.</li><li>Added looseZoom option to cursor so zooming can produce well rounded ticks.</li><li>Added forceTickAt0 and forceTickAt100 options to ensure there will always be a tick at 0 or 100 in the plot.</li><li>Fixed bug where cursor legend didn&rsquo;t honor series showLabel option.</li></ul><h4 class=CHeading>1.0.0a</h4><ul><li>Series can now be moved forward or backward in stack to e.g. bring a line forward when mousing over a point.</li><li>Can now move outside of grid area while zooming.&nbsp; Can have zoom constrained to grid area or allow zooming outside.</li><li>Fixed issue #142 with tooltip drawn on top of event canvas, hiding mouse events.</li><li>Fixed #147 where pie slices with 0 value not rendering properly in IE.</li><li>Fixed #130 where stack data not sorted properly.</li><li>Fixed bug with null values not handled properly in category axes.</li><li>Fixed #156 where pie charts not rendering on QTWebKit.</li><li>Now using feature detection for canvas and canvas text capability rather than browser version.</li><li>Added enahncedLegendRenderer plugin to allow multi row/column legends and clickable labels to show/hide series.</li><li>Added fillToValue option to allow filled line plot to fill to an arbitrary value.</li><li>Added block plot plugin.</li><li>Added funnel type charts.</li><li>Added meter gauge type charts.</li><li>Added plot theming support.</li><li>$.jqplot.config.enablePlugins now false by default.</li><li>Implemented highlighting on bar, pie, donut, funnel, etc. charts.</li><li>Fix to pointlabels plugin to align labels properly on multi series plots.</li><li>Added custom error handling to display error message in plot area.</li><li>Fixed issue where would call to draw grid border of 0 width would result in a default border being drawn.</li><li>Added options to place legend outside of grid and shrink grid so everything stays within plot div.</li><li>Fixed bug in color generator so now calls to get() continually cycle through colors just like next().</li><li>Added defaultAxisStart option.</li><li>Added gradient fills to bubbles.</li><li>Added bubble charts.</li><li>Added showLabels option to bubble charts.</li><li>Pass bubble radius to event callback in bubble charts.</li><li>Fixed #207, typo in docs.</li><li>Fixed #206 where &ldquo;value&rdquo; pie slice data labels were displaying wrong value.</li><li>Fixed #147 with 0 value slices in IE6.</li><li>Fixed issue #241, disabled varyBarColor option in stacked charts.</li><li>Added dataRenderer option to allow custom processors for JSON, AJAX and anywhere else you might want to get data.</li><li>Fixed null value handling so plot now properly skip or join over nulls.</li><li>Fixed showTicks and showTickMarks option conflicts.</li><li>Fixed issue #185 where pointLabels plugin incompatibility could crash pie, donut and other plots.</li><li>Fixed #23 and #143 to obey gridPadding option.</li><li>Fixed #233 with highlighter tooltip separator.</li><li>Fixed #224 where type checking failing on GWT.</li><li>Fixed #272 with pie highlighting not working on replot.</li><li>Memory performance improvements.</li><li>Changes to build script so everything should build when pulled from repo.</li><li>Fixed issue #275, IE 6/7 don&rsquo;t support array indexing of strings.</li><li>Added event listener hooks for mouseUp, mouseDown, etc. to all line plots.</li><li>Fixed bug with highlighter not working when null in data.</li><li>Updated to jQuery 1.4.4</li><li>Fixed bug where donut plots showed value of radians of slice instead of actual data.</li><li>Reverted to excanvas r3 so IE8 no longer has to emulate IE7.</li><li>Added tooltipContentEditor option to highlighter, allowing callback to manipulate tooltip content at run time (thanks Tim Bunce!).</li><li>Fixed bug where axes scale not resetting.</li><li>Fixed bug with date axes where data bounds not properly set.</li><li>Fixed issue where tick marks disappear if grid lines turned off.</li><li>Updated replot method to allow passing in axes options for more control.</li><li>Added experimental support for &ldquo;broken&rdquo; axes.</li><li>Fixed bug with pies where pies with 0 valued slices did not draw correctly.</li><li>Added canvasOverlay plugin to allow drawing of arbitrary shapes on a canvas over the plot.</li><li>Added option to display arbitrary text/html (message, animated gif, etc.) if plot is constructed without data.&nbsp; Allow a &ldquo;data loading&rdquo; indicator to be shown.</li><li>Added resetAxisValues method to manually update axis ticks without redrawing the plot.</li><li>Fix to labels on negative bars so label postiion of &lsquo;n&rsquo; will be below a negative bar, just as it is above a positive bar (thanks guigod!).</li><li>Added thousands separator character (&lsquo;) to sprintf formatting (thanks yuichi1004!).</li><li>Re-factored date parsing/formatting to use new jsDate module which does not extend the Date prototype.</li></ul><h4 class=CHeading>0.9.7</h4><ul><li>Added Mekko chart plot type with enhanced legend and axes support.</li><li>Implemented vertical waterfall charts.&nbsp; Can create waterfall plot as option to bar chart.&nbsp; See examples folder of distribution.</li><li>Enhanced plot labels for waterfall style.</li><li>Enhanced bar plots so you can now color each bar of a series independently with the &ldquo;varyBarColor&rdquo; option.</li><li>Re-factored series drawing so that each series and series shadow drawn on it&rsquo;s own canvas.&nbsp; Allows series to be redrawn independently of each other.</li><li>Added additional default series colors.</li><li>Added useNegativeColors option to turn off negative color array and use only seriesColors array to define all bar/filled line colors.</li><li>Fix css for cursor legend.</li><li>Modified shape renderer so rectangles can be stroked and filled.</li><li>Re-factored date methods out of dateAxisRenderer so that date formatter and methods can be accesses outside of dateAxisRenderer plugin.</li><li>Fixed #132, now trigger series change event on plot target instead of drag canvas.</li><li>Fixes issue #116 where some source files had mix of tabs and spaces for indentation.&nbsp; Should have been all spaces.</li><li>Fixed issue #126, some links broken in docs section of web site.</li><li>Fixed issue #90, trendline plugin incompatibility with pie renderer.</li><li>Updated samples in examples folder of distribution to include navigation links if web server is set up to process .html files with php.</li></ul><h4 class=CHeading>0.9.6</h4><ul><li>New, easier to use, replot() method for placing plots in tabs, accordions, resizable containers or for changing plot parameters programmatically.</li><li>Updated legend renderer for pie charts to draw swatches which will print correctly.</li><li>Fixed issue #118 with patch from taum so autoscale option will honor tickInterval and numberTicks options</li><li>Fix to plot diameter calculation for initially hidden plots.</li><li>Added examples for making plots in jQuery UI tabs and accordions.</li><li>Fixed issue #120 where pie chart with single slice not displaying correctly in IE and Chrome</li></ul><h4 class=CHeading>0.9.5.2</h4><ul><li>Fixed #102 where double clicking on plot that has zoom enabled, but has not been zoomed resulted in error.</li><li>Fixed bug where candlestick coloring options not working.</li><li>Added option to turn individual series labels off in the legend.</li></ul><h4 class=CHeading>0.9.5.1</h4><ul><li>Fixed bug where tooltip not working with OHLC and candlestick charts.</li><li>Added additional marker styles: plus, X and dash.</li></ul><h4 class=CHeading>0.9.5</h4><ul><li>Implemented &ldquo;zoomProxy&rdquo;.&nbsp; zoomProxy allows zooming one plot from another such as an overview plot.</li><li>Zooming can now be constrained to just x or y axis.</li><li>Enhanced cursor plugin with vertical &ldquo;dataTracking&rdquo; line.&nbsp; This is a line at the cursor location with a readout of data points at the line location which are displayed in the chart legend.</li><li>Changed cursor tooltip format string.&nbsp; Now one format string is used for entire tooltip.</li><li>Added mechanisms to specify plot size when plot target is hidden or plot height/width otherwise cannot be determined from markup.</li><li>Added $.jqplot.config object to specify jqplot wide configuration options.&nbsp; These include enablePlugins to globally set the default plugin state on/off and defaultHeight/defaultWidth to specify default plot height/width.</li><li>Added fillToZero option which forces filled charts to fill to zero as opposed to axis minimum.&nbsp; Thus negative filled bar/line values will fill upwards to zero axis value.</li><li>Added option to disable stacking on individual lines.</li><li>Changed targetId property of the plot object so it now includes a &ldquo;#&rdquo; before the id string.</li><li>Improved tick and body sizing of Open Hi Low Close and candlestick charts.</li><li>Removed lots of web site related files from the repository.&nbsp; This means that, if working from the sources, user&rsquo;s won&rsquo;t be able to build the jqplot web site and the docs/tests that are hosted on that site.&nbsp; The minified and compressed distribution packages will build fine.</li><li>Lots of examples were added to a separate examples directory to better show functionality of jqPlot for local testing with the distribution.</li><li>Many various bug fixes and other minor enhancements.</li></ul><h4 class=CHeading>0.9.4</h4><ul><li>Implemented axis labels.&nbsp; Labels can be rendered in div tags or as canvas elements supporting rotated text.</li><li>Improved rotated axis label positioning so labels will start or end at a tick position.</li><li>Fixed bug where an empty data series would hang plot rendering.</li><li>completed issue #66 for misc. improvements to documentation.</li><li>Fixed issue #64 where the same ID&rsquo;s were assigned to cursor and highlighter elements.</li><li>Added option to legend to encode special HTML characters.</li><li>Fixed undesirable behavior where point labels for points off the plot were being rendered.</li><li>Added edgeTolerance option to point label renderer to control rendering of labels near plot edges.</li></ul><h4 class=CHeading>0.9.3</h4><ul><li>Preliminary support for axis labels.&nbsp; Currently rendered into DIV tags, so no rotated label support.&nbsp; This feature is currently experimental.</li><li>Fixed bug #52, needed space in tick div tag between style and class declarations or plot failed in certain application doctypes.</li><li>Fixed issue #54, miter style line join for chart lines causing spikes at steep changes in slope.&nbsp; Changed miter style to round.</li><li>Added examples for new autoscaling algorithm.</li><li>Fixed bug #57, category axis labels disappear on redraw()</li><li>Improved algorithm which controlled maximum number of labels that would display on a category axis.</li><li>Fixed bug #45 where null values causing errors in plotData and gridData.</li><li>Fixed issue #60 where seriesColors option was not working.</li></ul><h4 class=CHeading>0.9.2</h4><ul><li>Fixed bug #45 where a plot could crash if series had different numbers of points.</li><li>Fixed issue #50, added option to turn off sorting of series data.</li><li>Fixed issue #31, implemented a better axis autoscaling algorithm and added an autoscale option.</li></ul><h4 class=CHeading>0.9.1</h4><ul><li>Fixed bug #40, when axis pad, padMax, padMin set to 0, graph would fail to render.</li><li>Fixed bug #41 where pie and bar charts not rendered correctly on redraw().</li><li>Fixed bug #11, filled stacked line plots not rendering correctly in IE.</li><li>Fixed bug #42 where stacked charts not rendering with string date axis ticks.</li><li>Fixed bug in redraw() method where axes ticks were not reset.</li><li>Fixed &ldquo;jqplotPreRedrawEvent&rdquo; that should have been named &ldquo;jqplotPostRedraw&rdquo; event.</li></ul><h4 class=CHeading>0.9.0</h4><ul><li>Added Open Hi Low Close charts, Candlestick charts and Hi Low Close charts.</li><li>Added support for arbitrary labels on the data points.</li><li>Enhanced highlighter plugin to allow custom formatting control of entire tooltip.</li><li>Enhanced highlighter to support multiple y values in a data point.</li><li>Fixed bug #38 where series with a single point with a negative value would fail.</li><li>Improvements to examples to show what plugins to include.</li><li>Expanded documentation for some of the plugins.</li></ul><h4 class=CHeading>0.8.5</h4><ul><li>Added zooming ability with double click or single click options to reset zoom.</li><li>Modified default tick spacing algorithm for date axes to give more space to ticks.</li><li>Fixed bug #2 where tickInterval wasn&rsquo;t working properly.</li><li>Added neighborThreshold option to control how close mouse must be to point to trigger neighbor detection.</li><li>Added double click event handler on plot.</li></ul><h4 class=CHeading>0.8.0</h4><ul><li>Support for up to 9 y axes.</li><li>Added option to control padding at max/min bounds of axes separately.</li><li>Closed issue #21, added options to control grid line color and width.</li><li>Closed issue #20, added options to filled line charts to stoke above fill and customize fill color and transparency.</li><li>Improved structure of on line documentation to make usage and options docs default.</li><li>Added much documentation on options and css styling.</li></ul><h4 class=CHeading>0.7.1</h4><ul><li>Bug fix release</li><li>Fixed bug #6, missing semi-colons messing up some javascript compressors.</li><li>Fixed bug #13 where 2D ticks array of [values, labels] would fail to renderer with DateAxisRenderer.</li><li>Fixes bug #16 where pie renderer overwriting options for all plot types and crashing non pie plots.</li><li>Fixes bug #17 constrainTo dragable option mispelled as &ldquo;contstrainTo&rdquo;.&nbsp; Fixed dragable color issue when used with trend lines.</li></ul><h4 class=CHeading>0.7.0</h4><ul><li>Pie chart support</li><li>Enabled tooltipLocation option in highlighter.</li><li>Highlighter Tooltip will account for mark size and highlight size when positioning itself.</li><li>Added ability to show just x, y or both axes in highlighter tooltip.</li><li>Added customization of separator between axes values in highlighter tooltip.</li><li>Modified how shadows are drawn for lines, bars and markers.&nbsp; Now drawn first, so they are always behind the object.</li><li>Adjustments to shadow parameters on lines to account for new shadow positioning.</li><li>Added a ColorGenerator class to robustly return next available color for a plot with wrap around to first color at end.</li><li>Udates to docs about css file.</li><li>Fixed bug with String x values in series and IE error on sorting (Category Axis).</li><li>Added cursor changes in dragable plugin when cursor near dragable point.</li></ul><h4 class=CHeading>0.6.6b</h4><ul><li>Added excanvas.js and excanvas.min.js to compressed distributions.</li><li>Added example/test html pages I had locally into repository and to compressed distributions.</li></ul><h4 class=CHeading>0.6.6a</h4><ul><li>Removed absolute positioning from dom element and put back into css file.</li><li>Duplicate of 0.6.6 with a suffix to unambiguously differentiate between previously posted 0.6.6 release.</li></ul><h4 class=CHeading>0.6.6</h4><ul><li>Fixed bug #5, trend line plugin failing when no trend line options specified.</li><li>Added absolute position css spec to axis tick dom element.</li><li>Enhancement to category axes, more intuitive handling of series with missing data values.</li></ul><h4 class=CHeading>0.6.5</h4><ul><li>Fixed bug #4, series of unequal data length not rendering correctly.&nbsp; This is a bugfix release only.</li></ul><h4 class=CHeading>0.6.4</h4><ul><li>Fixed bug (issue #1 in tracker) where flat line data series (all x and/or y values are euqal) or single value data series would crash.</li></ul><h4 class=CHeading>0.6.3</h4><ul><li>Support for stacked line (a.k.a. area) and stacked bar (horizontal and vertical) charts.</li><li>Refactored barRenderer to use default shape and shadow renderers.</li><li>Added info (contacts &amp; support information) page to web site.</li></ul><h4 class=CHeading>0.6.2</h4><ul><li>This is a minor upgrade to docs and build only.&nbsp; No functionality has changed.</li><li>Ant build script generates entire site, examples, tests and distribution.</li><li>Improvements to documentation.</li></ul><h4 class=CHeading>0.6.1</h4><ul><li>New sprintf implementation from Ash Searle that implements %g.</li><li>Fix to sprintf e/f formats.</li><li>Created new format specifier, %p and %P to preserve significance.</li><li>Modified p/P format to better display larger numbers.</li><li>Fixed and simplified significant digits calculation for sprintf.</li><li>Added option to have cursor tooltip follow the mouse or not.</li><li>Added options to change size of highlight.</li><li>Updates to handle dates like &lsquo;6-May-09&rsquo;.</li><li>Mods to improve look of web site.</li><li>Updates to documentation.</li><li>Added license and copyright statement to source files.</li></ul><h4 class=CHeading>0.6.0</h4><ul><li>Added rotated text support.&nbsp; Uses native canvas text functionality in browsers that support it or draws text on canvas with Hershey font</li><li>metrics for non-supporting browsers.</li><li>Removed lots of lint in js code.</li><li>Moved tick css from js code into css file.</li><li>Fix to tick positioning css.&nbsp; y axis ticks were positioned to wrong side of axis div.</li><li>Re-factored axis tick renderer instantiation into the axes renderers themselves.</li></ul><p>For changes prior to 0.6.0 release, please see change log at <a href="http://bitbucket.org/cleonello/jqplot/changesets/" class=LURL target=_top>http://bitbucket.org/cleonello/jqplot/changesets/</a></p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile id=MSelected>Change Log</div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/gpl-2-0-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/gpl-2-0-txt.html
deleted file mode 100644
index 84ac3ed1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/gpl-2-0-txt.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>GPL Version 2</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="GPL_Version_2"></a>GPL Version 2</div><div class=CBody><p>GNU GENERAL PUBLIC LICENSE Version 2, June 1991</p><p>Copyright &copy; 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.</p><p>Preamble</p><p>The licenses for most software are designed to take away your freedom to share and change it.&nbsp; By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.&nbsp; This General Public License applies to most of the Free Software Foundation&rsquo;s software and to any other program whose authors commit to using it.&nbsp; (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.)&nbsp; You can apply it to your programs, too.</p><p>When we speak of free software, we are referring to freedom, not price.&nbsp; Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.</p><p>To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights.&nbsp; These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.</p><p>For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have.&nbsp; You must make sure that they, too, receive or can get the source code.&nbsp; And you must show them these terms so they know their rights.</p><p>We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.</p><p>Also, for each author&rsquo;s protection and ours, we want to make certain that everyone understands that there is no warranty for this free software.&nbsp; If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors&rsquo; reputations.</p><p>Finally, any free program is threatened constantly by software patents.&nbsp; We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary.&nbsp; To prevent this, we have made it clear that any patent must be licensed for everyone&rsquo;s free use or not licensed at all.</p><p>The precise terms and conditions for copying, distribution and modification follow.</p><p>GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</p><p>0.&nbsp; This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License.&nbsp; The &ldquo;Program&rdquo;, below, refers to any such program or work, and a &ldquo;work based on the Program&rdquo; means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language.&nbsp; (Hereinafter, translation is included without limitation in the term &ldquo;modification&rdquo;.)&nbsp; Each licensee is addressed as &ldquo;you&rdquo;.</p><p>Activities other than copying, distribution and modification are not covered by this License; they are outside its scope.&nbsp; The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program).&nbsp; Whether that is true depends on what the Program does.</p><p>1.&nbsp; You may copy and distribute verbatim copies of the Program&rsquo;s source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.</p><p>You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.</p><p>2.&nbsp; You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:</p><p>a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.</p><p>b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.</p><p>c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License.&nbsp; (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)</p><p>These requirements apply to the modified work as a whole.&nbsp; If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.&nbsp; But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.</p><p>Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.</p><p>In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.</p><p>3.&nbsp; You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:</p><p>a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,</p><p>b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,</p><p>c) Accompany it with the information you received as to the offer to distribute corresponding source code.&nbsp; (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)</p><p>The source code for a work means the preferred form of the work for making modifications to it.&nbsp; For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.&nbsp; However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.</p><p>If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.</p><p>4.&nbsp; You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License.&nbsp; Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License.&nbsp; However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.</p><p>5.&nbsp; You are not required to accept this License, since you have not signed it.&nbsp; However, nothing else grants you permission to modify or distribute the Program or its derivative works.&nbsp; These actions are prohibited by law if you do not accept this License.&nbsp; Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.</p><p>6.&nbsp; Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions.&nbsp; You may not impose any further restrictions on the recipients&rsquo; exercise of the rights granted herein.&nbsp; You are not responsible for enforcing compliance by third parties to this License.</p><p>7.&nbsp; If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License.&nbsp; If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all.&nbsp; For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.</p><p>If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.</p><p>It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices.&nbsp; Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.</p><p>This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.</p><p>8.&nbsp; If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded.&nbsp; In such case, this License incorporates the limitation as if written in the body of this License.</p><p>9.&nbsp; The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time.&nbsp; Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.</p><p>Each version is given a distinguishing version number.&nbsp; If the Program specifies a version number of this License which applies to it and &ldquo;any later version&rdquo;, you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation.&nbsp; If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.</p><p>10.&nbsp; If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission.&nbsp; For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this.&nbsp; Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.</p><p>NO WARRANTY</p><p>11.&nbsp; BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.&nbsp; EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM &ldquo;AS IS&rdquo; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.&nbsp; THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.&nbsp; SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</p><p>12.&nbsp; IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile id=MSelected>GPL License</div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/background.jpg b/wqflask/wqflask/static/packages/jqplot/docs/files/images/background.jpg
deleted file mode 100644
index c1550529..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/background.jpg
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicline.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicline.png
deleted file mode 100644
index 1cc6bc69..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicline.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogaxis.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogaxis.png
deleted file mode 100644
index 7c169633..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogaxis.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogoptions.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogoptions.png
deleted file mode 100644
index d91bf5f6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basiclogoptions.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicoptions.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicoptions.png
deleted file mode 100644
index 4ea441c8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/basicoptions.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/dualaxis.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/dualaxis.png
deleted file mode 100644
index 36012b23..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/dualaxis.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/logo.jpg b/wqflask/wqflask/static/packages/jqplot/docs/files/images/logo.jpg
deleted file mode 100644
index a12fffcd..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/logo.jpg
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocs.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocs.png
deleted file mode 100644
index 318ab04e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocs.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocsover.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocsover.png
deleted file mode 100644
index 4a5b8ec7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdocsover.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownload.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownload.png
deleted file mode 100644
index 41723e77..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownload.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownloadover.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownloadover.png
deleted file mode 100644
index 881bdbf8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navdownloadover.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamples.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamples.png
deleted file mode 100644
index 89d1fb4e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamples.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamplesover.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamplesover.png
deleted file mode 100644
index 0ea75255..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navexamplesover.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhome.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhome.png
deleted file mode 100644
index fd55aa5d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhome.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhomeover.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhomeover.png
deleted file mode 100644
index 63bbf7a3..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/navhomeover.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/new.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/new.png
deleted file mode 100644
index 3eaba9c8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/new.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/sample3.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/sample3.png
deleted file mode 100644
index 31e644de..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/sample3.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/images/samplesm.png b/wqflask/wqflask/static/packages/jqplot/docs/files/images/samplesm.png
deleted file mode 100644
index 1b7b3ef4..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/images/samplesm.png
+++ /dev/null
Binary files differ
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotCssStyling-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotCssStyling-txt.html
deleted file mode 100644
index e8c5bd2a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotCssStyling-txt.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>jqPlot CSS Customization</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqPlot_CSS_Customization"></a>jqPlot CSS Customization</div><div class=CBody><p>Much of the styling of jqPlot is done by css.&nbsp; The jqPlot css file is, unremarkably, jquery.jqplot.css and resides in the same directory as jqPlot itself.</p><p>There exist some styling related javascript properties on the plot objects themselves (like fontStyle, fontSize, etc.).&nbsp; These can be set with the options object at plot creation.&nbsp; Generally, setting these options is <b>NOT</b> the preferred way to customize the look of the plot.&nbsp; Use the css file instead.&nbsp; <b>These options are deprecated and may disappear</b>.&nbsp; The exceptions are certain background and color options which control attributes of something renderered on a canvas.&nbsp; This would be line color, grid background, etc.&nbsp; These must be set by the options object.&nbsp; For a list of available options, see <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">jqPlot Options</a>.</p><p>Objects in the plot that can be customized by css are given a css class like &ldquo;.jqplot-*&rdquo;.&nbsp; For example, the plot title will have a &ldquo;.jqplot-title&rdquo; class, the axes &ldquo;.jqplot-axis&rdquo;, etc.</p><p>Currently assigned classes in jqPlot are as follows:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>.jqplot-target</td><td class=CDLDescription>Styles for the plot target div.&nbsp; These will be cascaded down to all plot elements according to css rules.</td></tr><tr><td class=CDLEntry>.jqplot-axis</td><td class=CDLDescription>Styles for all axes</td></tr><tr><td class=CDLEntry>.jqplot-xaxis</td><td class=CDLDescription>Styles applied to the primary x axis only.</td></tr><tr><td class=CDLEntry>.jqplot-yaxis</td><td class=CDLDescription>Styles applied to the primary y axis only.</td></tr><tr><td class=CDLEntry>.jqplot-x2axis, .jqplot-x3axis, ...</td><td class=CDLDescription>Styles applied to the 2nd, 3rd, etc. x axis only.</td></tr><tr><td class=CDLEntry>.jqplot-y2axis, .jqplot-y3axis, ...</td><td class=CDLDescription>Styles applied to the 2nd, 3rd, etc.y axis only.</td></tr><tr><td class=CDLEntry>.jqplot-axis-tick</td><td class=CDLDescription>Styles applied to all axis ticks</td></tr><tr><td class=CDLEntry>.jqplot-xaxis-tick</td><td class=CDLDescription>Styles applied to primary x axis ticks only.</td></tr><tr><td class=CDLEntry>.jqplot-x2axis-tick</td><td class=CDLDescription>Styles applied to secondary x axis ticks only.</td></tr><tr><td class=CDLEntry>.jqplot-yaxis-tick</td><td class=CDLDescription>Styles applied to primary y axis ticks only.</td></tr><tr><td class=CDLEntry>.jqplot-y2axis-tick</td><td class=CDLDescription>Styles applied to secondary y axis ticks only.</td></tr><tr><td class=CDLEntry>table.jqplot-table-legend</td><td class=CDLDescription>Styles applied to the legend box table.</td></tr><tr><td class=CDLEntry>.jqplot-title</td><td class=CDLDescription>Styles applied to the title.</td></tr><tr><td class=CDLEntry>.jqplot-cursor-tooltip</td><td class=CDLDescription>Styles applied to the cursor tooltip</td></tr><tr><td class=CDLEntry>.jqplot-highlighter-tooltip</td><td class=CDLDescription>Styles applied to the highlighter tooltip.</td></tr><tr><td class=CDLEntry>div.jqplot-table-legend-swatch</td><td class=CDLDescription>the div element used for the colored swatch on the legend.</td></tr></table><p>Note that axes will be assigned 2 classes like: class=&rdquo;.jqplot-axis .jqplot-xaxis&rdquo;.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqPlot CSS Customization</div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CSection><b>This document is out of date. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotOptions-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotOptions-txt.html
deleted file mode 100644
index 5abc8339..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqPlotOptions-txt.html
+++ /dev/null
@@ -1,292 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>jqPlot Options</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqPlot_Options"></a>jqPlot Options</div><div class=CBody><p><b>This document is out of date.&nbsp; While the options described here should still be relavent and valid, it has not been updated for many new options.&nbsp; Sorry for this inconvenience.</b></p><p>This document describes the options available to jqPlot.&nbsp; These are set with the third argument to the $.jqplot(&lsquo;target&rsquo;, data, options) function.&nbsp; Options are using the following convention:</p><blockquote><pre>property: default, // notes</pre></blockquote><p>This document is not complete!&nbsp; Not all options are shown!&nbsp; Also, Options marked with * in the notes are post 0.7.1 additions.&nbsp; They will be available in the next release.&nbsp; Further information about the options can be found in the online API documentation.&nbsp; For details on how the options relate to the API documentation, see the <a href="optionsTutorial-txt.html#Options_Tutorial" class=LSection id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">Options Tutorial</a> in the optionsTutorial.txt file.</p><blockquote><pre>options =
-{
- seriesColors: [ &quot;#4bb2c5&quot;, &quot;#c5b47f&quot;, &quot;#EAA228&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;,
- &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;], // colors that will
- // be assigned to the series. If there are more series than colors, colors
- // will wrap around and start at the beginning again.
-
- stackSeries: false, // if true, will create a stack plot.
- // Currently supported by line and bar graphs.
-
- title: '', // Title for the plot. Can also be specified as an object like:
-
- title: {
- text: '', // title for the plot,
- show: true,
- },
-
- axesDefaults: {
- show: false, // wether or not to renderer the axis. Determined automatically.
- min: null, // minimum numerical value of the axis. Determined automatically.
- max: null, // maximum numverical value of the axis. Determined automatically.
- pad: 1.2, // a factor multiplied by the data range on the axis to give the
- // axis range so that data points don't fall on the edges of the axis.
- ticks: [], // a 1D [val1, val2, ...], or 2D [[val, label], [val, label], ...]
- // array of ticks to use. Computed automatically.
- numberTicks: undefined,
- renderer: $.jqplot.LinearAxisRenderer, // renderer to use to draw the axis,
- rendererOptions: {}, // options to pass to the renderer. LinearAxisRenderer
- // has no options,
- tickOptions: {
- mark: 'outside', // Where to put the tick mark on the axis
- // 'outside', 'inside' or 'cross',
- showMark: true,
- showGridline: true, // wether to draw a gridline (across the whole grid) at this tick,
- markSize: 4, // length the tick will extend beyond the grid in pixels. For
- // 'cross', length will be added above and below the grid boundary,
- show: true, // wether to show the tick (mark and label),
- showLabel: true, // wether to show the text label at the tick,
- formatString: '', // format string to use with the axis tick formatter
- }
- showTicks: true, // wether or not to show the tick labels,
- showTickMarks: true, // wether or not to show the tick marks
- },
-
- axes: {
- xaxis: {
- // same options as axesDefaults
- },
- yaxis: {
- // same options as axesDefaults
- },
- x2axis: {
- // same options as axesDefaults
- },
- y2axis: {
- // same options as axesDefaults
- }
- },
-
- seriesDefaults: {
- show: true, // wether to render the series.
- xaxis: 'xaxis', // either 'xaxis' or 'x2axis'.
- yaxis: 'yaxis', // either 'yaxis' or 'y2axis'.
- label: '', // label to use in the legend for this line.
- color: '', // CSS color spec to use for the line. Determined automatically.
- lineWidth: 2.5, // Width of the line in pixels.
- shadow: true, // show shadow or not.
- shadowAngle: 45, // angle (degrees) of the shadow, clockwise from x axis.
- shadowOffset: 1.25, // offset from the line of the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow. Each
- // stroke offset by shadowOffset from the last.
- shadowAlpha: 0.1, // Opacity of the shadow.
- showLine: true, // whether to render the line segments or not.
- showMarker: true, // render the data point markers or not.
- fill: false, // fill under the line,
- fillAndStroke: false, // *stroke a line at top of fill area.
- fillColor: undefined, // *custom fill color for filled lines (default is line color).
- fillAlpha: undefined, // *custom alpha to apply to fillColor.
- renderer: $.jqplot.LineRenderer], // renderer used to draw the series.
- rendererOptions: {}, // options passed to the renderer. LineRenderer has no options.
- markerRenderer: $.jqplot.MarkerRenderer, // renderer to use to draw the data
- // point markers.
- markerOptions: {
- show: true, // wether to show data point markers.
- style: 'filledCircle', // circle, diamond, square, filledCircle.
- // filledDiamond or filledSquare.
- lineWidth: 2, // width of the stroke drawing the marker.
- size: 9, // size (diameter, edge length, etc.) of the marker.
- color: '#666666' // color of marker, set to color of line by default.
- shadow: true, // wether to draw shadow on marker or not.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1, // offset from the line of the shadow,
- shadowDepth: 3, // Number of strokes to make when drawing shadow. Each stroke
- // offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- },
-
- series:[
- {Each series has same options as seriesDefaults},
- {You can override each series individually here}
- ],
-
- legend: {
- show: false,
- location: 'ne', // compass direction, nw, n, ne, e, se, s, sw, w.
- xoffset: 12, // pixel offset of the legend box from the x (or x2) axis.
- yoffset: 12, // pixel offset of the legend box from the y (or y2) axis.
- },
-
- grid: {
- drawGridLines: true, // wether to draw lines across the grid or not.
- gridLineColor: '#cccccc' // *Color of the grid lines.
- background: '#fffdf6', // CSS color spec for background color of grid.
- borderColor: '#999999', // CSS color spec for border around grid.
- borderWidth: 2.0, // pixel width of border around grid.
- shadow: true, // draw a shadow for grid.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1.5, // offset from the line of the shadow.
- shadowWidth: 3, // width of the stroke for the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow.
- // Each stroke offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- renderer: $.jqplot.CanvasGridRenderer, // renderer to use to draw the grid.
- rendererOptions: {} // options to pass to the renderer. Note, the default
- // CanvasGridRenderer takes no additional options.
- },
-
- // Plugin and renderer options.
-
- // BarRenderer.
- // With BarRenderer, you can specify additional options in the rendererOptions object
- // on the series or on the seriesDefaults object. Note, some options are respecified
- // (like shadowDepth) to override lineRenderer defaults from which BarRenderer inherits.
-
- seriesDefaults: {
- rendererOptions: {
- barPadding: 8, // number of pixels between adjacent bars in the same
- // group (same category or bin).
- barMargin: 10, // number of pixels between adjacent groups of bars.
- barDirection: 'vertical', // vertical or horizontal.
- barWidth: null, // width of the bars. null to calculate automatically.
- shadowOffset: 2, // offset from the bar edge to stroke the shadow.
- shadowDepth: 5, // nuber of strokes to make for the shadow.
- shadowAlpha: 0.8, // transparency of the shadow.
- }
- },
-
- // Cursor
- // Options are passed to the cursor plugin through the &quot;cursor&quot; object at the top
- // level of the options object.
-
- cursor: {
- style: 'crosshair', // A CSS spec for the cursor type to change the
- // cursor to when over plot.
- show: true,
- showTooltip: true, // show a tooltip showing cursor position.
- followMouse: false, // wether tooltip should follow the mouse or be stationary.
- tooltipLocation: 'se', // location of the tooltip either relative to the mouse
- // (followMouse=true) or relative to the plot. One of
- // the compass directions, n, ne, e, se, etc.
- tooltipOffset: 6, // pixel offset of the tooltip from the mouse or the axes.
- showTooltipGridPosition: false, // show the grid pixel coordinates of the mouse
- // in the tooltip.
- showTooltipUnitPosition: true, // show the coordinates in data units of the mouse
- // in the tooltip.
- tooltipFormatString: '%.4P', // sprintf style format string for tooltip values.
- useAxesFormatters: true, // wether to use the same formatter and formatStrings
- // as used by the axes, or to use the formatString
- // specified on the cursor with sprintf.
- tooltipAxesGroups: [], // show only specified axes groups in tooltip. Would specify like:
- // [['xaxis', 'yaxis'], ['xaxis', 'y2axis']]. By default, all axes
- // combinations with for the series in the plot are shown.
-
- },
-
- // Dragable
- // Dragable options are specified with the &quot;dragable&quot; object at the top level
- // of the options object.
-
- dragable: {
- color: undefined, // custom color to use for the dragged point and dragged line
- // section. default will use a transparent variant of the line color.
- constrainTo: 'none', // Constrain dragging motion to an axis: 'x', 'y', or 'none'.
- },
-
- // Highlighter
- // Highlighter options are specified with the &quot;highlighter&quot; object at the top level
- // of the options object.
-
- highlighter: {
- lineWidthAdjust: 2.5, // pixels to add to the size line stroking the data point marker
- // when showing highlight. Only affects non filled data point markers.
- sizeAdjust: 5, // pixels to add to the size of filled markers when drawing highlight.
- showTooltip: true, // show a tooltip with data point values.
- tooltipLocation: 'nw', // location of tooltip: n, ne, e, se, s, sw, w, nw.
- fadeTooltip: true, // use fade effect to show/hide tooltip.
- tooltipFadeSpeed: &quot;fast&quot;// slow, def, fast, or a number of milliseconds.
- tooltipOffset: 2, // pixel offset of tooltip from the highlight.
- tooltipAxes: 'both', // which axis values to display in the tooltip, x, y or both.
- tooltipSeparator: ', ' // separator between values in the tooltip.
- useAxesFormatters: true // use the same format string and formatters as used in the axes to
- // display values in the tooltip.
- tooltipFormatString: '%.5P' // sprintf format string for the tooltip. only used if
- // useAxesFormatters is false. Will use sprintf formatter with
- // this string, not the axes formatters.
- },
-
- // LogAxisRenderer
- // LogAxisRenderer add 2 options to the axes object. These options are specified directly on
- // the axes or axesDefaults object.
-
- axesDefaults: {
- base: 10, // the logarithmic base.
- tickDistribution: 'even', // 'even' or 'power'. 'even' will produce with even visiual (pixel)
- // spacing on the axis. 'power' will produce ticks spaced by
- // increasing powers of the log base.
- },
-
- // PieRenderer
- // PieRenderer accepts options from the rendererOptions object of the series or seriesDefaults object.
-
- seriesDefaults: {
- rendererOptions: {
- diameter: undefined, // diameter of pie, auto computed by default.
- padding: 20, // padding between pie and neighboring legend or plot margin.
- sliceMargin: 0, // gap between slices.
- fill: true, // render solid (filled) slices.
- shadowOffset: 2, // offset of the shadow from the chart.
- shadowDepth: 5, // Number of strokes to make when drawing shadow. Each stroke
- // offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- },
-
- // Trendline
- // Trendline takes options on the trendline object of the series or seriesDefaults object.
-
- seriesDefaults: {
- trendline: {
- show: true, // show the trend line
- color: '#666666', // CSS color spec for the trend line.
- label: '', // label for the trend line.
- type: 'linear', // 'linear', 'exponential' or 'exp'
- shadow: true, // show the trend line shadow.
- lineWidth: 1.5, // width of the trend line.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1.5, // offset from the line of the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow.
- // Each stroke offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- }
-}</pre></blockquote></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqPlot Options</div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CSection>This document will help you understand how jqPlot&rsquo;s options relate to the API documentation and the jqPlot object itself. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisLabelRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisLabelRenderer-js.html
deleted file mode 100644
index a268b1af..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisLabelRenderer-js.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.AxisLabelRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.AxisLabelRenderer"></a>$.jqplot.<wbr>AxisLabelRenderer</div><div class=CBody><p>Renderer to place labels on the axes.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.AxisLabelRenderer" >$.jqplot.<wbr>AxisLabelRenderer</a></td><td class=SDescription>Renderer to place labels on the axes.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.AxisLabelRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisLabelRenderer.show" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">show</a></td><td class=SDescription>wether or not to show the tick (mark and label).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisLabelRenderer.label" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">label</a></td><td class=SDescription>The text or html for the label.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisLabelRenderer.escapeHTML" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">escapeHTML</a></td><td class=SDescription>true to escape HTML entities in the label.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisLabelRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisLabelRenderer.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the tick (mark and label).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisLabelRenderer.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote><p>The text or html for the label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisLabelRenderer.escapeHTML"></a>escapeHTML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote><p>true to escape HTML entities in the label.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Axis Label Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>The text or html for the label.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisTickRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisTickRenderer-js.html
deleted file mode 100644
index 13ea1899..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-axisTickRenderer-js.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.AxisTickRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.AxisTickRenderer"></a>$.jqplot.<wbr>AxisTickRenderer</div><div class=CBody><p>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer" >$.jqplot.<wbr>AxisTickRenderer</a></td><td class=SDescription>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.mark" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">mark</a></td><td class=SDescription>tick mark on the axis. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.showMark" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">showMark</a></td><td class=SDescription>wether or not to show the mark on the axis.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.showGridline" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">showGridline</a></td><td class=SDescription>wether or not to draw the gridline on the grid at this tick.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.isMinorTick" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">isMinorTick</a></td><td class=SDescription>if this is a minor tick.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.size" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">size</a></td><td class=SDescription>Length of the tick beyond the grid in pixels. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.markSize" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">markSize</a></td><td class=SDescription>Length of the tick marks in pixels. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.show" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">show</a></td><td class=SDescription>wether or not to show the tick (mark and label). </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.showLabel" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">showLabel</a></td><td class=SDescription>wether or not to show the label.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.formatter" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">formatter</a></td><td class=SDescription>A class of a formatter for the tick text. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.prefix" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">prefix</a></td><td class=SDescription>String to prepend to the tick label. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.suffix" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">suffix</a></td><td class=SDescription>String to append to the tick label. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.formatString" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">formatString</a></td><td class=SDescription>string passed to the formatter.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.fontFamily" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">fontFamily</a></td><td class=SDescription>css spec for the font-family css attribute.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.fontSize" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">fontSize</a></td><td class=SDescription>css spec for the font-size css attribute.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.textColor" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">textColor</a></td><td class=SDescription>css spec for the color attribute.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.AxisTickRenderer.escapeHTML" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">escapeHTML</a></td><td class=SDescription>true to escape HTML entities in the label.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.mark"></a>mark</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote><p>tick mark on the axis.&nbsp; One of &lsquo;inside&rsquo;, &lsquo;outside&rsquo;, &lsquo;cross&rsquo;, &lsquo;&rsquo; or null.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.showMark"></a>showMark</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote><p>wether or not to show the mark on the axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.showGridline"></a>showGridline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote><p>wether or not to draw the gridline on the grid at this tick.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.isMinorTick"></a>isMinorTick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote><p>if this is a minor tick.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.size"></a>size</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 4</td></tr></table></blockquote><p>Length of the tick beyond the grid in pixels.&nbsp; DEPRECATED: This has been superceeded by markSize</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.markSize"></a>markSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 6</td></tr></table></blockquote><p>Length of the tick marks in pixels.&nbsp; For &lsquo;cross&rsquo; style, length will be stoked above and below axis, so total length will be twice this.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the tick (mark and label).&nbsp; Setting this to false requires more testing.&nbsp; It is recommended to set showLabel and showMark to false instead.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.showLabel"></a>showLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote><p>wether or not to show the label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.formatter"></a>formatter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote><p>A class of a formatter for the tick text.&nbsp; sprintf by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.prefix"></a>prefix</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote><p>String to prepend to the tick label.&nbsp; Prefix is prepended to the formatted tick label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.suffix"></a>suffix</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.suffix = ''</td></tr></table></blockquote><p>String to append to the tick label.&nbsp; Suffix is appended to the formatted tick label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.formatString"></a>formatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote><p>string passed to the formatter.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.fontFamily"></a>fontFamily</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote><p>css spec for the font-family css attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote><p>css spec for the font-size css attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.textColor"></a>textColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote><p>css spec for the color attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.AxisTickRenderer.escapeHTML"></a>escapeHTML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote><p>true to escape HTML entities in the label.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile id=MSelected>Axis Tick Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 4</td></tr></table></blockquote>Length of the tick beyond the grid in pixels. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 6</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label). </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.suffix = ''</td></tr></table></blockquote>String to append to the tick label. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size css attribute.</div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-canvasGridRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-canvasGridRenderer-js.html
deleted file mode 100644
index f069f6b6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-canvasGridRenderer-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CanvasGridRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CanvasGridRenderer"></a>$.jqplot.<wbr>CanvasGridRenderer</div><div class=CBody><p>The default jqPlot grid renderer, creating a grid on a canvas element.&nbsp; The renderer has no additional options beyond the <a href="jqplot-core-js.html#Grid" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">Grid</a> class.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Canvas Grid Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Object representing the grid on which the plot is drawn. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-core-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-core-js.html
deleted file mode 100644
index 9fa9cf9d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-core-js.html
+++ /dev/null
@@ -1,389 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>jqPlot Charts</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqPlot_Charts"></a>jqPlot Charts</div><div class=CBody><p>Pure JavaScript plotting plugin for jQuery.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#jqPlot_Charts" >jqPlot Charts</a></td><td class=SDescription>Pure JavaScript plotting plugin for jQuery.</td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Version" >Version</a></td><td class=SDescription>version: 1.0.4 revision: 1121</td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#CopyrightLicense" >Copyright &amp; License</a></td><td class=SDescription>Copyright &copy; 2009-2012 Chris Leonello jqPlot is currently available for use in all personal or commercial projects under both the MIT and GPL version 2.0 licenses. </td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Introduction" >Introduction</a></td><td class=SDescription>jqPlot requires jQuery (1.4+ required for certain features). </td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Usage" >Usage</a></td><td class=SDescription>See <a href="usage-txt.html#jqPlot_Usage" class=LSection >jqPlot Usage</a></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Available_Options" >Available Options</a></td><td class=SDescription>See <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">jqPlot Options</a> for a list of options available thorugh the options object (not complete yet!)</td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Options_Usage" >Options Usage</a></td><td class=SDescription>See <a href="optionsTutorial-txt.html#Options_Tutorial" class=LSection id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">Options Tutorial</a></td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Changes" >Changes</a></td><td class=SDescription>See <a href="changes-txt.html#Change_Log" class=LSection >Change Log</a></td></tr><tr class="SClass"><td class=SEntry><a href="#$.jqplot" >$.jqplot</a></td><td class=SDescription>jQuery function called by the user to create a plot.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Hooks" >Hooks</a></td><td class=SDescription></td></tr><tr class="SHook SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.jqPlot_Pugin_Hooks" >jqPlot Pugin Hooks</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#Axis" >Axis</a></td><td class=SDescription>An individual axis object. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Axis.Properties" >Properties</a></td><td class=SDescription>Axes options are specified within an axes object at the top level of the plot options like so:</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.show" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">show</a></td><td class=SDescription>Wether to display the axis on the graph.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.tickRenderer" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">tickRenderer</a></td><td class=SDescription>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a>.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.tickOptions" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">tickOptions</a></td><td class=SDescription>Options that will be passed to the tickRenderer, see <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt5', 'link7')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a> options.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.labelRenderer" id=link8 onMouseOver="ShowTip(event, 'tt7', 'link8')" onMouseOut="HideTip('tt7')">labelRenderer</a></td><td class=SDescription>A class of a rendering engine for creating an axis label.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.labelOptions" id=link9 onMouseOver="ShowTip(event, 'tt8', 'link9')" onMouseOut="HideTip('tt8')">labelOptions</a></td><td class=SDescription>Options passed to the label renderer.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.label" id=link10 onMouseOver="ShowTip(event, 'tt9', 'link10')" onMouseOut="HideTip('tt9')">label</a></td><td class=SDescription>Label for the axis</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.showLabel" id=link11 onMouseOver="ShowTip(event, 'tt10', 'link11')" onMouseOut="HideTip('tt10')">showLabel</a></td><td class=SDescription>true to show the axis label.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.min" id=link12 onMouseOver="ShowTip(event, 'tt11', 'link12')" onMouseOut="HideTip('tt11')">min</a></td><td class=SDescription>minimum value of the axis (in data units, not pixels).</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.max" id=link13 onMouseOver="ShowTip(event, 'tt12', 'link13')" onMouseOut="HideTip('tt12')">max</a></td><td class=SDescription>maximum value of the axis (in data units, not pixels).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.autoscale" id=link14 onMouseOver="ShowTip(event, 'tt13', 'link14')" onMouseOut="HideTip('tt13')">autoscale</a></td><td class=SDescription>DEPRECATED the default scaling algorithm produces superior results.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.pad" id=link15 onMouseOver="ShowTip(event, 'tt14', 'link15')" onMouseOut="HideTip('tt14')">pad</a></td><td class=SDescription>Padding to extend the range above and below the data bounds. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.padMax" id=link16 onMouseOver="ShowTip(event, 'tt15', 'link16')" onMouseOut="HideTip('tt15')">padMax</a></td><td class=SDescription>Padding to extend the range above data bounds. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.padMin" id=link17 onMouseOver="ShowTip(event, 'tt16', 'link17')" onMouseOut="HideTip('tt16')">padMin</a></td><td class=SDescription>Padding to extend the range below data bounds. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.ticks" id=link18 onMouseOver="ShowTip(event, 'tt17', 'link18')" onMouseOut="HideTip('tt17')">ticks</a></td><td class=SDescription>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.numberTicks" id=link19 onMouseOver="ShowTip(event, 'tt18', 'link19')" onMouseOut="HideTip('tt18')">numberTicks</a></td><td class=SDescription>Desired number of ticks. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.tickInterval" id=link20 onMouseOver="ShowTip(event, 'tt19', 'link20')" onMouseOut="HideTip('tt19')">tickInterval</a></td><td class=SDescription>number of units between ticks. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.renderer" id=link21 onMouseOver="ShowTip(event, 'tt20', 'link21')" onMouseOut="HideTip('tt20')">renderer</a></td><td class=SDescription>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.rendererOptions" id=link22 onMouseOver="ShowTip(event, 'tt21', 'link22')" onMouseOut="HideTip('tt21')">rendererOptions</a></td><td class=SDescription>renderer specific options. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.showTicks" id=link23 onMouseOver="ShowTip(event, 'tt22', 'link23')" onMouseOut="HideTip('tt22')">showTicks</a></td><td class=SDescription>Wether to show the ticks (both marks and labels) or not. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.showTickMarks" id=link24 onMouseOver="ShowTip(event, 'tt23', 'link24')" onMouseOut="HideTip('tt23')">showTickMarks</a></td><td class=SDescription>Wether to show the tick marks (line crossing grid) or not. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.showMinorTicks" id=link25 onMouseOver="ShowTip(event, 'tt24', 'link25')" onMouseOut="HideTip('tt24')">showMinorTicks</a></td><td class=SDescription>Wether or not to show minor ticks. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.drawMajorGridlines" id=link26 onMouseOver="ShowTip(event, 'tt25', 'link26')" onMouseOut="HideTip('tt25')">drawMajorGridlines</a></td><td class=SDescription>True to draw gridlines for major axis ticks.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.drawMinorGridlines" id=link27 onMouseOver="ShowTip(event, 'tt26', 'link27')" onMouseOut="HideTip('tt26')">drawMinorGridlines</a></td><td class=SDescription>True to draw gridlines for minor ticks.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.drawMajorTickMarks" id=link28 onMouseOver="ShowTip(event, 'tt27', 'link28')" onMouseOut="HideTip('tt27')">drawMajorTickMarks</a></td><td class=SDescription>True to draw tick marks for major axis ticks.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.drawMinorTickMarks" id=link29 onMouseOver="ShowTip(event, 'tt28', 'link29')" onMouseOut="HideTip('tt28')">drawMinorTickMarks</a></td><td class=SDescription>True to draw tick marks for minor ticks. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.useSeriesColor" id=link30 onMouseOver="ShowTip(event, 'tt29', 'link30')" onMouseOut="HideTip('tt29')">useSeriesColor</a></td><td class=SDescription>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.borderWidth" id=link31 onMouseOver="ShowTip(event, 'tt30', 'link31')" onMouseOut="HideTip('tt30')">borderWidth</a></td><td class=SDescription>width of line stroked at the border of the axis. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.borderColor" id=link32 onMouseOver="ShowTip(event, 'tt31', 'link32')" onMouseOut="HideTip('tt31')">borderColor</a></td><td class=SDescription>color of the border adjacent to the axis. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.scaleToHiddenSeries" id=link33 onMouseOver="ShowTip(event, 'tt32', 'link33')" onMouseOut="HideTip('tt32')">scaleToHiddenSeries</a></td><td class=SDescription>True to include hidden series when computing axes bounds and scaling.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Axis.syncTicks" id=link34 onMouseOver="ShowTip(event, 'tt33', 'link34')" onMouseOut="HideTip('tt33')">syncTicks</a></td><td class=SDescription>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Axis.tickSpacing" id=link35 onMouseOver="ShowTip(event, 'tt34', 'link35')" onMouseOut="HideTip('tt34')">tickSpacing</a></td><td class=SDescription>Approximate pixel spacing between ticks on graph. </td></tr><tr class="SClass"><td class=SEntry><a href="#Legend" >Legend</a></td><td class=SDescription>Legend object. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Legend.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.show" id=link36 onMouseOver="ShowTip(event, 'tt35', 'link36')" onMouseOut="HideTip('tt35')">show</a></td><td class=SDescription>Wether to display the legend on the graph.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.location" id=link37 onMouseOver="ShowTip(event, 'tt36', 'link37')" onMouseOut="HideTip('tt36')">location</a></td><td class=SDescription>Placement of the legend. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.labels" id=link38 onMouseOver="ShowTip(event, 'tt37', 'link38')" onMouseOut="HideTip('tt37')">labels</a></td><td class=SDescription>Array of labels to use. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.showLabels" id=link39 onMouseOver="ShowTip(event, 'tt38', 'link39')" onMouseOut="HideTip('tt38')">showLabels</a></td><td class=SDescription>true to show the label text on the legend.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.showSwatch" id=link40 onMouseOver="ShowTip(event, 'tt39', 'link40')" onMouseOut="HideTip('tt39')">showSwatch</a></td><td class=SDescription>true to show the color swatches on the legend.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.placement" id=link41 onMouseOver="ShowTip(event, 'tt40', 'link41')" onMouseOut="HideTip('tt40')">placement</a></td><td class=SDescription>&ldquo;insideGrid&rdquo; places legend inside the grid area of the plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.xoffset" id=link42 onMouseOver="ShowTip(event, 'tt41', 'link42')" onMouseOut="HideTip('tt41')">xoffset</a></td><td class=SDescription>DEPRECATED. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.yoffset" id=link43 onMouseOver="ShowTip(event, 'tt42', 'link43')" onMouseOut="HideTip('tt42')">yoffset</a></td><td class=SDescription>DEPRECATED. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.border" id=link44 onMouseOver="ShowTip(event, 'tt43', 'link44')" onMouseOut="HideTip('tt43')">border</a></td><td class=SDescription>css spec for the border around the legend box.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.background" id=link45 onMouseOver="ShowTip(event, 'tt44', 'link45')" onMouseOut="HideTip('tt44')">background</a></td><td class=SDescription>css spec for the background of the legend box.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.textColor" id=link46 onMouseOver="ShowTip(event, 'tt45', 'link46')" onMouseOut="HideTip('tt45')">textColor</a></td><td class=SDescription>css color spec for the legend text.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.fontFamily" id=link47 onMouseOver="ShowTip(event, 'tt46', 'link47')" onMouseOut="HideTip('tt46')">fontFamily</a></td><td class=SDescription>css font-family spec for the legend text.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.fontSize" id=link48 onMouseOver="ShowTip(event, 'tt47', 'link48')" onMouseOut="HideTip('tt47')">fontSize</a></td><td class=SDescription>css font-size spec for the legend text.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.rowSpacing" id=link49 onMouseOver="ShowTip(event, 'tt48', 'link49')" onMouseOut="HideTip('tt48')">rowSpacing</a></td><td class=SDescription>css padding-top spec for the rows in the legend.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.rendererOptions" id=link50 onMouseOver="ShowTip(event, 'tt49', 'link50')" onMouseOut="HideTip('tt49')">rendererOptions</a></td><td class=SDescription>renderer specific options passed to the renderer.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.predraw" >predraw</a></td><td class=SDescription>Wether to draw the legend before the series or not. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.marginTop" id=link51 onMouseOver="ShowTip(event, 'tt50', 'link51')" onMouseOut="HideTip('tt50')">marginTop</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.marginRight" id=link52 onMouseOver="ShowTip(event, 'tt51', 'link52')" onMouseOut="HideTip('tt51')">marginRight</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.marginBottom" id=link53 onMouseOver="ShowTip(event, 'tt52', 'link53')" onMouseOut="HideTip('tt52')">marginBottom</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Legend.marginLeft" id=link54 onMouseOver="ShowTip(event, 'tt53', 'link54')" onMouseOut="HideTip('tt53')">marginLeft</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Legend.escapeHtml" id=link55 onMouseOver="ShowTip(event, 'tt54', 'link55')" onMouseOut="HideTip('tt54')">escapeHtml</a></td><td class=SDescription>True to escape special characters with their html entity equivalents in legend text. </td></tr><tr class="SClass"><td class=SEntry><a href="#Title" >Title</a></td><td class=SDescription>Plot Title object. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Title.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Title.text" id=link56 onMouseOver="ShowTip(event, 'tt55', 'link56')" onMouseOut="HideTip('tt55')">text</a></td><td class=SDescription>text of the title;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Title.show" id=link57 onMouseOver="ShowTip(event, 'tt56', 'link57')" onMouseOut="HideTip('tt56')">show</a></td><td class=SDescription>wether or not to show the title</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Title.fontFamily" id=link58 onMouseOver="ShowTip(event, 'tt57', 'link58')" onMouseOut="HideTip('tt57')">fontFamily</a></td><td class=SDescription>css font-family spec for the text.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Title.fontSize" id=link59 onMouseOver="ShowTip(event, 'tt58', 'link59')" onMouseOut="HideTip('tt58')">fontSize</a></td><td class=SDescription>css font-size spec for the text.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Title.textAlign" id=link60 onMouseOver="ShowTip(event, 'tt59', 'link60')" onMouseOut="HideTip('tt59')">textAlign</a></td><td class=SDescription>css text-align spec for the text.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Title.textColor" id=link61 onMouseOver="ShowTip(event, 'tt60', 'link61')" onMouseOut="HideTip('tt60')">textColor</a></td><td class=SDescription>css color spec for the text.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Title.renderer" id=link62 onMouseOver="ShowTip(event, 'tt61', 'link62')" onMouseOut="HideTip('tt61')">renderer</a></td><td class=SDescription>A class for creating a DOM element for the title, see <a href="jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" class=LClass id=link63 onMouseOver="ShowTip(event, 'tt62', 'link63')" onMouseOut="HideTip('tt62')">$.jqplot.DivTitleRenderer</a>.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Title.rendererOptions" id=link64 onMouseOver="ShowTip(event, 'tt63', 'link64')" onMouseOut="HideTip('tt63')">rendererOptions</a></td><td class=SDescription>renderer specific options passed to the renderer.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Title.escapeHtml" id=link65 onMouseOver="ShowTip(event, 'tt64', 'link65')" onMouseOut="HideTip('tt64')">escapeHtml</a></td><td class=SDescription>True to escape special characters with their html entity equivalents in title text. </td></tr><tr class="SClass"><td class=SEntry><a href="#Series" >Series</a></td><td class=SDescription>An individual data series object. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Series.Properties" >Properties</a></td><td class=SDescription>Properties will be assigned from a series array at the top level of the options. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.show" id=link66 onMouseOver="ShowTip(event, 'tt65', 'link66')" onMouseOut="HideTip('tt65')">show</a></td><td class=SDescription>wether or not to draw the series.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.xaxis" id=link67 onMouseOver="ShowTip(event, 'tt66', 'link67')" onMouseOut="HideTip('tt66')">xaxis</a></td><td class=SDescription>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.yaxis" id=link68 onMouseOver="ShowTip(event, 'tt67', 'link68')" onMouseOut="HideTip('tt67')">yaxis</a></td><td class=SDescription>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.renderer" id=link69 onMouseOver="ShowTip(event, 'tt68', 'link69')" onMouseOut="HideTip('tt68')">renderer</a></td><td class=SDescription>A class of a renderer which will draw the series, see <a href="jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" class=LClass id=link70 onMouseOver="ShowTip(event, 'tt69', 'link70')" onMouseOut="HideTip('tt69')">$.jqplot.LineRenderer</a>.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.rendererOptions" id=link71 onMouseOver="ShowTip(event, 'tt70', 'link71')" onMouseOut="HideTip('tt70')">rendererOptions</a></td><td class=SDescription>Options to pass on to the renderer.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.label" id=link72 onMouseOver="ShowTip(event, 'tt71', 'link72')" onMouseOut="HideTip('tt71')">label</a></td><td class=SDescription>Line label to use in the legend.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.showLabel" id=link73 onMouseOver="ShowTip(event, 'tt72', 'link73')" onMouseOut="HideTip('tt72')">showLabel</a></td><td class=SDescription>true to show label for this series in the legend.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.color" id=link74 onMouseOver="ShowTip(event, 'tt73', 'link74')" onMouseOut="HideTip('tt73')">color</a></td><td class=SDescription>css color spec for the series</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.negativeColor" id=link75 onMouseOver="ShowTip(event, 'tt74', 'link75')" onMouseOut="HideTip('tt74')">negativeColor</a></td><td class=SDescription>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.lineWidth" id=link76 onMouseOver="ShowTip(event, 'tt75', 'link76')" onMouseOut="HideTip('tt75')">lineWidth</a></td><td class=SDescription>width of the line in pixels. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.lineJoin" id=link77 onMouseOver="ShowTip(event, 'tt76', 'link77')" onMouseOut="HideTip('tt76')">lineJoin</a></td><td class=SDescription>Canvas lineJoin style between segments of series.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.lineCap" id=link78 onMouseOver="ShowTip(event, 'tt77', 'link78')" onMouseOut="HideTip('tt77')">lineCap</a></td><td class=SDescription>Canvas lineCap style at ends of line.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.linePattern" id=link79 onMouseOver="ShowTip(event, 'tt78', 'link79')" onMouseOut="HideTip('tt78')">linePattern</a></td><td class=SDescription>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.shadowAngle" id=link80 onMouseOver="ShowTip(event, 'tt79', 'link80')" onMouseOut="HideTip('tt79')">shadowAngle</a></td><td class=SDescription>Shadow angle in degrees</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.shadowOffset" id=link81 onMouseOver="ShowTip(event, 'tt80', 'link81')" onMouseOut="HideTip('tt80')">shadowOffset</a></td><td class=SDescription>Shadow offset from line in pixels</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.shadowDepth" id=link82 onMouseOver="ShowTip(event, 'tt81', 'link82')" onMouseOut="HideTip('tt81')">shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.shadowAlpha" id=link83 onMouseOver="ShowTip(event, 'tt82', 'link83')" onMouseOut="HideTip('tt82')">shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.breakOnNull" id=link84 onMouseOver="ShowTip(event, 'tt83', 'link84')" onMouseOut="HideTip('tt83')">breakOnNull</a></td><td class=SDescription>Wether line segments should be be broken at null value. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.markerRenderer" id=link85 onMouseOver="ShowTip(event, 'tt84', 'link85')" onMouseOut="HideTip('tt84')">markerRenderer</a></td><td class=SDescription>A class of a renderer which will draw marker (e.g. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.markerOptions" id=link86 onMouseOver="ShowTip(event, 'tt85', 'link86')" onMouseOut="HideTip('tt85')">markerOptions</a></td><td class=SDescription>renderer specific options to pass to the markerRenderer, see <a href="jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" class=LClass id=link87 onMouseOver="ShowTip(event, 'tt86', 'link87')" onMouseOut="HideTip('tt86')">$.jqplot.MarkerRenderer</a>.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.showLine" id=link88 onMouseOver="ShowTip(event, 'tt87', 'link88')" onMouseOut="HideTip('tt87')">showLine</a></td><td class=SDescription>wether to actually draw the line or not. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.showMarker" id=link89 onMouseOver="ShowTip(event, 'tt88', 'link89')" onMouseOut="HideTip('tt88')">showMarker</a></td><td class=SDescription>wether or not to show the markers at the data points.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.index" id=link90 onMouseOver="ShowTip(event, 'tt89', 'link90')" onMouseOut="HideTip('tt89')">index</a></td><td class=SDescription>0 based index of this series in the plot series array.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.fill" id=link91 onMouseOver="ShowTip(event, 'tt90', 'link91')" onMouseOut="HideTip('tt90')">fill</a></td><td class=SDescription>true or false, wether to fill under lines or in bars. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.fillColor" id=link92 onMouseOver="ShowTip(event, 'tt91', 'link92')" onMouseOut="HideTip('tt91')">fillColor</a></td><td class=SDescription>CSS color spec to use for fill under line. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.fillAlpha" id=link93 onMouseOver="ShowTip(event, 'tt92', 'link93')" onMouseOut="HideTip('tt92')">fillAlpha</a></td><td class=SDescription>Alpha transparency to apply to the fill under the line. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.fillAndStroke" id=link94 onMouseOver="ShowTip(event, 'tt93', 'link94')" onMouseOut="HideTip('tt93')">fillAndStroke</a></td><td class=SDescription>If true will stroke the line (with color this.color) as well as fill under it. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.disableStack" id=link95 onMouseOver="ShowTip(event, 'tt94', 'link95')" onMouseOut="HideTip('tt94')">disableStack</a></td><td class=SDescription>true to not stack this series with other series in the plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.neighborThreshold" id=link96 onMouseOver="ShowTip(event, 'tt95', 'link96')" onMouseOut="HideTip('tt95')">neighborThreshold</a></td><td class=SDescription>how close or far (in pixels) the cursor must be from a point marker to detect the point.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.fillToZero" id=link97 onMouseOver="ShowTip(event, 'tt96', 'link97')" onMouseOut="HideTip('tt96')">fillToZero</a></td><td class=SDescription>true will force bar and filled series to fill toward zero on the fill Axis.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.fillToValue" id=link98 onMouseOver="ShowTip(event, 'tt97', 'link98')" onMouseOut="HideTip('tt97')">fillToValue</a></td><td class=SDescription>fill a filled series to this value on the fill axis. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Series.fillAxis" id=link99 onMouseOver="ShowTip(event, 'tt98', 'link99')" onMouseOut="HideTip('tt98')">fillAxis</a></td><td class=SDescription>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Series.useNegativeColors" id=link100 onMouseOver="ShowTip(event, 'tt99', 'link100')" onMouseOut="HideTip('tt99')">useNegativeColors</a></td><td class=SDescription>true to color negative values differently in filled and bar charts.</td></tr><tr class="SClass"><td class=SEntry><a href="#Grid" >Grid</a></td><td class=SDescription>Object representing the grid on which the plot is drawn. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Grid.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.drawGridlines" id=link101 onMouseOver="ShowTip(event, 'tt100', 'link101')" onMouseOut="HideTip('tt100')">drawGridlines</a></td><td class=SDescription>wether to draw the gridlines on the plot.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.gridLineColor" id=link102 onMouseOver="ShowTip(event, 'tt101', 'link102')" onMouseOut="HideTip('tt101')">gridLineColor</a></td><td class=SDescription>color of the grid lines.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.gridLineWidth" id=link103 onMouseOver="ShowTip(event, 'tt102', 'link103')" onMouseOut="HideTip('tt102')">gridLineWidth</a></td><td class=SDescription>width of the grid lines.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.background" id=link104 onMouseOver="ShowTip(event, 'tt103', 'link104')" onMouseOut="HideTip('tt103')">background</a></td><td class=SDescription>css spec for the background color.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.borderColor" id=link105 onMouseOver="ShowTip(event, 'tt104', 'link105')" onMouseOut="HideTip('tt104')">borderColor</a></td><td class=SDescription>css spec for the color of the grid border.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.borderWidth" id=link106 onMouseOver="ShowTip(event, 'tt105', 'link106')" onMouseOut="HideTip('tt105')">borderWidth</a></td><td class=SDescription>width of the border in pixels.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.drawBorder" id=link107 onMouseOver="ShowTip(event, 'tt106', 'link107')" onMouseOut="HideTip('tt106')">drawBorder</a></td><td class=SDescription>True to draw border around grid.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.shadow" id=link108 onMouseOver="ShowTip(event, 'tt107', 'link108')" onMouseOut="HideTip('tt107')">shadow</a></td><td class=SDescription>wether to show a shadow behind the grid.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.shadowAngle" id=link109 onMouseOver="ShowTip(event, 'tt108', 'link109')" onMouseOut="HideTip('tt108')">shadowAngle</a></td><td class=SDescription>shadow angle in degrees</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.shadowOffset" id=link110 onMouseOver="ShowTip(event, 'tt109', 'link110')" onMouseOut="HideTip('tt109')">shadowOffset</a></td><td class=SDescription>Offset of each shadow stroke from the border in pixels</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.shadowWidth" id=link111 onMouseOver="ShowTip(event, 'tt110', 'link111')" onMouseOut="HideTip('tt110')">shadowWidth</a></td><td class=SDescription>width of the stoke for the shadow</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.shadowDepth" id=link112 onMouseOver="ShowTip(event, 'tt111', 'link112')" onMouseOut="HideTip('tt111')">shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.shadowColor" id=link113 onMouseOver="ShowTip(event, 'tt112', 'link113')" onMouseOut="HideTip('tt112')">shadowColor</a></td><td class=SDescription>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.shadowAlpha" id=link114 onMouseOver="ShowTip(event, 'tt113', 'link114')" onMouseOut="HideTip('tt113')">shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Grid.renderer" id=link115 onMouseOver="ShowTip(event, 'tt114', 'link115')" onMouseOut="HideTip('tt114')">renderer</a></td><td class=SDescription>Instance of a renderer which will actually render the grid, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link116 onMouseOver="ShowTip(event, 'tt115', 'link116')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Grid.rendererOptions" id=link117 onMouseOver="ShowTip(event, 'tt116', 'link117')" onMouseOut="HideTip('tt116')">rendererOptions</a></td><td class=SDescription>Options to pass on to the renderer, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link118 onMouseOver="ShowTip(event, 'tt115', 'link118')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</td></tr><tr class="SClass"><td class=SEntry><a href="#jqPlot" >jqPlot</a></td><td class=SDescription>Plot object returned by call to $.jqplot. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#jqPlot.Properties" >Properties</a></td><td class=SDescription>These properties are specified at the top of the options object like so:</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.animate" id=link119 onMouseOver="ShowTip(event, 'tt117', 'link119')" onMouseOut="HideTip('tt117')">animate</a></td><td class=SDescription>True to animate the series on initial plot draw (renderer dependent). </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.animateReplot" id=link120 onMouseOver="ShowTip(event, 'tt118', 'link120')" onMouseOut="HideTip('tt118')">animateReplot</a></td><td class=SDescription>True to animate series after a call to the replot() method. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.axes" id=link121 onMouseOver="ShowTip(event, 'tt119', 'link121')" onMouseOut="HideTip('tt119')">axes</a></td><td class=SDescription>up to 4 axes are supported, each with it&rsquo;s own options, See <a href="#Axis" class=LClass id=link122 onMouseOver="ShowTip(event, 'tt120', 'link122')" onMouseOut="HideTip('tt120')">Axis</a> for axis specific options.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.data" id=link123 onMouseOver="ShowTip(event, 'tt121', 'link123')" onMouseOut="HideTip('tt121')">data</a></td><td class=SDescription>user&rsquo;s data. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.dataRenderer" id=link124 onMouseOver="ShowTip(event, 'tt122', 'link124')" onMouseOut="HideTip('tt122')">dataRenderer</a></td><td class=SDescription>A callable which can be used to preprocess data passed into the plot. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.dataRendererOptions" id=link125 onMouseOver="ShowTip(event, 'tt123', 'link125')" onMouseOut="HideTip('tt123')">dataRendererOptions</a></td><td class=SDescription>Options that will be passed to the dataRenderer. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.axesDefaults" >axesDefaults</a></td><td class=SDescription>default options that will be applied to all axes. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.seriesDefaults" id=link126 onMouseOver="ShowTip(event, 'tt124', 'link126')" onMouseOut="HideTip('tt124')">seriesDefaults</a></td><td class=SDescription>default options that will be applied to all series. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.defaultAxisStart" id=link127 onMouseOver="ShowTip(event, 'tt125', 'link127')" onMouseOut="HideTip('tt125')">defaultAxisStart</a></td><td class=SDescription>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.fillBetween" id=link128 onMouseOver="ShowTip(event, 'tt126', 'link128')" onMouseOut="HideTip('tt126')">fillBetween</a></td><td class=SDescription>Fill between 2 line series in a plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.fontSize" id=link129 onMouseOver="ShowTip(event, 'tt127', 'link129')" onMouseOut="HideTip('tt127')">fontSize</a></td><td class=SDescription>css spec for the font-size attribute. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.grid" id=link130 onMouseOver="ShowTip(event, 'tt128', 'link130')" onMouseOut="HideTip('tt128')">grid</a></td><td class=SDescription>See <a href="#Grid" class=LClass id=link131 onMouseOver="ShowTip(event, 'tt129', 'link131')" onMouseOut="HideTip('tt129')">Grid</a> for grid specific options.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.legend" id=link132 onMouseOver="ShowTip(event, 'tt130', 'link132')" onMouseOut="HideTip('tt130')">legend</a></td><td class=SDescription>see &lt;$.jqplot.TableLegendRenderer&gt;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.noDataIndicator" >noDataIndicator</a></td><td class=SDescription>Options to set up a mock plot with a data loading indicator if no data is specified.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.series" id=link133 onMouseOver="ShowTip(event, 'tt131', 'link133')" onMouseOut="HideTip('tt131')">series</a></td><td class=SDescription>Array of series object options. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.seriesColors" id=link134 onMouseOver="ShowTip(event, 'tt132', 'link134')" onMouseOut="HideTip('tt132')">seriesColors</a></td><td class=SDescription>Ann array of CSS color specifications that will be applied, in order, to the series in the plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.sortData" id=link135 onMouseOver="ShowTip(event, 'tt133', 'link135')" onMouseOut="HideTip('tt133')">sortData</a></td><td class=SDescription>false to not sort the data passed in by the user. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#jqPlot.stackSeries" id=link136 onMouseOver="ShowTip(event, 'tt134', 'link136')" onMouseOut="HideTip('tt134')">stackSeries</a></td><td class=SDescription>true or false, creates a stack or &ldquo;mountain&rdquo; plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.title" id=link137 onMouseOver="ShowTip(event, 'tt135', 'link137')" onMouseOut="HideTip('tt135')">title</a></td><td class=SDescription>Title object. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#jqPlot.methods" >methods</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.init" id=link138 onMouseOver="ShowTip(event, 'tt136', 'link138')" onMouseOut="HideTip('tt136')">init</a></td><td class=SDescription>sets the plot target, checks data and applies user options to plot.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.resetAxesScale" id=link139 onMouseOver="ShowTip(event, 'tt137', 'link139')" onMouseOut="HideTip('tt137')">resetAxesScale</a></td><td class=SDescription>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.reInitialize" id=link140 onMouseOver="ShowTip(event, 'tt138', 'link140')" onMouseOut="HideTip('tt138')">reInitialize</a></td><td class=SDescription>reinitialize plot for replotting. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.quickInit" id=link141 onMouseOver="ShowTip(event, 'tt139', 'link141')" onMouseOut="HideTip('tt139')">quickInit</a></td><td class=SDescription>Quick reinitialization plot for replotting. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.destroy" id=link142 onMouseOver="ShowTip(event, 'tt140', 'link142')" onMouseOut="HideTip('tt140')">destroy</a></td><td class=SDescription>Releases all resources occupied by the plot</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.replot" id=link143 onMouseOver="ShowTip(event, 'tt141', 'link143')" onMouseOut="HideTip('tt141')">replot</a></td><td class=SDescription>Does a reinitialization of the plot followed by a redraw. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.redraw" id=link144 onMouseOver="ShowTip(event, 'tt142', 'link144')" onMouseOut="HideTip('tt142')">redraw</a></td><td class=SDescription>Empties the plot target div and redraws the plot. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.draw" id=link145 onMouseOver="ShowTip(event, 'tt143', 'link145')" onMouseOut="HideTip('tt143')">draw</a></td><td class=SDescription>Draws all elements of the plot into the container. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.drawSeries" id=link146 onMouseOver="ShowTip(event, 'tt144', 'link146')" onMouseOut="HideTip('tt144')">drawSeries</a></td><td class=SDescription>Redraws all or just one series on the plot. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.moveSeriesToFront" id=link147 onMouseOver="ShowTip(event, 'tt145', 'link147')" onMouseOut="HideTip('tt145')">moveSeriesToFront</a></td><td class=SDescription>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.moveSeriesToBack" id=link148 onMouseOver="ShowTip(event, 'tt146', 'link148')" onMouseOut="HideTip('tt146')">moveSeriesToBack</a></td><td class=SDescription>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#jqPlot.restorePreviousSeriesOrder" id=link149 onMouseOver="ShowTip(event, 'tt147', 'link149')" onMouseOut="HideTip('tt147')">restorePreviousSeriesOrder</a></td><td class=SDescription>This method requires jQuery 1.4+ Restore the series canvas order to its previous state. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#jqPlot.restoreOriginalSeriesOrder" id=link150 onMouseOver="ShowTip(event, 'tt148', 'link150')" onMouseOut="HideTip('tt148')">restoreOriginalSeriesOrder</a></td><td class=SDescription>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Version"></a>Version</h3><div class=CBody><p>version: 1.0.4 revision: 1121</p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="CopyrightLicense"></a>Copyright &amp; License</h3><div class=CBody><p>Copyright &copy; 2009-2012 Chris Leonello jqPlot is currently available for use in all personal or commercial projects under both the MIT and GPL version 2.0 licenses.&nbsp; This means that you can choose the license that best suits your project and use it accordingly.</p><p>See <a href="gpl-2-0-txt.html#GPL_Version_2" class=LSection id=link151 onMouseOver="ShowTip(event, 'tt149', 'link151')" onMouseOut="HideTip('tt149')">GPL Version 2</a> and <a href="MIT-LICENSE-txt.html#MIT_License" class=LSection id=link152 onMouseOver="ShowTip(event, 'tt150', 'link152')" onMouseOut="HideTip('tt150')">MIT License</a> contained within this distribution for further information.</p><p>The author would appreciate an email letting him know of any substantial use of jqPlot.&nbsp; You can reach the author at: chris at jqplot dot com or see <a href="http://www.jqplot.com/info.php" class=LURL target=_top>http://www.jqplot.com/info.php</a>.&nbsp; This is, of course, not required.</p><p>If you are feeling kind and generous, consider supporting the project by making a donation at: <a href="http://www.jqplot.com/donate.php" class=LURL target=_top>http://www.jqplot.com/donate.php</a>.</p><h4 class=CHeading>sprintf functions contained in jqplot.sprintf.js by Ash Searle</h4><p>version 2007.04.27 author Ash Searle <a href="http://hexmen.com/blog/2007/03/printf-sprintf/" class=LURL target=_top>http://hexmen.com/blog/2007/03/printf-sprintf/</a> <a href="http://hexmen.com/js/sprintf.js" class=LURL target=_top>http://hexmen.com/js/sprintf.js</a> The author (Ash Searle) has placed this code in the public domain: &ldquo;This code is unrestricted: you are free to use it however you like.&rdquo;</p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Introduction"></a>Introduction</h3><div class=CBody><p>jqPlot requires jQuery (1.4+ required for certain features). jQuery 1.4.2 is included in the distribution.&nbsp; To use jqPlot include jQuery, the jqPlot jQuery plugin, the jqPlot css file and optionally the excanvas script for IE support in your web page:</p><blockquote><pre>&lt;!--[if lt IE 9]&gt;&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;excanvas.js&quot;&gt;&lt;/script&gt;&lt;![endif]--&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery-1.4.4.min.js&quot;&gt;&lt;/script&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery.jqplot.min.js&quot;&gt;&lt;/script&gt;
-&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;jquery.jqplot.css&quot; /&gt;</pre></blockquote><p>jqPlot can be customized by overriding the defaults of any of the objects which make up the plot.&nbsp; The general usage of jqplot is:</p><blockquote><pre>chart = $.jqplot('targetElemId', [dataArray,...], {optionsObject});</pre></blockquote><p>The options available to jqplot are detailed in <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link153 onMouseOver="ShowTip(event, 'tt1', 'link153')" onMouseOut="HideTip('tt1')">jqPlot Options</a> in the jqPlotOptions.txt file.</p><p>An actual call to $.jqplot() may look like the examples below:</p><blockquote><pre>chart = $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);</pre></blockquote><p>or</p><blockquote><pre>dataArray = [34,12,43,55,77];
-chart = $.jqplot('targetElemId', [dataArray, ...], {title:'My Plot', axes:{yaxis:{min:20, max:100}}});</pre></blockquote><p>For more inforrmation, see <a href="usage-txt.html#jqPlot_Usage" class=LSection >jqPlot Usage</a>.</p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Usage"></a>Usage</h3><div class=CBody><p>See <a href="usage-txt.html#jqPlot_Usage" class=LSection >jqPlot Usage</a></p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Available_Options"></a>Available Options</h3><div class=CBody><p>See <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link154 onMouseOver="ShowTip(event, 'tt1', 'link154')" onMouseOut="HideTip('tt1')">jqPlot Options</a> for a list of options available thorugh the options object (not complete yet!)</p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Options_Usage"></a>Options Usage</h3><div class=CBody><p>See <a href="optionsTutorial-txt.html#Options_Tutorial" class=LSection id=link155 onMouseOver="ShowTip(event, 'tt2', 'link155')" onMouseOut="HideTip('tt2')">Options Tutorial</a></p></div></div></div>
-
-<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Changes"></a>Changes</h3><div class=CBody><p>See <a href="changes-txt.html#Change_Log" class=LSection >Change Log</a></p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="$.jqplot"></a>$.jqplot</h2><div class=CBody><p>jQuery function called by the user to create a plot.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>target</td><td class=CDLDescription>ID of target element to render the plot into.</td></tr><tr><td class=CDLEntry>data</td><td class=CDLDescription>an array of data series.</td></tr><tr><td class=CDLEntry>options</td><td class=CDLDescription>user defined options object.&nbsp; See the individual classes for available options.</td></tr></table><h4 class=CHeading>Properties</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>config</td><td class=CDLDescription>object to hold configuration information for jqPlot plot object.</td></tr></table><h4 class=CHeading>attributes</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>enablePlugins</td><td class=CDLDescription>False to disable plugins by default.&nbsp; Plugins must then be explicitly enabled in the individual plot options.&nbsp; Default: false.&nbsp; This property sets the &ldquo;show&rdquo; property of certain plugins to true or false.&nbsp; Only plugins that can be immediately active upon loading are affected.&nbsp; This includes non-renderer plugins like cursor, dragable, highlighter, and trendline.</td></tr><tr><td class=CDLEntry>defaultHeight</td><td class=CDLDescription>Default height for plots where no css height specification exists.&nbsp; This is a jqplot wide default.</td></tr><tr><td class=CDLEntry>defaultWidth</td><td class=CDLDescription>Default height for plots where no css height specification exists.&nbsp; This is a jqplot wide default.</td></tr></table><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#$.jqplot.Hooks" >Hooks</a></td><td class=SDescription></td></tr><tr class="SHook SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.jqPlot_Pugin_Hooks" >jqPlot Pugin Hooks</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Hooks"></a>Hooks</h3></div></div>
-
-<div class="CHook"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.jqPlot_Pugin_Hooks"></a>jqPlot Pugin Hooks</h3><div class=CBody><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preInitHooks"></a>$.jqplot.preInitHooks</td><td class=CDLDescription>called before initialization.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postInitHooks"></a>$.jqplot.postInitHooks</td><td class=CDLDescription>called after initialization.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preParseOptionsHooks"></a>$.jqplot.preParseOptionsHooks</td><td class=CDLDescription>called before user options are parsed.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postParseOptionsHooks"></a>$.jqplot.postParseOptionsHooks</td><td class=CDLDescription>called after user options are parsed.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preDrawHooks"></a>$.jqplot.preDrawHooks</td><td class=CDLDescription>called before plot draw.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postDrawHooks"></a>$.jqplot.postDrawHooks</td><td class=CDLDescription>called after plot draw.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preDrawSeriesHooks"></a>$.jqplot.preDrawSeriesHooks</td><td class=CDLDescription>called before each series is drawn.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postDrawSeriesHooks"></a>$.jqplot.postDrawSeriesHooks</td><td class=CDLDescription>called after each series is drawn.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preDrawLegendHooks"></a>$.jqplot.preDrawLegendHooks</td><td class=CDLDescription>called before the legend is drawn.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.addLegendRowHooks"></a>$.jqplot.addLegendRowHooks</td><td class=CDLDescription>called at the end of legend draw, so plugins can add rows to the legend table.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preSeriesInitHooks"></a>$.jqplot.preSeriesInitHooks</td><td class=CDLDescription>called before series is initialized.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postSeriesInitHooks"></a>$.jqplot.postSeriesInitHooks</td><td class=CDLDescription>called after series is initialized.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preParseSeriesOptionsHooks"></a>$.jqplot.preParseSeriesOptionsHooks</td><td class=CDLDescription>called before series related options are parsed.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postParseSeriesOptionsHooks"></a>$.jqplot.postParseSeriesOptionsHooks</td><td class=CDLDescription>called after series related options are parsed.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.eventListenerHooks"></a>$.jqplot.eventListenerHooks</td><td class=CDLDescription>called at the end of plot drawing, binds listeners to the event canvas which lays on top of the grid area.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.preDrawSeriesShadowHooks"></a>$.jqplot.preDrawSeriesShadowHooks</td><td class=CDLDescription>called before series shadows are drawn.</td></tr><tr><td class=CDLEntry><a name="$.jqplot.jqPlot_Pugin_Hooks.$.jqplot.postDrawSeriesShadowHooks"></a>$.jqplot.postDrawSeriesShadowHooks</td><td class=CDLDescription>called after series shadows are drawn.</td></tr></table></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Axis"></a>Axis</h2><div class=CBody><p>An individual axis object.&nbsp; Cannot be instantiated directly, but created by the Plot oject.&nbsp; Axis properties can be set or overriden by the options passed in from the user.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Axis.Properties" >Properties</a></td><td class=SDescription>Axes options are specified within an axes object at the top level of the plot options like so:</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.show" id=link156 onMouseOver="ShowTip(event, 'tt3', 'link156')" onMouseOut="HideTip('tt3')">show</a></td><td class=SDescription>Wether to display the axis on the graph.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.tickRenderer" id=link157 onMouseOver="ShowTip(event, 'tt4', 'link157')" onMouseOut="HideTip('tt4')">tickRenderer</a></td><td class=SDescription>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link158 onMouseOver="ShowTip(event, 'tt5', 'link158')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a>.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.tickOptions" id=link159 onMouseOver="ShowTip(event, 'tt6', 'link159')" onMouseOut="HideTip('tt6')">tickOptions</a></td><td class=SDescription>Options that will be passed to the tickRenderer, see <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link160 onMouseOver="ShowTip(event, 'tt5', 'link160')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a> options.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.labelRenderer" id=link161 onMouseOver="ShowTip(event, 'tt7', 'link161')" onMouseOut="HideTip('tt7')">labelRenderer</a></td><td class=SDescription>A class of a rendering engine for creating an axis label.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.labelOptions" id=link162 onMouseOver="ShowTip(event, 'tt8', 'link162')" onMouseOut="HideTip('tt8')">labelOptions</a></td><td class=SDescription>Options passed to the label renderer.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.label" id=link163 onMouseOver="ShowTip(event, 'tt9', 'link163')" onMouseOut="HideTip('tt9')">label</a></td><td class=SDescription>Label for the axis</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.showLabel" id=link164 onMouseOver="ShowTip(event, 'tt10', 'link164')" onMouseOut="HideTip('tt10')">showLabel</a></td><td class=SDescription>true to show the axis label.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.min" id=link165 onMouseOver="ShowTip(event, 'tt11', 'link165')" onMouseOut="HideTip('tt11')">min</a></td><td class=SDescription>minimum value of the axis (in data units, not pixels).</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.max" id=link166 onMouseOver="ShowTip(event, 'tt12', 'link166')" onMouseOut="HideTip('tt12')">max</a></td><td class=SDescription>maximum value of the axis (in data units, not pixels).</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.autoscale" id=link167 onMouseOver="ShowTip(event, 'tt13', 'link167')" onMouseOut="HideTip('tt13')">autoscale</a></td><td class=SDescription>DEPRECATED the default scaling algorithm produces superior results.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.pad" id=link168 onMouseOver="ShowTip(event, 'tt14', 'link168')" onMouseOut="HideTip('tt14')">pad</a></td><td class=SDescription>Padding to extend the range above and below the data bounds. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.padMax" id=link169 onMouseOver="ShowTip(event, 'tt15', 'link169')" onMouseOut="HideTip('tt15')">padMax</a></td><td class=SDescription>Padding to extend the range above data bounds. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.padMin" id=link170 onMouseOver="ShowTip(event, 'tt16', 'link170')" onMouseOut="HideTip('tt16')">padMin</a></td><td class=SDescription>Padding to extend the range below data bounds. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.ticks" id=link171 onMouseOver="ShowTip(event, 'tt17', 'link171')" onMouseOut="HideTip('tt17')">ticks</a></td><td class=SDescription>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.numberTicks" id=link172 onMouseOver="ShowTip(event, 'tt18', 'link172')" onMouseOut="HideTip('tt18')">numberTicks</a></td><td class=SDescription>Desired number of ticks. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.tickInterval" id=link173 onMouseOver="ShowTip(event, 'tt19', 'link173')" onMouseOut="HideTip('tt19')">tickInterval</a></td><td class=SDescription>number of units between ticks. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.renderer" id=link174 onMouseOver="ShowTip(event, 'tt20', 'link174')" onMouseOut="HideTip('tt20')">renderer</a></td><td class=SDescription>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.rendererOptions" id=link175 onMouseOver="ShowTip(event, 'tt21', 'link175')" onMouseOut="HideTip('tt21')">rendererOptions</a></td><td class=SDescription>renderer specific options. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.showTicks" id=link176 onMouseOver="ShowTip(event, 'tt22', 'link176')" onMouseOut="HideTip('tt22')">showTicks</a></td><td class=SDescription>Wether to show the ticks (both marks and labels) or not. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.showTickMarks" id=link177 onMouseOver="ShowTip(event, 'tt23', 'link177')" onMouseOut="HideTip('tt23')">showTickMarks</a></td><td class=SDescription>Wether to show the tick marks (line crossing grid) or not. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.showMinorTicks" id=link178 onMouseOver="ShowTip(event, 'tt24', 'link178')" onMouseOut="HideTip('tt24')">showMinorTicks</a></td><td class=SDescription>Wether or not to show minor ticks. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.drawMajorGridlines" id=link179 onMouseOver="ShowTip(event, 'tt25', 'link179')" onMouseOut="HideTip('tt25')">drawMajorGridlines</a></td><td class=SDescription>True to draw gridlines for major axis ticks.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.drawMinorGridlines" id=link180 onMouseOver="ShowTip(event, 'tt26', 'link180')" onMouseOut="HideTip('tt26')">drawMinorGridlines</a></td><td class=SDescription>True to draw gridlines for minor ticks.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.drawMajorTickMarks" id=link181 onMouseOver="ShowTip(event, 'tt27', 'link181')" onMouseOut="HideTip('tt27')">drawMajorTickMarks</a></td><td class=SDescription>True to draw tick marks for major axis ticks.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.drawMinorTickMarks" id=link182 onMouseOver="ShowTip(event, 'tt28', 'link182')" onMouseOut="HideTip('tt28')">drawMinorTickMarks</a></td><td class=SDescription>True to draw tick marks for minor ticks. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.useSeriesColor" id=link183 onMouseOver="ShowTip(event, 'tt29', 'link183')" onMouseOut="HideTip('tt29')">useSeriesColor</a></td><td class=SDescription>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.borderWidth" id=link184 onMouseOver="ShowTip(event, 'tt30', 'link184')" onMouseOut="HideTip('tt30')">borderWidth</a></td><td class=SDescription>width of line stroked at the border of the axis. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.borderColor" id=link185 onMouseOver="ShowTip(event, 'tt31', 'link185')" onMouseOut="HideTip('tt31')">borderColor</a></td><td class=SDescription>color of the border adjacent to the axis. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.scaleToHiddenSeries" id=link186 onMouseOver="ShowTip(event, 'tt32', 'link186')" onMouseOut="HideTip('tt32')">scaleToHiddenSeries</a></td><td class=SDescription>True to include hidden series when computing axes bounds and scaling.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Axis.syncTicks" id=link187 onMouseOver="ShowTip(event, 'tt33', 'link187')" onMouseOut="HideTip('tt33')">syncTicks</a></td><td class=SDescription>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Axis.tickSpacing" id=link188 onMouseOver="ShowTip(event, 'tt34', 'link188')" onMouseOut="HideTip('tt34')">tickSpacing</a></td><td class=SDescription>Approximate pixel spacing between ticks on graph. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Axis.Properties"></a>Properties</h3><div class=CBody><p>Axes options are specified within an axes object at the top level of the plot options like so:</p><blockquote><pre>{
- axes: {
- xaxis: {min: 5},
- yaxis: {min: 2, max: 8, numberTicks:4},
- x2axis: {pad: 1.5},
- y2axis: {ticks:[22, 44, 66, 88]}
- }
-}</pre></blockquote><p>There are 2 x axes, &lsquo;xaxis&rsquo; and &lsquo;x2axis&rsquo;, and 9 yaxes, &lsquo;yaxis&rsquo;, &lsquo;y2axis&rsquo;.&nbsp; &lsquo;y3axis&rsquo;, ...&nbsp; Any or all of which may be specified.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote><p>Wether to display the axis on the graph.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.tickRenderer"></a>tickRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickRenderer = $.jqplot.AxisTickRenderer</td></tr></table></blockquote><p>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link189 onMouseOver="ShowTip(event, 'tt5', 'link189')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.tickOptions"></a>tickOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickOptions = {}</td></tr></table></blockquote><p>Options that will be passed to the tickRenderer, see <a href="jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link190 onMouseOver="ShowTip(event, 'tt5', 'link190')" onMouseOut="HideTip('tt5')">$.jqplot.AxisTickRenderer</a> options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.labelRenderer"></a>labelRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote><p>A class of a rendering engine for creating an axis label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.labelOptions"></a>labelOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelOptions = {}</td></tr></table></blockquote><p>Options passed to the label renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote><p>Label for the axis</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.showLabel"></a>showLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote><p>true to show the axis label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.min"></a>min</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min = null</td></tr></table></blockquote><p>minimum value of the axis (in data units, not pixels).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.max"></a>max</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max = null</td></tr></table></blockquote><p>maximum value of the axis (in data units, not pixels).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.autoscale"></a>autoscale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscale = false</td></tr></table></blockquote><p>DEPRECATED the default scaling algorithm produces superior results.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.pad"></a>pad</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pad = 1.2</td></tr></table></blockquote><p>Padding to extend the range above and below the data bounds.&nbsp; The data range is multiplied by this factor to determine minimum and maximum axis bounds.&nbsp; A value of 0 will be interpreted to mean no padding, and pad will be set to 1.0.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.padMax"></a>padMax</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMax = null</td></tr></table></blockquote><p>Padding to extend the range above data bounds.&nbsp; The top of the data range is multiplied by this factor to determine maximum axis bounds.&nbsp; A value of 0 will be interpreted to mean no padding, and padMax will be set to 1.0.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.padMin"></a>padMin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMin = null</td></tr></table></blockquote><p>Padding to extend the range below data bounds.&nbsp; The bottom of the data range is multiplied by this factor to determine minimum axis bounds.&nbsp; A value of 0 will be interpreted to mean no padding, and padMin will be set to 1.0.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.ticks"></a>ticks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote><p>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis.&nbsp; If no label is specified, the value is formatted into an appropriate label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.numberTicks"></a>numberTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberTicks</td></tr></table></blockquote><p>Desired number of ticks.&nbsp; Default is to compute automatically.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.tickInterval"></a>tickInterval</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInterval</td></tr></table></blockquote><p>number of units between ticks.&nbsp; Mutually exclusive with numberTicks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.renderer"></a>renderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LinearAxisRenderer</td></tr></table></blockquote><p>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote><p>renderer specific options.&nbsp; See <a href="jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer" class=LClass id=link191 onMouseOver="ShowTip(event, 'tt151', 'link191')" onMouseOut="HideTip('tt151')">$.jqplot.LinearAxisRenderer</a> for options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.showTicks"></a>showTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote><p>Wether to show the ticks (both marks and labels) or not.&nbsp; Will not override showMark and showLabel options if specified on the ticks themselves.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.showTickMarks"></a>showTickMarks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickMarks = true</td></tr></table></blockquote><p>Wether to show the tick marks (line crossing grid) or not.&nbsp; Overridden by showTicks and showMark option of tick itself.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.showMinorTicks"></a>showMinorTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMinorTicks = true</td></tr></table></blockquote><p>Wether or not to show minor ticks.&nbsp; This is renderer dependent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.drawMajorGridlines"></a>drawMajorGridlines</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorGridlines = true</td></tr></table></blockquote><p>True to draw gridlines for major axis ticks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.drawMinorGridlines"></a>drawMinorGridlines</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorGridlines = false</td></tr></table></blockquote><p>True to draw gridlines for minor ticks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.drawMajorTickMarks"></a>drawMajorTickMarks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorTickMarks = true</td></tr></table></blockquote><p>True to draw tick marks for major axis ticks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.drawMinorTickMarks"></a>drawMinorTickMarks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorTickMarks = true</td></tr></table></blockquote><p>True to draw tick marks for minor ticks.&nbsp; This is renderer dependent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.useSeriesColor"></a>useSeriesColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useSeriesColor = false</td></tr></table></blockquote><p>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.borderWidth"></a>borderWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = null</td></tr></table></blockquote><p>width of line stroked at the border of the axis.&nbsp; Defaults to the width of the grid boarder.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.borderColor"></a>borderColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote><p>color of the border adjacent to the axis.&nbsp; Defaults to grid border color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.scaleToHiddenSeries"></a>scaleToHiddenSeries</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.scaleToHiddenSeries = false</td></tr></table></blockquote><p>True to include hidden series when computing axes bounds and scaling.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.syncTicks"></a>syncTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.syncTicks = null</td></tr></table></blockquote><p>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up.&nbsp; This has an impact on autoscaling algorithm, however.&nbsp; In general, autoscaling an individual axis will work better if it does not have to sync ticks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Axis.tickSpacing"></a>tickSpacing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 75</td></tr></table></blockquote><p>Approximate pixel spacing between ticks on graph.&nbsp; Used during autoscaling.&nbsp; This number will be an upper bound, actual spacing will be less.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Legend"></a>Legend</h2><div class=CBody><p>Legend object.&nbsp; Cannot be instantiated directly, but created by the Plot oject.&nbsp; Legend properties can be set or overriden by the options passed in from the user.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Legend.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.show" id=link192 onMouseOver="ShowTip(event, 'tt35', 'link192')" onMouseOut="HideTip('tt35')">show</a></td><td class=SDescription>Wether to display the legend on the graph.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.location" id=link193 onMouseOver="ShowTip(event, 'tt36', 'link193')" onMouseOut="HideTip('tt36')">location</a></td><td class=SDescription>Placement of the legend. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.labels" id=link194 onMouseOver="ShowTip(event, 'tt37', 'link194')" onMouseOut="HideTip('tt37')">labels</a></td><td class=SDescription>Array of labels to use. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.showLabels" id=link195 onMouseOver="ShowTip(event, 'tt38', 'link195')" onMouseOut="HideTip('tt38')">showLabels</a></td><td class=SDescription>true to show the label text on the legend.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.showSwatch" id=link196 onMouseOver="ShowTip(event, 'tt39', 'link196')" onMouseOut="HideTip('tt39')">showSwatch</a></td><td class=SDescription>true to show the color swatches on the legend.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.placement" id=link197 onMouseOver="ShowTip(event, 'tt40', 'link197')" onMouseOut="HideTip('tt40')">placement</a></td><td class=SDescription>&ldquo;insideGrid&rdquo; places legend inside the grid area of the plot. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.xoffset" id=link198 onMouseOver="ShowTip(event, 'tt41', 'link198')" onMouseOut="HideTip('tt41')">xoffset</a></td><td class=SDescription>DEPRECATED. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.yoffset" id=link199 onMouseOver="ShowTip(event, 'tt42', 'link199')" onMouseOut="HideTip('tt42')">yoffset</a></td><td class=SDescription>DEPRECATED. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.border" id=link200 onMouseOver="ShowTip(event, 'tt43', 'link200')" onMouseOut="HideTip('tt43')">border</a></td><td class=SDescription>css spec for the border around the legend box.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.background" id=link201 onMouseOver="ShowTip(event, 'tt44', 'link201')" onMouseOut="HideTip('tt44')">background</a></td><td class=SDescription>css spec for the background of the legend box.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.textColor" id=link202 onMouseOver="ShowTip(event, 'tt45', 'link202')" onMouseOut="HideTip('tt45')">textColor</a></td><td class=SDescription>css color spec for the legend text.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.fontFamily" id=link203 onMouseOver="ShowTip(event, 'tt46', 'link203')" onMouseOut="HideTip('tt46')">fontFamily</a></td><td class=SDescription>css font-family spec for the legend text.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.fontSize" id=link204 onMouseOver="ShowTip(event, 'tt47', 'link204')" onMouseOut="HideTip('tt47')">fontSize</a></td><td class=SDescription>css font-size spec for the legend text.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.rowSpacing" id=link205 onMouseOver="ShowTip(event, 'tt48', 'link205')" onMouseOut="HideTip('tt48')">rowSpacing</a></td><td class=SDescription>css padding-top spec for the rows in the legend.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.rendererOptions" id=link206 onMouseOver="ShowTip(event, 'tt49', 'link206')" onMouseOut="HideTip('tt49')">rendererOptions</a></td><td class=SDescription>renderer specific options passed to the renderer.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.predraw" >predraw</a></td><td class=SDescription>Wether to draw the legend before the series or not. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.marginTop" id=link207 onMouseOver="ShowTip(event, 'tt50', 'link207')" onMouseOut="HideTip('tt50')">marginTop</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.marginRight" id=link208 onMouseOver="ShowTip(event, 'tt51', 'link208')" onMouseOut="HideTip('tt51')">marginRight</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.marginBottom" id=link209 onMouseOver="ShowTip(event, 'tt52', 'link209')" onMouseOut="HideTip('tt52')">marginBottom</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Legend.marginLeft" id=link210 onMouseOver="ShowTip(event, 'tt53', 'link210')" onMouseOut="HideTip('tt53')">marginLeft</a></td><td class=SDescription>CSS margin for the legend DOM element. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Legend.escapeHtml" id=link211 onMouseOver="ShowTip(event, 'tt54', 'link211')" onMouseOut="HideTip('tt54')">escapeHtml</a></td><td class=SDescription>True to escape special characters with their html entity equivalents in legend text. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Legend.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote><p>Wether to display the legend on the graph.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.location"></a>location</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'ne'</td></tr></table></blockquote><p>Placement of the legend.&nbsp; one of the compass directions: nw, n, ne, e, se, s, sw, w</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.labels"></a>labels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote><p>Array of labels to use.&nbsp; By default the renderer will look for labels on the series.&nbsp; Labels specified in this array will override labels specified on the series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.showLabels"></a>showLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote><p>true to show the label text on the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.showSwatch"></a>showSwatch</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showSwatches = true</td></tr></table></blockquote><p>true to show the color swatches on the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.placement"></a>placement</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.placement = &quot;insideGrid&quot;</td></tr></table></blockquote><p>&rdquo;insideGrid&rdquo; places legend inside the grid area of the plot.&nbsp; &ldquo;outsideGrid&rdquo; places the legend outside the grid but inside the plot container, shrinking the grid to accomodate the legend.&nbsp; &ldquo;inside&rdquo; synonym for &ldquo;insideGrid&rdquo;, &ldquo;outside&rdquo; places the legend ouside the grid area, but does not shrink the grid which can cause the legend to overflow the plot container.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.xoffset"></a>xoffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xoffset = 0</td></tr></table></blockquote><p>DEPRECATED.&nbsp; Set the margins on the legend using the marginTop, marginLeft, etc. properties or via CSS margin styling of the .jqplot-table-legend class.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.yoffset"></a>yoffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yoffset = 0</td></tr></table></blockquote><p>DEPRECATED.&nbsp; Set the margins on the legend using the marginTop, marginLeft, etc. properties or via CSS margin styling of the .jqplot-table-legend class.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.border"></a>border</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.border</td></tr></table></blockquote><p>css spec for the border around the legend box.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.background"></a>background</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background</td></tr></table></blockquote><p>css spec for the background of the legend box.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.textColor"></a>textColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote><p>css color spec for the legend text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.fontFamily"></a>fontFamily</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote><p>css font-family spec for the legend text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote><p>css font-size spec for the legend text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.rowSpacing"></a>rowSpacing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rowSpacing = '0.5em'</td></tr></table></blockquote><p>css padding-top spec for the rows in the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote><p>renderer specific options passed to the renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.predraw"></a>predraw</h3><div class=CBody><p>Wether to draw the legend before the series or not.&nbsp; Used with series specific legend renderers for pie, donut, mekko charts, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.marginTop"></a>marginTop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginTop = null</td></tr></table></blockquote><p>CSS margin for the legend DOM element.&nbsp; This will set an element CSS style for the margin which will override any style sheet setting.&nbsp; The default will be taken from the stylesheet.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.marginRight"></a>marginRight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginRight = null</td></tr></table></blockquote><p>CSS margin for the legend DOM element.&nbsp; This will set an element CSS style for the margin which will override any style sheet setting.&nbsp; The default will be taken from the stylesheet.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.marginBottom"></a>marginBottom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginBottom = null</td></tr></table></blockquote><p>CSS margin for the legend DOM element.&nbsp; This will set an element CSS style for the margin which will override any style sheet setting.&nbsp; The default will be taken from the stylesheet.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.marginLeft"></a>marginLeft</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginLeft = null</td></tr></table></blockquote><p>CSS margin for the legend DOM element.&nbsp; This will set an element CSS style for the margin which will override any style sheet setting.&nbsp; The default will be taken from the stylesheet.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Legend.escapeHtml"></a>escapeHtml</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote><p>True to escape special characters with their html entity equivalents in legend text.&nbsp; &ldquo;&lt;&rdquo; becomes &amp;lt; and so on, so html tags are not rendered.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Title"></a>Title</h2><div class=CBody><p>Plot Title object.&nbsp; Cannot be instantiated directly, but created by the Plot oject.&nbsp; Title properties can be set or overriden by the options passed in from the user.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>text</td><td class=CDLDescription>text of the title.</td></tr></table><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Title.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Title.text" id=link212 onMouseOver="ShowTip(event, 'tt55', 'link212')" onMouseOut="HideTip('tt55')">text</a></td><td class=SDescription>text of the title;</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Title.show" id=link213 onMouseOver="ShowTip(event, 'tt56', 'link213')" onMouseOut="HideTip('tt56')">show</a></td><td class=SDescription>wether or not to show the title</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Title.fontFamily" id=link214 onMouseOver="ShowTip(event, 'tt57', 'link214')" onMouseOut="HideTip('tt57')">fontFamily</a></td><td class=SDescription>css font-family spec for the text.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Title.fontSize" id=link215 onMouseOver="ShowTip(event, 'tt58', 'link215')" onMouseOut="HideTip('tt58')">fontSize</a></td><td class=SDescription>css font-size spec for the text.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Title.textAlign" id=link216 onMouseOver="ShowTip(event, 'tt59', 'link216')" onMouseOut="HideTip('tt59')">textAlign</a></td><td class=SDescription>css text-align spec for the text.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Title.textColor" id=link217 onMouseOver="ShowTip(event, 'tt60', 'link217')" onMouseOut="HideTip('tt60')">textColor</a></td><td class=SDescription>css color spec for the text.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Title.renderer" id=link218 onMouseOver="ShowTip(event, 'tt61', 'link218')" onMouseOut="HideTip('tt61')">renderer</a></td><td class=SDescription>A class for creating a DOM element for the title, see <a href="jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" class=LClass id=link219 onMouseOver="ShowTip(event, 'tt62', 'link219')" onMouseOut="HideTip('tt62')">$.jqplot.DivTitleRenderer</a>.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Title.rendererOptions" id=link220 onMouseOver="ShowTip(event, 'tt63', 'link220')" onMouseOut="HideTip('tt63')">rendererOptions</a></td><td class=SDescription>renderer specific options passed to the renderer.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Title.escapeHtml" id=link221 onMouseOver="ShowTip(event, 'tt64', 'link221')" onMouseOut="HideTip('tt64')">escapeHtml</a></td><td class=SDescription>True to escape special characters with their html entity equivalents in title text. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Title.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.text"></a>text</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.text = text</td></tr></table></blockquote><p>text of the title;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the title</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.fontFamily"></a>fontFamily</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote><p>css font-family spec for the text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote><p>css font-size spec for the text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.textAlign"></a>textAlign</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textAlign</td></tr></table></blockquote><p>css text-align spec for the text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.textColor"></a>textColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote><p>css color spec for the text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.renderer"></a>renderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.DivTitleRenderer</td></tr></table></blockquote><p>A class for creating a DOM element for the title, see <a href="jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" class=LClass id=link222 onMouseOver="ShowTip(event, 'tt62', 'link222')" onMouseOut="HideTip('tt62')">$.jqplot.DivTitleRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote><p>renderer specific options passed to the renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Title.escapeHtml"></a>escapeHtml</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote><p>True to escape special characters with their html entity equivalents in title text.&nbsp; &ldquo;&lt;&rdquo; becomes &amp;lt; and so on, so html tags are not rendered.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Series"></a>Series</h2><div class=CBody><p>An individual data series object.&nbsp; Cannot be instantiated directly, but created by the Plot oject.&nbsp; Series properties can be set or overriden by the options passed in from the user.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Series.Properties" >Properties</a></td><td class=SDescription>Properties will be assigned from a series array at the top level of the options. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.show" id=link223 onMouseOver="ShowTip(event, 'tt65', 'link223')" onMouseOut="HideTip('tt65')">show</a></td><td class=SDescription>wether or not to draw the series.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.xaxis" id=link224 onMouseOver="ShowTip(event, 'tt66', 'link224')" onMouseOut="HideTip('tt66')">xaxis</a></td><td class=SDescription>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.yaxis" id=link225 onMouseOver="ShowTip(event, 'tt67', 'link225')" onMouseOut="HideTip('tt67')">yaxis</a></td><td class=SDescription>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.renderer" id=link226 onMouseOver="ShowTip(event, 'tt68', 'link226')" onMouseOut="HideTip('tt68')">renderer</a></td><td class=SDescription>A class of a renderer which will draw the series, see <a href="jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" class=LClass id=link227 onMouseOver="ShowTip(event, 'tt69', 'link227')" onMouseOut="HideTip('tt69')">$.jqplot.LineRenderer</a>.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.rendererOptions" id=link228 onMouseOver="ShowTip(event, 'tt70', 'link228')" onMouseOut="HideTip('tt70')">rendererOptions</a></td><td class=SDescription>Options to pass on to the renderer.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.label" id=link229 onMouseOver="ShowTip(event, 'tt71', 'link229')" onMouseOut="HideTip('tt71')">label</a></td><td class=SDescription>Line label to use in the legend.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.showLabel" id=link230 onMouseOver="ShowTip(event, 'tt72', 'link230')" onMouseOut="HideTip('tt72')">showLabel</a></td><td class=SDescription>true to show label for this series in the legend.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.color" id=link231 onMouseOver="ShowTip(event, 'tt73', 'link231')" onMouseOut="HideTip('tt73')">color</a></td><td class=SDescription>css color spec for the series</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.negativeColor" id=link232 onMouseOver="ShowTip(event, 'tt74', 'link232')" onMouseOut="HideTip('tt74')">negativeColor</a></td><td class=SDescription>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.lineWidth" id=link233 onMouseOver="ShowTip(event, 'tt75', 'link233')" onMouseOut="HideTip('tt75')">lineWidth</a></td><td class=SDescription>width of the line in pixels. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.lineJoin" id=link234 onMouseOver="ShowTip(event, 'tt76', 'link234')" onMouseOut="HideTip('tt76')">lineJoin</a></td><td class=SDescription>Canvas lineJoin style between segments of series.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.lineCap" id=link235 onMouseOver="ShowTip(event, 'tt77', 'link235')" onMouseOut="HideTip('tt77')">lineCap</a></td><td class=SDescription>Canvas lineCap style at ends of line.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.linePattern" id=link236 onMouseOver="ShowTip(event, 'tt78', 'link236')" onMouseOut="HideTip('tt78')">linePattern</a></td><td class=SDescription>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.shadowAngle" id=link237 onMouseOver="ShowTip(event, 'tt79', 'link237')" onMouseOut="HideTip('tt79')">shadowAngle</a></td><td class=SDescription>Shadow angle in degrees</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.shadowOffset" id=link238 onMouseOver="ShowTip(event, 'tt80', 'link238')" onMouseOut="HideTip('tt80')">shadowOffset</a></td><td class=SDescription>Shadow offset from line in pixels</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.shadowDepth" id=link239 onMouseOver="ShowTip(event, 'tt81', 'link239')" onMouseOut="HideTip('tt81')">shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.shadowAlpha" id=link240 onMouseOver="ShowTip(event, 'tt82', 'link240')" onMouseOut="HideTip('tt82')">shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.breakOnNull" id=link241 onMouseOver="ShowTip(event, 'tt83', 'link241')" onMouseOut="HideTip('tt83')">breakOnNull</a></td><td class=SDescription>Wether line segments should be be broken at null value. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.markerRenderer" id=link242 onMouseOver="ShowTip(event, 'tt84', 'link242')" onMouseOut="HideTip('tt84')">markerRenderer</a></td><td class=SDescription>A class of a renderer which will draw marker (e.g. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.markerOptions" id=link243 onMouseOver="ShowTip(event, 'tt85', 'link243')" onMouseOut="HideTip('tt85')">markerOptions</a></td><td class=SDescription>renderer specific options to pass to the markerRenderer, see <a href="jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" class=LClass id=link244 onMouseOver="ShowTip(event, 'tt86', 'link244')" onMouseOut="HideTip('tt86')">$.jqplot.MarkerRenderer</a>.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.showLine" id=link245 onMouseOver="ShowTip(event, 'tt87', 'link245')" onMouseOut="HideTip('tt87')">showLine</a></td><td class=SDescription>wether to actually draw the line or not. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.showMarker" id=link246 onMouseOver="ShowTip(event, 'tt88', 'link246')" onMouseOut="HideTip('tt88')">showMarker</a></td><td class=SDescription>wether or not to show the markers at the data points.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.index" id=link247 onMouseOver="ShowTip(event, 'tt89', 'link247')" onMouseOut="HideTip('tt89')">index</a></td><td class=SDescription>0 based index of this series in the plot series array.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.fill" id=link248 onMouseOver="ShowTip(event, 'tt90', 'link248')" onMouseOut="HideTip('tt90')">fill</a></td><td class=SDescription>true or false, wether to fill under lines or in bars. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.fillColor" id=link249 onMouseOver="ShowTip(event, 'tt91', 'link249')" onMouseOut="HideTip('tt91')">fillColor</a></td><td class=SDescription>CSS color spec to use for fill under line. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.fillAlpha" id=link250 onMouseOver="ShowTip(event, 'tt92', 'link250')" onMouseOut="HideTip('tt92')">fillAlpha</a></td><td class=SDescription>Alpha transparency to apply to the fill under the line. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.fillAndStroke" id=link251 onMouseOver="ShowTip(event, 'tt93', 'link251')" onMouseOut="HideTip('tt93')">fillAndStroke</a></td><td class=SDescription>If true will stroke the line (with color this.color) as well as fill under it. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.disableStack" id=link252 onMouseOver="ShowTip(event, 'tt94', 'link252')" onMouseOut="HideTip('tt94')">disableStack</a></td><td class=SDescription>true to not stack this series with other series in the plot. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.neighborThreshold" id=link253 onMouseOver="ShowTip(event, 'tt95', 'link253')" onMouseOut="HideTip('tt95')">neighborThreshold</a></td><td class=SDescription>how close or far (in pixels) the cursor must be from a point marker to detect the point.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.fillToZero" id=link254 onMouseOver="ShowTip(event, 'tt96', 'link254')" onMouseOut="HideTip('tt96')">fillToZero</a></td><td class=SDescription>true will force bar and filled series to fill toward zero on the fill Axis.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.fillToValue" id=link255 onMouseOver="ShowTip(event, 'tt97', 'link255')" onMouseOut="HideTip('tt97')">fillToValue</a></td><td class=SDescription>fill a filled series to this value on the fill axis. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Series.fillAxis" id=link256 onMouseOver="ShowTip(event, 'tt98', 'link256')" onMouseOut="HideTip('tt98')">fillAxis</a></td><td class=SDescription>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Series.useNegativeColors" id=link257 onMouseOver="ShowTip(event, 'tt99', 'link257')" onMouseOut="HideTip('tt99')">useNegativeColors</a></td><td class=SDescription>true to color negative values differently in filled and bar charts.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Series.Properties"></a>Properties</h3><div class=CBody><p>Properties will be assigned from a series array at the top level of the options.&nbsp; If you had two series and wanted to change the color and line width of the first and set the second to use the secondary y axis with no shadow and supply custom labels for each:</p><blockquote><pre>{
- series:[
- {color: '#ff4466', lineWidth: 5, label:'good line'},
- {yaxis: 'y2axis', shadow: false, label:'bad line'}
- ]
-}</pre></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to draw the series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.xaxis"></a>xaxis</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xaxis = 'xaxis'</td></tr></table></blockquote><p>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.yaxis"></a>yaxis</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yaxis = 'yaxis'</td></tr></table></blockquote><p>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.renderer"></a>renderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LineRenderer</td></tr></table></blockquote><p>A class of a renderer which will draw the series, see <a href="jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" class=LClass id=link258 onMouseOver="ShowTip(event, 'tt69', 'link258')" onMouseOut="HideTip('tt69')">$.jqplot.LineRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote><p>Options to pass on to the renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote><p>Line label to use in the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.showLabel"></a>showLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote><p>true to show label for this series in the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.color"></a>color</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote><p>css color spec for the series</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.negativeColor"></a>negativeColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.negativeColor</td></tr></table></blockquote><p>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2.5</td></tr></table></blockquote><p>width of the line in pixels.&nbsp; May have different meanings depending on renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.lineJoin"></a>lineJoin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'round'</td></tr></table></blockquote><p>Canvas lineJoin style between segments of series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.lineCap"></a>lineCap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote><p>Canvas lineCap style at ends of line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.linePattern"></a>linePattern</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote><p>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo; characters such as &lsquo;.-.&rsquo; or a numerical array like [draw, skip, draw, skip, ...] such as [1, 10] to draw a dotted line, [1, 10, 20, 10] to draw a dot-dash line, and so on.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.shadowAngle"></a>shadowAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote><p>Shadow angle in degrees</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.25</td></tr></table></blockquote><p>Shadow offset from line in pixels</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote><p>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.1'</td></tr></table></blockquote><p>Alpha channel transparency of shadow.&nbsp; 0 = transparent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.breakOnNull"></a>breakOnNull</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakOnNull = false</td></tr></table></blockquote><p>Wether line segments should be be broken at null value.&nbsp; False will join point on either side of line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.markerRenderer"></a>markerRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = $.jqplot.MarkerRenderer</td></tr></table></blockquote><p>A class of a renderer which will draw marker (e.g. circle, square, ...) at the data points, see <a href="jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" class=LClass id=link259 onMouseOver="ShowTip(event, 'tt86', 'link259')" onMouseOut="HideTip('tt86')">$.jqplot.MarkerRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.markerOptions"></a>markerOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerOptions = {}</td></tr></table></blockquote><p>renderer specific options to pass to the markerRenderer, see <a href="jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" class=LClass id=link260 onMouseOver="ShowTip(event, 'tt86', 'link260')" onMouseOut="HideTip('tt86')">$.jqplot.MarkerRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.showLine"></a>showLine</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLine = true</td></tr></table></blockquote><p>wether to actually draw the line or not.&nbsp; Series will still be renderered, even if no line is drawn.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.showMarker"></a>showMarker</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote><p>wether or not to show the markers at the data points.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.index"></a>index</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.index</td></tr></table></blockquote><p>0 based index of this series in the plot series array.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote><p>true or false, wether to fill under lines or in bars.&nbsp; May not be implemented in all renderers.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillColor"></a>fillColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillColor</td></tr></table></blockquote><p>CSS color spec to use for fill under line.&nbsp; Defaults to line color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillAlpha"></a>fillAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAlpha</td></tr></table></blockquote><p>Alpha transparency to apply to the fill under the line.&nbsp; Use this to adjust alpha separate from fill color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillAndStroke"></a>fillAndStroke</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAndStroke = false</td></tr></table></blockquote><p>If true will stroke the line (with color this.color) as well as fill under it.&nbsp; Applies only when fill is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.disableStack"></a>disableStack</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableStack = false</td></tr></table></blockquote><p>true to not stack this series with other series in the plot.&nbsp; To render properly, non-stacked series must come after any stacked series in the plot&rsquo;s data series array.&nbsp; So, the plot&rsquo;s data series array would look like:</p><blockquote><pre>[stackedSeries1, stackedSeries2, ..., nonStackedSeries1, nonStackedSeries2, ...]</pre></blockquote><p>disableStack will put a gap in the stacking order of series, and subsequent stacked series will not fill down through the non-stacked series and will most likely not stack properly on top of the non-stacked series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.neighborThreshold"></a>neighborThreshold</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.neighborThreshold = 4</td></tr></table></blockquote><p>how close or far (in pixels) the cursor must be from a point marker to detect the point.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillToZero"></a>fillToZero</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToZero = false</td></tr></table></blockquote><p>true will force bar and filled series to fill toward zero on the fill Axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillToValue"></a>fillToValue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToValue = 0</td></tr></table></blockquote><p>fill a filled series to this value on the fill axis.&nbsp; Works in conjunction with fillToZero, so that must be true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.fillAxis"></a>fillAxis</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAxis = 'y'</td></tr></table></blockquote><p>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;.&nbsp; Which axis to fill the line toward if fillToZero is true.&nbsp; &lsquo;y&rsquo; means fill up/down to 0 on the y axis for this series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Series.useNegativeColors"></a>useNegativeColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useNegativeColors = true</td></tr></table></blockquote><p>true to color negative values differently in filled and bar charts.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Grid"></a>Grid</h2><div class=CBody><p>Object representing the grid on which the plot is drawn.&nbsp; The grid in this context is the area bounded by the axes, the area which will contain the series.&nbsp; Note, the series are drawn on their own canvas.&nbsp; The Grid object cannot be instantiated directly, but is created by the Plot oject.&nbsp; Grid properties can be set or overriden by the options passed in from the user.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Grid.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.drawGridlines" id=link261 onMouseOver="ShowTip(event, 'tt100', 'link261')" onMouseOut="HideTip('tt100')">drawGridlines</a></td><td class=SDescription>wether to draw the gridlines on the plot.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.gridLineColor" id=link262 onMouseOver="ShowTip(event, 'tt101', 'link262')" onMouseOut="HideTip('tt101')">gridLineColor</a></td><td class=SDescription>color of the grid lines.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.gridLineWidth" id=link263 onMouseOver="ShowTip(event, 'tt102', 'link263')" onMouseOut="HideTip('tt102')">gridLineWidth</a></td><td class=SDescription>width of the grid lines.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.background" id=link264 onMouseOver="ShowTip(event, 'tt103', 'link264')" onMouseOut="HideTip('tt103')">background</a></td><td class=SDescription>css spec for the background color.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.borderColor" id=link265 onMouseOver="ShowTip(event, 'tt104', 'link265')" onMouseOut="HideTip('tt104')">borderColor</a></td><td class=SDescription>css spec for the color of the grid border.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.borderWidth" id=link266 onMouseOver="ShowTip(event, 'tt105', 'link266')" onMouseOut="HideTip('tt105')">borderWidth</a></td><td class=SDescription>width of the border in pixels.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.drawBorder" id=link267 onMouseOver="ShowTip(event, 'tt106', 'link267')" onMouseOut="HideTip('tt106')">drawBorder</a></td><td class=SDescription>True to draw border around grid.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.shadow" id=link268 onMouseOver="ShowTip(event, 'tt107', 'link268')" onMouseOut="HideTip('tt107')">shadow</a></td><td class=SDescription>wether to show a shadow behind the grid.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.shadowAngle" id=link269 onMouseOver="ShowTip(event, 'tt108', 'link269')" onMouseOut="HideTip('tt108')">shadowAngle</a></td><td class=SDescription>shadow angle in degrees</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.shadowOffset" id=link270 onMouseOver="ShowTip(event, 'tt109', 'link270')" onMouseOut="HideTip('tt109')">shadowOffset</a></td><td class=SDescription>Offset of each shadow stroke from the border in pixels</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.shadowWidth" id=link271 onMouseOver="ShowTip(event, 'tt110', 'link271')" onMouseOut="HideTip('tt110')">shadowWidth</a></td><td class=SDescription>width of the stoke for the shadow</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.shadowDepth" id=link272 onMouseOver="ShowTip(event, 'tt111', 'link272')" onMouseOut="HideTip('tt111')">shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.shadowColor" id=link273 onMouseOver="ShowTip(event, 'tt112', 'link273')" onMouseOut="HideTip('tt112')">shadowColor</a></td><td class=SDescription>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.shadowAlpha" id=link274 onMouseOver="ShowTip(event, 'tt113', 'link274')" onMouseOut="HideTip('tt113')">shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Grid.renderer" id=link275 onMouseOver="ShowTip(event, 'tt114', 'link275')" onMouseOut="HideTip('tt114')">renderer</a></td><td class=SDescription>Instance of a renderer which will actually render the grid, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link276 onMouseOver="ShowTip(event, 'tt115', 'link276')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Grid.rendererOptions" id=link277 onMouseOver="ShowTip(event, 'tt116', 'link277')" onMouseOut="HideTip('tt116')">rendererOptions</a></td><td class=SDescription>Options to pass on to the renderer, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link278 onMouseOver="ShowTip(event, 'tt115', 'link278')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Grid.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.drawGridlines"></a>drawGridlines</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawGridlines = true</td></tr></table></blockquote><p>wether to draw the gridlines on the plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.gridLineColor"></a>gridLineColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineColor = '#cccccc'</td></tr></table></blockquote><p>color of the grid lines.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.gridLineWidth"></a>gridLineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineWidth = 1.0</td></tr></table></blockquote><p>width of the grid lines.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.background"></a>background</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = '#fffdf6'</td></tr></table></blockquote><p>css spec for the background color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.borderColor"></a>borderColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = '#999999'</td></tr></table></blockquote><p>css spec for the color of the grid border.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.borderWidth"></a>borderWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = 2.0</td></tr></table></blockquote><p>width of the border in pixels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.drawBorder"></a>drawBorder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBorder = true</td></tr></table></blockquote><p>True to draw border around grid.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadow"></a>shadow</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote><p>wether to show a shadow behind the grid.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowAngle"></a>shadowAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote><p>shadow angle in degrees</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.5</td></tr></table></blockquote><p>Offset of each shadow stroke from the border in pixels</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowWidth"></a>shadowWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowWidth = 3</td></tr></table></blockquote><p>width of the stoke for the shadow</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote><p>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowColor"></a>shadowColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowColor = null</td></tr></table></blockquote><p>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote><p>Alpha channel transparency of shadow.&nbsp; 0 = transparent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.renderer"></a>renderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.CanvasGridRenderer</td></tr></table></blockquote><p>Instance of a renderer which will actually render the grid, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link279 onMouseOver="ShowTip(event, 'tt115', 'link279')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Grid.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote><p>Options to pass on to the renderer, see <a href="jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" class=LClass id=link280 onMouseOver="ShowTip(event, 'tt115', 'link280')" onMouseOut="HideTip('tt115')">$.jqplot.CanvasGridRenderer</a>.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="jqPlot"></a>jqPlot</h2><div class=CBody><p>Plot object returned by call to $.jqplot.&nbsp; Handles parsing user options, creating sub objects (Axes, legend, title, series) and rendering the plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#jqPlot.Properties" >Properties</a></td><td class=SDescription>These properties are specified at the top of the options object like so:</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.animate" id=link281 onMouseOver="ShowTip(event, 'tt117', 'link281')" onMouseOut="HideTip('tt117')">animate</a></td><td class=SDescription>True to animate the series on initial plot draw (renderer dependent). </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.animateReplot" id=link282 onMouseOver="ShowTip(event, 'tt118', 'link282')" onMouseOut="HideTip('tt118')">animateReplot</a></td><td class=SDescription>True to animate series after a call to the replot() method. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.axes" id=link283 onMouseOver="ShowTip(event, 'tt119', 'link283')" onMouseOut="HideTip('tt119')">axes</a></td><td class=SDescription>up to 4 axes are supported, each with it&rsquo;s own options, See <a href="#Axis" class=LClass id=link284 onMouseOver="ShowTip(event, 'tt120', 'link284')" onMouseOut="HideTip('tt120')">Axis</a> for axis specific options.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.data" id=link285 onMouseOver="ShowTip(event, 'tt121', 'link285')" onMouseOut="HideTip('tt121')">data</a></td><td class=SDescription>user&rsquo;s data. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.dataRenderer" id=link286 onMouseOver="ShowTip(event, 'tt122', 'link286')" onMouseOut="HideTip('tt122')">dataRenderer</a></td><td class=SDescription>A callable which can be used to preprocess data passed into the plot. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.dataRendererOptions" id=link287 onMouseOver="ShowTip(event, 'tt123', 'link287')" onMouseOut="HideTip('tt123')">dataRendererOptions</a></td><td class=SDescription>Options that will be passed to the dataRenderer. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.axesDefaults" >axesDefaults</a></td><td class=SDescription>default options that will be applied to all axes. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.seriesDefaults" id=link288 onMouseOver="ShowTip(event, 'tt124', 'link288')" onMouseOut="HideTip('tt124')">seriesDefaults</a></td><td class=SDescription>default options that will be applied to all series. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.defaultAxisStart" id=link289 onMouseOver="ShowTip(event, 'tt125', 'link289')" onMouseOut="HideTip('tt125')">defaultAxisStart</a></td><td class=SDescription>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.fillBetween" id=link290 onMouseOver="ShowTip(event, 'tt126', 'link290')" onMouseOut="HideTip('tt126')">fillBetween</a></td><td class=SDescription>Fill between 2 line series in a plot. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.fontSize" id=link291 onMouseOver="ShowTip(event, 'tt127', 'link291')" onMouseOut="HideTip('tt127')">fontSize</a></td><td class=SDescription>css spec for the font-size attribute. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.grid" id=link292 onMouseOver="ShowTip(event, 'tt128', 'link292')" onMouseOut="HideTip('tt128')">grid</a></td><td class=SDescription>See <a href="#Grid" class=LClass id=link293 onMouseOver="ShowTip(event, 'tt129', 'link293')" onMouseOut="HideTip('tt129')">Grid</a> for grid specific options.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.legend" id=link294 onMouseOver="ShowTip(event, 'tt130', 'link294')" onMouseOut="HideTip('tt130')">legend</a></td><td class=SDescription>see &lt;$.jqplot.TableLegendRenderer&gt;</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.noDataIndicator" >noDataIndicator</a></td><td class=SDescription>Options to set up a mock plot with a data loading indicator if no data is specified.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.series" id=link295 onMouseOver="ShowTip(event, 'tt131', 'link295')" onMouseOut="HideTip('tt131')">series</a></td><td class=SDescription>Array of series object options. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.seriesColors" id=link296 onMouseOver="ShowTip(event, 'tt132', 'link296')" onMouseOut="HideTip('tt132')">seriesColors</a></td><td class=SDescription>Ann array of CSS color specifications that will be applied, in order, to the series in the plot. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.sortData" id=link297 onMouseOver="ShowTip(event, 'tt133', 'link297')" onMouseOut="HideTip('tt133')">sortData</a></td><td class=SDescription>false to not sort the data passed in by the user. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#jqPlot.stackSeries" id=link298 onMouseOver="ShowTip(event, 'tt134', 'link298')" onMouseOut="HideTip('tt134')">stackSeries</a></td><td class=SDescription>true or false, creates a stack or &ldquo;mountain&rdquo; plot. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.title" id=link299 onMouseOver="ShowTip(event, 'tt135', 'link299')" onMouseOut="HideTip('tt135')">title</a></td><td class=SDescription>Title object. </td></tr><tr class="SGroup"><td class=SEntry><a href="#jqPlot.methods" >methods</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.init" id=link300 onMouseOver="ShowTip(event, 'tt136', 'link300')" onMouseOut="HideTip('tt136')">init</a></td><td class=SDescription>sets the plot target, checks data and applies user options to plot.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.resetAxesScale" id=link301 onMouseOver="ShowTip(event, 'tt137', 'link301')" onMouseOut="HideTip('tt137')">resetAxesScale</a></td><td class=SDescription>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.reInitialize" id=link302 onMouseOver="ShowTip(event, 'tt138', 'link302')" onMouseOut="HideTip('tt138')">reInitialize</a></td><td class=SDescription>reinitialize plot for replotting. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.quickInit" id=link303 onMouseOver="ShowTip(event, 'tt139', 'link303')" onMouseOut="HideTip('tt139')">quickInit</a></td><td class=SDescription>Quick reinitialization plot for replotting. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.destroy" id=link304 onMouseOver="ShowTip(event, 'tt140', 'link304')" onMouseOut="HideTip('tt140')">destroy</a></td><td class=SDescription>Releases all resources occupied by the plot</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.replot" id=link305 onMouseOver="ShowTip(event, 'tt141', 'link305')" onMouseOut="HideTip('tt141')">replot</a></td><td class=SDescription>Does a reinitialization of the plot followed by a redraw. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.redraw" id=link306 onMouseOver="ShowTip(event, 'tt142', 'link306')" onMouseOut="HideTip('tt142')">redraw</a></td><td class=SDescription>Empties the plot target div and redraws the plot. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.draw" id=link307 onMouseOver="ShowTip(event, 'tt143', 'link307')" onMouseOut="HideTip('tt143')">draw</a></td><td class=SDescription>Draws all elements of the plot into the container. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.drawSeries" id=link308 onMouseOver="ShowTip(event, 'tt144', 'link308')" onMouseOut="HideTip('tt144')">drawSeries</a></td><td class=SDescription>Redraws all or just one series on the plot. </td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.moveSeriesToFront" id=link309 onMouseOver="ShowTip(event, 'tt145', 'link309')" onMouseOut="HideTip('tt145')">moveSeriesToFront</a></td><td class=SDescription>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.moveSeriesToBack" id=link310 onMouseOver="ShowTip(event, 'tt146', 'link310')" onMouseOut="HideTip('tt146')">moveSeriesToBack</a></td><td class=SDescription>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</td></tr><tr class="SFunction SIndent1"><td class=SEntry><a href="#jqPlot.restorePreviousSeriesOrder" id=link311 onMouseOver="ShowTip(event, 'tt147', 'link311')" onMouseOut="HideTip('tt147')">restorePreviousSeriesOrder</a></td><td class=SDescription>This method requires jQuery 1.4+ Restore the series canvas order to its previous state. </td></tr><tr class="SFunction SIndent1 SMarked"><td class=SEntry><a href="#jqPlot.restoreOriginalSeriesOrder" id=link312 onMouseOver="ShowTip(event, 'tt148', 'link312')" onMouseOut="HideTip('tt148')">restoreOriginalSeriesOrder</a></td><td class=SDescription>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="jqPlot.Properties"></a>Properties</h3><div class=CBody><p>These properties are specified at the top of the options object like so:</p><blockquote><pre>{
- axesDefaults:{min:0},
- series:[{color:'#6633dd'}],
- title: 'A Plot'
-}</pre></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.animate"></a>animate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animate = false</td></tr></table></blockquote><p>True to animate the series on initial plot draw (renderer dependent).&nbsp; Actual animation functionality must be supported in the renderer.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.animateReplot"></a>animateReplot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animateReplot = false</td></tr></table></blockquote><p>True to animate series after a call to the replot() method.&nbsp; Use with caution!&nbsp; Replots can happen very frequently under certain circumstances (e.g. resizing, dragging points) and animation in these situations can cause problems.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.axes"></a>axes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.axes = {xaxis: new Axis('xaxis'), yaxis: new Axis('yaxis'), x2axis: new Axis('x2axis'), y2axis: new Axis('y2axis'), y3axis: new Axis('y3axis'), y4axis: new Axis('y4axis'), y5axis: new Axis('y5axis'), y6axis: new Axis('y6axis'), y7axis: new Axis('y7axis'), y8axis: new Axis('y8axis'), y9axis: new Axis('y9axis'), yMidAxis: new Axis('yMidAxis')}</td></tr></table></blockquote><p>up to 4 axes are supported, each with it&rsquo;s own options, See <a href="#Axis" class=LClass id=link313 onMouseOver="ShowTip(event, 'tt120', 'link313')" onMouseOut="HideTip('tt120')">Axis</a> for axis specific options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.data"></a>data</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.data = []</td></tr></table></blockquote><p>user&rsquo;s data.&nbsp; Data should <b>NOT</b> be specified in the options object, but be passed in as the second argument to the $.jqplot() function.&nbsp; The data property is described here soley for reference.&nbsp; The data should be in the form of an array of 2D or 1D arrays like</p><blockquote><pre>[ [[x1, y1], [x2, y2],...], [y1, y2, ...] ].</pre></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.dataRenderer"></a>dataRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRenderer</td></tr></table></blockquote><p>A callable which can be used to preprocess data passed into the plot.&nbsp; Will be called with 2 arguments, the plot data and a reference to the plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.dataRendererOptions"></a>dataRendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRendererOptions</td></tr></table></blockquote><p>Options that will be passed to the dataRenderer.&nbsp; Can be of any type.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.axesDefaults"></a>axesDefaults</h3><div class=CBody><p>default options that will be applied to all axes. see <a href="#Axis" class=LClass id=link314 onMouseOver="ShowTip(event, 'tt120', 'link314')" onMouseOut="HideTip('tt120')">Axis</a> for axes options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.seriesDefaults"></a>seriesDefaults</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>seriesDefaults: {}, series:[] }</td></tr></table></blockquote><p>default options that will be applied to all series. see <a href="#Series" class=LClass id=link315 onMouseOver="ShowTip(event, 'tt152', 'link315')" onMouseOut="HideTip('tt152')">Series</a> for series options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.defaultAxisStart"></a>defaultAxisStart</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.defaultAxisStart = 1</td></tr></table></blockquote><p>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot.&nbsp; This is the default starting value for the missing x or y value.&nbsp; The added data will be a monotonically increasing series (e.g.&nbsp; [1, 2, 3, ...]) starting at this value.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.fillBetween"></a>fillBetween</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillBetween = { series1: null, series2: null, color: null, baseSeries: 0, fill: true }</td></tr></table></blockquote><p>Fill between 2 line series in a plot.&nbsp; Options object: { series1: first index (0 based) of series in fill series2: second index (0 based) of series in fill color: color of fill [default fillColor of series1] baseSeries: fill will be drawn below this series (0 based index) fill: false to turn off fill [default true].&nbsp; }</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote><p>css spec for the font-size attribute.&nbsp; Default for the entire plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.grid"></a>grid</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.grid = new Grid()</td></tr></table></blockquote><p>See <a href="#Grid" class=LClass id=link316 onMouseOver="ShowTip(event, 'tt129', 'link316')" onMouseOut="HideTip('tt129')">Grid</a> for grid specific options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.legend"></a>legend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.legend = new Legend()</td></tr></table></blockquote><p>see &lt;$.jqplot.TableLegendRenderer&gt;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.noDataIndicator"></a>noDataIndicator</h3><div class=CBody><p>Options to set up a mock plot with a data loading indicator if no data is specified.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.series"></a>series</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.series = []</td></tr></table></blockquote><p>Array of series object options. see <a href="#Series" class=LClass id=link317 onMouseOver="ShowTip(event, 'tt152', 'link317')" onMouseOut="HideTip('tt152')">Series</a> for series specific options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.seriesColors"></a>seriesColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesColors = $.jqplot.config.defaultColors</td></tr></table></blockquote><p>Ann array of CSS color specifications that will be applied, in order, to the series in the plot.&nbsp; Colors will wrap around so, if their are more series than colors, colors will be reused starting at the beginning.&nbsp; For pie charts, this specifies the colors of the slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.sortData"></a>sortData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortData = true</td></tr></table></blockquote><p>false to not sort the data passed in by the user.&nbsp; Many bar, stakced and other graphs as well as many plugins depend on having sorted data.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.stackSeries"></a>stackSeries</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackSeries = false</td></tr></table></blockquote><p>true or false, creates a stack or &ldquo;mountain&rdquo; plot.&nbsp; Not all series renderers may implement this option.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="jqPlot.title"></a>title</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.title = new Title()</td></tr></table></blockquote><p>Title object.&nbsp; See <a href="#Title" class=LClass id=link318 onMouseOver="ShowTip(event, 'tt153', 'link318')" onMouseOut="HideTip('tt153')">Title</a> for specific options.&nbsp; As a shortcut, you can specify the title option as just a string like: title: &lsquo;My Plot&rsquo; and this will create a new title object with the specified text.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="jqPlot.methods"></a>methods</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.init"></a>init</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.init = function(</td><td class=PParameter nowrap>target,</td></tr><tr><td></td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>sets the plot target, checks data and applies user options to plot.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.resetAxesScale"></a>resetAxesScale</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.resetAxesScale = function(</td><td class=PParameter nowrap>axes,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>axes</td><td class=CDLDescription>Boolean to reset or not reset all axes or an array or object of axis names to reset.</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.reInitialize"></a>reInitialize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.reInitialize = function (</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>opts</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>reinitialize plot for replotting. not called directly.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.quickInit"></a>quickInit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.quickInit = function ()</td></tr></table></blockquote><p>Quick reinitialization plot for replotting.&nbsp; Does not parse options ore recreate axes and series. not called directly.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.destroy"></a>destroy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.destroy = function()</td></tr></table></blockquote><p>Releases all resources occupied by the plot</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.replot"></a>replot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.replot = function(</td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Does a reinitialization of the plot followed by a redraw.&nbsp; Method could be used to interactively change plot characteristics and then replot.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>options</td><td class=CDLDescription>Options used for replotting.</td></tr></table><h4 class=CHeading>Properties</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>clear</td><td class=CDLDescription>false to not clear (empty) the plot container before replotting (default: true).</td></tr><tr><td class=CDLEntry>resetAxes</td><td class=CDLDescription>true to reset all axes min, max, numberTicks and tickInterval setting so axes will rescale themselves. optionally pass in list of axes to reset (e.g.&nbsp; [&lsquo;xaxis&rsquo;, &lsquo;y2axis&rsquo;]) (default: false).</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.redraw"></a>redraw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.redraw = function(</td><td class=PParameter nowrap>clear</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Empties the plot target div and redraws the plot.&nbsp; This enables plot data and properties to be changed and then to comletely clear the plot and redraw. redraw <b>will not</b> reinitialize any plot elements.&nbsp; That is, axes will not be autoscaled and defaults will not be reapplied to any plot elements.&nbsp; redraw is used primarily with zooming.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>clear</td><td class=CDLDescription>false to not clear (empty) the plot container before redrawing (default: true).</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.draw = function()</td></tr></table></blockquote><p>Draws all elements of the plot into the container.&nbsp; Does not clear the container before drawing.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.drawSeries"></a>drawSeries</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.drawSeries = function(</td><td class=PParameter nowrap>options,</td></tr><tr><td></td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Redraws all or just one series on the plot.&nbsp; No axis scaling is performed and no other elements on the plot are redrawn. options is an options object to pass on to the series renderers.&nbsp; It can be an empty object {}.&nbsp; idx is the series index to redraw if only one series is to be redrawn.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.moveSeriesToFront"></a>moveSeriesToFront</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToFront = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases.&nbsp; This effectively &ldquo;draws&rdquo; the specified series on top of all other series, although it is performed through DOM manipulation, no redrawing is performed.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>idx</td><td class=CDLDescription>0 based index of the series to move.&nbsp; This will be the index of the series as it was first passed into the jqplot function.</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.moveSeriesToBack"></a>moveSeriesToBack</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToBack = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>idx</td><td class=CDLDescription>0 based index of the series to move.&nbsp; This will be the index of the series as it was first passed into the jqplot function.</td></tr></table></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.restorePreviousSeriesOrder"></a>restorePreviousSeriesOrder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restorePreviousSeriesOrder = function ()</td></tr></table></blockquote><p>This method requires jQuery 1.4+ Restore the series canvas order to its previous state.&nbsp; Useful to put a series back where it belongs after moving it to the front.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="jqPlot.restoreOriginalSeriesOrder"></a>restoreOriginalSeriesOrder</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restoreOriginalSeriesOrder = function ()</td></tr></table></blockquote><p>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile id=MSelected>jqPlot Charts</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([4, 2], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CSection><b>This document is out of date. </div></div><div class=CToolTip id="tt2"><div class=CSection>This document will help you understand how jqPlot&rsquo;s options relate to the API documentation and the jqPlot object itself. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the axis on the graph.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickRenderer = $.jqplot.AxisTickRenderer</td></tr></table></blockquote>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer.</div></div><div class=CToolTip id="tt5"><div class=CClass>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickOptions = {}</td></tr></table></blockquote>Options that will be passed to the tickRenderer, see $.jqplot.AxisTickRenderer options.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>A class of a rendering engine for creating an axis label.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelOptions = {}</td></tr></table></blockquote>Options passed to the label renderer.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>Label for the axis</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show the axis label.</div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min = null</td></tr></table></blockquote>minimum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max = null</td></tr></table></blockquote>maximum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscale = false</td></tr></table></blockquote>DEPRECATED the default scaling algorithm produces superior results.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pad = 1.2</td></tr></table></blockquote>Padding to extend the range above and below the data bounds. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMax = null</td></tr></table></blockquote>Padding to extend the range above data bounds. </div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMin = null</td></tr></table></blockquote>Padding to extend the range below data bounds. </div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis. </div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberTicks</td></tr></table></blockquote>Desired number of ticks. </div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInterval</td></tr></table></blockquote>number of units between ticks. </div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LinearAxisRenderer</td></tr></table></blockquote>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options. </div></div><div class=CToolTip id="tt22"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>Wether to show the ticks (both marks and labels) or not. </div></div><div class=CToolTip id="tt23"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickMarks = true</td></tr></table></blockquote>Wether to show the tick marks (line crossing grid) or not. </div></div><div class=CToolTip id="tt24"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMinorTicks = true</td></tr></table></blockquote>Wether or not to show minor ticks. </div></div><div class=CToolTip id="tt25"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorGridlines = true</td></tr></table></blockquote>True to draw gridlines for major axis ticks.</div></div><div class=CToolTip id="tt26"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorGridlines = false</td></tr></table></blockquote>True to draw gridlines for minor ticks.</div></div><div class=CToolTip id="tt27"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for major axis ticks.</div></div><div class=CToolTip id="tt28"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for minor ticks. </div></div><div class=CToolTip id="tt29"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useSeriesColor = false</td></tr></table></blockquote>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</div></div><div class=CToolTip id="tt30"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = null</td></tr></table></blockquote>width of line stroked at the border of the axis. </div></div><div class=CToolTip id="tt31"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the border adjacent to the axis. </div></div><div class=CToolTip id="tt32"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.scaleToHiddenSeries = false</td></tr></table></blockquote>True to include hidden series when computing axes bounds and scaling.</div></div><div class=CToolTip id="tt33"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.syncTicks = null</td></tr></table></blockquote>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up. </div></div><div class=CToolTip id="tt34"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 75</td></tr></table></blockquote>Approximate pixel spacing between ticks on graph. </div></div><div class=CToolTip id="tt35"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the legend on the graph.</div></div><div class=CToolTip id="tt36"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'ne'</td></tr></table></blockquote>Placement of the legend. </div></div><div class=CToolTip id="tt37"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>Array of labels to use. </div></div><div class=CToolTip id="tt38"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>true to show the label text on the legend.</div></div><div class=CToolTip id="tt39"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showSwatches = true</td></tr></table></blockquote>true to show the color swatches on the legend.</div></div><div class=CToolTip id="tt40"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.placement = &quot;insideGrid&quot;</td></tr></table></blockquote>&ldquo;insideGrid&rdquo; places legend inside the grid area of the plot. </div></div><div class=CToolTip id="tt41"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt42"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt43"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.border</td></tr></table></blockquote>css spec for the border around the legend box.</div></div><div class=CToolTip id="tt44"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background</td></tr></table></blockquote>css spec for the background of the legend box.</div></div><div class=CToolTip id="tt45"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the legend text.</div></div><div class=CToolTip id="tt46"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the legend text.</div></div><div class=CToolTip id="tt47"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the legend text.</div></div><div class=CToolTip id="tt48"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rowSpacing = '0.5em'</td></tr></table></blockquote>css padding-top spec for the rows in the legend.</div></div><div class=CToolTip id="tt49"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt50"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginTop = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt51"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginRight = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt52"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginBottom = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt53"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginLeft = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt54"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in legend text. </div></div><div class=CToolTip id="tt55"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.text = text</td></tr></table></blockquote>text of the title;</div></div><div class=CToolTip id="tt56"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the title</div></div><div class=CToolTip id="tt57"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the text.</div></div><div class=CToolTip id="tt58"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the text.</div></div><div class=CToolTip id="tt59"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textAlign</td></tr></table></blockquote>css text-align spec for the text.</div></div><div class=CToolTip id="tt60"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the text.</div></div><div class=CToolTip id="tt61"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.DivTitleRenderer</td></tr></table></blockquote>A class for creating a DOM element for the title, see $.jqplot.DivTitleRenderer.</div></div><div class=CToolTip id="tt62"><div class=CClass>The default title renderer for jqPlot. </div></div><div class=CToolTip id="tt63"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt64"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in title text. </div></div><div class=CToolTip id="tt65"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to draw the series.</div></div><div class=CToolTip id="tt66"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xaxis = 'xaxis'</td></tr></table></blockquote>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</div></div><div class=CToolTip id="tt67"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yaxis = 'yaxis'</td></tr></table></blockquote>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</div></div><div class=CToolTip id="tt68"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LineRenderer</td></tr></table></blockquote>A class of a renderer which will draw the series, see $.jqplot.LineRenderer.</div></div><div class=CToolTip id="tt69"><div class=CClass>The default line renderer for jqPlot, this class has no options beyond the Series class. </div></div><div class=CToolTip id="tt70"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer.</div></div><div class=CToolTip id="tt71"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Line label to use in the legend.</div></div><div class=CToolTip id="tt72"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show label for this series in the legend.</div></div><div class=CToolTip id="tt73"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>css color spec for the series</div></div><div class=CToolTip id="tt74"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.negativeColor</td></tr></table></blockquote>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</div></div><div class=CToolTip id="tt75"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2.5</td></tr></table></blockquote>width of the line in pixels. </div></div><div class=CToolTip id="tt76"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'round'</td></tr></table></blockquote>Canvas lineJoin style between segments of series.</div></div><div class=CToolTip id="tt77"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>Canvas lineCap style at ends of line.</div></div><div class=CToolTip id="tt78"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt79"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt80"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.25</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt81"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt82"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.1'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt83"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakOnNull = false</td></tr></table></blockquote>Wether line segments should be be broken at null value. </div></div><div class=CToolTip id="tt84"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = $.jqplot.MarkerRenderer</td></tr></table></blockquote>A class of a renderer which will draw marker (e.g. </div></div><div class=CToolTip id="tt85"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerOptions = {}</td></tr></table></blockquote>renderer specific options to pass to the markerRenderer, see $.jqplot.MarkerRenderer.</div></div><div class=CToolTip id="tt86"><div class=CClass>The default jqPlot marker renderer, rendering the points on the line.</div></div><div class=CToolTip id="tt87"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLine = true</td></tr></table></blockquote>wether to actually draw the line or not. </div></div><div class=CToolTip id="tt88"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>wether or not to show the markers at the data points.</div></div><div class=CToolTip id="tt89"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.index</td></tr></table></blockquote>0 based index of this series in the plot series array.</div></div><div class=CToolTip id="tt90"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>true or false, wether to fill under lines or in bars. </div></div><div class=CToolTip id="tt91"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillColor</td></tr></table></blockquote>CSS color spec to use for fill under line. </div></div><div class=CToolTip id="tt92"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAlpha</td></tr></table></blockquote>Alpha transparency to apply to the fill under the line. </div></div><div class=CToolTip id="tt93"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAndStroke = false</td></tr></table></blockquote>If true will stroke the line (with color this.color) as well as fill under it. </div></div><div class=CToolTip id="tt94"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableStack = false</td></tr></table></blockquote>true to not stack this series with other series in the plot. </div></div><div class=CToolTip id="tt95"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.neighborThreshold = 4</td></tr></table></blockquote>how close or far (in pixels) the cursor must be from a point marker to detect the point.</div></div><div class=CToolTip id="tt96"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToZero = false</td></tr></table></blockquote>true will force bar and filled series to fill toward zero on the fill Axis.</div></div><div class=CToolTip id="tt97"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToValue = 0</td></tr></table></blockquote>fill a filled series to this value on the fill axis. </div></div><div class=CToolTip id="tt98"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAxis = 'y'</td></tr></table></blockquote>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;. </div></div><div class=CToolTip id="tt99"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useNegativeColors = true</td></tr></table></blockquote>true to color negative values differently in filled and bar charts.</div></div><div class=CToolTip id="tt100"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawGridlines = true</td></tr></table></blockquote>wether to draw the gridlines on the plot.</div></div><div class=CToolTip id="tt101"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineColor = '#cccccc'</td></tr></table></blockquote>color of the grid lines.</div></div><div class=CToolTip id="tt102"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineWidth = 1.0</td></tr></table></blockquote>width of the grid lines.</div></div><div class=CToolTip id="tt103"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = '#fffdf6'</td></tr></table></blockquote>css spec for the background color.</div></div><div class=CToolTip id="tt104"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = '#999999'</td></tr></table></blockquote>css spec for the color of the grid border.</div></div><div class=CToolTip id="tt105"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = 2.0</td></tr></table></blockquote>width of the border in pixels.</div></div><div class=CToolTip id="tt106"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBorder = true</td></tr></table></blockquote>True to draw border around grid.</div></div><div class=CToolTip id="tt107"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether to show a shadow behind the grid.</div></div><div class=CToolTip id="tt108"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>shadow angle in degrees</div></div><div class=CToolTip id="tt109"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.5</td></tr></table></blockquote>Offset of each shadow stroke from the border in pixels</div></div><div class=CToolTip id="tt110"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowWidth = 3</td></tr></table></blockquote>width of the stoke for the shadow</div></div><div class=CToolTip id="tt111"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt112"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowColor = null</td></tr></table></blockquote>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</div></div><div class=CToolTip id="tt113"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt114"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.CanvasGridRenderer</td></tr></table></blockquote>Instance of a renderer which will actually render the grid, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt115"><div class=CClass>The default jqPlot grid renderer, creating a grid on a canvas element. </div></div><div class=CToolTip id="tt116"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt117"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animate = false</td></tr></table></blockquote>True to animate the series on initial plot draw (renderer dependent). </div></div><div class=CToolTip id="tt118"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animateReplot = false</td></tr></table></blockquote>True to animate series after a call to the replot() method. </div></div><div class=CToolTip id="tt119"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.axes = {xaxis: new Axis('xaxis'), yaxis: new Axis('yaxis'), x2axis: new Axis('x2axis'), y2axis: new Axis('y2axis'), y3axis: new Axis('y3axis'), y4axis: new Axis('y4axis'), y5axis: new Axis('y5axis'), y6axis: new Axis('y6axis'), y7axis: new Axis('y7axis'), y8axis: new Axis('y8axis'), y9axis: new Axis('y9axis'), yMidAxis: new Axis('yMidAxis')}</td></tr></table></blockquote>up to 4 axes are supported, each with it&rsquo;s own options, See Axis for axis specific options.</div></div><div class=CToolTip id="tt120"><div class=CClass>An individual axis object. </div></div><div class=CToolTip id="tt121"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.data = []</td></tr></table></blockquote>user&rsquo;s data. </div></div><div class=CToolTip id="tt122"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRenderer</td></tr></table></blockquote>A callable which can be used to preprocess data passed into the plot. </div></div><div class=CToolTip id="tt123"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRendererOptions</td></tr></table></blockquote>Options that will be passed to the dataRenderer. </div></div><div class=CToolTip id="tt124"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>seriesDefaults: {}, series:[] }</td></tr></table></blockquote>default options that will be applied to all series. </div></div><div class=CToolTip id="tt125"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.defaultAxisStart = 1</td></tr></table></blockquote>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot. </div></div><div class=CToolTip id="tt126"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillBetween = { series1: null, series2: null, color: null, baseSeries: 0, fill: true }</td></tr></table></blockquote>Fill between 2 line series in a plot. </div></div><div class=CToolTip id="tt127"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size attribute. </div></div><div class=CToolTip id="tt128"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.grid = new Grid()</td></tr></table></blockquote>See Grid for grid specific options.</div></div><div class=CToolTip id="tt129"><div class=CClass>Object representing the grid on which the plot is drawn. </div></div><div class=CToolTip id="tt130"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.legend = new Legend()</td></tr></table></blockquote>see $.jqplot.TableLegendRenderer</div></div><div class=CToolTip id="tt131"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.series = []</td></tr></table></blockquote>Array of series object options. </div></div><div class=CToolTip id="tt132"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesColors = $.jqplot.config.defaultColors</td></tr></table></blockquote>Ann array of CSS color specifications that will be applied, in order, to the series in the plot. </div></div><div class=CToolTip id="tt133"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortData = true</td></tr></table></blockquote>false to not sort the data passed in by the user. </div></div><div class=CToolTip id="tt134"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackSeries = false</td></tr></table></blockquote>true or false, creates a stack or &ldquo;mountain&rdquo; plot. </div></div><div class=CToolTip id="tt135"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.title = new Title()</td></tr></table></blockquote>Title object. </div></div><div class=CToolTip id="tt136"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.init = function(</td><td class=PParameter nowrap>target,</td></tr><tr><td></td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>sets the plot target, checks data and applies user options to plot.</div></div><div class=CToolTip id="tt137"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.resetAxesScale = function(</td><td class=PParameter nowrap>axes,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</div></div><div class=CToolTip id="tt138"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.reInitialize = function (</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>opts</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>reinitialize plot for replotting. </div></div><div class=CToolTip id="tt139"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.quickInit = function ()</td></tr></table></blockquote>Quick reinitialization plot for replotting. </div></div><div class=CToolTip id="tt140"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.destroy = function()</td></tr></table></blockquote>Releases all resources occupied by the plot</div></div><div class=CToolTip id="tt141"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.replot = function(</td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Does a reinitialization of the plot followed by a redraw. </div></div><div class=CToolTip id="tt142"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.redraw = function(</td><td class=PParameter nowrap>clear</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Empties the plot target div and redraws the plot. </div></div><div class=CToolTip id="tt143"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.draw = function()</td></tr></table></blockquote>Draws all elements of the plot into the container. </div></div><div class=CToolTip id="tt144"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.drawSeries = function(</td><td class=PParameter nowrap>options,</td></tr><tr><td></td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Redraws all or just one series on the plot. </div></div><div class=CToolTip id="tt145"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToFront = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases. </div></div><div class=CToolTip id="tt146"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToBack = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</div></div><div class=CToolTip id="tt147"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restorePreviousSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its previous state. </div></div><div class=CToolTip id="tt148"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restoreOriginalSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</div></div><div class=CToolTip id="tt149"><div class=CSection>GNU GENERAL PUBLIC LICENSE Version 2, June 1991</div></div><div class=CToolTip id="tt150"><div class=CSection>Copyright &copy; 2009-2012 Chris Leonello</div></div><div class=CToolTip id="tt151"><div class=CClass>The default jqPlot axis renderer, creating a numeric axis.</div></div><div class=CToolTip id="tt152"><div class=CClass>An individual data series object. </div></div><div class=CToolTip id="tt153"><div class=CClass>Plot Title object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-divTitleRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-divTitleRenderer-js.html
deleted file mode 100644
index a3806b9a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-divTitleRenderer-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.DivTitleRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.DivTitleRenderer"></a>$.jqplot.<wbr>DivTitleRenderer</div><div class=CBody><p>The default title renderer for jqPlot.&nbsp; This class has no options beyond the <a href="jqplot-core-js.html#Title" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">Title</a> class.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Div Title Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Plot Title object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-lineRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-lineRenderer-js.html
deleted file mode 100644
index 09170eda..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-lineRenderer-js.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.LineRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.LineRenderer"></a>$.jqplot.<wbr>LineRenderer</div><div class=CBody><p>The default line renderer for jqPlot, this class has no options beyond the <a href="jqplot-core-js.html#Series" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt1', 'link9')" onMouseOut="HideTip('tt1')">Series</a> class.&nbsp; Draws series as a line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.LineRenderer" >$.jqplot.<wbr>LineRenderer</a></td><td class=SDescription>The default line renderer for jqPlot, this class has no options beyond the <a href="jqplot-core-js.html#Series" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">Series</a> class. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.LineRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.smooth" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">smooth</a></td><td class=SDescription>True to draw a smoothed (interpolated) line through the data points with automatically computed number of smoothing points. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LineRenderer.constrainSmoothing" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">constrainSmoothing</a></td><td class=SDescription>True to use a more accurate smoothing algorithm that will not overshoot any data points. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.bandData" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">bandData</a></td><td class=SDescription>Data used to draw error bands or confidence intervals above/below a line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.LineRenderer.bands" >bands</a></td><td class=SDescription>Banding around line, e.g error bands or confidence intervals.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.show" >show</a></td><td class=SDescription>true to show the bands. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LineRenderer.color" >color</a></td><td class=SDescription>color of lines at top and bottom of bands [default: series color].</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.showLines" >showLines</a></td><td class=SDescription>True to show lines at top and bottom of bands [default: false].</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LineRenderer.fill" >fill</a></td><td class=SDescription>True to fill area between bands [default: true].</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.fillColor" >fillColor</a></td><td class=SDescription>css color spec for filled area. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LineRenderer.interval" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">interval</a></td><td class=SDescription>User specified interval above and below line for bands [default: &lsquo;3%&rsquo;&rsquo;]. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.LineRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.highlightMouseOver" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">highlightMouseOver</a></td><td class=SDescription>True to highlight area on a filled plot when moused over. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LineRenderer.highlightMouseDown" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over an area on a filled plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LineRenderer.highlightColor" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">highlightColor</a></td><td class=SDescription>color to use when highlighting an area on a filled plot.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.smooth"></a>smooth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.smooth = false</td></tr></table></blockquote><p>True to draw a smoothed (interpolated) line through the data points with automatically computed number of smoothing points.&nbsp; Set to an integer number &gt; 2 to specify number of smoothing points to use between each data point.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.constrainSmoothing"></a>constrainSmoothing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.constrainSmoothing = true</td></tr></table></blockquote><p>True to use a more accurate smoothing algorithm that will not overshoot any data points.&nbsp; False to allow overshoot but produce a smoother looking line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.bandData"></a>bandData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.bandData = []</td></tr></table></blockquote><p>Data used to draw error bands or confidence intervals above/below a line.</p><p>bandData can be input in 3 forms.&nbsp; jqPlot will figure out which is the low band line and which is the high band line for all forms:</p><p>A 2 dimensional array like [[yl1, yl2, ...], [yu1, yu2, ...]] where [yl1, yl2, ...] are y values of the lower line and [yu1, yu2, ...] are y values of the upper line.&nbsp; In this case there must be the same number of y data points as data points in the series and the bands will inherit the x values of the series.</p><p>A 2 dimensional array like [[[xl1, yl1], [xl2, yl2], ...], [[xh1, yh1], [xh2, yh2], ...]] where [xl1, yl1] are x,y data points for the lower line and [xh1, yh1] are x,y data points for the high line. x values do not have to correspond to the x values of the series and can be of any arbitrary length.</p><p>Can be of form [[yl1, yu1], [yl2, yu2], [yl3, yu3], ...] where there must be 3 or more arrays and there must be the same number of arrays as there are data points in the series.&nbsp; In this case, [yl1, yu1] specifies the lower and upper y values for the 1st data point and so on.&nbsp; The bands will inherit the x values from the series.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.bands"></a>bands</h3><div class=CBody><p>Banding around line, e.g error bands or confidence intervals.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.show"></a>show</h3><div class=CBody><p>true to show the bands.&nbsp; If bandData or interval is supplied, show will be set to true by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.color"></a>color</h3><div class=CBody><p>color of lines at top and bottom of bands [default: series color].</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.showLines"></a>showLines</h3><div class=CBody><p>True to show lines at top and bottom of bands [default: false].</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.fill"></a>fill</h3><div class=CBody><p>True to fill area between bands [default: true].</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.fillColor"></a>fillColor</h3><div class=CBody><p>css color spec for filled area.&nbsp; [default: series color].</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.interval"></a>interval</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>interval: '3%' }</td></tr></table></blockquote><p>User specified interval above and below line for bands [default: &lsquo;3%&rsquo;&rsquo;].&nbsp; Can be a value like 3 or a string like &lsquo;3%&rsquo; or an upper/lower array like [1, -2] or [&lsquo;2%&rsquo;, &lsquo;-1.5%&rsquo;]</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight area on a filled plot when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on an area on a filled plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over an area on a filled plot.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LineRenderer.highlightColor"></a>highlightColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColor = null</td></tr></table></blockquote><p>color to use when highlighting an area on a filled plot.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Line Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>An individual data series object. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.smooth = false</td></tr></table></blockquote>True to draw a smoothed (interpolated) line through the data points with automatically computed number of smoothing points. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.constrainSmoothing = true</td></tr></table></blockquote>True to use a more accurate smoothing algorithm that will not overshoot any data points. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.bandData = []</td></tr></table></blockquote>Data used to draw error bands or confidence intervals above/below a line.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>interval: '3%' }</td></tr></table></blockquote>User specified interval above and below line for bands [default: &lsquo;3%&rsquo;&rsquo;]. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area on a filled plot when moused over. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over an area on a filled plot. </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColor = null</td></tr></table></blockquote>color to use when highlighting an area on a filled plot.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-linearAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-linearAxisRenderer-js.html
deleted file mode 100644
index a3669ba1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-linearAxisRenderer-js.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.LinearAxisRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.LinearAxisRenderer"></a>$.jqplot.<wbr>LinearAxisRenderer</div><div class=CBody><p>The default jqPlot axis renderer, creating a numeric axis.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer" >$.jqplot.<wbr>LinearAxisRenderer</a></td><td class=SDescription>The default jqPlot axis renderer, creating a numeric axis.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.breakPoints" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">breakPoints</a></td><td class=SDescription>EXPERIMENTAL!!&nbsp; </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.breakTickLabel" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">breakTickLabel</a></td><td class=SDescription>Label to use at the axis break if breakPoints are specified.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.drawBaseline" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">drawBaseline</a></td><td class=SDescription>True to draw the axis baseline.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.baselineWidth" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">baselineWidth</a></td><td class=SDescription>width of the baseline in pixels.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.baselineColor" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">baselineColor</a></td><td class=SDescription>CSS color spec for the baseline.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.forceTickAt0" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">forceTickAt0</a></td><td class=SDescription>This will ensure that there is always a tick mark at 0. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.forceTickAt100" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">forceTickAt100</a></td><td class=SDescription>This will ensure that there is always a tick mark at 100. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.tickInset" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">tickInset</a></td><td class=SDescription>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.minorTicks" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">minorTicks</a></td><td class=SDescription>Number of ticks to add between &ldquo;major&rdquo; ticks. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LinearAxisRenderer.alignTicks" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">alignTicks</a></td><td class=SDescription>true to align tick marks across opposed axes such as from the y2axis to yaxis.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.breakPoints"></a>breakPoints</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakPoints = null</td></tr></table></blockquote><p>EXPERIMENTAL!!&nbsp; Use at your own risk!&nbsp; Works only with linear axes and the default tick renderer.&nbsp; Array of [start, stop] points to create a broken axis.&nbsp; Broken axes have a &ldquo;jump&rdquo; in them, which is an immediate transition from a smaller value to a larger value.&nbsp; Currently, axis ticks MUST be manually assigned if using breakPoints by using the axis ticks array option.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.breakTickLabel"></a>breakTickLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakTickLabel = &quot;&amp;asymp</td></tr></table></blockquote><p>Label to use at the axis break if breakPoints are specified.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.drawBaseline"></a>drawBaseline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote><p>True to draw the axis baseline.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.baselineWidth"></a>baselineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote><p>width of the baseline in pixels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.baselineColor"></a>baselineColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote><p>CSS color spec for the baseline.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.forceTickAt0"></a>forceTickAt0</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt0 = false</td></tr></table></blockquote><p>This will ensure that there is always a tick mark at 0.&nbsp; If data range is strictly positive or negative, this will force 0 to be inside the axis bounds unless the appropriate axis pad (pad, padMin or padMax) is set to 0, then this will force an axis min or max value at 0.&nbsp; This has know effect when any of the following options are set: autoscale, min, max, numberTicks or tickInterval.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.forceTickAt100"></a>forceTickAt100</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt100 = false</td></tr></table></blockquote><p>This will ensure that there is always a tick mark at 100.&nbsp; If data range is strictly above or below 100, this will force 100 to be inside the axis bounds unless the appropriate axis pad (pad, padMin or padMax) is set to 0, then this will force an axis min or max value at 100.&nbsp; This has know effect when any of the following options are set: autoscale, min, max, numberTicks or tickInterval.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.tickInset"></a>tickInset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote><p>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval.&nbsp; 0 is no inset, 0.5 is one half a tick interval, 1 is a full tick interval, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.minorTicks"></a>minorTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 0</td></tr></table></blockquote><p>Number of ticks to add between &ldquo;major&rdquo; ticks.&nbsp; Major ticks are ticks supplied by user or auto computed.&nbsp; Minor ticks cannot be created by user.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LinearAxisRenderer.alignTicks"></a>alignTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alignTicks = false</td></tr></table></blockquote><p>true to align tick marks across opposed axes such as from the y2axis to yaxis.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Linear Axis Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakPoints = null</td></tr></table></blockquote>EXPERIMENTAL!!&nbsp; </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakTickLabel = &quot;&amp;asymp</td></tr></table></blockquote>Label to use at the axis break if breakPoints are specified.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt0 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 0. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt100 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 100. </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 0</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alignTicks = false</td></tr></table></blockquote>true to align tick marks across opposed axes such as from the y2axis to yaxis.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-markerRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-markerRenderer-js.html
deleted file mode 100644
index 304fc362..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-markerRenderer-js.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.MarkerRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.MarkerRenderer"></a>$.jqplot.<wbr>MarkerRenderer</div><div class=CBody><p>The default jqPlot marker renderer, rendering the points on the line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.MarkerRenderer" >$.jqplot.<wbr>MarkerRenderer</a></td><td class=SDescription>The default jqPlot marker renderer, rendering the points on the line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.show" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">show</a></td><td class=SDescription>wether or not to show the marker.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.style" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">style</a></td><td class=SDescription>One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.lineWidth" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">lineWidth</a></td><td class=SDescription>size of the line for non-filled markers.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.size" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">size</a></td><td class=SDescription>Size of the marker (diameter or circle, length of edge of square, etc.)</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.color" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">color</a></td><td class=SDescription>color of marker. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadow" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">shadow</a></td><td class=SDescription>wether or not to draw a shadow on the line</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadowAngle" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">shadowAngle</a></td><td class=SDescription>Shadow angle in degrees</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadowOffset" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">shadowOffset</a></td><td class=SDescription>Shadow offset from line in pixels</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadowDepth" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadowAlpha" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shadowRenderer" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">shadowRenderer</a></td><td class=SDescription>Renderer that will draws the shadows on the marker.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MarkerRenderer.shapeRenderer" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">shapeRenderer</a></td><td class=SDescription>Renderer that will draw the marker.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the marker.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.style"></a>style</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'filledCircle'</td></tr></table></blockquote><p>One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote><p>size of the line for non-filled markers.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.size"></a>size</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 9.0</td></tr></table></blockquote><p>Size of the marker (diameter or circle, length of edge of square, etc.)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.color"></a>color</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote><p>color of marker.&nbsp; Will be set to color of series by default on init.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadow"></a>shadow</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote><p>wether or not to draw a shadow on the line</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadowAngle"></a>shadowAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote><p>Shadow angle in degrees</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1</td></tr></table></blockquote><p>Shadow offset from line in pixels</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote><p>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote><p>Alpha channel transparency of shadow.&nbsp; 0 = transparent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shadowRenderer"></a>shadowRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowRenderer = new $.jqplot.ShadowRenderer()</td></tr></table></blockquote><p>Renderer that will draws the shadows on the marker.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MarkerRenderer.shapeRenderer"></a>shapeRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shapeRenderer = new $.jqplot.ShapeRenderer()</td></tr></table></blockquote><p>Renderer that will draw the marker.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Marker Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the marker.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'filledCircle'</td></tr></table></blockquote>One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>size of the line for non-filled markers.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 9.0</td></tr></table></blockquote>Size of the marker (diameter or circle, length of edge of square, etc.)</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>color of marker. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether or not to draw a shadow on the line</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowRenderer = new $.jqplot.ShadowRenderer()</td></tr></table></blockquote>Renderer that will draws the shadows on the marker.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shapeRenderer = new $.jqplot.ShapeRenderer()</td></tr></table></blockquote>Renderer that will draw the marker.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shadowRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shadowRenderer-js.html
deleted file mode 100644
index 7d5fb69d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shadowRenderer-js.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.shadowRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.shadowRenderer"></a>$.jqplot.<wbr>shadowRenderer</div><div class=CBody><p>The default jqPlot shadow renderer, rendering shadows behind shapes.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.shadowRenderer" >$.jqplot.<wbr>shadowRenderer</a></td><td class=SDescription>The default jqPlot shadow renderer, rendering shadows behind shapes.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.shadowRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shadowRenderer.angle" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">angle</a></td><td class=SDescription>Angle of the shadow in degrees. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shadowRenderer.offset" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">offset</a></td><td class=SDescription>Pixel offset at the given shadow angle of each shadow stroke from the last stroke.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shadowRenderer.alpha" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">alpha</a></td><td class=SDescription>alpha transparency of shadow stroke.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shadowRenderer.lineWidth" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">lineWidth</a></td><td class=SDescription>width of the shadow line stroke.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shadowRenderer.lineJoin" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">lineJoin</a></td><td class=SDescription>How line segments of the shadow are joined.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shadowRenderer.lineCap" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">lineCap</a></td><td class=SDescription>how ends of the shadow line are rendered.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shadowRenderer.fill" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">fill</a></td><td class=SDescription>whether to fill the shape.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shadowRenderer.depth" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">depth</a></td><td class=SDescription>how many times the shadow is stroked. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shadowRenderer.isarc" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">isarc</a></td><td class=SDescription>wether the shadow is an arc or not.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.shadowRenderer.draw" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">draw</a></td><td class=SDescription>draws an transparent black (i.e. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.angle"></a>angle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 45</td></tr></table></blockquote><p>Angle of the shadow in degrees.&nbsp; Measured counter-clockwise from the x axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.offset"></a>offset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offset = 1</td></tr></table></blockquote><p>Pixel offset at the given shadow angle of each shadow stroke from the last stroke.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.alpha"></a>alpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alpha = 0.07</td></tr></table></blockquote><p>alpha transparency of shadow stroke.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote><p>width of the shadow line stroke.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.lineJoin"></a>lineJoin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote><p>How line segments of the shadow are joined.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.lineCap"></a>lineCap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote><p>how ends of the shadow line are rendered.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote><p>whether to fill the shape.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.depth"></a>depth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.depth = 3</td></tr></table></blockquote><p>how many times the shadow is stroked.&nbsp; Each stroke will be offset by offset at angle degrees.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.isarc"></a>isarc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote><p>wether the shadow is an arc or not.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shadowRenderer.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShadowRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>draws an transparent black (i.e. gray) shadow.</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>ctx</td><td class=CDLDescription>canvas drawing context</td></tr><tr><td class=CDLEntry>points</td><td class=CDLDescription>array of points or [x, y, radius, start angle (rad), end angle (rad)]</td></tr></table></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Shadow Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 45</td></tr></table></blockquote>Angle of the shadow in degrees. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offset = 1</td></tr></table></blockquote>Pixel offset at the given shadow angle of each shadow stroke from the last stroke.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alpha = 0.07</td></tr></table></blockquote>alpha transparency of shadow stroke.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>width of the shadow line stroke.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.depth = 3</td></tr></table></blockquote>how many times the shadow is stroked. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShadowRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws an transparent black (i.e. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shapeRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shapeRenderer-js.html
deleted file mode 100644
index a063dea9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-shapeRenderer-js.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.shapeRenderer</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.shapeRenderer"></a>$.jqplot.<wbr>shapeRenderer</div><div class=CBody><p>The default jqPlot shape renderer.&nbsp; Given a set of points will plot them and either stroke a line (fill = false) or fill them (fill = true).&nbsp; If a filled shape is desired, closePath = true must also be set to close the shape.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.shapeRenderer" >$.jqplot.<wbr>shapeRenderer</a></td><td class=SDescription>The default jqPlot shape renderer. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.shapeRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.linePattern" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">linePattern</a></td><td class=SDescription>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shapeRenderer.lineJoin" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">lineJoin</a></td><td class=SDescription>How line segments of the shadow are joined.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.lineCap" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">lineCap</a></td><td class=SDescription>how ends of the shadow line are rendered.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shapeRenderer.fill" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">fill</a></td><td class=SDescription>whether to fill the shape.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.isarc" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">isarc</a></td><td class=SDescription>wether the shadow is an arc or not.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shapeRenderer.fillRect" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">fillRect</a></td><td class=SDescription>true to draw shape as a filled rectangle.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.strokeRect" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">strokeRect</a></td><td class=SDescription>true to draw shape as a stroked rectangle.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shapeRenderer.clearRect" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">clearRect</a></td><td class=SDescription>true to cear a rectangle.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.strokeStyle" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">strokeStyle</a></td><td class=SDescription>css color spec for the stoke style</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.shapeRenderer.fillStyle" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">fillStyle</a></td><td class=SDescription>css color spec for the fill style.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.shapeRenderer.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.shapeRenderer.draw" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">draw</a></td><td class=SDescription>draws the shape.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.linePattern"></a>linePattern</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote><p>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo; characters such as &lsquo;.-.&rsquo; or a numerical array like [draw, skip, draw, skip, ...] such as [1, 10] to draw a dotted line, [1, 10, 20, 10] to draw a dot-dash line, and so on.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.lineJoin"></a>lineJoin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote><p>How line segments of the shadow are joined.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.lineCap"></a>lineCap</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote><p>how ends of the shadow line are rendered.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote><p>whether to fill the shape.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.isarc"></a>isarc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote><p>wether the shadow is an arc or not.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.fillRect"></a>fillRect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillRect = false</td></tr></table></blockquote><p>true to draw shape as a filled rectangle.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.strokeRect"></a>strokeRect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeRect = false</td></tr></table></blockquote><p>true to draw shape as a stroked rectangle.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.clearRect"></a>clearRect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearRect = false</td></tr></table></blockquote><p>true to cear a rectangle.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.strokeStyle"></a>strokeStyle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeStyle = '#999999'</td></tr></table></blockquote><p>css color spec for the stoke style</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.fillStyle"></a>fillStyle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillStyle = '#999999'</td></tr></table></blockquote><p>css color spec for the fill style.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.shapeRenderer.draw"></a>draw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShapeRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>draws the shape.</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>ctx</td><td class=CDLDescription>canvas drawing context</td></tr><tr><td class=CDLEntry>points</td><td class=CDLDescription>array of points for shapes or [x, y, width, height] for rectangles or [x, y, radius, start angle (rad), end angle (rad)] for circles and arcs.</td></tr></table></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Shape Renderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillRect = false</td></tr></table></blockquote>true to draw shape as a filled rectangle.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeRect = false</td></tr></table></blockquote>true to draw shape as a stroked rectangle.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearRect = false</td></tr></table></blockquote>true to cear a rectangle.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeStyle = '#999999'</td></tr></table></blockquote>css color spec for the stoke style</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillStyle = '#999999'</td></tr></table></blockquote>css color spec for the fill style.</div></div><div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShapeRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws the shape.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-themeEngine-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-themeEngine-js.html
deleted file mode 100644
index 54fb438f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-themeEngine-js.html
+++ /dev/null
@@ -1,191 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.ThemeEngine</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.ThemeEngine"></a>$.jqplot.<wbr>ThemeEngine</div><div class=CBody><p>Theme Engine provides a programatic way to change some of the more common jqplot styling options such as fonts, colors and grid options.&nbsp; A theme engine instance is created with each plot.&nbsp; The theme engine manages a collection of themes which can be modified, added to, or applied to the plot.</p><p>The themeEngine class is not instantiated directly.&nbsp; When a plot is initialized, the current plot options are scanned an a default theme named &ldquo;Default&rdquo; is created.&nbsp; This theme is used as the basis for other themes added to the theme engine and is always available.</p><p>A theme is a simple javascript object with styling parameters for various entities of the plot.&nbsp; A theme has the form:</p><blockquote><pre>{
- _name:f &quot;Default&quot;,
- target: {
- backgroundColor: &quot;transparent&quot;
- },
- legend: {
- textColor: null,
- fontFamily: null,
- fontSize: null,
- border: null,
- background: null
- },
- title: {
- textColor: &quot;rgb(102, 102, 102)&quot;,
- fontFamily: &quot;'Trebuchet MS',Arial,Helvetica,sans-serif&quot;,
- fontSize: &quot;19.2px&quot;,
- textAlign: &quot;center&quot;
- },
- seriesStyles: {},
- series: [{
- color: &quot;#4bb2c5&quot;,
- lineWidth: 2.5,
- linePattern: &quot;solid&quot;,
- shadow: true,
- fillColor: &quot;#4bb2c5&quot;,
- showMarker: true,
- markerOptions: {
- color: &quot;#4bb2c5&quot;,
- show: true,
- style: 'filledCircle',
- lineWidth: 1.5,
- size: 4,
- shadow: true
- }
- }],
- grid: {
- drawGridlines: true,
- gridLineColor: &quot;#cccccc&quot;,
- gridLineWidth: 1,
- backgroundColor: &quot;#fffdf6&quot;,
- borderColor: &quot;#999999&quot;,
- borderWidth: 2,
- shadow: true
- },
- axesStyles: {
- label: {},
- ticks: {}
- },
- axes: {
- xaxis: {
- borderColor: &quot;#999999&quot;,
- borderWidth: 2,
- ticks: {
- show: true,
- showGridline: true,
- showLabel: true,
- showMark: true,
- size: 4,
- textColor: &quot;&quot;,
- whiteSpace: &quot;nowrap&quot;,
- fontSize: &quot;12px&quot;,
- fontFamily: &quot;'Trebuchet MS',Arial,Helvetica,sans-serif&quot;
- },
- label: {
- textColor: &quot;rgb(102, 102, 102)&quot;,
- whiteSpace: &quot;normal&quot;,
- fontSize: &quot;14.6667px&quot;,
- fontFamily: &quot;'Trebuchet MS',Arial,Helvetica,sans-serif&quot;,
- fontWeight: &quot;400&quot;
- }
- },
- yaxis: {
- borderColor: &quot;#999999&quot;,
- borderWidth: 2,
- ticks: {
- show: true,
- showGridline: true,
- showLabel: true,
- showMark: true,
- size: 4,
- textColor: &quot;&quot;,
- whiteSpace: &quot;nowrap&quot;,
- fontSize: &quot;12px&quot;,
- fontFamily: &quot;'Trebuchet MS',Arial,Helvetica,sans-serif&quot;
- },
- label: {
- textColor: null,
- whiteSpace: null,
- fontSize: null,
- fontFamily: null,
- fontWeight: null
- }
- },
- x2axis: {...
- },
- ...
- y9axis: {...
- }
- }
-}</pre></blockquote><p>&rdquo;seriesStyles&rdquo; is a style object that will be applied to all series in the plot.&nbsp; It will forcibly override any styles applied on the individual series.&nbsp; &ldquo;axesStyles&rdquo; is a style object that will be applied to all axes in the plot.&nbsp; It will also forcibly override any styles on the individual axes.</p><p>The example shown above has series options for a line series.&nbsp; Options for other series types are shown below:</p><h4 class=CHeading>Bar Series</h4><blockquote><pre>{
- color: &quot;#4bb2c5&quot;,
- seriesColors: [&quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;],
- lineWidth: 2.5,
- shadow: true,
- barPadding: 2,
- barMargin: 10,
- barWidth: 15.09375,
- highlightColors: [&quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;, &quot;rgb(129,201,214)&quot;]
-}</pre></blockquote><h4 class=CHeading>Pie Series</h4><blockquote><pre>{
- seriesColors: [&quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;],
- padding: 20,
- sliceMargin: 0,
- fill: true,
- shadow: true,
- startAngle: 0,
- lineWidth: 2.5,
- highlightColors: [&quot;rgb(129,201,214)&quot;, &quot;rgb(240,189,104)&quot;, &quot;rgb(214,202,165)&quot;, &quot;rgb(137,180,158)&quot;, &quot;rgb(168,180,137)&quot;, &quot;rgb(180,174,89)&quot;, &quot;rgb(180,113,161)&quot;, &quot;rgb(129,141,236)&quot;, &quot;rgb(227,205,120)&quot;, &quot;rgb(255,138,76)&quot;, &quot;rgb(76,169,219)&quot;, &quot;rgb(215,126,190)&quot;, &quot;rgb(220,232,135)&quot;, &quot;rgb(200,167,96)&quot;, &quot;rgb(103,202,235)&quot;, &quot;rgb(208,154,215)&quot;]
-}</pre></blockquote><h4 class=CHeading>Funnel Series</h4><blockquote><pre>{
- color: &quot;#4bb2c5&quot;,
- lineWidth: 2,
- shadow: true,
- padding: {
- top: 20,
- right: 20,
- bottom: 20,
- left: 20
- },
- sectionMargin: 6,
- seriesColors: [&quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;],
- highlightColors: [&quot;rgb(147,208,220)&quot;, &quot;rgb(242,199,126)&quot;, &quot;rgb(220,210,178)&quot;, &quot;rgb(154,191,172)&quot;, &quot;rgb(180,191,154)&quot;, &quot;rgb(191,186,112)&quot;, &quot;rgb(191,133,174)&quot;, &quot;rgb(147,157,238)&quot;, &quot;rgb(231,212,139)&quot;, &quot;rgb(255,154,102)&quot;, &quot;rgb(102,181,224)&quot;, &quot;rgb(221,144,199)&quot;, &quot;rgb(225,235,152)&quot;, &quot;rgb(200,167,96)&quot;, &quot;rgb(124,210,238)&quot;, &quot;rgb(215,169,221)&quot;]
-}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.ThemeEngine" >$.jqplot.<wbr>ThemeEngine</a></td><td class=SDescription>Theme Engine provides a programatic way to change some of the more common jqplot styling options such as fonts, colors and grid options. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.ThemeEngine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.ThemeEngine.themes" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">themes</a></td><td class=SDescription>hash of themes managed by the theme engine. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.ThemeEngine.activeTheme" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">activeTheme</a></td><td class=SDescription>Pointer to currently active theme</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.ThemeEngine.methods" >methods</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.ThemeEngine.get" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">get</a></td><td class=SDescription>Get and return the named theme or the active theme if no name given.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.ThemeEngine.getThemeNames" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">getThemeNames</a></td><td class=SDescription>Return the list of theme names in this manager in alpha-numerical order.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.ThemeEngine.getThemes" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">getThemes</a></td><td class=SDescription>Return a list of themes in alpha-numerical order by name.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.ThemeEngine.remove" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">remove</a></td><td class=SDescription>Remove the given theme from the themeEngine.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.ThemeEngine.newTheme" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">newTheme</a></td><td class=SDescription>Create a new theme based on the default theme, adding it the themeEngine.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.ThemeEngine.rename" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">rename</a></td><td class=SDescription>Rename a theme.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.ThemeEngine.copy" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">copy</a></td><td class=SDescription>Create a copy of an existing theme in the themeEngine, adding it the themeEngine.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.themes"></a>themes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.themes = {}</td></tr></table></blockquote><p>hash of themes managed by the theme engine.&nbsp; Indexed by theme name.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.activeTheme"></a>activeTheme</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.activeTheme=null</td></tr></table></blockquote><p>Pointer to currently active theme</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.methods"></a>methods</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.get"></a>get</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.get = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Get and return the named theme or the active theme if no name given.</p><h4 class=CHeading>parameter</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>name of theme to get.</td></tr></table><h4 class=CHeading>returns</h4><p>Theme instance of given name.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.getThemeNames"></a>getThemeNames</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemeNames = function()</td></tr></table></blockquote><p>Return the list of theme names in this manager in alpha-numerical order.</p><h4 class=CHeading>parameter</h4><p>None</p><h4 class=CHeading>returns</h4><p>A the list of theme names in this manager in alpha-numerical order.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.getThemes"></a>getThemes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemes = function()</td></tr></table></blockquote><p>Return a list of themes in alpha-numerical order by name.</p><h4 class=CHeading>parameter</h4><p>None</p><h4 class=CHeading>returns</h4><p>A list of themes in alpha-numerical order by name.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.remove"></a>remove</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.remove = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Remove the given theme from the themeEngine.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>name of the theme to remove.</td></tr></table><h4 class=CHeading>returns</h4><p>true on success, false on failure.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.newTheme"></a>newTheme</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.newTheme = function(</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a new theme based on the default theme, adding it the themeEngine.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>name</td><td class=CDLDescription>name of the new theme.</td></tr><tr><td class=CDLEntry>obj</td><td class=CDLDescription>optional object of styles to be applied to this new theme.</td></tr></table><h4 class=CHeading>returns</h4><p>new Theme object.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.rename"></a>rename</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.rename = function (</td><td class=PParameter nowrap>oldName,</td></tr><tr><td></td><td class=PParameter nowrap>newName</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Rename a theme.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>oldName</td><td class=CDLDescription>current name of the theme.</td></tr><tr><td class=CDLEntry>newName</td><td class=CDLDescription>desired name of the theme.</td></tr></table><h4 class=CHeading>returns</h4><p>new Theme object.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.ThemeEngine.copy"></a>copy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.copy = function (</td><td class=PParameter nowrap>sourceName,</td></tr><tr><td></td><td class=PParameter nowrap>targetName,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Create a copy of an existing theme in the themeEngine, adding it the themeEngine.</p><h4 class=CHeading>parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>sourceName</td><td class=CDLDescription>name of the existing theme.</td></tr><tr><td class=CDLEntry>targetName</td><td class=CDLDescription>name of the copy.</td></tr><tr><td class=CDLEntry>obj</td><td class=CDLDescription>optional object of style parameter to apply to the new theme.</td></tr></table><h4 class=CHeading>returns</h4><p>new Theme object.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>Theme Engine</div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.themes = {}</td></tr></table></blockquote>hash of themes managed by the theme engine. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.activeTheme=null</td></tr></table></blockquote>Pointer to currently active theme</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.get = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Get and return the named theme or the active theme if no name given.</div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemeNames = function()</td></tr></table></blockquote>Return the list of theme names in this manager in alpha-numerical order.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemes = function()</td></tr></table></blockquote>Return a list of themes in alpha-numerical order by name.</div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.remove = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Remove the given theme from the themeEngine.</div></div><div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.newTheme = function(</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a new theme based on the default theme, adding it the themeEngine.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.rename = function (</td><td class=PParameter nowrap>oldName,</td></tr><tr><td></td><td class=PParameter nowrap>newName</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Rename a theme.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.copy = function (</td><td class=PParameter nowrap>sourceName,</td></tr><tr><td></td><td class=PParameter nowrap>targetName,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a copy of an existing theme in the themeEngine, adding it the themeEngine.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-toImage-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-toImage-js.html
deleted file mode 100644
index 5a3896cd..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/jqplot-toImage-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.fn</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.fn"></a>$.fn</div><div class=CBody><p>jQuery namespace to attach functions to jQuery elements.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile id=MSelected>fn</div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([2, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/optionsTutorial-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/optionsTutorial-txt.html
deleted file mode 100644
index d38cd3d9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/optionsTutorial-txt.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Options Tutorial</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="Options_Tutorial"></a>Options Tutorial</div><div class=CBody><p>This document will help you understand how jqPlot&rsquo;s options relate to the API documentation and the jqPlot object itself.&nbsp; For a listing of options available to jqPlot, see <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">jqPlot Options</a> in the jqPlotOptions.txt file.</p><p>The key to effectively using jqPlot is understanding jqPlot&rsquo;s options.&nbsp; The online documentation is API documentation.&nbsp; While it explains what attributes and methods various objects posses, it doesn&rsquo;t explain how to use or set those attributes through options.&nbsp; This tutorial will help explain that.</p><p>Lets assume you are creating a plot like this:</p><blockquote><pre>chart = $.jqplot('chart', dataSeries, optionsObj);</pre></blockquote><p>First, note that you shouldn&rsquo;t try to directly set attributes on the &ldquo;chart&rdquo; object (like chart.grid.shadow) after your call to $.jqplot().&nbsp; At best this won&rsquo;t do anything **(see below).&nbsp; You should pass options in via the &ldquo;optionsObj&rdquo;.</p><p>the optionsObj really represents the plot object (jqPlot object, not to be confused with the $.jqplot function which will create a jqPlot object).&nbsp; Attributes you specify on that object will be merged with attributes in the jqPlot object.&nbsp; The axes, legend, series, etc. are attributes on the jqPlot object.&nbsp; The jqPlot/optionsObj object looks something like (only some attributes shown):</p><blockquote><pre>jqPlot-|
- |-seriesColors
- |-textColor
- |-fontFamily
- |-fontSize
- |-stackSeries
- |-series(Array)-|
- | |-Series1-|
- | | |-lineWidth
- | | |-linePattern
- | | |-shadow
- | | |-showLine
- | | |-showMarker
- | | |-color
- | |-Series2...
- | |-...
- | |-SeriesN
- |
- |-grid(Object)-|
- | |-drawGridLines
- | |-background
- | |-borderColor
- | |-borderWidth
- | |-shadow
- |
- |-title(Object)-|
- | |-text
- | |-show
- | |-fontFamily
- | |-fontSize
- | |-textAlign
- | |-textColor
- |
- |-axes(Object)-|
- | |-xais-|
- | | |-min
- | | |-max
- | | |-numberTicks
- | | |-showTicks
- | | |-showTickMarks
- | | |-pad
- |
- | ... and so on</pre></blockquote><p>The optionsObj should follow the same construction as if it were a jqPlot object (with some exceptions/shortcuts I&rsquo;ll mention in a moment).&nbsp; So generally, when you see something like &ldquo;this.drawGridLines&rdquo; in the grid properties in the docs, just replace &ldquo;this&rdquo; with &ldquo;grid&rdquo; in your options object.&nbsp; So it becomes optionsObj.grid.drawGridLines.&nbsp; Do likewise with the other objects in the plot, replacing &ldquo;this&rdquo;, with the respective attribute on the plot like &ldquo;legend&rdquo; or &ldquo;title&rdquo;.&nbsp; Series and Axes are handled a little different, because series is an array and axes has 4 distinct children &ldquo;xaxis&rdquo;, &ldquo;yaxis&rdquo;, &ldquo;x2axis&rdquo; and &ldquo;y2axis&rdquo;.</p><p>So, to remove the shadow from the grid and change the grid border size you would do:</p><blockquote><pre>optionObj = {grid:{shadow:false, borderWidth:9.0}};</pre></blockquote><p>To do the same as above but also make all the text in the plot red you would do:</p><blockquote><pre>optionObj = {
- textColor:&quot;#ff0000&quot;,
- grid:{shadow:false, borderWidth:9.0}
-}</pre></blockquote><p>Here is a more deeply nested example.&nbsp; Say you want to specify a min and max on your y axis and use a specific color for your second series.&nbsp; That would look like:</p><blockquote><pre>optionsObj = {
- axes:{yaxis:{min:5, max:230}},
- series:[{},{color:&quot;#33ff66&quot;}]
-}</pre></blockquote><p>Note that series options are an array in order of the series data you sent in to your plot.&nbsp; To get to the second series, you have to put an object (even if empty) in place of the first series.</p><p>There is a handy shortcut to assign options to all axes or all series at one go.&nbsp; Use axesDefaults and seriesDefaults.&nbsp; So, if you wanted both x and y axes to start at 0 and you wanted all series to not show markers, you could do:</p><blockquote><pre>optionsObj = {axesDefaults:{min:0}, seriesDefaults:{showMarker:false}}</pre></blockquote><p>Another shortcut is for the plot title.&nbsp; Normally, you would assign options to the title as an object.&nbsp; If you specify a title option as a string, it will assign that to the title.text property automatically.&nbsp; So these two are equivalent:</p><blockquote><pre>optionsObj = {title:{text:&quot;My Plot&quot;}}</pre></blockquote><p>and</p><blockquote><pre>optionsObj = {title:&quot;My Plot&quot;}</pre></blockquote><p>Where things need more explaination is with renderers, plugins and their options.&nbsp; Briefly, what&rsquo;s renderer, what&rsquo;s a plugin.</p><p>A renderer is an object that is used to draw something and gets attached to an existing object in the plot in order to draw it.&nbsp; A plugin does more than just provide drawing functionality to an object.&nbsp; It will do more like calculate a trend line, change the cursor, provide event driven functionality, etc.&nbsp; I consider renderers plugins, but plugins don&rsquo;t have to be renderers.</p><p>So, how do you use renderers, plugins, and specify their options?&nbsp; Some common renderes are for bar charts and category axes.&nbsp; If you want to render your series as a bar chart with each set of bars showing up in a category on the x axis, you do:</p><blockquote><pre>optionsObj = {
- seriesDefaults:{renderer:$.jqplot.BarRenderer},
- axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}
-}</pre></blockquote><p>This replaces the default renderer used for all series in the plot with a bar renderer and the x axis default renderer (but not any other axis) with a category renderer.</p><p>Now, how would I assign options to those renderers?&nbsp; The renderer&rsquo;s attributes may not be present in the pre-existing jqPlot object, they may be specific to the renderer.&nbsp; This is done through the &ldquo;rendererOptions&rdquo; option on the appropriate object.&nbsp; So, if I wanted my bars to be 25 pixels wide, I would do:</p><blockquote><pre>optionsObj = {
- seriesDefaults:{
- renderer:$.jqplot.BarRenderer},
- rendererOptions:{
- barWidth:25
- },
- axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}
-}</pre></blockquote><p>Again, this is using the &ldquo;seriesDefaults&rdquo; option, which will apply options to all series in the plot.&nbsp; You could do the same on any particular series in the plot through the &ldquo;series&rdquo; options array.</p><p>Plugins are free to add their own options.&nbsp; For example, the highlighter plugin has it&rsquo;s own set of options that are unique to it.&nbsp; As a result, it responds to options placed in the &ldquo;highlighter&rdquo; attribute of your options object.&nbsp; So, if I wanted to change the highlighter tooltip to fade in and out slowly and be positioned directly above the point I&rsquo;m highlighting:</p><blockquote><pre>optionsObj = {
- highlighter:{tooltipFadeSpeed:'slow', tooltipLocation:'n'}
-}</pre></blockquote><p>Other plugins, like dragable and trendlines, add their options in with the series.&nbsp; This is because both of those plugins can have different options for different series in the plot.&nbsp; So, if you wanted to specify the color of the dragable and constrain it to drag only on the x axis as well as specify the color of the trend line you could do:</p><blockquote><pre>series:[{
- dragable: {
- color: '#ff3366',
- constrainTo: 'x'
- },
- trendline: {
- color: '#cccccc'
- }
-}]</pre></blockquote><p>This would apply those options to the first series only.&nbsp; If you had 2 series and wanted to turn off dragging and trend lines on the second series, you could do:</p><blockquote><pre>series:[{
- dragable: {
- color: '#ff3366',
- constrainTo: 'x'
- },
- trendline: {
- color: '#cccccc'
- }
-}, {
- isDragable: false,
- trendline:{
- show: false
- }
-}]</pre></blockquote><p>Note, series dragability is turned off with the &ldquo;isDragable&rdquo; option directly on the series itself, not with a suboption of &ldquo;dragable&rdquo;.&nbsp; This may be improved in the future.</p><p>I hope this is helpful.&nbsp; A few key points to remember:</p><ul><li>When you see &ldquo;this&rdquo; in the api docs, you generally replace it with the name of the object (in lowercase) you are looking at in your options object.</li><li>seriesDefaults and axesDefaults are convenient shortcuts.</li><li>to assign options to a renderer, generally use the &ldquo;rendererOptions&rdquo;</li><li>plugins may add their own options attribute, like &ldquo;highlighter&rdquo; or &ldquo;cursor&rdquo;.</li></ul><p>** Note: you can set attributes after the plot is created (like plot.grid.shadow = false), but you&rsquo;ll have to issue the appropriate calls to possibly reinitialize and redraw the plot.&nbsp; jqPlot can definitely handle this to change the plot after creation (this is how the dragable plugin updates the plot data and the trend line plugin recomputes itself when data changes).&nbsp; This hasn&rsquo;t been documented yet, however.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile id=MSelected>Options Tutorial</div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CSection><b>This document is out of date. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-BezierCurveRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-BezierCurveRenderer-js.html
deleted file mode 100644
index 312db432..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-BezierCurveRenderer-js.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.BezierCurveRenderer.js</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.BezierCurveRenderer.js"></a>$.jqplot.<wbr>BezierCurveRenderer.js</div><div class=CBody><p>Renderer which draws lines as stacked bezier curves.&nbsp; Data for the line will not be specified as an array of [x, y] data point values, but as a an array of [start piont, bezier curve] So, the line is specified as: [[xstart, ystart], [cp1x, cp1y, cp2x, cp2y, xend, yend]].</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.BezierCurveRenderer.js" >$.jqplot.<wbr>BezierCurveRenderer.js</a></td><td class=SDescription>Renderer which draws lines as stacked bezier curves. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.BezierCurveRenderer.js.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BezierCurveRenderer.js.setGridData" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">setGridData</a></td><td class=SDescription>converts the user data values to grid coordinates and stores them in the gridData array. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.BezierCurveRenderer.js.makeGridData" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">makeGridData</a></td><td class=SDescription>converts any arbitrary data values to grid coordinates and returns them. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BezierCurveRenderer.js.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BezierCurveRenderer.js.setGridData"></a>setGridData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>converts the user data values to grid coordinates and stores them in the gridData array.&nbsp; Called with scope of a series.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BezierCurveRenderer.js.makeGridData"></a>makeGridData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>converts any arbitrary data values to grid coordinates and returns them.&nbsp; This method exists so that plugins can use a series&rsquo; linerenderer to generate grid data points without overwriting the grid data associated with that series.&nbsp; Called with scope of a series.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>BezierCurveRenderer.js</div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-barRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-barRenderer-js.html
deleted file mode 100644
index 21560d9c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-barRenderer-js.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.BarRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.BarRenderer"></a>$.jqplot.<wbr>BarRenderer</div><div class=CBody><p>A plugin renderer for jqPlot to draw a bar plot.&nbsp; Draws series as a line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.BarRenderer" >$.jqplot.<wbr>BarRenderer</a></td><td class=SDescription>A plugin renderer for jqPlot to draw a bar plot. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.BarRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.barPadding" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">barPadding</a></td><td class=SDescription>Number of pixels between adjacent bars at the same axis value.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.barMargin" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">barMargin</a></td><td class=SDescription>Number of pixels between groups of bars at adjacent axis values.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.barDirection" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">barDirection</a></td><td class=SDescription>&lsquo;vertical&rsquo; = up and down bars, &lsquo;horizontal&rsquo; = side to side bars</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.barWidth" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">barWidth</a></td><td class=SDescription>Width of the bar in pixels (auto by devaul). </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.shadowOffset" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">shadowOffset</a></td><td class=SDescription>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.shadowDepth" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">shadowDepth</a></td><td class=SDescription>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.shadowAlpha" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">shadowAlpha</a></td><td class=SDescription>transparency of the shadow (0 = transparent, 1 = opaque)</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.waterfall" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">waterfall</a></td><td class=SDescription>true to enable waterfall plot.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.groups" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">groups</a></td><td class=SDescription>group bars into this many groups</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.varyBarColor" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">varyBarColor</a></td><td class=SDescription>true to color each bar of a series separately rather than have every bar of a given series the same color. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.highlightMouseOver" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">highlightMouseOver</a></td><td class=SDescription>True to highlight slice when moused over. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.highlightMouseDown" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a slice. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BarRenderer.highlightColors" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">highlightColors</a></td><td class=SDescription>an array of colors to use when highlighting a bar.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BarRenderer.transposedData" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">transposedData</a></td><td class=SDescription>NOT IMPLEMENTED YET. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.barPadding"></a>barPadding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 8</td></tr></table></blockquote><p>Number of pixels between adjacent bars at the same axis value.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.barMargin"></a>barMargin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barMargin = 10</td></tr></table></blockquote><p>Number of pixels between groups of bars at adjacent axis values.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.barDirection"></a>barDirection</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barDirection = 'vertical'</td></tr></table></blockquote><p>&rsquo;vertical&rsquo; = up and down bars, &lsquo;horizontal&rsquo; = side to side bars</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.barWidth"></a>barWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barWidth = null</td></tr></table></blockquote><p>Width of the bar in pixels (auto by devaul).&nbsp; null = calculated automatically.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote><p>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote><p>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.08</td></tr></table></blockquote><p>transparency of the shadow (0 = transparent, 1 = opaque)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.waterfall"></a>waterfall</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.waterfall = false</td></tr></table></blockquote><p>true to enable waterfall plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.groups"></a>groups</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.groups = 1</td></tr></table></blockquote><p>group bars into this many groups</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.varyBarColor"></a>varyBarColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBarColor = false</td></tr></table></blockquote><p>true to color each bar of a series separately rather than have every bar of a given series the same color.&nbsp; If used for non-stacked multiple series bar plots, user should specify a separate &lsquo;seriesColors&rsquo; array for each series.&nbsp; Otherwise, each series will set their bars to the same color array.&nbsp; This option has no Effect for stacked bar charts and is disabled.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight slice when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a slice.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>an array of colors to use when highlighting a bar.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BarRenderer.transposedData"></a>transposedData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.transposedData = true</td></tr></table></blockquote><p>NOT IMPLEMENTED YET.&nbsp; True if this is a horizontal bar plot and x and y values are &ldquo;transposed&rdquo;.&nbsp; Tranposed, or &ldquo;swapped&rdquo;, data is required prior to rev.&nbsp; 894 builds of jqPlot with horizontal bars.&nbsp; Allows backward compatability of bar renderer horizontal bars with old style data sets.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>BarRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 8</td></tr></table></blockquote>Number of pixels between adjacent bars at the same axis value.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barMargin = 10</td></tr></table></blockquote>Number of pixels between groups of bars at adjacent axis values.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barDirection = 'vertical'</td></tr></table></blockquote>&lsquo;vertical&rsquo; = up and down bars, &lsquo;horizontal&rsquo; = side to side bars</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barWidth = null</td></tr></table></blockquote>Width of the bar in pixels (auto by devaul). </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.08</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.waterfall = false</td></tr></table></blockquote>true to enable waterfall plot.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.groups = 1</td></tr></table></blockquote>group bars into this many groups</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBarColor = false</td></tr></table></blockquote>true to color each bar of a series separately rather than have every bar of a given series the same color. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a bar.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.transposedData = true</td></tr></table></blockquote>NOT IMPLEMENTED YET. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-blockRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-blockRenderer-js.html
deleted file mode 100644
index df38cb41..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-blockRenderer-js.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.BlockRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.BlockRenderer"></a>$.jqplot.<wbr>BlockRenderer</div><div class=CBody><p>Plugin renderer to draw a x-y block chart.&nbsp; A Block chart has data points displayed as colored squares with a text label inside.&nbsp; Data must be supplied in the form:</p><blockquote><pre>[[x1, y1, &quot;label 1&quot;, {css}], [x2, y2, &quot;label 2&quot;, {css}], ...]</pre></blockquote><p>The label and css object are optional.&nbsp; If the label is ommitted, the box will collapse unless a css height and/or width is specified.</p><p>The css object is an object specifying css properties such as:</p><blockquote><pre>{background:'#4f98a5', border:'3px solid gray', padding:'1px'}</pre></blockquote><p>Note that css properties specified with the data point override defaults specified with the series.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.BlockRenderer" >$.jqplot.<wbr>BlockRenderer</a></td><td class=SDescription>Plugin renderer to draw a x-y block chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.BlockRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BlockRenderer.css" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">css</a></td><td class=SDescription>default css styles that will be applied to all data blocks. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BlockRenderer.escapeHtml" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">escapeHtml</a></td><td class=SDescription>true to escape html in the box label.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BlockRenderer.insertBreaks" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">insertBreaks</a></td><td class=SDescription>true to turn spaces in data block label into html breaks &lt;br /&gt;.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BlockRenderer.varyBlockColors" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">varyBlockColors</a></td><td class=SDescription>true to vary the color of each block in this series according to the seriesColors array. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.BlockRenderer.Methods" >Methods</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BlockRenderer.moveBlock" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">moveBlock</a></td><td class=SDescription>Moves an individual block. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.css"></a>css</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'}</td></tr></table></blockquote><p>default css styles that will be applied to all data blocks. these values will be overridden by css styles supplied with the individulal data points.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.escapeHtml"></a>escapeHtml</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote><p>true to escape html in the box label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.insertBreaks"></a>insertBreaks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.insertBreaks = true</td></tr></table></blockquote><p>true to turn spaces in data block label into html breaks &lt;br /&gt;.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.varyBlockColors"></a>varyBlockColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBlockColors = false</td></tr></table></blockquote><p>true to vary the color of each block in this series according to the seriesColors array.&nbsp; False to set each block to the color specified on this series.&nbsp; This has no effect if a css background color option is specified in the renderer css options.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.Methods"></a>Methods</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BlockRenderer.moveBlock"></a>moveBlock</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveBlock = function (</td><td class=PParameter nowrap>idx,</td></tr><tr><td></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Moves an individual block.&nbsp; More efficient than redrawing the whole series by calling plot.drawSeries().&nbsp; Properties: idx - the 0 based index of the block or point in this series. x - the x coordinate in data units (value on x axis) to move the block to. y - the y coordinate in data units (value on the y axis) to move the block to. duration - optional parameter to create an animated movement.&nbsp; Can be a number (higher is slower animation) or &lsquo;fast&rsquo;, &lsquo;normal&rsquo; or &lsquo;slow&rsquo;.&nbsp; If not provided, the element is moved without any animation.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>BlockRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'}</td></tr></table></blockquote>default css styles that will be applied to all data blocks. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>true to escape html in the box label.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.insertBreaks = true</td></tr></table></blockquote>true to turn spaces in data block label into html breaks br /.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBlockColors = false</td></tr></table></blockquote>true to vary the color of each block in this series according to the seriesColors array. </div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveBlock = function (</td><td class=PParameter nowrap>idx,</td></tr><tr><td></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves an individual block. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-bubbleRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-bubbleRenderer-js.html
deleted file mode 100644
index 519071ab..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-bubbleRenderer-js.html
+++ /dev/null
@@ -1,71 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.BubbleRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.BubbleRenderer"></a>$.jqplot.<wbr>BubbleRenderer</div><div class=CBody><p>Plugin renderer to draw a bubble chart.&nbsp; A Bubble chart has data points displayed as colored circles with an optional text label inside.&nbsp; To use the bubble renderer, you must include the bubble renderer like:</p><blockquote><pre>&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;../src/plugins/jqplot.bubbleRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Data must be supplied in the form:</p><blockquote><pre>[[x1, y1, r1, &lt;label or {label:'text', color:color}&gt;], ...]</pre></blockquote><p>where the label or options object is optional.</p><p>Note that all bubble colors will be the same unless the &ldquo;varyBubbleColors&rdquo; option is set to true.&nbsp; Colors can be specified in the data array or in the seriesColors array option on the series.&nbsp; If no colors are defined, the default jqPlot series of 16 colors are used.&nbsp; Colors are automatically cycled around again if there are more bubbles than colors.</p><p>Bubbles are autoscaled by default to fit within the chart area while maintaining relative sizes.&nbsp; If the &ldquo;autoscaleBubbles&rdquo; option is set to false, the r(adius) values in the data array a treated as literal pixel values for the radii of the bubbles.</p><p>Properties are passed into the bubble renderer in the rendererOptions object of the series options like:</p><blockquote><pre>seriesDefaults: {
- renderer: $.jqplot.BubbleRenderer,
- rendererOptions: {
- bubbleAlpha: 0.7,
- varyBubbleColors: false
- }
-}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.BubbleRenderer" >$.jqplot.<wbr>BubbleRenderer</a></td><td class=SDescription>Plugin renderer to draw a bubble chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.varyBubbleColors" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">varyBubbleColors</a></td><td class=SDescription>True to vary the color of each bubble in this series according to the seriesColors array. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.autoscaleBubbles" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">autoscaleBubbles</a></td><td class=SDescription>True to scale the bubble radius based on plot size. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.autoscaleMultiplier" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">autoscaleMultiplier</a></td><td class=SDescription>Multiplier the bubble size if autoscaleBubbles is true.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.autoscalePointsFactor" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">autoscalePointsFactor</a></td><td class=SDescription>Factor which decreases bubble size based on how many bubbles on on the chart. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.escapeHtml" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">escapeHtml</a></td><td class=SDescription>True to escape html in bubble label text.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.highlightMouseOver" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">highlightMouseOver</a></td><td class=SDescription>True to highlight bubbles when moused over. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.highlightMouseDown" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a bubble. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.highlightColors" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">highlightColors</a></td><td class=SDescription>An array of colors to use when highlighting a slice. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.bubbleAlpha" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">bubbleAlpha</a></td><td class=SDescription>Alpha transparency to apply to all bubbles in this series.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.highlightAlpha" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">highlightAlpha</a></td><td class=SDescription>Alpha transparency to apply when highlighting bubble. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.bubbleGradients" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">bubbleGradients</a></td><td class=SDescription>True to color the bubbles with gradient fills instead of flat colors. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.BubbleRenderer.showLabels" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">showLabels</a></td><td class=SDescription>True to show labels on bubbles (if any), false to not show.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.varyBubbleColors"></a>varyBubbleColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBubbleColors = true</td></tr></table></blockquote><p>True to vary the color of each bubble in this series according to the seriesColors array.&nbsp; False to set each bubble to the color specified on this series.&nbsp; This has no effect if a css background color option is specified in the renderer css options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.autoscaleBubbles"></a>autoscaleBubbles</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleBubbles = true</td></tr></table></blockquote><p>True to scale the bubble radius based on plot size.&nbsp; False will use the radius value as provided as a raw pixel value for bubble radius.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.autoscaleMultiplier"></a>autoscaleMultiplier</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleMultiplier = 1.0</td></tr></table></blockquote><p>Multiplier the bubble size if autoscaleBubbles is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.autoscalePointsFactor"></a>autoscalePointsFactor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscalePointsFactor = -0.07</td></tr></table></blockquote><p>Factor which decreases bubble size based on how many bubbles on on the chart.&nbsp; 0 means no adjustment for number of bubbles.&nbsp; Negative values will decrease size of bubbles as more bubbles are added.&nbsp; Values between 0 and -0.2 should work well.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.escapeHtml"></a>escapeHtml</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = true</td></tr></table></blockquote><p>True to escape html in bubble label text.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight bubbles when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a bubble.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>An array of colors to use when highlighting a slice.&nbsp; Calculated automatically if not supplied.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.bubbleAlpha"></a>bubbleAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleAlpha = 1.0</td></tr></table></blockquote><p>Alpha transparency to apply to all bubbles in this series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.highlightAlpha"></a>highlightAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightAlpha = null</td></tr></table></blockquote><p>Alpha transparency to apply when highlighting bubble.&nbsp; Set to value of bubbleAlpha by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.bubbleGradients"></a>bubbleGradients</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleGradients = false</td></tr></table></blockquote><p>True to color the bubbles with gradient fills instead of flat colors.&nbsp; NOT AVAILABLE IN IE due to lack of excanvas support for radial gradient fills. will be ignored in IE.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.BubbleRenderer.showLabels"></a>showLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote><p>True to show labels on bubbles (if any), false to not show.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>BubbleRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBubbleColors = true</td></tr></table></blockquote>True to vary the color of each bubble in this series according to the seriesColors array. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleBubbles = true</td></tr></table></blockquote>True to scale the bubble radius based on plot size. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleMultiplier = 1.0</td></tr></table></blockquote>Multiplier the bubble size if autoscaleBubbles is true.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscalePointsFactor = -0.07</td></tr></table></blockquote>Factor which decreases bubble size based on how many bubbles on on the chart. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = true</td></tr></table></blockquote>True to escape html in bubble label text.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight bubbles when moused over. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a bubble. </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>An array of colors to use when highlighting a slice. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleAlpha = 1.0</td></tr></table></blockquote>Alpha transparency to apply to all bubbles in this series.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightAlpha = null</td></tr></table></blockquote>Alpha transparency to apply when highlighting bubble. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleGradients = false</td></tr></table></blockquote>True to color the bubbles with gradient fills instead of flat colors. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>True to show labels on bubbles (if any), false to not show.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisLabelRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisLabelRenderer-js.html
deleted file mode 100644
index 3c8da0cc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisLabelRenderer-js.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CanvasAxisLabelRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CanvasAxisLabelRenderer"></a>$.jqplot.<wbr>CanvasAxisLabelRenderer</div><div class=CBody><p>Renderer to draw axis labels with a canvas element to support advanced featrues such as rotated text.&nbsp; This renderer uses a separate rendering engine to draw the text on the canvas.&nbsp; Two modes of rendering the text are available.&nbsp; If the browser has native font support for canvas fonts (currently Mozila 3.5 and Safari 4), you can enable text rendering with the canvas fillText method.&nbsp; You do so by setting the &ldquo;enableFontSupport&rdquo; option to true.</p><p>Browsers lacking native font support will have the text drawn on the canvas using the Hershey font metrics.&nbsp; Even if the &ldquo;enableFontSupport&rdquo; option is true non-supporting browsers will still render with the Hershey font.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer" >$.jqplot.<wbr>CanvasAxisLabelRenderer</a></td><td class=SDescription>Renderer to draw axis labels with a canvas element to support advanced featrues such as rotated text. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.angle" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">angle</a></td><td class=SDescription>angle of text, measured clockwise from x axis.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.show" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">show</a></td><td class=SDescription>wether or not to show the tick (mark and label).</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.showLabel" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">showLabel</a></td><td class=SDescription>wether or not to show the label.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.label" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">label</a></td><td class=SDescription>label for the axis.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.fontFamily" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">fontFamily</a></td><td class=SDescription>CSS spec for the font-family css attribute. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.fontSize" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">fontSize</a></td><td class=SDescription>CSS spec for font size.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.fontWeight" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">fontWeight</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.fontStretch" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">fontStretch</a></td><td class=SDescription>Multiplier to condense or expand font width. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.textColor" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">textColor</a></td><td class=SDescription>css spec for the color attribute.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.enableFontSupport" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">enableFontSupport</a></td><td class=SDescription>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisLabelRenderer.pt2px" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">pt2px</a></td><td class=SDescription>Point to pixel scaling factor, used for computing height of bounding box around a label. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.angle"></a>angle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote><p>angle of text, measured clockwise from x axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the tick (mark and label).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.showLabel"></a>showLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote><p>wether or not to show the label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote><p>label for the axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.fontFamily"></a>fontFamily</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote><p>CSS spec for the font-family css attribute.&nbsp; Applies only to browsers supporting native font rendering in the canvas tag.&nbsp; Currently Mozilla 3.5 and Safari 4.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '11pt'</td></tr></table></blockquote><p>CSS spec for font size.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.fontWeight"></a>fontWeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>CSS spec for fontWeight: normal, bold, bolder, lighter or a number 100</td><td class=CDLDescription>900</td></tr></table></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.fontStretch"></a>fontStretch</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote><p>Multiplier to condense or expand font width.&nbsp; Applies only to browsers which don&rsquo;t support canvas native font rendering.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.textColor"></a>textColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote><p>css spec for the color attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.enableFontSupport"></a>enableFontSupport</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote><p>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+.&nbsp; If true, label will be drawn with canvas tag native support for fonts.&nbsp; If false, label will be drawn with Hershey font metrics.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisLabelRenderer.pt2px"></a>pt2px</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote><p>Point to pixel scaling factor, used for computing height of bounding box around a label.&nbsp; The labels text renderer has a default setting of 1.4, which should be suitable for most fonts.&nbsp; Leave as null to use default.&nbsp; If tops of letters appear clipped, increase this.&nbsp; If bounding box seems too big, decrease.&nbsp; This is an issue only with the native font renderering capabilities of Mozilla 3.5 and Safari 4 since they do not provide a method to determine the font height.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>CanvasAxisLabelRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>label for the axis.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>CSS spec for the font-family css attribute. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '11pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote></div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisTickRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisTickRenderer-js.html
deleted file mode 100644
index bb303eea..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasAxisTickRenderer-js.html
+++ /dev/null
@@ -1,79 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CanvasAxisTickRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CanvasAxisTickRenderer"></a>$.jqplot.<wbr>CanvasAxisTickRenderer</div><div class=CBody><p>Renderer to draw axis ticks with a canvas element to support advanced featrues such as rotated text.&nbsp; This renderer uses a separate rendering engine to draw the text on the canvas.&nbsp; Two modes of rendering the text are available.&nbsp; If the browser has native font support for canvas fonts (currently Mozila 3.5 and Safari 4), you can enable text rendering with the canvas fillText method.&nbsp; You do so by setting the &ldquo;enableFontSupport&rdquo; option to true.</p><p>Browsers lacking native font support will have the text drawn on the canvas using the Hershey font metrics.&nbsp; Even if the &ldquo;enableFontSupport&rdquo; option is true non-supporting browsers will still render with the Hershey font.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer" >$.jqplot.<wbr>CanvasAxisTickRenderer</a></td><td class=SDescription>Renderer to draw axis ticks with a canvas element to support advanced featrues such as rotated text. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.mark" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">mark</a></td><td class=SDescription>tick mark on the axis. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.showMark" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">showMark</a></td><td class=SDescription>wether or not to show the mark on the axis.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.showGridline" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">showGridline</a></td><td class=SDescription>wether or not to draw the gridline on the grid at this tick.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.isMinorTick" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">isMinorTick</a></td><td class=SDescription>if this is a minor tick.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.angle" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">angle</a></td><td class=SDescription>angle of text, measured clockwise from x axis.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.markSize" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">markSize</a></td><td class=SDescription>Length of the tick marks in pixels. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.show" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">show</a></td><td class=SDescription>wether or not to show the tick (mark and label).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.showLabel" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">showLabel</a></td><td class=SDescription>wether or not to show the label.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.labelPosition" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">labelPosition</a></td><td class=SDescription>&lsquo;auto&rsquo;, &lsquo;start&rsquo;, &lsquo;middle&rsquo; or &lsquo;end&rsquo;. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.formatter" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">formatter</a></td><td class=SDescription>A class of a formatter for the tick text. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.formatString" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">formatString</a></td><td class=SDescription>string passed to the formatter.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.prefix" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">prefix</a></td><td class=SDescription>String to prepend to the tick label. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.fontFamily" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">fontFamily</a></td><td class=SDescription>css spec for the font-family css attribute.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.fontSize" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">fontSize</a></td><td class=SDescription>CSS spec for font size.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.fontWeight" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">fontWeight</a></td><td class=SDescription>CSS spec for fontWeight</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.fontStretch" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">fontStretch</a></td><td class=SDescription>Multiplier to condense or expand font width. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.textColor" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">textColor</a></td><td class=SDescription>css spec for the color attribute.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.enableFontSupport" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">enableFontSupport</a></td><td class=SDescription>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasAxisTickRenderer.pt2px" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">pt2px</a></td><td class=SDescription>Point to pixel scaling factor, used for computing height of bounding box around a label. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.mark"></a>mark</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote><p>tick mark on the axis.&nbsp; One of &lsquo;inside&rsquo;, &lsquo;outside&rsquo;, &lsquo;cross&rsquo;, &lsquo;&rsquo; or null.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.showMark"></a>showMark</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote><p>wether or not to show the mark on the axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.showGridline"></a>showGridline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote><p>wether or not to draw the gridline on the grid at this tick.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.isMinorTick"></a>isMinorTick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote><p>if this is a minor tick.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.angle"></a>angle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote><p>angle of text, measured clockwise from x axis.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.markSize"></a>markSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 4</td></tr></table></blockquote><p>Length of the tick marks in pixels.&nbsp; For &lsquo;cross&rsquo; style, length will be stoked above and below axis, so total length will be twice this.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote><p>wether or not to show the tick (mark and label).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.showLabel"></a>showLabel</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote><p>wether or not to show the label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.labelPosition"></a>labelPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'auto'</td></tr></table></blockquote><p>&rsquo;auto&rsquo;, &lsquo;start&rsquo;, &lsquo;middle&rsquo; or &lsquo;end&rsquo;.&nbsp; Whether tick label should be positioned so the start, middle, or end of the tick mark.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.formatter"></a>formatter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote><p>A class of a formatter for the tick text.&nbsp; The default $.jqplot.DefaultTickFormatter uses sprintf.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.formatString"></a>formatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote><p>string passed to the formatter.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.prefix"></a>prefix</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote><p>String to prepend to the tick label.&nbsp; Prefix is prepended to the formatted tick label.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.fontFamily"></a>fontFamily</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote><p>css spec for the font-family css attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.fontSize"></a>fontSize</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '10pt'</td></tr></table></blockquote><p>CSS spec for font size.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.fontWeight"></a>fontWeight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote><p>CSS spec for fontWeight</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.fontStretch"></a>fontStretch</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote><p>Multiplier to condense or expand font width.&nbsp; Applies only to browsers which don&rsquo;t support canvas native font rendering.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.textColor"></a>textColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote><p>css spec for the color attribute.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.enableFontSupport"></a>enableFontSupport</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote><p>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+.&nbsp; If true, tick label will be drawn with canvas tag native support for fonts.&nbsp; If false, tick label will be drawn with Hershey font metrics.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasAxisTickRenderer.pt2px"></a>pt2px</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote><p>Point to pixel scaling factor, used for computing height of bounding box around a label.&nbsp; The labels text renderer has a default setting of 1.4, which should be suitable for most fonts.&nbsp; Leave as null to use default.&nbsp; If tops of letters appear clipped, increase this.&nbsp; If bounding box seems too big, decrease.&nbsp; This is an issue only with the native font renderering capabilities of Mozilla 3.5 and Safari 4 since they do not provide a method to determine the font height.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>CanvasAxisTickRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 4</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'auto'</td></tr></table></blockquote>&lsquo;auto&rsquo;, &lsquo;start&rsquo;, &lsquo;middle&rsquo; or &lsquo;end&rsquo;. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '10pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote>CSS spec for fontWeight</div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasOverlay-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasOverlay-js.html
deleted file mode 100644
index d5998a1c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-canvasOverlay-js.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CanvasOverlay</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CanvasOverlay"></a>$.jqplot.<wbr>CanvasOverlay</div><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.CanvasOverlay" >$.jqplot.<wbr>CanvasOverlay</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.objects" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">objects</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.name" >name</a></td><td class=SDescription>Optional name for the overlay object. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.show" >show</a></td><td class=SDescription>true to show (draw), false to not draw.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.lineWidth" >lineWidth</a></td><td class=SDescription>Width of the line.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.lineCap" >lineCap</a></td><td class=SDescription>Type of ending placed on the line [&lsquo;round&rsquo;, &lsquo;butt&rsquo;, &lsquo;square&rsquo;]</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.color" >color</a></td><td class=SDescription>color of the line</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.shadow" >shadow</a></td><td class=SDescription>wether or not to draw a shadow on the line</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.shadowAngle" >shadowAngle</a></td><td class=SDescription>Shadow angle in degrees</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.shadowOffset" >shadowOffset</a></td><td class=SDescription>Shadow offset from line in pixels</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.shadowDepth" >shadowDepth</a></td><td class=SDescription>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.shadowAlpha" >shadowAlpha</a></td><td class=SDescription>Alpha channel transparency of shadow. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.xaxis" >xaxis</a></td><td class=SDescription>X axis to use for positioning/scaling the line.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.yaxis" >yaxis</a></td><td class=SDescription>Y axis to use for positioning/scaling the line.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.showTooltip" >showTooltip</a></td><td class=SDescription>Show a tooltip with data point values.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.showTooltipPrecision" >showTooltipPrecision</a></td><td class=SDescription>Controls how close to line cursor must be to show tooltip. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.tooltipLocation" >tooltipLocation</a></td><td class=SDescription>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.fadeTooltip" >fadeTooltip</a></td><td class=SDescription>true = fade in/out tooltip, flase = show/hide tooltip</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.tooltipFadeSpeed" >tooltipFadeSpeed</a></td><td class=SDescription>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.tooltipOffset" >tooltipOffset</a></td><td class=SDescription>Pixel offset of tooltip from the highlight.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CanvasOverlay.tooltipFormatString" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">tooltipFormatString</a></td><td class=SDescription>Format string passed the x and y values of the cursor on the line. </td></tr><tr class="SClass"><td class=SEntry><a href="#Line" >Line</a></td><td class=SDescription>A straight line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Line.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#Line.start" >start</a></td><td class=SDescription>[x, y] coordinates for the start of the line.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#Line.stop" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">stop</a></td><td class=SDescription>[x, y] coordinates for the end of the line.</td></tr><tr class="SClass"><td class=SEntry><a href="#HorizontalLine" >HorizontalLine</a></td><td class=SDescription>A straight horizontal line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#HorizontalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#HorizontalLine.y" >y</a></td><td class=SDescription>y value to position the line</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#HorizontalLine.xmin" >xmin</a></td><td class=SDescription>x value for the start of the line, null to scale to axis min.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#HorizontalLine.xmax" >xmax</a></td><td class=SDescription>x value for the end of the line, null to scale to axis max.</td></tr><tr class="SClass"><td class=SEntry><a href="#DashedHorizontalLine" >DashedHorizontalLine</a></td><td class=SDescription>A straight dashed horizontal line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#DashedHorizontalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#DashedHorizontalLine.dashPattern" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">dashPattern</a></td><td class=SDescription>Array of line, space settings in pixels. </td></tr><tr class="SClass"><td class=SEntry><a href="#VerticalLine" >VerticalLine</a></td><td class=SDescription>A straight vertical line.</td></tr><tr class="SClass"><td class=SEntry><a href="#DashedVerticalLine" >DashedVerticalLine</a></td><td class=SDescription>A straight dashed vertical line.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#DashedVerticalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#DashedVerticalLine.dashPattern" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">dashPattern</a></td><td class=SDescription>Array of line, space settings in pixels. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.objects"></a>objects</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.objects = []</td></tr></table></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.name"></a>name</h3><div class=CBody><p>Optional name for the overlay object.&nbsp; Can be later used to retrieve the object by name.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.show"></a>show</h3><div class=CBody><p>true to show (draw), false to not draw.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.lineWidth"></a>lineWidth</h3><div class=CBody><p>Width of the line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.lineCap"></a>lineCap</h3><div class=CBody><p>Type of ending placed on the line [&lsquo;round&rsquo;, &lsquo;butt&rsquo;, &lsquo;square&rsquo;]</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.color"></a>color</h3><div class=CBody><p>color of the line</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.shadow"></a>shadow</h3><div class=CBody><p>wether or not to draw a shadow on the line</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.shadowAngle"></a>shadowAngle</h3><div class=CBody><p>Shadow angle in degrees</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.shadowOffset"></a>shadowOffset</h3><div class=CBody><p>Shadow offset from line in pixels</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.shadowDepth"></a>shadowDepth</h3><div class=CBody><p>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><p>Alpha channel transparency of shadow.&nbsp; 0 = transparent.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.xaxis"></a>xaxis</h3><div class=CBody><p>X axis to use for positioning/scaling the line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.yaxis"></a>yaxis</h3><div class=CBody><p>Y axis to use for positioning/scaling the line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.showTooltip"></a>showTooltip</h3><div class=CBody><p>Show a tooltip with data point values.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.showTooltipPrecision"></a>showTooltipPrecision</h3><div class=CBody><p>Controls how close to line cursor must be to show tooltip.&nbsp; Higher number = closer to line, lower number = farther from line.&nbsp; 1.0 = cursor must be over line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.tooltipLocation"></a>tooltipLocation</h3><div class=CBody><p>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.fadeTooltip"></a>fadeTooltip</h3><div class=CBody><p>true = fade in/out tooltip, flase = show/hide tooltip</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.tooltipFadeSpeed"></a>tooltipFadeSpeed</h3><div class=CBody><p>&rsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.tooltipOffset"></a>tooltipOffset</h3><div class=CBody><p>Pixel offset of tooltip from the highlight.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CanvasOverlay.tooltipFormatString"></a>tooltipFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>tooltipFormatString: '%d, %d' }</td></tr></table></blockquote><p>Format string passed the x and y values of the cursor on the line. e.g., &lsquo;Dogs: %.2f, Cats: %d&rsquo;.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="Line"></a>Line</h2><div class=CBody><p>A straight line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#Line.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#Line.start" >start</a></td><td class=SDescription>[x, y] coordinates for the start of the line.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#Line.stop" id=link6 onMouseOver="ShowTip(event, 'tt3', 'link6')" onMouseOut="HideTip('tt3')">stop</a></td><td class=SDescription>[x, y] coordinates for the end of the line.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Line.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Line.start"></a>start</h3><div class=CBody><p>[x, y] coordinates for the start of the line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="Line.stop"></a>stop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>stop: [] }</td></tr></table></blockquote><p>[x, y] coordinates for the end of the line.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="HorizontalLine"></a>HorizontalLine</h2><div class=CBody><p>A straight horizontal line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#HorizontalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#HorizontalLine.y" >y</a></td><td class=SDescription>y value to position the line</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#HorizontalLine.xmin" >xmin</a></td><td class=SDescription>x value for the start of the line, null to scale to axis min.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#HorizontalLine.xmax" >xmax</a></td><td class=SDescription>x value for the end of the line, null to scale to axis max.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="HorizontalLine.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="HorizontalLine.y"></a>y</h3><div class=CBody><p>y value to position the line</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="HorizontalLine.xmin"></a>xmin</h3><div class=CBody><p>x value for the start of the line, null to scale to axis min.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="HorizontalLine.xmax"></a>xmax</h3><div class=CBody><p>x value for the end of the line, null to scale to axis max.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="DashedHorizontalLine"></a>DashedHorizontalLine</h2><div class=CBody><p>A straight dashed horizontal line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#DashedHorizontalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#DashedHorizontalLine.dashPattern" id=link7 onMouseOver="ShowTip(event, 'tt4', 'link7')" onMouseOut="HideTip('tt4')">dashPattern</a></td><td class=SDescription>Array of line, space settings in pixels. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="DashedHorizontalLine.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="DashedHorizontalLine.dashPattern"></a>dashPattern</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote><p>Array of line, space settings in pixels.&nbsp; Default is 8 pixel of line, 8 pixel of space.&nbsp; Note, limit to a 2 element array b/c of bug with higher order arrays.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="VerticalLine"></a>VerticalLine</h2><div class=CBody><p>A straight vertical line.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="DashedVerticalLine"></a>DashedVerticalLine</h2><div class=CBody><p>A straight dashed vertical line.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#DashedVerticalLine.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#DashedVerticalLine.dashPattern" id=link8 onMouseOver="ShowTip(event, 'tt5', 'link8')" onMouseOut="HideTip('tt5')">dashPattern</a></td><td class=SDescription>Array of line, space settings in pixels. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="DashedVerticalLine.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="DashedVerticalLine.dashPattern"></a>dashPattern</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote><p>Array of line, space settings in pixels.&nbsp; Default is 8 pixel of line, 8 pixel of space.&nbsp; Note, limit to a 2 element array b/c of bug with higher order arrays.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>CanvasOverlay</div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.objects = []</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>tooltipFormatString: '%d, %d' }</td></tr></table></blockquote>Format string passed the x and y values of the cursor on the line. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>stop: [] }</td></tr></table></blockquote>[x, y] coordinates for the end of the line.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-categoryAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-categoryAxisRenderer-js.html
deleted file mode 100644
index 993845a7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-categoryAxisRenderer-js.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CategoryAxisRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CategoryAxisRenderer"></a>$.jqplot.<wbr>CategoryAxisRenderer</div><div class=CBody><p>A plugin for jqPlot to render a category style axis, with equal pixel spacing between y data values of a series.</p><p>To use this renderer, include the plugin in your source</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot; src=&quot;plugins/jqplot.categoryAxisRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>and supply the appropriate options to your plot</p><blockquote><pre>{axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.CategoryAxisRenderer" >$.jqplot.<wbr>CategoryAxisRenderer</a></td><td class=SDescription>A plugin for jqPlot to render a category style axis, with equal pixel spacing between y data values of a series.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.CategoryAxisRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.CategoryAxisRenderer.sortMergedLabels" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">sortMergedLabels</a></td><td class=SDescription>True to sort tick labels when labels are created by merging x axis values from multiple series. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.CategoryAxisRenderer.tickRenderer" >tickRenderer</a></td><td class=SDescription>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="../jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">$.jqplot.AxisTickRenderer</a>. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CategoryAxisRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CategoryAxisRenderer.sortMergedLabels"></a>sortMergedLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortMergedLabels = false</td></tr></table></blockquote><p>True to sort tick labels when labels are created by merging x axis values from multiple series.&nbsp; That is, say you have two series like:</p><blockquote><pre>line1 = [[2006, 4], [2008, 9], [2009, 16]];
-line2 = [[2006, 3], [2007, 7], [2008, 6]];</pre></blockquote><p>If no label array is specified, tick labels will be collected from the x values of the series.&nbsp; With sortMergedLabels set to true, tick labels will be:</p><blockquote><pre>[2006, 2007, 2008, 2009]</pre></blockquote><p>With sortMergedLabels set to false, tick labels will be:</p><blockquote><pre>[2006, 2008, 2009, 2007]</pre></blockquote><p>Note, this property is specified on the renderOptions for the axes when creating a plot:</p><blockquote><pre>axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer, rendererOptions:{sortMergedLabels:true}}}</pre></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.CategoryAxisRenderer.tickRenderer"></a>tickRenderer</h3><div class=CBody><p>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="../jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link3 onMouseOver="ShowTip(event, 'tt2', 'link3')" onMouseOut="HideTip('tt2')">$.jqplot.AxisTickRenderer</a>. this.tickRenderer = $.jqplot.AxisTickRenderer; this.labelRenderer = $.jqplot.AxisLabelRenderer;</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>CategoryAxisRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortMergedLabels = false</td></tr></table></blockquote>True to sort tick labels when labels are created by merging x axis values from multiple series. </div></div><div class=CToolTip id="tt2"><div class=CClass>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ciParser-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ciParser-js.html
deleted file mode 100644
index de2638ae..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ciParser-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.ciParser</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.ciParser"></a>$.jqplot.<wbr>ciParser</div><div class=CBody><p>Data Renderer function which converts a custom JSON data object into jqPlot data format.&nbsp; Set this as a callable on the jqplot dataRenderer plot option:</p><blockquote><pre>plot = $.jqplot('mychart', [data], { dataRenderer: $.jqplot.ciParser, ... });</pre></blockquote><p>Where data is an object in JSON format or a JSON encoded string conforming to the City Index API spec.</p><p>Note that calling the renderer function is handled internally by jqPlot.&nbsp; The user does not have to call the function.&nbsp; The parameters described below will automatically be passed to the ciParser function.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>data</td><td class=CDLDescription>JSON encoded string or object.</td></tr><tr><td class=CDLEntry>plot</td><td class=CDLDescription>reference to jqPlot Plot object.</td></tr></table><h4 class=CHeading>Returns</h4><p>data array in jqPlot format.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>ciParser</div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-cursor-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-cursor-js.html
deleted file mode 100644
index 1bfe3285..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-cursor-js.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.Cursor</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.Cursor"></a>$.jqplot.<wbr>Cursor</div><div class=CBody><p>Plugin class representing the cursor as displayed on the plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.Cursor" >$.jqplot.<wbr>Cursor</a></td><td class=SDescription>Plugin class representing the cursor as displayed on the plot.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Cursor.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.style" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">style</a></td><td class=SDescription>CSS spec for cursor style</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.show" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">show</a></td><td class=SDescription>wether to show the cursor or not.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.showTooltip" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">showTooltip</a></td><td class=SDescription>show a cursor position tooltip. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.followMouse" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">followMouse</a></td><td class=SDescription>Tooltip follows the mouse, it is not at a fixed location. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.tooltipLocation" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">tooltipLocation</a></td><td class=SDescription>Where to position tooltip. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.tooltipOffset" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">tooltipOffset</a></td><td class=SDescription>Pixel offset of tooltip from the grid boudaries or cursor center.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.showTooltipGridPosition" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">showTooltipGridPosition</a></td><td class=SDescription>show the grid pixel coordinates of the mouse.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.showTooltipUnitPosition" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">showTooltipUnitPosition</a></td><td class=SDescription>show the unit (data) coordinates of the mouse.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.showTooltipDataPosition" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">showTooltipDataPosition</a></td><td class=SDescription>Used with showVerticalLine to show intersecting data points in the tooltip.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.tooltipFormatString" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">tooltipFormatString</a></td><td class=SDescription>sprintf format string for the tooltip. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.useAxesFormatters" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">useAxesFormatters</a></td><td class=SDescription>Use the x and y axes formatters to format the text in the tooltip.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.tooltipAxisGroups" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">tooltipAxisGroups</a></td><td class=SDescription>Show position for the specified axes. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.zoom" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">zoom</a></td><td class=SDescription>Enable plot zooming.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.looseZoom" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">looseZoom</a></td><td class=SDescription>Will expand zoom range to provide more rounded tick values. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.clickReset" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">clickReset</a></td><td class=SDescription>Will reset plot zoom if single click on plot without drag.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.dblClickReset" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">dblClickReset</a></td><td class=SDescription>Will reset plot zoom if double click on plot without drag.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.showVerticalLine" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">showVerticalLine</a></td><td class=SDescription>draw a vertical line across the plot which follows the cursor. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.showHorizontalLine" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">showHorizontalLine</a></td><td class=SDescription>draw a horizontal line across the plot which follows the cursor.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.constrainZoomTo" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">constrainZoomTo</a></td><td class=SDescription>&lsquo;none&rsquo;, &lsquo;x&rsquo; or &lsquo;y&rsquo;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.intersectionThreshold" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">intersectionThreshold</a></td><td class=SDescription>pixel distance from data point or marker to consider cursor lines intersecting with point. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.showCursorLegend" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">showCursorLegend</a></td><td class=SDescription>Replace the plot legend with an enhanced legend displaying intersection information.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.cursorLegendFormatString" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">cursorLegendFormatString</a></td><td class=SDescription>Format string used in the cursor legend. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.constrainOutsideZoom" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">constrainOutsideZoom</a></td><td class=SDescription>True to limit actual zoom area to edges of grid, even when zooming outside of plot area. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Cursor.showTooltipOutsideZoom" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">showTooltipOutsideZoom</a></td><td class=SDescription>True will keep updating the tooltip when zooming of the grid.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Cursor.methods" >methods</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">$.jqplot.<wbr>Cursor.<wbr>zoomProxy</a></td><td class=SDescription>links targetPlot to controllerPlot so that plot zooming of targetPlot will be controlled by zooming on the controllerPlot. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.style"></a>style</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'crosshair'</td></tr></table></blockquote><p>CSS spec for cursor style</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote><p>wether to show the cursor or not.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showTooltip"></a>showTooltip</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote><p>show a cursor position tooltip.&nbsp; Location of the tooltip will be controlled by followMouse and tooltipLocation.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.followMouse"></a>followMouse</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.followMouse = false</td></tr></table></blockquote><p>Tooltip follows the mouse, it is not at a fixed location.&nbsp; Tooltip will show on the grid at the location given by tooltipLocation, offset from the grid edge by tooltipOffset.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.tooltipLocation"></a>tooltipLocation</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'se'</td></tr></table></blockquote><p>Where to position tooltip.&nbsp; If followMouse is true, this is relative to the cursor, otherwise, it is relative to the grid.&nbsp; One of &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.tooltipOffset"></a>tooltipOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 6</td></tr></table></blockquote><p>Pixel offset of tooltip from the grid boudaries or cursor center.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showTooltipGridPosition"></a>showTooltipGridPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipGridPosition = false</td></tr></table></blockquote><p>show the grid pixel coordinates of the mouse.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showTooltipUnitPosition"></a>showTooltipUnitPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipUnitPosition = true</td></tr></table></blockquote><p>show the unit (data) coordinates of the mouse.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showTooltipDataPosition"></a>showTooltipDataPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipDataPosition = false</td></tr></table></blockquote><p>Used with showVerticalLine to show intersecting data points in the tooltip.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.tooltipFormatString"></a>tooltipFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.4P, %.4P'</td></tr></table></blockquote><p>sprintf format string for the tooltip.&nbsp; Uses Ash Searle&rsquo;s javascript sprintf implementation found here: <a href="http://hexmen.com/blog/2007/03/printf-sprintf/" class=LURL target=_top>http://hexmen.com/blog/2007/03/printf-sprintf/</a> See <a href="http://perldoc.perl.org/functions/sprintf.html" class=LURL target=_top>http://perldoc.perl.org/functions/sprintf.html</a> for reference Note, if showTooltipDataPosition is true, the default tooltipFormatString will be set to the cursorLegendFormatString, not the default given here.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.useAxesFormatters"></a>useAxesFormatters</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote><p>Use the x and y axes formatters to format the text in the tooltip.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.tooltipAxisGroups"></a>tooltipAxisGroups</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxisGroups = []</td></tr></table></blockquote><p>Show position for the specified axes.&nbsp; This is an array like [[&lsquo;xaxis&rsquo;, &lsquo;yaxis&rsquo;], [&lsquo;xaxis&rsquo;, &lsquo;y2axis&rsquo;]] Default is to compute automatically for all visible axes.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.zoom"></a>zoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.zoom = false</td></tr></table></blockquote><p>Enable plot zooming.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.looseZoom"></a>looseZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.looseZoom = true</td></tr></table></blockquote><p>Will expand zoom range to provide more rounded tick values.&nbsp; Works only with linear, log and date axes.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.clickReset"></a>clickReset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clickReset = false</td></tr></table></blockquote><p>Will reset plot zoom if single click on plot without drag.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.dblClickReset"></a>dblClickReset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dblClickReset = true</td></tr></table></blockquote><p>Will reset plot zoom if double click on plot without drag.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showVerticalLine"></a>showVerticalLine</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showVerticalLine = false</td></tr></table></blockquote><p>draw a vertical line across the plot which follows the cursor.&nbsp; When the line is near a data point, a special legend and/or tooltip can be updated with the data values.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showHorizontalLine"></a>showHorizontalLine</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showHorizontalLine = false</td></tr></table></blockquote><p>draw a horizontal line across the plot which follows the cursor.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.constrainZoomTo"></a>constrainZoomTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainZoomTo = 'none'</td></tr></table></blockquote><p>&rsquo;none&rsquo;, &lsquo;x&rsquo; or &lsquo;y&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.intersectionThreshold"></a>intersectionThreshold</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intersectionThreshold = 2</td></tr></table></blockquote><p>pixel distance from data point or marker to consider cursor lines intersecting with point.&nbsp; If data point markers are not shown, this should be &gt;= 1 or will often miss point intersections.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showCursorLegend"></a>showCursorLegend</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showCursorLegend = false</td></tr></table></blockquote><p>Replace the plot legend with an enhanced legend displaying intersection information.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.cursorLegendFormatString"></a>cursorLegendFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.cursorLegendFormatString = $.jqplot.Cursor.cursorLegendFormatString</td></tr></table></blockquote><p>Format string used in the cursor legend.&nbsp; If showTooltipDataPosition is true, this will also be the default format string used by tooltipFormatString.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.constrainOutsideZoom"></a>constrainOutsideZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainOutsideZoom = true</td></tr></table></blockquote><p>True to limit actual zoom area to edges of grid, even when zooming outside of plot area.&nbsp; That is, can&rsquo;t zoom out by mousing outside plot.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.showTooltipOutsideZoom"></a>showTooltipOutsideZoom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipOutsideZoom = false</td></tr></table></blockquote><p>True will keep updating the tooltip when zooming of the grid.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.methods"></a>methods</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy"></a>$.jqplot.<wbr>Cursor.<wbr>zoomProxy</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.Cursor.zoomProxy = function(</td><td class=PParameter nowrap>targetPlot,</td></tr><tr><td></td><td class=PParameter nowrap>controllerPlot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>links targetPlot to controllerPlot so that plot zooming of targetPlot will be controlled by zooming on the controllerPlot. controllerPlot will not actually zoom, but acts as an overview plot.&nbsp; Note, the zoom options must be set to true for zoomProxy to work.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>Cursor</div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'crosshair'</td></tr></table></blockquote>CSS spec for cursor style</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>wether to show the cursor or not.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>show a cursor position tooltip. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.followMouse = false</td></tr></table></blockquote>Tooltip follows the mouse, it is not at a fixed location. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'se'</td></tr></table></blockquote>Where to position tooltip. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 6</td></tr></table></blockquote>Pixel offset of tooltip from the grid boudaries or cursor center.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipGridPosition = false</td></tr></table></blockquote>show the grid pixel coordinates of the mouse.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipUnitPosition = true</td></tr></table></blockquote>show the unit (data) coordinates of the mouse.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipDataPosition = false</td></tr></table></blockquote>Used with showVerticalLine to show intersecting data points in the tooltip.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.4P, %.4P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxisGroups = []</td></tr></table></blockquote>Show position for the specified axes. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.zoom = false</td></tr></table></blockquote>Enable plot zooming.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.looseZoom = true</td></tr></table></blockquote>Will expand zoom range to provide more rounded tick values. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clickReset = false</td></tr></table></blockquote>Will reset plot zoom if single click on plot without drag.</div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dblClickReset = true</td></tr></table></blockquote>Will reset plot zoom if double click on plot without drag.</div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showVerticalLine = false</td></tr></table></blockquote>draw a vertical line across the plot which follows the cursor. </div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showHorizontalLine = false</td></tr></table></blockquote>draw a horizontal line across the plot which follows the cursor.</div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainZoomTo = 'none'</td></tr></table></blockquote>&lsquo;none&rsquo;, &lsquo;x&rsquo; or &lsquo;y&rsquo;</div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intersectionThreshold = 2</td></tr></table></blockquote>pixel distance from data point or marker to consider cursor lines intersecting with point. </div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showCursorLegend = false</td></tr></table></blockquote>Replace the plot legend with an enhanced legend displaying intersection information.</div></div><div class=CToolTip id="tt22"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.cursorLegendFormatString = $.jqplot.Cursor.cursorLegendFormatString</td></tr></table></blockquote>Format string used in the cursor legend. </div></div><div class=CToolTip id="tt23"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainOutsideZoom = true</td></tr></table></blockquote>True to limit actual zoom area to edges of grid, even when zooming outside of plot area. </div></div><div class=CToolTip id="tt24"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipOutsideZoom = false</td></tr></table></blockquote>True will keep updating the tooltip when zooming of the grid.</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.Cursor.zoomProxy = function(</td><td class=PParameter nowrap>targetPlot,</td></tr><tr><td></td><td class=PParameter nowrap>controllerPlot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>links targetPlot to controllerPlot so that plot zooming of targetPlot will be controlled by zooming on the controllerPlot. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dateAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dateAxisRenderer-js.html
deleted file mode 100644
index f87d8274..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dateAxisRenderer-js.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.DateAxisRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.DateAxisRenderer"></a>$.jqplot.<wbr>DateAxisRenderer</div><div class=CBody><p>A plugin for a jqPlot to render an axis as a series of date values.&nbsp; This renderer has no options beyond those supplied by the <a href="../jqplot-core-js.html#Axis" class=LClass id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">Axis</a> class.&nbsp; It supplies it&rsquo;s own tick formatter, so the tickOptions.formatter option should not be overridden.</p><p>Thanks to Ken Synder for his enhanced Date instance methods which are included with this code <a href="http://kendsnyder.com/sandbox/date/" class=LURL target=_top>http://kendsnyder.com/sandbox/date/</a>.</p><p>To use this renderer, include the plugin in your source</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot; src=&quot;plugins/jqplot.dateAxisRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>and supply the appropriate options to your plot</p><blockquote><pre>{axes:{xaxis:{renderer:$.jqplot.DateAxisRenderer}}}</pre></blockquote><p>Dates can be passed into the axis in almost any recognizable value and will be parsed.&nbsp; They will be rendered on the axis in the format specified by tickOptions.formatString.&nbsp; e.g. tickOptions.formatString = &lsquo;%Y-%m-%d&rsquo;.</p><p>Accecptable format codes are:</p><blockquote><pre>Code Result Description
- == Years ==
-%Y 2008 Four-digit year
-%y 08 Two-digit year
- == Months ==
-%m 09 Two-digit month
-%#m 9 One or two-digit month
-%B September Full month name
-%b Sep Abbreviated month name
- == Days ==
-%d 05 Two-digit day of month
-%#d 5 One or two-digit day of month
-%e 5 One or two-digit day of month
-%A Sunday Full name of the day of the week
-%a Sun Abbreviated name of the day of the week
-%w 0 Number of the day of the week (0 = Sunday, 6 = Saturday)
-%o th The ordinal suffix string following the day of the month
- == Hours ==
-%H 23 Hours in 24-hour format (two digits)
-%#H 3 Hours in 24-hour integer format (one or two digits)
-%I 11 Hours in 12-hour format (two digits)
-%#I 3 Hours in 12-hour integer format (one or two digits)
-%p PM AM or PM
- == Minutes ==
-%M 09 Minutes (two digits)
-%#M 9 Minutes (one or two digits)
- == Seconds ==
-%S 02 Seconds (two digits)
-%#S 2 Seconds (one or two digits)
-%s 1206567625723 Unix timestamp (Seconds past 1970-01-01 00:00:00)
- == Milliseconds ==
-%N 008 Milliseconds (three digits)
-%#N 8 Milliseconds (one to three digits)
- == Timezone ==
-%O 360 difference in minutes between local time and GMT
-%Z Mountain Standard Time Name of timezone as reported by browser
-%G -06:00 Hours and minutes between GMT
- == Shortcuts ==
-%F 2008-03-26 %Y-%m-%d
-%T 05:06:30 %H:%M:%S
-%X 05:06:30 %H:%M:%S
-%x 03/26/08 %m/%d/%y
-%D 03/26/08 %m/%d/%y
-%#c Wed Mar 26 15:31:00 2008 %a %b %e %H:%M:%S %Y
-%v 3-Sep-2008 %e-%b-%Y
-%R 15:31 %H:%M
-%r 3:31:00 PM %I:%M:%S %p
- == Characters ==
-%n \n Newline
-%t \t Tab
-%% % Percent Symbol</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer" >$.jqplot.<wbr>DateAxisRenderer</a></td><td class=SDescription>A plugin for a jqPlot to render an axis as a series of date values. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.tickRenderer" >tickRenderer</a></td><td class=SDescription>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="../jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">$.jqplot.AxisTickRenderer</a>. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.tickInset" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">tickInset</a></td><td class=SDescription>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.drawBaseline" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">drawBaseline</a></td><td class=SDescription>True to draw the axis baseline.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.baselineWidth" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">baselineWidth</a></td><td class=SDescription>width of the baseline in pixels.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DateAxisRenderer.baselineColor" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">baselineColor</a></td><td class=SDescription>CSS color spec for the baseline.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.tickRenderer"></a>tickRenderer</h3><div class=CBody><p>A class of a rendering engine for creating the ticks labels displayed on the plot, See <a href="../jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt1', 'link7')" onMouseOut="HideTip('tt1')">$.jqplot.AxisTickRenderer</a>. this.tickRenderer = $.jqplot.AxisTickRenderer; this.labelRenderer = $.jqplot.AxisLabelRenderer;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.tickInset"></a>tickInset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote><p>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval.&nbsp; 0 is no inset, 0.5 is one half a tick interval, 1 is a full tick interval, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.drawBaseline"></a>drawBaseline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote><p>True to draw the axis baseline.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.baselineWidth"></a>baselineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote><p>width of the baseline in pixels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DateAxisRenderer.baselineColor"></a>baselineColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote><p>CSS color spec for the baseline.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>DateAxisRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt6"><div class=CClass>An individual axis object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-donutRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-donutRenderer-js.html
deleted file mode 100644
index a45f0227..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-donutRenderer-js.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.DonutRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.DonutRenderer"></a>$.jqplot.<wbr>DonutRenderer</div><div class=CBody><p>Plugin renderer to draw a donut chart. x values, if present, will be used as slice labels. y values give slice size.</p><p>To use this renderer, you need to include the donut renderer plugin, for example:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.donutRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Properties described here are passed into the $.jqplot function as options on the series renderer.&nbsp; For example:</p><blockquote><pre>plot2 = $.jqplot('chart2', [s1, s2], {
- seriesDefaults: {
- renderer:$.jqplot.DonutRenderer,
- rendererOptions:{
- sliceMargin: 2,
- innerDiameter: 110,
- startAngle: -90
- }
- }
-});</pre></blockquote><p>A donut plot will trigger events on the plot target according to user interaction.&nbsp; All events return the event object, the series index, the point (slice) index, and the point data for the appropriate slice.</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>&rsquo;jqplotDataMouseOver&rsquo;</td><td class=CDLDescription>triggered when user mouseing over a slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataHighlight&rsquo;</td><td class=CDLDescription>triggered the first time user mouses over a slice, if highlighting is enabled.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataUnhighlight&rsquo;</td><td class=CDLDescription>triggered when a user moves the mouse out of a highlighted slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataClick&rsquo;</td><td class=CDLDescription>triggered when the user clicks on a slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataRightClick&rsquo;</td><td class=CDLDescription>tiggered when the user right clicks on a slice if the &ldquo;captureRightClick&rdquo; option is set to true on the plot.</td></tr></table><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.DonutRenderer" >$.jqplot.<wbr>DonutRenderer</a></td><td class=SDescription>Plugin renderer to draw a donut chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.DonutRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.diameter" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">diameter</a></td><td class=SDescription>Outer diameter of the donut, auto computed by default</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.innerDiameter" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">innerDiameter</a></td><td class=SDescription>Inner diameter of the donut, auto calculated by default. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.thickness" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">thickness</a></td><td class=SDescription>thickness of the donut, auto computed by default Overridden by if innerDiameter is specified.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.padding" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">padding</a></td><td class=SDescription>padding between the donut and plot edges, legend, etc.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.sliceMargin" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">sliceMargin</a></td><td class=SDescription>angular spacing between donut slices in degrees.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.ringMargin" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">ringMargin</a></td><td class=SDescription>pixel distance between rings, or multiple series in a donut plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.fill" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">fill</a></td><td class=SDescription>true or false, wether to fil the slices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.shadowOffset" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">shadowOffset</a></td><td class=SDescription>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.shadowAlpha" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">shadowAlpha</a></td><td class=SDescription>transparency of the shadow (0 = transparent, 1 = opaque)</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.shadowDepth" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">shadowDepth</a></td><td class=SDescription>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.highlightMouseOver" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">highlightMouseOver</a></td><td class=SDescription>True to highlight slice when moused over. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.highlightMouseDown" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a slice. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.highlightColors" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">highlightColors</a></td><td class=SDescription>an array of colors to use when highlighting a slice.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.dataLabels" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">dataLabels</a></td><td class=SDescription>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.showDataLabels" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">showDataLabels</a></td><td class=SDescription>true to show data labels on slices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.dataLabelFormatString" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">dataLabelFormatString</a></td><td class=SDescription>Format string for data labels. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.dataLabelThreshold" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">dataLabelThreshold</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.dataLabelPositionFactor" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">dataLabelPositionFactor</a></td><td class=SDescription>A Multiplier (0-1) of the pie radius which controls position of label on slice. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutRenderer.dataLabelNudge" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">dataLabelNudge</a></td><td class=SDescription>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutRenderer.startAngle" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">startAngle</a></td><td class=SDescription>Angle to start drawing donut in degrees. </td></tr><tr class="SClass"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer" >$.jqplot.<wbr>DonutLegendRenderer</a></td><td class=SDescription>Legend Renderer specific to donut plots. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.numberRows" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.numberColumns" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.diameter"></a>diameter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote><p>Outer diameter of the donut, auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.innerDiameter"></a>innerDiameter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.innerDiameter = null</td></tr></table></blockquote><p>Inner diameter of the donut, auto calculated by default.&nbsp; If specified will override thickness value.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.thickness"></a>thickness</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.thickness = null</td></tr></table></blockquote><p>thickness of the donut, auto computed by default Overridden by if innerDiameter is specified.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.padding"></a>padding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote><p>padding between the donut and plot edges, legend, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.sliceMargin"></a>sliceMargin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote><p>angular spacing between donut slices in degrees.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.ringMargin"></a>ringMargin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringMargin = null</td></tr></table></blockquote><p>pixel distance between rings, or multiple series in a donut plot. null will compute ringMargin based on sliceMargin.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote><p>true or false, wether to fil the slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote><p>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote><p>transparency of the shadow (0 = transparent, 1 = opaque)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote><p>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight slice when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a slice.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>an array of colors to use when highlighting a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.dataLabels"></a>dataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote><p>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices.&nbsp; Defaults to percentage of each pie slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.showDataLabels"></a>showDataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote><p>true to show data labels on slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.dataLabelFormatString"></a>dataLabelFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote><p>Format string for data labels.&nbsp; If none, &lsquo;%s&rsquo; is used for &ldquo;label&rdquo; and for arrays, &lsquo;%d&rsquo; for value and &lsquo;%d%%&rsquo; for percentage.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.dataLabelThreshold"></a>dataLabelThreshold</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Threshhold in percentage (0</td><td class=CDLDescription>100) of pie area, below which no label will be displayed.&nbsp; This applies to all label types, not just to percentage labels.</td></tr></table></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.dataLabelPositionFactor"></a>dataLabelPositionFactor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.4</td></tr></table></blockquote><p>A Multiplier (0-1) of the pie radius which controls position of label on slice.&nbsp; Increasing will slide label toward edge of pie, decreasing will slide label toward center of pie.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.dataLabelNudge"></a>dataLabelNudge</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 0</td></tr></table></blockquote><p>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutRenderer.startAngle"></a>startAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote><p>Angle to start drawing donut in degrees.&nbsp; According to orientation of canvas coordinate system: 0 = on the positive x axis -90 = on the positive y axis.&nbsp; 90 = on the negaive y axis.&nbsp; 180 or - 180 = on the negative x axis.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="$.jqplot.DonutLegendRenderer"></a>$.jqplot.<wbr>DonutLegendRenderer</h2><div class=CBody><p>Legend Renderer specific to donut plots.&nbsp; Set by default when user creates a donut plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.numberRows" id=link23 onMouseOver="ShowTip(event, 'tt21', 'link23')" onMouseOut="HideTip('tt21')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#$.jqplot.DonutLegendRenderer.numberColumns" id=link24 onMouseOver="ShowTip(event, 'tt22', 'link24')" onMouseOut="HideTip('tt22')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutLegendRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutLegendRenderer.numberRows"></a>numberRows</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote><p>Maximum number of rows in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.DonutLegendRenderer.numberColumns"></a>numberColumns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote><p>Maximum number of columns in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>DonutRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the donut, auto computed by default</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.innerDiameter = null</td></tr></table></blockquote>Inner diameter of the donut, auto calculated by default. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.thickness = null</td></tr></table></blockquote>thickness of the donut, auto computed by default Overridden by if innerDiameter is specified.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the donut and plot edges, legend, etc.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between donut slices in degrees.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringMargin = null</td></tr></table></blockquote>pixel distance between rings, or multiple series in a donut plot. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.4</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 0</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing donut in degrees. </div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt22"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dragable-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dragable-js.html
deleted file mode 100644
index 3479e655..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-dragable-js.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.Dragable</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.Dragable"></a>$.jqplot.<wbr>Dragable</div><div class=CBody><p>Plugin to make plotted points dragable by the user.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.Dragable" >$.jqplot.<wbr>Dragable</a></td><td class=SDescription>Plugin to make plotted points dragable by the user.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Dragable.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Dragable.color" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">color</a></td><td class=SDescription>CSS color spec for the dragged point (and adjacent line segment or bar).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Dragable.constrainTo" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">constrainTo</a></td><td class=SDescription>Constrain dragging motion to an axis or to none. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Dragable.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Dragable.color"></a>color</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote><p>CSS color spec for the dragged point (and adjacent line segment or bar).</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Dragable.constrainTo"></a>constrainTo</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainTo = 'none'</td></tr></table></blockquote><p>Constrain dragging motion to an axis or to none.&nbsp; Allowable values are &lsquo;none&rsquo;, &lsquo;x&rsquo;, &lsquo;y&rsquo;</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>Dragable</div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>CSS color spec for the dragged point (and adjacent line segment or bar).</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainTo = 'none'</td></tr></table></blockquote>Constrain dragging motion to an axis or to none. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-enhancedLegendRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-enhancedLegendRenderer-js.html
deleted file mode 100644
index b5f5d109..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-enhancedLegendRenderer-js.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>/Users/chris/Sites/lib/jqplot/build/plugins/jqplot.enhancedLegendRenderer.js</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqplot.enhancedLegendRenderer.js"></a>jqplot.<wbr>enhancedLegendRenderer.js</div><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#jqplot.enhancedLegendRenderer.js" >jqplot.<wbr>enhancedLegendRenderer.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#numberRows" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#numberColumns" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#seriesToggle" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">seriesToggle</a></td><td class=SDescription>false to not enable series on/off toggling on the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#seriesToggleReplot" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">seriesToggleReplot</a></td><td class=SDescription>True to replot the chart after toggling series on/off. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#disableIEFading" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">disableIEFading</a></td><td class=SDescription>true to toggle series with a show/hide method only and not allow fading in/out. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="numberRows"></a>numberRows</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote><p>Maximum number of rows in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="numberColumns"></a>numberColumns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote><p>Maximum number of columns in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="seriesToggle"></a>seriesToggle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggle = 'normal'</td></tr></table></blockquote><p>false to not enable series on/off toggling on the legend. true or a fadein/fadeout speed (number of milliseconds or &lsquo;fast&rsquo;, &lsquo;normal&rsquo;, &lsquo;slow&rsquo;) to enable show/hide of series on click of legend item.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="seriesToggleReplot"></a>seriesToggleReplot</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggleReplot = false</td></tr></table></blockquote><p>True to replot the chart after toggling series on/off.&nbsp; This will set the series show property to false.&nbsp; This allows for rescaling or other maniplation of chart.&nbsp; Set to an options object (e.g.&nbsp; {resetAxes: true}) for replot options.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="disableIEFading"></a>disableIEFading</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableIEFading = true</td></tr></table></blockquote><p>true to toggle series with a show/hide method only and not allow fading in/out.&nbsp; This is to overcome poor performance of fade in some versions of IE.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>enhancedLegendRenderer.js</div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggle = 'normal'</td></tr></table></blockquote>false to not enable series on/off toggling on the legend. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggleReplot = false</td></tr></table></blockquote>True to replot the chart after toggling series on/off. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableIEFading = true</td></tr></table></blockquote>true to toggle series with a show/hide method only and not allow fading in/out. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-funnelRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-funnelRenderer-js.html
deleted file mode 100644
index 17d2cf54..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-funnelRenderer-js.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.FunnelRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.FunnelRenderer"></a>$.jqplot.<wbr>FunnelRenderer</div><div class=CBody><p>Plugin renderer to draw a funnel chart. x values, if present, will be used as labels. y values give area size.</p><p>Funnel charts will draw a single series only.</p><p>To use this renderer, you need to include the funnel renderer plugin, for example:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.funnelRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Properties described here are passed into the $.jqplot function as options on the series renderer.&nbsp; For example:</p><blockquote><pre>plot2 = $.jqplot('chart2', [s1, s2], {
- seriesDefaults: {
- renderer:$.jqplot.FunnelRenderer,
- rendererOptions:{
- sectionMargin: 12,
- widthRatio: 0.3
- }
- }
-});</pre></blockquote><p>IMPORTANT</p><p><b>The funnel renderer will reorder data in descending order</b> so the largest value in the data set is first and displayed on top of the funnel.&nbsp; Data will then be displayed in descending order down the funnel.&nbsp; The area of each funnel section will correspond to the value of each data point relative to the sum of all values.&nbsp; That is section area is proportional to section value divided by sum of all section values.</p><p>If your data is not in descending order when passed into the plot, <b>it will be reordered</b> when stored in the series.data property.&nbsp; A copy of the unordered data is kept in the series._unorderedData property.</p><p>A funnel plot will trigger events on the plot target according to user interaction.&nbsp; All events return the event object, the series index, the point (section) index, and the point data for the appropriate section.&nbsp; <b>Note</b> the point index will referr to the ordered data, not the original unordered data.</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>&rsquo;jqplotDataMouseOver&rsquo;</td><td class=CDLDescription>triggered when mousing over a section.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataHighlight&rsquo;</td><td class=CDLDescription>triggered the first time user mouses over a section, if highlighting is enabled.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataUnhighlight&rsquo;</td><td class=CDLDescription>triggered when a user moves the mouse out of a highlighted section.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataClick&rsquo;</td><td class=CDLDescription>triggered when the user clicks on a section.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataRightClick&rsquo;</td><td class=CDLDescription>tiggered when the user right clicks on a section if the &ldquo;captureRightClick&rdquo; option is set to true on the plot.</td></tr></table><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.FunnelRenderer" >$.jqplot.<wbr>FunnelRenderer</a></td><td class=SDescription>Plugin renderer to draw a funnel chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.padding" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">padding</a></td><td class=SDescription>padding between the funnel and plot edges, legend, etc.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.sectionMargin" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">sectionMargin</a></td><td class=SDescription>spacing between funnel sections in pixels.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.fill" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">fill</a></td><td class=SDescription>true or false, wether to fill the areas.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.shadowOffset" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">shadowOffset</a></td><td class=SDescription>offset of the shadow from the area and offset of each succesive stroke of the shadow from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.shadowAlpha" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">shadowAlpha</a></td><td class=SDescription>transparency of the shadow (0 = transparent, 1 = opaque)</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.shadowDepth" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">shadowDepth</a></td><td class=SDescription>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.highlightMouseOver" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">highlightMouseOver</a></td><td class=SDescription>True to highlight area when moused over. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.highlightMouseDown" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a area. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.highlightColors" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">highlightColors</a></td><td class=SDescription>array of colors to use when highlighting an area.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.widthRatio" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">widthRatio</a></td><td class=SDescription>The ratio of the width of the top of the funnel to the bottom. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.lineWidth" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">lineWidth</a></td><td class=SDescription>width of line if areas are stroked and not filled.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.dataLabels" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">dataLabels</a></td><td class=SDescription>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.showDataLabels" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">showDataLabels</a></td><td class=SDescription>true to show data labels on slices.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.dataLabelFormatString" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">dataLabelFormatString</a></td><td class=SDescription>Format string for data labels. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelRenderer.dataLabelThreshold" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">dataLabelThreshold</a></td><td class=SDescription></td></tr><tr class="SClass"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer" >$.jqplot.<wbr>FunnelLegendRenderer</a></td><td class=SDescription>Legend Renderer specific to funnel plots. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.numberRows" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.numberColumns" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.padding"></a>padding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = {top: 20, right: 20, bottom: 20, left: 20}</td></tr></table></blockquote><p>padding between the funnel and plot edges, legend, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.sectionMargin"></a>sectionMargin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sectionMargin = 6</td></tr></table></blockquote><p>spacing between funnel sections in pixels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote><p>true or false, wether to fill the areas.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote><p>offset of the shadow from the area and offset of each succesive stroke of the shadow from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote><p>transparency of the shadow (0 = transparent, 1 = opaque)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote><p>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight area when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a area.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a area.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>array of colors to use when highlighting an area.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.widthRatio"></a>widthRatio</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.widthRatio = 0.2</td></tr></table></blockquote><p>The ratio of the width of the top of the funnel to the bottom. a ratio of 0 will make an upside down pyramid.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote><p>width of line if areas are stroked and not filled.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.dataLabels"></a>dataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote><p>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices.&nbsp; Defaults to percentage of each pie slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.showDataLabels"></a>showDataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote><p>true to show data labels on slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.dataLabelFormatString"></a>dataLabelFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote><p>Format string for data labels.&nbsp; If none, &lsquo;%s&rsquo; is used for &ldquo;label&rdquo; and for arrays, &lsquo;%d&rsquo; for value and &lsquo;%d%%&rsquo; for percentage.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelRenderer.dataLabelThreshold"></a>dataLabelThreshold</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>Threshhold in percentage (0</td><td class=CDLDescription>100) of pie area, below which no label will be displayed.&nbsp; This applies to all label types, not just to percentage labels.</td></tr></table></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="$.jqplot.FunnelLegendRenderer"></a>$.jqplot.<wbr>FunnelLegendRenderer</h2><div class=CBody><p>Legend Renderer specific to funnel plots.&nbsp; Set by default when the user creates a funnel plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.numberRows" id=link18 onMouseOver="ShowTip(event, 'tt16', 'link18')" onMouseOut="HideTip('tt16')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#$.jqplot.FunnelLegendRenderer.numberColumns" id=link19 onMouseOver="ShowTip(event, 'tt17', 'link19')" onMouseOut="HideTip('tt17')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelLegendRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelLegendRenderer.numberRows"></a>numberRows</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote><p>Maximum number of rows in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.FunnelLegendRenderer.numberColumns"></a>numberColumns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote><p>Maximum number of columns in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>FunnelRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = {top: 20, right: 20, bottom: 20, left: 20}</td></tr></table></blockquote>padding between the funnel and plot edges, legend, etc.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sectionMargin = 6</td></tr></table></blockquote>spacing between funnel sections in pixels.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fill the areas.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the area and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area when moused over. </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a area. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>array of colors to use when highlighting an area.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.widthRatio = 0.2</td></tr></table></blockquote>The ratio of the width of the top of the funnel to the bottom. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>width of line if areas are stroked and not filled.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-highlighter-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-highlighter-js.html
deleted file mode 100644
index daa8806b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-highlighter-js.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.Highlighter</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.Highlighter"></a>$.jqplot.<wbr>Highlighter</div><div class=CBody><p>Plugin which will highlight data points when they are moused over.</p><p>To use this plugin, include the js file in your source:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.highlighter.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>A tooltip providing information about the data point is enabled by default.&nbsp; To disable the tooltip, set &ldquo;showTooltip&rdquo; to false.</p><p>You can control what data is displayed in the tooltip with various options.&nbsp; The &ldquo;tooltipAxes&rdquo; option controls wether the x, y or both data values are displayed.</p><p>Some chart types (e.g. hi-low-close) have more than one y value per data point.&nbsp; To display the additional values in the tooltip, set the &ldquo;yvalues&rdquo; option to the desired number of y values present (3 for a hlc chart).</p><p>By default, data values will be formatted with the same formatting specifiers as used to format the axis ticks.&nbsp; A custom format code can be supplied with the tooltipFormatString option.&nbsp; This will apply to all values in the tooltip.</p><p>For more complete control, the &ldquo;formatString&rdquo; option can be set.&nbsp; This Allows conplete control over tooltip formatting.&nbsp; Values are passed to the format string in an order determined by the &ldquo;tooltipAxes&rdquo; and &ldquo;yvalues&rdquo; options.&nbsp; So, if you have a hi-low-close chart and you just want to display the hi-low-close values in the tooltip, you could set a formatString like:</p><blockquote><pre>highlighter: {
- tooltipAxes: 'y',
- yvalues: 3,
- formatString:'&lt;table class=&quot;jqplot-highlighter&quot;&gt;
- &lt;tr&gt;&lt;td&gt;hi:&lt;/td&gt;&lt;td&gt;%s&lt;/td&gt;&lt;/tr&gt;
- &lt;tr&gt;&lt;td&gt;low:&lt;/td&gt;&lt;td&gt;%s&lt;/td&gt;&lt;/tr&gt;
- &lt;tr&gt;&lt;td&gt;close:&lt;/td&gt;&lt;td&gt;%s&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;'
-}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.Highlighter" >$.jqplot.<wbr>Highlighter</a></td><td class=SDescription>Plugin which will highlight data points when they are moused over.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Highlighter.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.show" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">show</a></td><td class=SDescription>true to show the highlight.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.markerRenderer" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">markerRenderer</a></td><td class=SDescription>Renderer used to draw the marker of the highlighted point. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.showMarker" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">showMarker</a></td><td class=SDescription>true to show the marker</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.lineWidthAdjust" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">lineWidthAdjust</a></td><td class=SDescription>Pixels to add to the lineWidth of the highlight.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.sizeAdjust" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">sizeAdjust</a></td><td class=SDescription>Pixels to add to the overall size of the highlight.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.showTooltip" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">showTooltip</a></td><td class=SDescription>Show a tooltip with data point values.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.tooltipLocation" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">tooltipLocation</a></td><td class=SDescription>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.fadeTooltip" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">fadeTooltip</a></td><td class=SDescription>true = fade in/out tooltip, flase = show/hide tooltip</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.tooltipFadeSpeed" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">tooltipFadeSpeed</a></td><td class=SDescription>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.tooltipOffset" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">tooltipOffset</a></td><td class=SDescription>Pixel offset of tooltip from the highlight.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.tooltipAxes" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">tooltipAxes</a></td><td class=SDescription>Which axes to display in tooltip, &lsquo;x&rsquo;, &lsquo;y&rsquo; or &lsquo;both&rsquo;, &lsquo;xy&rsquo; or &lsquo;yx&rsquo; &lsquo;both&rsquo; and &lsquo;xy&rsquo; are equivalent, &lsquo;yx&rsquo; reverses order of labels.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.useAxesFormatters" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">useAxesFormatters</a></td><td class=SDescription>Use the x and y axes formatters to format the text in the tooltip.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.tooltipFormatString" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">tooltipFormatString</a></td><td class=SDescription>sprintf format string for the tooltip. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.formatString" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">formatString</a></td><td class=SDescription>alternative to tooltipFormatString will format the whole tooltip text, populating with x, y values as indicated by tooltipAxes option. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Highlighter.yvalues" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">yvalues</a></td><td class=SDescription>Number of y values to expect in the data point array. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Highlighter.bringSeriesToFront" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">bringSeriesToFront</a></td><td class=SDescription>This option requires jQuery 1.4+ True to bring the series of the highlighted point to the front of other series.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote><p>true to show the highlight.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.markerRenderer"></a>markerRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.markerRenderer = new $.jqplot.MarkerRenderer(</td><td class=PParameter nowrap>{shadow:false}</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>Renderer used to draw the marker of the highlighted point.&nbsp; Renderer will assimilate attributes from the data point being highlighted, so no attributes need set on the renderer directly.&nbsp; Default is to turn off shadow drawing on the highlighted point.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.showMarker"></a>showMarker</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote><p>true to show the marker</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.lineWidthAdjust"></a>lineWidthAdjust</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidthAdjust = 2.5</td></tr></table></blockquote><p>Pixels to add to the lineWidth of the highlight.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.sizeAdjust"></a>sizeAdjust</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sizeAdjust = 5</td></tr></table></blockquote><p>Pixels to add to the overall size of the highlight.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.showTooltip"></a>showTooltip</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote><p>Show a tooltip with data point values.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.tooltipLocation"></a>tooltipLocation</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'nw'</td></tr></table></blockquote><p>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.fadeTooltip"></a>fadeTooltip</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fadeTooltip = true</td></tr></table></blockquote><p>true = fade in/out tooltip, flase = show/hide tooltip</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.tooltipFadeSpeed"></a>tooltipFadeSpeed</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFadeSpeed = &quot;fast&quot;</td></tr></table></blockquote><p>&rsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.tooltipOffset"></a>tooltipOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 2</td></tr></table></blockquote><p>Pixel offset of tooltip from the highlight.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.tooltipAxes"></a>tooltipAxes</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxes = 'both'</td></tr></table></blockquote><p>Which axes to display in tooltip, &lsquo;x&rsquo;, &lsquo;y&rsquo; or &lsquo;both&rsquo;, &lsquo;xy&rsquo; or &lsquo;yx&rsquo; &lsquo;both&rsquo; and &lsquo;xy&rsquo; are equivalent, &lsquo;yx&rsquo; reverses order of labels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.useAxesFormatters"></a>useAxesFormatters</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote><p>Use the x and y axes formatters to format the text in the tooltip.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.tooltipFormatString"></a>tooltipFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.5P'</td></tr></table></blockquote><p>sprintf format string for the tooltip.&nbsp; Uses Ash Searle&rsquo;s javascript sprintf implementation found here: <a href="http://hexmen.com/blog/2007/03/printf-sprintf/" class=LURL target=_top>http://hexmen.com/blog/2007/03/printf-sprintf/</a> See <a href="http://perldoc.perl.org/functions/sprintf.html" class=LURL target=_top>http://perldoc.perl.org/functions/sprintf.html</a> for reference.&nbsp; Additional &ldquo;p&rdquo; and &ldquo;P&rdquo; format specifiers added by Chris Leonello.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.formatString"></a>formatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = null</td></tr></table></blockquote><p>alternative to tooltipFormatString will format the whole tooltip text, populating with x, y values as indicated by tooltipAxes option.&nbsp; So, you could have a tooltip like: &lsquo;Date: %s, number of cats: %d&rsquo; to format the whole tooltip at one go.&nbsp; If useAxesFormatters is true, values will be formatted according to Axes formatters and you can populate your tooltip string with %s placeholders.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.yvalues"></a>yvalues</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yvalues = 1</td></tr></table></blockquote><p>Number of y values to expect in the data point array.&nbsp; Typically this is 1.&nbsp; Certain plots, like OHLC, will have more y values in each data point array.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Highlighter.bringSeriesToFront"></a>bringSeriesToFront</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bringSeriesToFront = false</td></tr></table></blockquote><p>This option requires jQuery 1.4+ True to bring the series of the highlighted point to the front of other series.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>Highlighter</div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>true to show the highlight.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.markerRenderer = new $.jqplot.MarkerRenderer(</td><td class=PParameter nowrap>{shadow:false}</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renderer used to draw the marker of the highlighted point. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>true to show the marker</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidthAdjust = 2.5</td></tr></table></blockquote>Pixels to add to the lineWidth of the highlight.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sizeAdjust = 5</td></tr></table></blockquote>Pixels to add to the overall size of the highlight.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>Show a tooltip with data point values.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'nw'</td></tr></table></blockquote>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fadeTooltip = true</td></tr></table></blockquote>true = fade in/out tooltip, flase = show/hide tooltip</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFadeSpeed = &quot;fast&quot;</td></tr></table></blockquote>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 2</td></tr></table></blockquote>Pixel offset of tooltip from the highlight.</div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxes = 'both'</td></tr></table></blockquote>Which axes to display in tooltip, &lsquo;x&rsquo;, &lsquo;y&rsquo; or &lsquo;both&rsquo;, &lsquo;xy&rsquo; or &lsquo;yx&rsquo; &lsquo;both&rsquo; and &lsquo;xy&rsquo; are equivalent, &lsquo;yx&rsquo; reverses order of labels.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.5P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = null</td></tr></table></blockquote>alternative to tooltipFormatString will format the whole tooltip text, populating with x, y values as indicated by tooltipAxes option. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yvalues = 1</td></tr></table></blockquote>Number of y values to expect in the data point array. </div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bringSeriesToFront = false</td></tr></table></blockquote>This option requires jQuery 1.4+ True to bring the series of the highlighted point to the front of other series.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-logAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-logAxisRenderer-js.html
deleted file mode 100644
index 4e7317e7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-logAxisRenderer-js.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.LogAxisRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.LogAxisRenderer"></a>$.jqplot.<wbr>LogAxisRenderer</div><div class=CBody><p>A plugin for a jqPlot to render a logarithmic axis.</p><p>To use this renderer, include the plugin in your source</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot; src=&quot;plugins/jqplot.logAxisRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>and supply the appropriate options to your plot</p><blockquote><pre>{axes:{xaxis:{renderer:$.jqplot.LogAxisRenderer}}}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.LogAxisRenderer" >$.jqplot.<wbr>LogAxisRenderer</a></td><td class=SDescription>A plugin for a jqPlot to render a logarithmic axis.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.LogAxisRenderer.axisDefaults" >axisDefaults</a></td><td class=SDescription>Default properties which will be applied directly to the series.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.LogAxisRenderer.Properties" >Properties</a></td><td class=SDescription>Properties</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.LogAxisRenderer.drawBaseline" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">drawBaseline</a></td><td class=SDescription>True to draw the axis baseline.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.LogAxisRenderer.minorTicks" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">minorTicks</a></td><td class=SDescription>Number of ticks to add between &ldquo;major&rdquo; ticks. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LogAxisRenderer.axisDefaults"></a>axisDefaults</h3><div class=CBody><p>Default properties which will be applied directly to the series.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LogAxisRenderer.Properties"></a>Properties</h3><div class=CBody><p>Properties</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>base</td><td class=CDLDescription>the logarithmic base, commonly 2, 10 or Math.E</td></tr><tr><td class=CDLEntry>tickDistribution</td><td class=CDLDescription>Deprecated.&nbsp; &ldquo;power&rdquo; distribution of ticks always used.&nbsp; Option has no effect.</td></tr></table></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LogAxisRenderer.drawBaseline"></a>drawBaseline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote><p>True to draw the axis baseline.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.LogAxisRenderer.minorTicks"></a>minorTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 'auto'</td></tr></table></blockquote><p>Number of ticks to add between &ldquo;major&rdquo; ticks.&nbsp; Major ticks are ticks supplied by user or auto computed.&nbsp; Minor ticks cannot be created by user.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>LogAxisRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 'auto'</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoAxisRenderer-js.html
deleted file mode 100644
index 4dfef14c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoAxisRenderer-js.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.MekkoAxisRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.MekkoAxisRenderer"></a>$.jqplot.<wbr>MekkoAxisRenderer</div><div class=CBody><p>An axis renderer for a Mekko chart.&nbsp; Should be used with a Mekko chart where the mekkoRenderer is used on the series.&nbsp; Displays the Y axis as a range from 0 to 1 (0 to 100%) and the x axis with a tick for each series scaled to the sum of all the y values.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer" >$.jqplot.<wbr>MekkoAxisRenderer</a></td><td class=SDescription>An axis renderer for a Mekko chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer.tickMode" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">tickMode</a></td><td class=SDescription>How to space the ticks on the axis. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer.barLabelRenderer" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">barLabelRenderer</a></td><td class=SDescription>renderer to use to draw labels under each bar.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer.barLabels" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">barLabels</a></td><td class=SDescription>array of labels to put under each bar.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MekkoAxisRenderer.barLabelOptions" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">barLabelOptions</a></td><td class=SDescription>options object to pass to the bar label renderer.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoAxisRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoAxisRenderer.tickMode"></a>tickMode</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickMode</td></tr></table></blockquote><p>How to space the ticks on the axis.&nbsp; &lsquo;bar&rsquo; will place a tick at the width of each bar.&nbsp; This is the default for the x axis.&nbsp; &lsquo;even&rsquo; will place ticks at even intervals.&nbsp; This is the default for x2 axis and y axis.&nbsp; y axis cannot be changed.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoAxisRenderer.barLabelRenderer"></a>barLabelRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote><p>renderer to use to draw labels under each bar.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoAxisRenderer.barLabels"></a>barLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabels = this.barLabels || []</td></tr></table></blockquote><p>array of labels to put under each bar.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoAxisRenderer.barLabelOptions"></a>barLabelOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelOptions = {}</td></tr></table></blockquote><p>options object to pass to the bar label renderer.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>MekkoAxisRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickMode</td></tr></table></blockquote>How to space the ticks on the axis. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>renderer to use to draw labels under each bar.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabels = this.barLabels || []</td></tr></table></blockquote>array of labels to put under each bar.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelOptions = {}</td></tr></table></blockquote>options object to pass to the bar label renderer.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoRenderer-js.html
deleted file mode 100644
index dbe71812..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-mekkoRenderer-js.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.MekkoRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.MekkoRenderer"></a>$.jqplot.<wbr>MekkoRenderer</div><div class=CBody><p>Draws a Mekko style chart which shows 3 dimensional data on a 2 dimensional graph. the <a href="jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer" class=LClass id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">$.jqplot.MekkoAxisRenderer</a> should be used with mekko charts.&nbsp; The mekko renderer overrides the default legend renderer with it&rsquo;s own $.jqplot.MekkoLegendRenderer which allows more flexibility to specify number of rows and columns in the legend.</p><p>Data is specified per bar in the chart.&nbsp; You can specify data as an array of y values, or as an array of [label, value] pairs.&nbsp; Note that labels are used only on the first series.&nbsp; Labels on subsequent series are ignored:</p><blockquote><pre>bar1 = [['shirts', 8],['hats', 14],['shoes', 6],['gloves', 16],['dolls', 12]];
-bar2 = [15,6,9,13,6];
-bar3 = [['grumpy',4],['sneezy',2],['happy',7],['sleepy',9],['doc',7]];</pre></blockquote><p>If you want to place labels for each bar under the axis, you use the barLabels option on the axes.&nbsp; The bar labels can be styled with the &ldquo;.jqplot-mekko-barLabel&rdquo; css class.</p><blockquote><pre>barLabels = ['Mickey Mouse', 'Donald Duck', 'Goofy'];
-axes:{xaxis:{barLabels:barLabels}}</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.MekkoRenderer" >$.jqplot.<wbr>MekkoRenderer</a></td><td class=SDescription>Draws a Mekko style chart which shows 3 dimensional data on a 2 dimensional graph. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.borderColor" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">borderColor</a></td><td class=SDescription>color of the borders between areas on the chart</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.showBorders" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">showBorders</a></td><td class=SDescription>True to draw borders lines between areas on the chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.setGridData" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">setGridData</a></td><td class=SDescription>converts the user data values to grid coordinates and stores them in the gridData array. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#$.jqplot.MekkoRenderer.makeGridData" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">makeGridData</a></td><td class=SDescription>converts any arbitrary data values to grid coordinates and returns them. </td></tr><tr class="SClass"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer" >$.jqplot.<wbr>MekkoLegendRenderer</a></td><td class=SDescription>Legend renderer used by mekko charts with options for controlling number or rows and columns as well as placement outside of plot area.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.numberRows" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.numberColumns" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.borderColor"></a>borderColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote><p>color of the borders between areas on the chart</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.showBorders"></a>showBorders</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showBorders = true</td></tr></table></blockquote><p>True to draw borders lines between areas on the chart.&nbsp; False will draw borders lines with the same color as the area.</p></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.Functions"></a>Functions</h3></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.setGridData"></a>setGridData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>converts the user data values to grid coordinates and stores them in the gridData array.&nbsp; Will convert user data into appropriate rectangles.&nbsp; Called with scope of a series.</p></div></div></div>
-
-<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoRenderer.makeGridData"></a>makeGridData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote><p>converts any arbitrary data values to grid coordinates and returns them.&nbsp; This method exists so that plugins can use a series&rsquo; linerenderer to generate grid data points without overwriting the grid data associated with that series.&nbsp; Called with scope of a series.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="$.jqplot.MekkoLegendRenderer"></a>$.jqplot.<wbr>MekkoLegendRenderer</h2><div class=CBody><p>Legend renderer used by mekko charts with options for controlling number or rows and columns as well as placement outside of plot area.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.numberRows" id=link8 onMouseOver="ShowTip(event, 'tt5', 'link8')" onMouseOut="HideTip('tt5')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#$.jqplot.MekkoLegendRenderer.numberColumns" id=link9 onMouseOver="ShowTip(event, 'tt6', 'link9')" onMouseOut="HideTip('tt6')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoLegendRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoLegendRenderer.numberRows"></a>numberRows</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote><p>Maximum number of rows in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MekkoLegendRenderer.numberColumns"></a>numberColumns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote><p>Maximum number of columns in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>MekkoRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the borders between areas on the chart</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showBorders = true</td></tr></table></blockquote>True to draw borders lines between areas on the chart. </div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt7"><div class=CClass>An axis renderer for a Mekko chart. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-meterGaugeRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-meterGaugeRenderer-js.html
deleted file mode 100644
index cce6835f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-meterGaugeRenderer-js.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.MeterGaugeRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.MeterGaugeRenderer"></a>$.jqplot.<wbr>MeterGaugeRenderer</div><div class=CBody><p>Plugin renderer to draw a meter gauge chart.</p><p>Data consists of a single series with 1 data point to position the gauge needle.</p><p>To use this renderer, you need to include the meter gauge renderer plugin, for example:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.meterGaugeRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Properties described here are passed into the $.jqplot function as options on the series renderer.&nbsp; For example:</p><blockquote><pre>plot0 = $.jqplot('chart0',[[18]],{
- title: 'Network Speed',
- seriesDefaults: {
- renderer: $.jqplot.MeterGaugeRenderer,
- rendererOptions: {
- label: 'MB/s'
- }
- }
-});</pre></blockquote><p>A meterGauge plot does not support events.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer" >$.jqplot.<wbr>MeterGaugeRenderer</a></td><td class=SDescription>Plugin renderer to draw a meter gauge chart.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.diameter" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">diameter</a></td><td class=SDescription>Outer diameter of the meterGauge, auto computed by default</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.padding" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">padding</a></td><td class=SDescription>padding between the meterGauge and plot edges, auto calculated by default.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.shadowOffset" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">shadowOffset</a></td><td class=SDescription>offset of the shadow from the gauge ring and offset of each succesive stroke of the shadow from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.shadowAlpha" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">shadowAlpha</a></td><td class=SDescription>transparency of the shadow (0 = transparent, 1 = opaque)</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.shadowDepth" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">shadowDepth</a></td><td class=SDescription>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.background" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">background</a></td><td class=SDescription>background color of the inside of the gauge.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.ringColor" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">ringColor</a></td><td class=SDescription>color of the outer ring, hub, and needle of the gauge.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.tickColor" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">tickColor</a></td><td class=SDescription>color of the tick marks around the gauge.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.ringWidth" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">ringWidth</a></td><td class=SDescription>width of the ring around the gauge. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.min" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">min</a></td><td class=SDescription>Minimum value on the gauge. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.max" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">max</a></td><td class=SDescription>Maximum value on the gauge. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.ticks" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">ticks</a></td><td class=SDescription>Array of tick values. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.showTicks" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">showTicks</a></td><td class=SDescription>true to show ticks around gauge.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.showTickLabels" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">showTickLabels</a></td><td class=SDescription>true to show tick labels next to ticks.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.label" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">label</a></td><td class=SDescription>A gauge label like &lsquo;kph&rsquo; or &lsquo;Volts&rsquo;</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.labelHeightAdjust" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">labelHeightAdjust</a></td><td class=SDescription>Number of Pixels to offset the label up (-) or down (+) from its default position.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.labelPosition" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">labelPosition</a></td><td class=SDescription>Where to position the label, either &lsquo;inside&rsquo; or &lsquo;bottom&rsquo;.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.intervals" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">intervals</a></td><td class=SDescription>Array of ranges to be drawn around the gauge. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.intervalColors" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">intervalColors</a></td><td class=SDescription>Array of colors to use for the intervals.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.intervalInnerRadius" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">intervalInnerRadius</a></td><td class=SDescription>Radius of the inner circle of the interval ring.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.intervalOuterRadius" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">intervalOuterRadius</a></td><td class=SDescription>Radius of the outer circle of the interval ring.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.tickSpacing" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">tickSpacing</a></td><td class=SDescription>Degrees between ticks. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.hubRadius" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">hubRadius</a></td><td class=SDescription>Radius of the hub at the bottom center of gauge which the needle attaches to. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.tickPadding" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">tickPadding</a></td><td class=SDescription>padding of the tick marks to the outer ring and the tick labels to marks. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.needleThickness" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">needleThickness</a></td><td class=SDescription>Maximum thickness the needle. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.needlePad" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">needlePad</a></td><td class=SDescription>Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.MeterGaugeRenderer.pegNeedle" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">pegNeedle</a></td><td class=SDescription>True will stop needle just below/above the min/max values if data is below/above min/max, as if the meter is &ldquo;pegged&rdquo;.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.diameter"></a>diameter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote><p>Outer diameter of the meterGauge, auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.padding"></a>padding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = null</td></tr></table></blockquote><p>padding between the meterGauge and plot edges, auto calculated by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote><p>offset of the shadow from the gauge ring and offset of each succesive stroke of the shadow from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote><p>transparency of the shadow (0 = transparent, 1 = opaque)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 4</td></tr></table></blockquote><p>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.background"></a>background</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = &quot;#efefef&quot;</td></tr></table></blockquote><p>background color of the inside of the gauge.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.ringColor"></a>ringColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringColor = &quot;#BBC6D0&quot;</td></tr></table></blockquote><p>color of the outer ring, hub, and needle of the gauge.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.tickColor"></a>tickColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickColor = &quot;989898&quot;</td></tr></table></blockquote><p>color of the tick marks around the gauge.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.ringWidth"></a>ringWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringWidth = null</td></tr></table></blockquote><p>width of the ring around the gauge.&nbsp; Auto computed by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.min"></a>min</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min</td></tr></table></blockquote><p>Minimum value on the gauge.&nbsp; Auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.max"></a>max</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max</td></tr></table></blockquote><p>Maximum value on the gauge.&nbsp; Auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.ticks"></a>ticks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote><p>Array of tick values.&nbsp; Auto computed by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.showTicks"></a>showTicks</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote><p>true to show ticks around gauge.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.showTickLabels"></a>showTickLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickLabels = true</td></tr></table></blockquote><p>true to show tick labels next to ticks.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote><p>A gauge label like &lsquo;kph&rsquo; or &lsquo;Volts&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.labelHeightAdjust"></a>labelHeightAdjust</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelHeightAdjust = 0</td></tr></table></blockquote><p>Number of Pixels to offset the label up (-) or down (+) from its default position.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.labelPosition"></a>labelPosition</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'inside'</td></tr></table></blockquote><p>Where to position the label, either &lsquo;inside&rsquo; or &lsquo;bottom&rsquo;.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.intervals"></a>intervals</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervals = []</td></tr></table></blockquote><p>Array of ranges to be drawn around the gauge.&nbsp; Array of form:</p><blockquote><pre>[value1, value2, ...]</pre></blockquote><p>indicating the values for the first, second, ... intervals.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.intervalColors"></a>intervalColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalColors = [ &quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;]</td></tr></table></blockquote><p>Array of colors to use for the intervals.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.intervalInnerRadius"></a>intervalInnerRadius</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalInnerRadius = null</td></tr></table></blockquote><p>Radius of the inner circle of the interval ring.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.intervalOuterRadius"></a>intervalOuterRadius</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalOuterRadius = null</td></tr></table></blockquote><p>Radius of the outer circle of the interval ring.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.tickSpacing"></a>tickSpacing</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 30</td></tr></table></blockquote><p>Degrees between ticks.&nbsp; This is a target number, if incompatible span and ticks are supplied, a suitable spacing close to this value will be computed.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.hubRadius"></a>hubRadius</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hubRadius = null</td></tr></table></blockquote><p>Radius of the hub at the bottom center of gauge which the needle attaches to.&nbsp; Auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.tickPadding"></a>tickPadding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickPadding = null</td></tr></table></blockquote><p>padding of the tick marks to the outer ring and the tick labels to marks.&nbsp; Auto computed by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.needleThickness"></a>needleThickness</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needleThickness = null</td></tr></table></blockquote><p>Maximum thickness the needle.&nbsp; Auto computed by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.needlePad"></a>needlePad</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needlePad = 6</td></tr></table></blockquote><p>Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.MeterGaugeRenderer.pegNeedle"></a>pegNeedle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pegNeedle = true</td></tr></table></blockquote><p>True will stop needle just below/above the min/max values if data is below/above min/max, as if the meter is &ldquo;pegged&rdquo;.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>MeterGaugeRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the meterGauge, auto computed by default</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = null</td></tr></table></blockquote>padding between the meterGauge and plot edges, auto calculated by default.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the gauge ring and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 4</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = &quot;#efefef&quot;</td></tr></table></blockquote>background color of the inside of the gauge.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringColor = &quot;#BBC6D0&quot;</td></tr></table></blockquote>color of the outer ring, hub, and needle of the gauge.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickColor = &quot;989898&quot;</td></tr></table></blockquote>color of the tick marks around the gauge.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringWidth = null</td></tr></table></blockquote>width of the ring around the gauge. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min</td></tr></table></blockquote>Minimum value on the gauge. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max</td></tr></table></blockquote>Maximum value on the gauge. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>Array of tick values. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>true to show ticks around gauge.</div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickLabels = true</td></tr></table></blockquote>true to show tick labels next to ticks.</div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>A gauge label like &lsquo;kph&rsquo; or &lsquo;Volts&rsquo;</div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelHeightAdjust = 0</td></tr></table></blockquote>Number of Pixels to offset the label up (-) or down (+) from its default position.</div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'inside'</td></tr></table></blockquote>Where to position the label, either &lsquo;inside&rsquo; or &lsquo;bottom&rsquo;.</div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervals = []</td></tr></table></blockquote>Array of ranges to be drawn around the gauge. </div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalColors = [ &quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;]</td></tr></table></blockquote>Array of colors to use for the intervals.</div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalInnerRadius = null</td></tr></table></blockquote>Radius of the inner circle of the interval ring.</div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalOuterRadius = null</td></tr></table></blockquote>Radius of the outer circle of the interval ring.</div></div><div class=CToolTip id="tt22"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 30</td></tr></table></blockquote>Degrees between ticks. </div></div><div class=CToolTip id="tt23"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hubRadius = null</td></tr></table></blockquote>Radius of the hub at the bottom center of gauge which the needle attaches to. </div></div><div class=CToolTip id="tt24"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickPadding = null</td></tr></table></blockquote>padding of the tick marks to the outer ring and the tick labels to marks. </div></div><div class=CToolTip id="tt25"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needleThickness = null</td></tr></table></blockquote>Maximum thickness the needle. </div></div><div class=CToolTip id="tt26"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needlePad = 6</td></tr></table></blockquote>Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.</div></div><div class=CToolTip id="tt27"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pegNeedle = true</td></tr></table></blockquote>True will stop needle just below/above the min/max values if data is below/above min/max, as if the meter is &ldquo;pegged&rdquo;.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ohlcRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ohlcRenderer-js.html
deleted file mode 100644
index 2a200898..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-ohlcRenderer-js.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.OHLCRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.OHLCRenderer"></a>$.jqplot.<wbr>OHLCRenderer</div><div class=CBody><p>jqPlot Plugin to draw Open Hi Low Close, Candlestick and Hi Low Close charts.</p><p>To use this plugin, include the renderer js file in your source:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.ohlcRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>You will most likely want to use a date axis renderer for the x axis also, so include the date axis render js file also:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.dateAxisRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><h4 class=CHeading>Then you set the renderer in the series options on your plot</h4><blockquote><pre>series: [{renderer:$.jqplot.OHLCRenderer}]</pre></blockquote><p>For OHLC and candlestick charts, data should be specified like so:</p><blockquote><pre>dat = [['07/06/2009',138.7,139.68,135.18,135.4], ['06/29/2009',143.46,144.66,139.79,140.02], ...]</pre></blockquote><p>If the data array has only 4 values per point instead of 5, the renderer will create a Hi Low Close chart instead.&nbsp; In that case, data should be supplied like:</p><blockquote><pre>dat = [['07/06/2009',139.68,135.18,135.4], ['06/29/2009',144.66,139.79,140.02], ...]</pre></blockquote><p>To generate a candlestick chart instead of an OHLC chart, set the &ldquo;candlestick&rdquo; option to true:</p><blockquote><pre>series: [{renderer:$.jqplot.OHLCRenderer, rendererOptions:{candleStick:true}}],</pre></blockquote><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.OHLCRenderer" >$.jqplot.<wbr>OHLCRenderer</a></td><td class=SDescription>jqPlot Plugin to draw Open Hi Low Close, Candlestick and Hi Low Close charts.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.candleStick" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">candleStick</a></td><td class=SDescription>true to render chart as candleStick. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.tickLength" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">tickLength</a></td><td class=SDescription>length of the line in pixels indicating open and close price. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.bodyWidth" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">bodyWidth</a></td><td class=SDescription>width of the candlestick body in pixels. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.openColor" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">openColor</a></td><td class=SDescription>color of the open price tick mark. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.closeColor" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">closeColor</a></td><td class=SDescription>color of the close price tick mark. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.wickColor" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">wickColor</a></td><td class=SDescription>color of the hi-lo line thorugh the candlestick body. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.fillUpBody" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">fillUpBody</a></td><td class=SDescription>true to render an &ldquo;up&rdquo; day (close price greater than open price) with a filled candlestick body.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.fillDownBody" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">fillDownBody</a></td><td class=SDescription>true to render a &ldquo;down&rdquo; day (close price lower than open price) with a filled candlestick body.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.upBodyColor" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">upBodyColor</a></td><td class=SDescription>Color of candlestick body of an &ldquo;up&rdquo; day. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.downBodyColor" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">downBodyColor</a></td><td class=SDescription>Color of candlestick body on a &ldquo;down&rdquo; day. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.hlc" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">hlc</a></td><td class=SDescription>true if is a hi-low-close chart (no open price). </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.OHLCRenderer.lineWidth" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">lineWidth</a></td><td class=SDescription>Width of the hi-low line and open/close ticks. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.candleStick"></a>candleStick</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.candleStick = false</td></tr></table></blockquote><p>true to render chart as candleStick.&nbsp; Must have an open price, cannot be a hlc chart.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.tickLength"></a>tickLength</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickLength = 'auto'</td></tr></table></blockquote><p>length of the line in pixels indicating open and close price.&nbsp; Default will auto calculate based on plot width and number of points displayed.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.bodyWidth"></a>bodyWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bodyWidth = 'auto'</td></tr></table></blockquote><p>width of the candlestick body in pixels.&nbsp; Default will auto calculate based on plot width and number of candlesticks displayed.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.openColor"></a>openColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.openColor = null</td></tr></table></blockquote><p>color of the open price tick mark.&nbsp; Default is series color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.closeColor"></a>closeColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.closeColor = null</td></tr></table></blockquote><p>color of the close price tick mark.&nbsp; Default is series color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.wickColor"></a>wickColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.wickColor = null</td></tr></table></blockquote><p>color of the hi-lo line thorugh the candlestick body.&nbsp; Default is the series color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.fillUpBody"></a>fillUpBody</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillUpBody = false</td></tr></table></blockquote><p>true to render an &ldquo;up&rdquo; day (close price greater than open price) with a filled candlestick body.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.fillDownBody"></a>fillDownBody</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillDownBody = true</td></tr></table></blockquote><p>true to render a &ldquo;down&rdquo; day (close price lower than open price) with a filled candlestick body.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.upBodyColor"></a>upBodyColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.upBodyColor = null</td></tr></table></blockquote><p>Color of candlestick body of an &ldquo;up&rdquo; day.&nbsp; Default is series color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.downBodyColor"></a>downBodyColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.downBodyColor = null</td></tr></table></blockquote><p>Color of candlestick body on a &ldquo;down&rdquo; day.&nbsp; Default is series color.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.hlc"></a>hlc</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hlc = false</td></tr></table></blockquote><p>true if is a hi-low-close chart (no open price).&nbsp; This is determined automatically from the series data.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.OHLCRenderer.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote><p>Width of the hi-low line and open/close ticks.&nbsp; Must be set in the rendererOptions for the series.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>OHLCRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.candleStick = false</td></tr></table></blockquote>true to render chart as candleStick. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickLength = 'auto'</td></tr></table></blockquote>length of the line in pixels indicating open and close price. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bodyWidth = 'auto'</td></tr></table></blockquote>width of the candlestick body in pixels. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.openColor = null</td></tr></table></blockquote>color of the open price tick mark. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.closeColor = null</td></tr></table></blockquote>color of the close price tick mark. </div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.wickColor = null</td></tr></table></blockquote>color of the hi-lo line thorugh the candlestick body. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillUpBody = false</td></tr></table></blockquote>true to render an &ldquo;up&rdquo; day (close price greater than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillDownBody = true</td></tr></table></blockquote>true to render a &ldquo;down&rdquo; day (close price lower than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.upBodyColor = null</td></tr></table></blockquote>Color of candlestick body of an &ldquo;up&rdquo; day. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.downBodyColor = null</td></tr></table></blockquote>Color of candlestick body on a &ldquo;down&rdquo; day. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hlc = false</td></tr></table></blockquote>true if is a hi-low-close chart (no open price). </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the hi-low line and open/close ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pieRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pieRenderer-js.html
deleted file mode 100644
index 5e254102..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pieRenderer-js.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.PieRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.PieRenderer"></a>$.jqplot.<wbr>PieRenderer</div><div class=CBody><p>Plugin renderer to draw a pie chart. x values, if present, will be used as slice labels. y values give slice size.</p><p>To use this renderer, you need to include the pie renderer plugin, for example:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.pieRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Properties described here are passed into the $.jqplot function as options on the series renderer.&nbsp; For example:</p><blockquote><pre>plot2 = $.jqplot('chart2', [s1, s2], {
- seriesDefaults: {
- renderer:$.jqplot.PieRenderer,
- rendererOptions:{
- sliceMargin: 2,
- startAngle: -90
- }
- }
-});</pre></blockquote><p>A pie plot will trigger events on the plot target according to user interaction.&nbsp; All events return the event object, the series index, the point (slice) index, and the point data for the appropriate slice.</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>&rsquo;jqplotDataMouseOver&rsquo;</td><td class=CDLDescription>triggered when user mouseing over a slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataHighlight&rsquo;</td><td class=CDLDescription>triggered the first time user mouses over a slice, if highlighting is enabled.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataUnhighlight&rsquo;</td><td class=CDLDescription>triggered when a user moves the mouse out of a highlighted slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataClick&rsquo;</td><td class=CDLDescription>triggered when the user clicks on a slice.</td></tr><tr><td class=CDLEntry>&rsquo;jqplotDataRightClick&rsquo;</td><td class=CDLDescription>tiggered when the user right clicks on a slice if the &ldquo;captureRightClick&rdquo; option is set to true on the plot.</td></tr></table><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.PieRenderer" >$.jqplot.<wbr>PieRenderer</a></td><td class=SDescription>Plugin renderer to draw a pie chart. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.PieRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.diameter" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">diameter</a></td><td class=SDescription>Outer diameter of the pie, auto computed by default</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.padding" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">padding</a></td><td class=SDescription>padding between the pie and plot edges, legend, etc.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.sliceMargin" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">sliceMargin</a></td><td class=SDescription>angular spacing between pie slices in degrees.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.fill" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">fill</a></td><td class=SDescription>true or false, wether to fil the slices.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.shadowOffset" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">shadowOffset</a></td><td class=SDescription>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.shadowAlpha" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">shadowAlpha</a></td><td class=SDescription>transparency of the shadow (0 = transparent, 1 = opaque)</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.shadowDepth" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">shadowDepth</a></td><td class=SDescription>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.highlightMouseOver" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">highlightMouseOver</a></td><td class=SDescription>True to highlight slice when moused over. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.highlightMouseDown" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a slice. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.highlightColors" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">highlightColors</a></td><td class=SDescription>an array of colors to use when highlighting a slice.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabels" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">dataLabels</a></td><td class=SDescription>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.showDataLabels" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">showDataLabels</a></td><td class=SDescription>true to show data labels on slices.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabelFormatString" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">dataLabelFormatString</a></td><td class=SDescription>Format string for data labels. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabelThreshold" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">dataLabelThreshold</a></td><td class=SDescription>Threshhold in percentage (0-100) of pie area, below which no label will be displayed. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabelPositionFactor" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">dataLabelPositionFactor</a></td><td class=SDescription>A Multiplier (0-1) of the pie radius which controls position of label on slice. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabelNudge" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">dataLabelNudge</a></td><td class=SDescription>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieRenderer.dataLabelCenterOn" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">dataLabelCenterOn</a></td><td class=SDescription>True to center the data label at its position. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieRenderer.startAngle" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">startAngle</a></td><td class=SDescription>Angle to start drawing pie in degrees. </td></tr><tr class="SClass"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer" >$.jqplot.<wbr>PieLegendRenderer</a></td><td class=SDescription>Legend Renderer specific to pie plots. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.numberRows" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.numberColumns" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.diameter"></a>diameter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote><p>Outer diameter of the pie, auto computed by default</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.padding"></a>padding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote><p>padding between the pie and plot edges, legend, etc.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.sliceMargin"></a>sliceMargin</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote><p>angular spacing between pie slices in degrees.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote><p>true or false, wether to fil the slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote><p>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote><p>transparency of the shadow (0 = transparent, 1 = opaque)</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote><p>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight slice when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a slice.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>an array of colors to use when highlighting a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabels"></a>dataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote><p>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices.&nbsp; Defaults to percentage of each pie slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.showDataLabels"></a>showDataLabels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote><p>true to show data labels on slices.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabelFormatString"></a>dataLabelFormatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote><p>Format string for data labels.&nbsp; If none, &lsquo;%s&rsquo; is used for &ldquo;label&rdquo; and for arrays, &lsquo;%d&rsquo; for value and &lsquo;%d%%&rsquo; for percentage.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabelThreshold"></a>dataLabelThreshold</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote><p>Threshhold in percentage (0-100) of pie area, below which no label will be displayed.&nbsp; This applies to all label types, not just to percentage labels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabelPositionFactor"></a>dataLabelPositionFactor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.52</td></tr></table></blockquote><p>A Multiplier (0-1) of the pie radius which controls position of label on slice.&nbsp; Increasing will slide label toward edge of pie, decreasing will slide label toward center of pie.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabelNudge"></a>dataLabelNudge</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 2</td></tr></table></blockquote><p>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.dataLabelCenterOn"></a>dataLabelCenterOn</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelCenterOn = true</td></tr></table></blockquote><p>True to center the data label at its position.&nbsp; False to set the inside facing edge of the label at its position.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieRenderer.startAngle"></a>startAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote><p>Angle to start drawing pie in degrees.&nbsp; According to orientation of canvas coordinate system: 0 = on the positive x axis -90 = on the positive y axis.&nbsp; 90 = on the negaive y axis.&nbsp; 180 or - 180 = on the negative x axis.</p></div></div></div>
-
-<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="$.jqplot.PieLegendRenderer"></a>$.jqplot.<wbr>PieLegendRenderer</h2><div class=CBody><p>Legend Renderer specific to pie plots.&nbsp; Set by default when user creates a pie plot.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.numberRows" id=link21 onMouseOver="ShowTip(event, 'tt19', 'link21')" onMouseOut="HideTip('tt19')">numberRows</a></td><td class=SDescription>Maximum number of rows in the legend. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#$.jqplot.PieLegendRenderer.numberColumns" id=link22 onMouseOver="ShowTip(event, 'tt20', 'link22')" onMouseOut="HideTip('tt20')">numberColumns</a></td><td class=SDescription>Maximum number of columns in the legend. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieLegendRenderer.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieLegendRenderer.numberRows"></a>numberRows</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote><p>Maximum number of rows in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PieLegendRenderer.numberColumns"></a>numberColumns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote><p>Maximum number of columns in the legend.&nbsp; 0 or null for unlimited.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>PieRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the pie, auto computed by default</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the pie and plot edges, legend, etc.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between pie slices in degrees.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt14"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote>Threshhold in percentage (0-100) of pie area, below which no label will be displayed. </div></div><div class=CToolTip id="tt15"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.52</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 2</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelCenterOn = true</td></tr></table></blockquote>True to center the data label at its position. </div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing pie in degrees. </div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pointLabels-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pointLabels-js.html
deleted file mode 100644
index 36d309c8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pointLabels-js.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.PointLabels</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.PointLabels"></a>$.jqplot.<wbr>PointLabels</div><div class=CBody><p>Plugin for putting labels at the data points.</p><p>To use this plugin, include the js file in your source:</p><blockquote><pre>&lt;script type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.pointLabels.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>By default, the last value in the data ponit array in the data series is used for the label.&nbsp; For most series renderers, extra data can be added to the data point arrays and the last value will be used as the label.</p><p>For instance, this series:</p><blockquote><pre>[[1,4], [3,5], [7,2]]</pre></blockquote><p>Would, by default, use the y values in the labels.&nbsp; Extra data can be added to the series like so:</p><blockquote><pre>[[1,4,'mid'], [3 5,'hi'], [7,2,'low']]</pre></blockquote><p>And now the point labels would be &lsquo;mid&rsquo;, &lsquo;low&rsquo;, and &lsquo;hi&rsquo;.</p><p>Options to the point labels and a custom labels array can be passed into the &ldquo;pointLabels&rdquo; option on the series option like so:</p><blockquote><pre>series:[{pointLabels:{
- labels:['mid', 'hi', 'low'],
- location:'se',
- ypadding: 12
- }
-}]</pre></blockquote><p>A custom labels array in the options takes precendence over any labels in the series data.&nbsp; If you have a custom labels array in the options, but still want to use values from the series array as labels, set the &ldquo;labelsFromSeries&rdquo; option to true.</p><p>By default, html entities (&lt;, &gt;, etc.) are escaped in point labels.&nbsp; If you want to include actual html markup in the labels, set the &ldquo;escapeHTML&rdquo; option to false.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.PointLabels" >$.jqplot.<wbr>PointLabels</a></td><td class=SDescription>Plugin for putting labels at the data points.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.PointLabels.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.show" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">show</a></td><td class=SDescription>show the labels or not.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.location" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">location</a></td><td class=SDescription>compass location where to position the label around the point. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.labelsFromSeries" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">labelsFromSeries</a></td><td class=SDescription>true to use labels within data point arrays.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.seriesLabelIndex" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">seriesLabelIndex</a></td><td class=SDescription>array index for location of labels within data point arrays. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.labels" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">labels</a></td><td class=SDescription>array of arrays of labels, one array for each series.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.stackedValue" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">stackedValue</a></td><td class=SDescription>true to display value as stacked in a stacked plot. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.ypadding" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">ypadding</a></td><td class=SDescription>vertical padding in pixels between point and label</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.xpadding" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">xpadding</a></td><td class=SDescription>horizontal padding in pixels between point and label</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.escapeHTML" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">escapeHTML</a></td><td class=SDescription>true to escape html entities in the labels. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.edgeTolerance" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">edgeTolerance</a></td><td class=SDescription>Number of pixels that the label must be away from an axis boundary in order to be drawn. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.formatter" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">formatter</a></td><td class=SDescription>A class of a formatter for the tick text. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.PointLabels.formatString" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">formatString</a></td><td class=SDescription>string passed to the formatter.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.PointLabels.hideZeros" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">hideZeros</a></td><td class=SDescription>true to not show a label for a value which is 0.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote><p>show the labels or not.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.location"></a>location</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'n'</td></tr></table></blockquote><p>compass location where to position the label around the point.&nbsp; &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.labelsFromSeries"></a>labelsFromSeries</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelsFromSeries = false</td></tr></table></blockquote><p>true to use labels within data point arrays.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.seriesLabelIndex"></a>seriesLabelIndex</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesLabelIndex = null</td></tr></table></blockquote><p>array index for location of labels within data point arrays. if null, will use the last element of the data point array.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.labels"></a>labels</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote><p>array of arrays of labels, one array for each series.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.stackedValue"></a>stackedValue</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackedValue = false</td></tr></table></blockquote><p>true to display value as stacked in a stacked plot. no effect if labels is specified.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.ypadding"></a>ypadding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ypadding = 6</td></tr></table></blockquote><p>vertical padding in pixels between point and label</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.xpadding"></a>xpadding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xpadding = 6</td></tr></table></blockquote><p>horizontal padding in pixels between point and label</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.escapeHTML"></a>escapeHTML</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = true</td></tr></table></blockquote><p>true to escape html entities in the labels.&nbsp; If you want to include markup in the labels, set to false.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.edgeTolerance"></a>edgeTolerance</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.edgeTolerance = -5</td></tr></table></blockquote><p>Number of pixels that the label must be away from an axis boundary in order to be drawn.&nbsp; Negative values will allow overlap with the grid boundaries.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.formatter"></a>formatter</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote><p>A class of a formatter for the tick text.&nbsp; sprintf by default.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.formatString"></a>formatString</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote><p>string passed to the formatter.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.PointLabels.hideZeros"></a>hideZeros</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hideZeros = false</td></tr></table></blockquote><p>true to not show a label for a value which is 0.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>PointLabels</div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>show the labels or not.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'n'</td></tr></table></blockquote>compass location where to position the label around the point. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelsFromSeries = false</td></tr></table></blockquote>true to use labels within data point arrays.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesLabelIndex = null</td></tr></table></blockquote>array index for location of labels within data point arrays. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>array of arrays of labels, one array for each series.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackedValue = false</td></tr></table></blockquote>true to display value as stacked in a stacked plot. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ypadding = 6</td></tr></table></blockquote>vertical padding in pixels between point and label</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xpadding = 6</td></tr></table></blockquote>horizontal padding in pixels between point and label</div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = true</td></tr></table></blockquote>true to escape html entities in the labels. </div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.edgeTolerance = -5</td></tr></table></blockquote>Number of pixels that the label must be away from an axis boundary in order to be drawn. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hideZeros = false</td></tr></table></blockquote>true to not show a label for a value which is 0.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidAxisRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidAxisRenderer-js.html
deleted file mode 100644
index 4cf690b7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidAxisRenderer-js.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>/Users/chris/Sites/lib/jqplot/build/plugins/jqplot.pyramidAxisRenderer.js</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqplot.pyramidAxisRenderer.js"></a>jqplot.<wbr>pyramidAxisRenderer.js</div><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#jqplot.pyramidAxisRenderer.js" >jqplot.<wbr>pyramidAxisRenderer.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#position" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">position</a></td><td class=SDescription>Position of axis. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#drawBaseline" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">drawBaseline</a></td><td class=SDescription>True to draw the axis baseline.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#baselineWidth" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">baselineWidth</a></td><td class=SDescription>width of the baseline in pixels.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#baselineColor" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">baselineColor</a></td><td class=SDescription>CSS color spec for the baseline.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="position"></a>position</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.position = null</td></tr></table></blockquote><p>Position of axis.&nbsp; Values are: top, bottom , left, center, right.&nbsp; By default, x and x2 axes are bottom, y axis is center.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="drawBaseline"></a>drawBaseline</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote><p>True to draw the axis baseline.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="baselineWidth"></a>baselineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote><p>width of the baseline in pixels.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="baselineColor"></a>baselineColor</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote><p>CSS color spec for the baseline.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>pyramidAxisRenderer.js</div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.position = null</td></tr></table></blockquote>Position of axis. </div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidGridRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidGridRenderer-js.html
deleted file mode 100644
index 2755c0ec..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidGridRenderer-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.CanvasGridRenderer</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.CanvasGridRenderer"></a>$.jqplot.<wbr>CanvasGridRenderer</div><div class=CBody><p>The default jqPlot grid renderer, creating a grid on a canvas element.&nbsp; The renderer has no additional options beyond the <a href="../jqplot-core-js.html#Grid" class=LClass id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">Grid</a> class.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>CanvasGridRenderer</div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>Object representing the grid on which the plot is drawn. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidRenderer-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidRenderer-js.html
deleted file mode 100644
index 3ff6678d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-pyramidRenderer-js.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>/Users/chris/Sites/lib/jqplot/build/plugins/jqplot.pyramidRenderer.js</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CFile"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqplot.pyramidRenderer.js"></a>jqplot.<wbr>pyramidRenderer.js</div><div class=CBody><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#jqplot.pyramidRenderer.js" >jqplot.<wbr>pyramidRenderer.js</a></td><td class=SDescription></td></tr><tr class="SGroup"><td class=SEntry><a href="#Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#barPadding" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">barPadding</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#fill" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">fill</a></td><td class=SDescription>True to fill the bars.</td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#highlightMouseOver" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">highlightMouseOver</a></td><td class=SDescription>True to highlight slice when moused over. </td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#highlightMouseDown" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">highlightMouseDown</a></td><td class=SDescription>True to highlight when a mouse button is pressed over a slice. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#highlightColors" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">highlightColors</a></td><td class=SDescription>an array of colors to use when highlighting a slice.</td></tr><tr class="SProperty SIndent1"><td class=SEntry><a href="#synchronizeHighlight" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">synchronizeHighlight</a></td><td class=SDescription>Index of another series to highlight when this series is highlighted. </td></tr><tr class="SProperty SIndent1 SMarked"><td class=SEntry><a href="#offsetBars" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">offsetBars</a></td><td class=SDescription>False will center bars on their y value. </td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="barPadding"></a>barPadding</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 10</td></tr></table></blockquote></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="fill"></a>fill</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote><p>True to fill the bars.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="highlightMouseOver"></a>highlightMouseOver</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote><p>True to highlight slice when moused over.&nbsp; This must be false to enable highlightMouseDown to highlight when clicking on a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="highlightMouseDown"></a>highlightMouseDown</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote><p>True to highlight when a mouse button is pressed over a slice.&nbsp; This will be disabled if highlightMouseOver is true.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="highlightColors"></a>highlightColors</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote><p>an array of colors to use when highlighting a slice.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="synchronizeHighlight"></a>synchronizeHighlight</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.synchronizeHighlight = false</td></tr></table></blockquote><p>Index of another series to highlight when this series is highlighted. null or false to not synchronize.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="offsetBars"></a>offsetBars</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offsetBars = false</td></tr></table></blockquote><p>False will center bars on their y value.&nbsp; True will push bars up by 1/2 bar width to fill between their y values.&nbsp; If true, there needs to be 1 more tick than there are bars.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>pyramidRenderer.js</div></div><div class=MEntry><div class=MFile><a href="jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 10</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>True to fill the bars.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.synchronizeHighlight = false</td></tr></table></blockquote>Index of another series to highlight when this series is highlighted. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offsetBars = false</td></tr></table></blockquote>False will center bars on their y value. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-trendline-js.html b/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-trendline-js.html
deleted file mode 100644
index e773b711..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/plugins/jqplot-trendline-js.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>$.jqplot.Trendline</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a></div><a name="$.jqplot.Trendline"></a>$.jqplot.<wbr>Trendline</div><div class=CBody><p>Plugin which will automatically compute and draw trendlines for plotted data.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#$.jqplot.Trendline" >$.jqplot.<wbr>Trendline</a></td><td class=SDescription>Plugin which will automatically compute and draw trendlines for plotted data.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#$.jqplot.Trendline.Properties" >Properties</a></td><td class=SDescription></td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.show" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">show</a></td><td class=SDescription>Wether or not to show the trend line.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.color" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">color</a></td><td class=SDescription>CSS color spec for the trend line. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.renderer" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">renderer</a></td><td class=SDescription>Renderer to use to draw the trend line. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.rendererOptions" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">rendererOptions</a></td><td class=SDescription>Options to pass to the line renderer. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.label" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">label</a></td><td class=SDescription>Label for the trend line to use in the legend.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.type" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">type</a></td><td class=SDescription>Either &lsquo;exponential&rsquo;, &lsquo;exp&rsquo;, or &lsquo;linear&rsquo;.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.shadow" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">shadow</a></td><td class=SDescription>true or false, wether or not to show the shadow.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.markerRenderer" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">markerRenderer</a></td><td class=SDescription>Renderer to use to draw markers on the line. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.lineWidth" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">lineWidth</a></td><td class=SDescription>Width of the trend line.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.shadowAngle" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">shadowAngle</a></td><td class=SDescription>Angle of the shadow on the trend line.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.shadowOffset" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">shadowOffset</a></td><td class=SDescription>pixel offset for each stroke of the shadow.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#$.jqplot.Trendline.shadowAlpha" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">shadowAlpha</a></td><td class=SDescription>Alpha transparency of the shadow.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#$.jqplot.Trendline.shadowDepth" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">shadowDepth</a></td><td class=SDescription>number of strokes to make of the shadow.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>
-
-<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.Properties"></a>Properties</h3></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.show"></a>show</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote><p>Wether or not to show the trend line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.color"></a>color</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote><p>CSS color spec for the trend line.&nbsp; By default this wil be the same color as the primary line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.renderer"></a>renderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = new $.jqplot.LineRenderer()</td></tr></table></blockquote><p>Renderer to use to draw the trend line.&nbsp; The data series that is plotted may not be rendered as a line.&nbsp; Therefore, we use our own line renderer here to draw a trend line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.rendererOptions"></a>rendererOptions</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {marker:{show:false}}</td></tr></table></blockquote><p>Options to pass to the line renderer.&nbsp; By default, markers are not shown on trend lines.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.label"></a>label</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote><p>Label for the trend line to use in the legend.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.type"></a>type</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.type = 'linear'</td></tr></table></blockquote><p>Either &lsquo;exponential&rsquo;, &lsquo;exp&rsquo;, or &lsquo;linear&rsquo;.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.shadow"></a>shadow</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote><p>true or false, wether or not to show the shadow.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.markerRenderer"></a>markerRenderer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = {show:false}</td></tr></table></blockquote><p>Renderer to use to draw markers on the line.&nbsp; I think this is wrong.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.lineWidth"></a>lineWidth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote><p>Width of the trend line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.shadowAngle"></a>shadowAngle</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote><p>Angle of the shadow on the trend line.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.shadowOffset"></a>shadowOffset</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.0</td></tr></table></blockquote><p>pixel offset for each stroke of the shadow.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.shadowAlpha"></a>shadowAlpha</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote><p>Alpha transparency of the shadow.</p></div></div></div>
-
-<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="$.jqplot.Trendline.shadowDepth"></a>shadowDepth</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote><p>number of strokes to make of the shadow.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile id=MSelected>jqplot.<wbr>Trendline</div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([3, 4], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>Wether or not to show the trend line.</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>CSS color spec for the trend line. </div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = new $.jqplot.LineRenderer()</td></tr></table></blockquote>Renderer to use to draw the trend line. </div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {marker:{show:false}}</td></tr></table></blockquote>Options to pass to the line renderer. </div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Label for the trend line to use in the legend.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.type = 'linear'</td></tr></table></blockquote>Either &lsquo;exponential&rsquo;, &lsquo;exp&rsquo;, or &lsquo;linear&rsquo;.</div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>true or false, wether or not to show the shadow.</div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = {show:false}</td></tr></table></blockquote>Renderer to use to draw markers on the line. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the trend line.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Angle of the shadow on the trend line.</div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.0</td></tr></table></blockquote>pixel offset for each stroke of the shadow.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>Alpha transparency of the shadow.</div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>number of strokes to make of the shadow.</div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/files/usage-txt.html b/wqflask/wqflask/static/packages/jqplot/docs/files/usage-txt.html
deleted file mode 100644
index d4d40098..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/files/usage-txt.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>jqPlot Usage</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id=Content><div class="CSection"><div class=CTopic id=MainTopic><div class="CTitle logo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div><a name="jqPlot_Usage"></a>jqPlot Usage</div><div class=CBody><h4 class=CHeading>Usage Documentation</h4><h4 class=CHeading>Introduction</h4><p>jqPlot is a jQuery plugin to generate pure client-side javascript charts in your web pages.</p><p>The jqPlot home page is at <a href="http://www.jqplot.com/" class=LURL target=_top>http://www.jqplot.com/</a>.</p><p>The project page and downloads are at <a href="http://www.bitbucket.org/cleonello/jqplot/" class=LURL target=_top>http://www.bitbucket.org/cleonello/jqplot/</a>.</p><p>Below are a few examples to demonstrate jqPlot usage.&nbsp; These plots are shown as static images.&nbsp; Many more examples of dynamically rendered plots can be seen on the test and examples pages here: <a href="../../tests/" class=LURL target=_top>../../tests/</a>.</p><h4 class=CHeading>Include the Files</h4><p>jqPlot requires jQuery (1.4+ required for certain features). jQuery is included in the distribution.&nbsp; To use jqPlot include jquery, the jqPlot jQuery plugin, jqPlot css file and optionally the excanvas script for IE support in your web page.&nbsp; Note, excanvas is required only for IE versions below 9.&nbsp; IE 9 includes native support for the canvas element and does not require excanvas:</p><blockquote><pre>&lt;!--[if lt IE 9]&gt;&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;excanvas.js&quot;&gt;&lt;/script&gt;&lt;![endif]--&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery.min.js&quot;&gt;&lt;/script&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery.jqplot.min.js&quot;&gt;&lt;/script&gt;
-&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;jquery.jqplot.css&quot; /&gt;</pre></blockquote><h4 class=CHeading>Add a plot container</h4><p>Add a container (target) to your web page where you want your plot to show up.&nbsp; Be sure to give your target a width and a height:</p><blockquote><pre>&lt;div id=&quot;chartdiv&quot; style=&quot;height:400px;width:300px; &quot;&gt;&lt;/div&gt;</pre></blockquote><h4 class=CHeading>Create a plot</h4><p>Then, create the actual plot by calling the $.jqplot plugin with the id of your target and some data:</p><blockquote><pre>$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);</pre></blockquote><p>Which will produce a chart like:</p><img src="images/basicline.png" width="416" height="317"><h4 class=CHeading>Plot Options</h4><p>You can customize the plot by passing options to the $.jqplot function.&nbsp; Options are described in <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">jqPlot Options</a> in the jqPlotOptions.txt file.&nbsp; An example of options usage:</p><blockquote><pre>$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-{ title:'Exponential Line',
- axes:{yaxis:{min:-10, max:240}},
- series:[{color:'#5FAB78'}]
-});</pre></blockquote><p>Which will produce a plot like:</p><img src="images/basicoptions.png" width="417" height="315"><h4 class=CHeading>Using Plugins</h4><p>You can use jqPlot plugins (that is, plugins to the jqPlot plugin) by including them in your html after you include the jqPlot plugin.&nbsp; Here is how to include the log axis plugin:</p><blockquote><pre>&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;jquery.jqplot.css&quot; /&gt;
-&lt;!--[if IE]&gt;&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;excanvas.js&quot;&gt;&lt;/script&gt;&lt;![endif]--&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery.min.js&quot;&gt;&lt;/script&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jquery.jqplot.min.js&quot;&gt;&lt;/script&gt;
-&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;jqplot.logAxisRenderer.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Important note: For jqplot builds r529 and above (0.9.7r529 and higher), you must explicitly enable plugins via either the { show: true } plugin option to the plot or by using the $.jqplot.config.enablePlugins = true; config options set on the page before plot creation.&nbsp; Only plugins that can be immediately active upon loading are affected.&nbsp; This includes non-renderer plugins like cursor, dragable, highlighter, and trendline.</p><p>Here is a the same $.jqplot call but with a log y axis:</p><blockquote><pre>$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-{ title:'Exponential Line',
- axes:{yaxis:{renderer: $.jqplot.LogAxisRenderer}},
- series:[{color:'#5FAB78'}]
-});</pre></blockquote><p>Which produces a plot like:</p><img src="images/basiclogaxis.png" width="416" height="312"><p>You can further customize with options specific to the log axis plugin:</p><blockquote><pre>$.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-{ title:'Exponential Line',
- axes:{yaxis:{renderer: $.jqplot.LogAxisRenderer, tickDistribution:'power'}},
- series:[{color:'#5FAB78'}]
-});</pre></blockquote><p>Which makes a plot like:</p><img src="images/basiclogoptions.png" width="416" height="310"><p>For a full list of options, see <a href="jqPlotOptions-txt.html#jqPlot_Options" class=LSection id=link2 onMouseOver="ShowTip(event, 'tt1', 'link2')" onMouseOut="HideTip('tt1')">jqPlot Options</a> in the jqPlotOptions.txt file.</p><p>You can add as many plugins as you wish.&nbsp; Order is generally not important.&nbsp; Some plugins, like the highlighter plugin which highlights data points near the mouse, don&rsquo;t need any extra options or setup to function.&nbsp; Highlighter does have additional options which the user can set.</p><p>Other plugins, the barRenderer for example, provide functionality the must be specified in the chart options object.&nbsp; To render a series as a bar graph with the bar renderer, you would first include the plugin after jqPlot:</p><blockquote><pre>&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;plugins/jqplot.barRenderer.min.js&quot;&gt;&lt;/script&gt;</pre></blockquote><p>Then you would create a chart like:</p><blockquote><pre>$.jqplot('chartdiv', [[34.53, 56.32, 25.1, 18.6]], {series:[{renderer:$.jqplot.BarRenderer}]});</pre></blockquote><p>Here the default LineRenderer is replaced by a BarRenderer to generate a bar graph for the first (an only) series.</p></div></div></div>
-
-</div><!--Content-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile id=MSelected>Usage</div></div><div class=MEntry><div class=MFile><a href="jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([1, 4, 5], 6);// --></script></div><!--Menu-->
-
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CSection><b>This document is out of date. </div></div><!--END_ND_TOOLTIPS-->
-
-
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index.html b/wqflask/wqflask/static/packages/jqplot/docs/index.html
deleted file mode 100644
index 295fd4a6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index.html
+++ /dev/null
@@ -1 +0,0 @@
-<html><head><meta http-equiv="Refresh" CONTENT="0; URL=files/usage-txt.html"></head></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Classes.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Classes.html
deleted file mode 100644
index f34f9a3e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Classes.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Class Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Class Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> &middot; 0-9 &middot; <a href="#A">A</a> &middot; B &middot; C &middot; <a href="#D">D</a> &middot; E &middot; F &middot; <a href="#G">G</a> &middot; <a href="#H">H</a> &middot; I &middot; <a href="#J">J</a> &middot; K &middot; <a href="#L">L</a> &middot; M &middot; N &middot; O &middot; P &middot; Q &middot; R &middot; <a href="#S">S</a> &middot; <a href="#T">T</a> &middot; U &middot; <a href="#V">V</a> &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="Symbols"></a>$#!</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-toImage-js.html#$.fn" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>$.fn</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>$.jqplot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>$.jqplot.<wbr>AxisLabelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>$.jqplot.<wbr>AxisTickRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>$.jqplot.<wbr>BarRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>$.jqplot.<wbr>BezierCurveRenderer.js</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>$.jqplot.<wbr>BlockRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>$.jqplot.<wbr>BubbleRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>$.jqplot.<wbr>CanvasAxisLabelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>$.jqplot.<wbr>CanvasAxisTickRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>$.jqplot.<wbr>CanvasGridRenderer</span><div class=ISubIndex><a href="../files/jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=IFile>jqplot.<wbr>canvasGridRenderer.js</a><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html#$.jqplot.CanvasGridRenderer" id=link12 onMouseOver="ShowTip(event, 'tt11', 'link12')" onMouseOut="HideTip('tt11')" class=IFile>plugins/<wbr>jqplot.<wbr>pyramidGridRenderer.js</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay" class=ISymbol>$.jqplot.<wbr>CanvasOverlay</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer" id=link13 onMouseOver="ShowTip(event, 'tt12', 'link13')" onMouseOut="HideTip('tt12')" class=ISymbol>$.jqplot.<wbr>CategoryAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ciParser-js.html#$.jqplot.ciParser" id=link14 onMouseOver="ShowTip(event, 'tt13', 'link14')" onMouseOut="HideTip('tt13')" class=ISymbol>$.jqplot.<wbr>ciParser</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor" id=link15 onMouseOver="ShowTip(event, 'tt14', 'link15')" onMouseOut="HideTip('tt14')" class=ISymbol>$.jqplot.<wbr>Cursor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer" id=link16 onMouseOver="ShowTip(event, 'tt15', 'link16')" onMouseOut="HideTip('tt15')" class=ISymbol>$.jqplot.<wbr>DateAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" id=link17 onMouseOver="ShowTip(event, 'tt16', 'link17')" onMouseOut="HideTip('tt16')" class=ISymbol>$.jqplot.<wbr>DivTitleRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer" id=link18 onMouseOver="ShowTip(event, 'tt17', 'link18')" onMouseOut="HideTip('tt17')" class=ISymbol>$.jqplot.<wbr>DonutLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer" id=link19 onMouseOver="ShowTip(event, 'tt18', 'link19')" onMouseOut="HideTip('tt18')" class=ISymbol>$.jqplot.<wbr>DonutRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable" id=link20 onMouseOver="ShowTip(event, 'tt19', 'link20')" onMouseOut="HideTip('tt19')" class=ISymbol>$.jqplot.<wbr>Dragable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer" id=link21 onMouseOver="ShowTip(event, 'tt20', 'link21')" onMouseOut="HideTip('tt20')" class=ISymbol>$.jqplot.<wbr>FunnelLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer" id=link22 onMouseOver="ShowTip(event, 'tt21', 'link22')" onMouseOut="HideTip('tt21')" class=ISymbol>$.jqplot.<wbr>FunnelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter" id=link23 onMouseOver="ShowTip(event, 'tt22', 'link23')" onMouseOut="HideTip('tt22')" class=ISymbol>$.jqplot.<wbr>Highlighter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer" id=link24 onMouseOver="ShowTip(event, 'tt23', 'link24')" onMouseOut="HideTip('tt23')" class=ISymbol>$.jqplot.<wbr>LinearAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" id=link25 onMouseOver="ShowTip(event, 'tt24', 'link25')" onMouseOut="HideTip('tt24')" class=ISymbol>$.jqplot.<wbr>LineRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer" id=link26 onMouseOver="ShowTip(event, 'tt25', 'link26')" onMouseOut="HideTip('tt25')" class=ISymbol>$.jqplot.<wbr>LogAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" id=link27 onMouseOver="ShowTip(event, 'tt26', 'link27')" onMouseOut="HideTip('tt26')" class=ISymbol>$.jqplot.<wbr>MarkerRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer" id=link28 onMouseOver="ShowTip(event, 'tt27', 'link28')" onMouseOut="HideTip('tt27')" class=ISymbol>$.jqplot.<wbr>MekkoAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer" id=link29 onMouseOver="ShowTip(event, 'tt28', 'link29')" onMouseOut="HideTip('tt28')" class=ISymbol>$.jqplot.<wbr>MekkoLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer" id=link30 onMouseOver="ShowTip(event, 'tt29', 'link30')" onMouseOut="HideTip('tt29')" class=ISymbol>$.jqplot.<wbr>MekkoRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer" id=link31 onMouseOver="ShowTip(event, 'tt30', 'link31')" onMouseOut="HideTip('tt30')" class=ISymbol>$.jqplot.<wbr>MeterGaugeRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer" id=link32 onMouseOver="ShowTip(event, 'tt31', 'link32')" onMouseOut="HideTip('tt31')" class=ISymbol>$.jqplot.<wbr>OHLCRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer" id=link33 onMouseOver="ShowTip(event, 'tt32', 'link33')" onMouseOut="HideTip('tt32')" class=ISymbol>$.jqplot.<wbr>PieLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer" id=link34 onMouseOver="ShowTip(event, 'tt33', 'link34')" onMouseOut="HideTip('tt33')" class=ISymbol>$.jqplot.<wbr>PieRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels" id=link35 onMouseOver="ShowTip(event, 'tt34', 'link35')" onMouseOut="HideTip('tt34')" class=ISymbol>$.jqplot.<wbr>PointLabels</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer" id=link36 onMouseOver="ShowTip(event, 'tt35', 'link36')" onMouseOut="HideTip('tt35')" class=ISymbol>$.jqplot.<wbr>shadowRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer" id=link37 onMouseOver="ShowTip(event, 'tt36', 'link37')" onMouseOut="HideTip('tt36')" class=ISymbol>$.jqplot.<wbr>shapeRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine" id=link38 onMouseOver="ShowTip(event, 'tt37', 'link38')" onMouseOut="HideTip('tt37')" class=ISymbol>$.jqplot.<wbr>ThemeEngine</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline" id=link39 onMouseOver="ShowTip(event, 'tt38', 'link39')" onMouseOut="HideTip('tt38')" class=ISymbol>$.jqplot.<wbr>Trendline</a></td></tr><tr><td class=IHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis" id=link40 onMouseOver="ShowTip(event, 'tt39', 'link40')" onMouseOut="HideTip('tt39')" class=ISymbol>Axis</a></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine" id=link41 onMouseOver="ShowTip(event, 'tt40', 'link41')" onMouseOut="HideTip('tt40')" class=ISymbol>DashedHorizontalLine</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine" id=link42 onMouseOver="ShowTip(event, 'tt41', 'link42')" onMouseOut="HideTip('tt41')" class=ISymbol>DashedVerticalLine</a></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid" id=link43 onMouseOver="ShowTip(event, 'tt42', 'link43')" onMouseOut="HideTip('tt42')" class=ISymbol>Grid</a></td></tr><tr><td class=IHeading><a name="H"></a>H</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine" id=link44 onMouseOver="ShowTip(event, 'tt43', 'link44')" onMouseOut="HideTip('tt43')" class=ISymbol>HorizontalLine</a></td></tr><tr><td class=IHeading><a name="J"></a>J</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot" id=link45 onMouseOver="ShowTip(event, 'tt44', 'link45')" onMouseOut="HideTip('tt44')" class=ISymbol>jqPlot</a></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend" id=link46 onMouseOver="ShowTip(event, 'tt45', 'link46')" onMouseOut="HideTip('tt45')" class=ISymbol>Legend</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line" id=link47 onMouseOver="ShowTip(event, 'tt46', 'link47')" onMouseOut="HideTip('tt46')" class=ISymbol>Line</a></td></tr><tr><td class=IHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series" id=link48 onMouseOver="ShowTip(event, 'tt47', 'link48')" onMouseOut="HideTip('tt47')" class=ISymbol>Series</a></td></tr><tr><td class=IHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title" id=link49 onMouseOver="ShowTip(event, 'tt48', 'link49')" onMouseOut="HideTip('tt48')" class=ISymbol>Title</a></td></tr><tr><td class=IHeading><a name="V"></a>V</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#VerticalLine" id=link50 onMouseOver="ShowTip(event, 'tt49', 'link50')" onMouseOut="HideTip('tt49')" class=ISymbol>VerticalLine</a></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>jQuery namespace to attach functions to jQuery elements.</div></div><div class=CToolTip id="tt2"><div class=CClass>jQuery function called by the user to create a plot.</div></div><div class=CToolTip id="tt3"><div class=CClass>Renderer to place labels on the axes.</div></div><div class=CToolTip id="tt4"><div class=CClass>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</div></div><div class=CToolTip id="tt5"><div class=CClass>A plugin renderer for jqPlot to draw a bar plot. </div></div><div class=CToolTip id="tt6"><div class=CClass>Renderer which draws lines as stacked bezier curves. </div></div><div class=CToolTip id="tt7"><div class=CClass>Plugin renderer to draw a x-y block chart. </div></div><div class=CToolTip id="tt8"><div class=CClass>Plugin renderer to draw a bubble chart. </div></div><div class=CToolTip id="tt9"><div class=CClass>Renderer to draw axis labels with a canvas element to support advanced featrues such as rotated text. </div></div><div class=CToolTip id="tt10"><div class=CClass>Renderer to draw axis ticks with a canvas element to support advanced featrues such as rotated text. </div></div><div class=CToolTip id="tt11"><div class=CClass>The default jqPlot grid renderer, creating a grid on a canvas element. </div></div><div class=CToolTip id="tt12"><div class=CClass>A plugin for jqPlot to render a category style axis, with equal pixel spacing between y data values of a series.</div></div><div class=CToolTip id="tt13"><div class=CClass>Data Renderer function which converts a custom JSON data object into jqPlot data format. </div></div><div class=CToolTip id="tt14"><div class=CClass>Plugin class representing the cursor as displayed on the plot.</div></div><div class=CToolTip id="tt15"><div class=CClass>A plugin for a jqPlot to render an axis as a series of date values. </div></div><div class=CToolTip id="tt16"><div class=CClass>The default title renderer for jqPlot. </div></div><div class=CToolTip id="tt17"><div class=CClass>Legend Renderer specific to donut plots. </div></div><div class=CToolTip id="tt18"><div class=CClass>Plugin renderer to draw a donut chart. </div></div><div class=CToolTip id="tt19"><div class=CClass>Plugin to make plotted points dragable by the user.</div></div><div class=CToolTip id="tt20"><div class=CClass>Legend Renderer specific to funnel plots. </div></div><div class=CToolTip id="tt21"><div class=CClass>Plugin renderer to draw a funnel chart. </div></div><div class=CToolTip id="tt22"><div class=CClass>Plugin which will highlight data points when they are moused over.</div></div><div class=CToolTip id="tt23"><div class=CClass>The default jqPlot axis renderer, creating a numeric axis.</div></div><div class=CToolTip id="tt24"><div class=CClass>The default line renderer for jqPlot, this class has no options beyond the Series class. </div></div><div class=CToolTip id="tt25"><div class=CClass>A plugin for a jqPlot to render a logarithmic axis.</div></div><div class=CToolTip id="tt26"><div class=CClass>The default jqPlot marker renderer, rendering the points on the line.</div></div><div class=CToolTip id="tt27"><div class=CClass>An axis renderer for a Mekko chart. </div></div><div class=CToolTip id="tt28"><div class=CClass>Legend renderer used by mekko charts with options for controlling number or rows and columns as well as placement outside of plot area.</div></div><div class=CToolTip id="tt29"><div class=CClass>Draws a Mekko style chart which shows 3 dimensional data on a 2 dimensional graph. </div></div><div class=CToolTip id="tt30"><div class=CClass>Plugin renderer to draw a meter gauge chart.</div></div><div class=CToolTip id="tt31"><div class=CClass>jqPlot Plugin to draw Open Hi Low Close, Candlestick and Hi Low Close charts.</div></div><div class=CToolTip id="tt32"><div class=CClass>Legend Renderer specific to pie plots. </div></div><div class=CToolTip id="tt33"><div class=CClass>Plugin renderer to draw a pie chart. </div></div><div class=CToolTip id="tt34"><div class=CClass>Plugin for putting labels at the data points.</div></div><div class=CToolTip id="tt35"><div class=CClass>The default jqPlot shadow renderer, rendering shadows behind shapes.</div></div><div class=CToolTip id="tt36"><div class=CClass>The default jqPlot shape renderer. </div></div><div class=CToolTip id="tt37"><div class=CClass>Theme Engine provides a programatic way to change some of the more common jqplot styling options such as fonts, colors and grid options. </div></div><div class=CToolTip id="tt38"><div class=CClass>Plugin which will automatically compute and draw trendlines for plotted data.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt39"><div class=CClass>An individual axis object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt40"><div class=CClass>A straight dashed horizontal line.</div></div><div class=CToolTip id="tt41"><div class=CClass>A straight dashed vertical line.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt42"><div class=CClass>Object representing the grid on which the plot is drawn. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt43"><div class=CClass>A straight horizontal line.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt44"><div class=CClass>Plot object returned by call to $.jqplot. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt45"><div class=CClass>Legend object. </div></div><div class=CToolTip id="tt46"><div class=CClass>A straight line.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt47"><div class=CClass>An individual data series object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt48"><div class=CClass>Plot Title object. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt49"><div class=CClass>A straight vertical line.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Classes</div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Files.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Files.html
deleted file mode 100644
index 9198c422..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Files.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>File Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>File Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; C &middot; D &middot; E &middot; F &middot; G &middot; H &middot; I &middot; <a href="#J">J</a> &middot; K &middot; L &middot; M &middot; N &middot; O &middot; P &middot; Q &middot; R &middot; S &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="J"></a>J</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#jqplot.enhancedLegendRenderer.js" class=ISymbol>jqplot.<wbr>enhancedLegendRenderer.js</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#jqplot.pyramidAxisRenderer.js" class=ISymbol>jqplot.<wbr>pyramidAxisRenderer.js</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#jqplot.pyramidRenderer.js" class=ISymbol>jqplot.<wbr>pyramidRenderer.js</a></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Files</div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Functions.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Functions.html
deleted file mode 100644
index dbc1d7cf..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Functions.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Function Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Function Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; A &middot; B &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; E &middot; F &middot; <a href="#G">G</a> &middot; H &middot; <a href="#I">I</a> &middot; J &middot; K &middot; L &middot; <a href="#M">M</a> &middot; <a href="#N">N</a> &middot; O &middot; P &middot; <a href="#Q">Q</a> &middot; <a href="#R">R</a> &middot; <a href="#S">S</a> &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; <a href="#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.copy" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>copy</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.destroy" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>destroy</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>draw</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.draw" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.draw" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.draw" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=IParent>jqPlot</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.drawSeries" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>drawSeries</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.get" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>get</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemeNames" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>getThemeNames</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemes" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>getThemes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=IHeading><a name="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.init" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>init</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>makeGridData</span><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.makeGridData" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.makeGridData" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.moveBlock" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>moveBlock</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToBack" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>moveSeriesToBack</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToFront" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>moveSeriesToFront</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="N"></a>N</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.newTheme" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>newTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=IHeading><a name="Q"></a>Q</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.quickInit" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>quickInit</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.redraw" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=ISymbol>redraw</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.reInitialize" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>reInitialize</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.remove" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>remove</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.rename" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>rename</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.replot" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>replot</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.resetAxesScale" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>resetAxesScale</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restoreOriginalSeriesOrder" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>restoreOriginalSeriesOrder</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restorePreviousSeriesOrder" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=ISymbol>restorePreviousSeriesOrder</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>setGridData</span><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.setGridData" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.setGridData" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></td></tr><tr><td class=IHeading><a name="Z"></a>Z</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=ISymbol>zoomProxy</a>, <span class=IParent>$.jqplot.<wbr>Cursor.$.jqplot.<wbr>Cursor</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.copy = function (</td><td class=PParameter nowrap>sourceName,</td></tr><tr><td></td><td class=PParameter nowrap>targetName,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a copy of an existing theme in the themeEngine, adding it the themeEngine.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.destroy = function()</td></tr></table></blockquote>Releases all resources occupied by the plot</div></div><div class=CToolTip id="tt3"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShadowRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws an transparent black (i.e. </div></div><div class=CToolTip id="tt4"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShapeRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws the shape.</div></div><div class=CToolTip id="tt5"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.draw = function()</td></tr></table></blockquote>Draws all elements of the plot into the container. </div></div><div class=CToolTip id="tt6"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.drawSeries = function(</td><td class=PParameter nowrap>options,</td></tr><tr><td></td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Redraws all or just one series on the plot. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt7"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.get = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Get and return the named theme or the active theme if no name given.</div></div><div class=CToolTip id="tt8"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemeNames = function()</td></tr></table></blockquote>Return the list of theme names in this manager in alpha-numerical order.</div></div><div class=CToolTip id="tt9"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemes = function()</td></tr></table></blockquote>Return a list of themes in alpha-numerical order by name.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt10"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.init = function(</td><td class=PParameter nowrap>target,</td></tr><tr><td></td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>sets the plot target, checks data and applies user options to plot.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt11"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><div class=CToolTip id="tt12"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><div class=CToolTip id="tt13"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveBlock = function (</td><td class=PParameter nowrap>idx,</td></tr><tr><td></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves an individual block. </div></div><div class=CToolTip id="tt14"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToBack = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</div></div><div class=CToolTip id="tt15"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToFront = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt16"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.newTheme = function(</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a new theme based on the default theme, adding it the themeEngine.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt17"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.quickInit = function ()</td></tr></table></blockquote>Quick reinitialization plot for replotting. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt18"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.redraw = function(</td><td class=PParameter nowrap>clear</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Empties the plot target div and redraws the plot. </div></div><div class=CToolTip id="tt19"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.reInitialize = function (</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>opts</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>reinitialize plot for replotting. </div></div><div class=CToolTip id="tt20"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.remove = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Remove the given theme from the themeEngine.</div></div><div class=CToolTip id="tt21"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.rename = function (</td><td class=PParameter nowrap>oldName,</td></tr><tr><td></td><td class=PParameter nowrap>newName</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Rename a theme.</div></div><div class=CToolTip id="tt22"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.replot = function(</td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Does a reinitialization of the plot followed by a redraw. </div></div><div class=CToolTip id="tt23"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.resetAxesScale = function(</td><td class=PParameter nowrap>axes,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</div></div><div class=CToolTip id="tt24"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restoreOriginalSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</div></div><div class=CToolTip id="tt25"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restorePreviousSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its previous state. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt26"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><div class=CToolTip id="tt27"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.Cursor.zoomProxy = function(</td><td class=PParameter nowrap>targetPlot,</td></tr><tr><td></td><td class=PParameter nowrap>controllerPlot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>links targetPlot to controllerPlot so that plot zooming of targetPlot will be controlled by zooming on the controllerPlot. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Functions</div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General.html
deleted file mode 100644
index d9450d7a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="#Symbols">$#!</a> &middot; 0-9 &middot; <a href="#A">A</a> &middot; <a href="#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="Symbols"></a>$#!</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-toImage-js.html#$.fn" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>$.fn</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>$.jqplot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>$.jqplot.<wbr>AxisLabelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>$.jqplot.<wbr>AxisTickRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>$.jqplot.<wbr>BarRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>$.jqplot.<wbr>BezierCurveRenderer.js</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>$.jqplot.<wbr>BlockRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>$.jqplot.<wbr>BubbleRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>$.jqplot.<wbr>CanvasAxisLabelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>$.jqplot.<wbr>CanvasAxisTickRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>$.jqplot.<wbr>CanvasGridRenderer</span><div class=ISubIndex><a href="../files/jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=IFile>jqplot.<wbr>canvasGridRenderer.js</a><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html#$.jqplot.CanvasGridRenderer" id=link12 onMouseOver="ShowTip(event, 'tt11', 'link12')" onMouseOut="HideTip('tt11')" class=IFile>plugins/<wbr>jqplot.<wbr>pyramidGridRenderer.js</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay" class=ISymbol>$.jqplot.<wbr>CanvasOverlay</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer" id=link13 onMouseOver="ShowTip(event, 'tt12', 'link13')" onMouseOut="HideTip('tt12')" class=ISymbol>$.jqplot.<wbr>CategoryAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ciParser-js.html#$.jqplot.ciParser" id=link14 onMouseOver="ShowTip(event, 'tt13', 'link14')" onMouseOut="HideTip('tt13')" class=ISymbol>$.jqplot.<wbr>ciParser</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor" id=link15 onMouseOver="ShowTip(event, 'tt14', 'link15')" onMouseOut="HideTip('tt14')" class=ISymbol>$.jqplot.<wbr>Cursor</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer" id=link16 onMouseOver="ShowTip(event, 'tt15', 'link16')" onMouseOut="HideTip('tt15')" class=ISymbol>$.jqplot.<wbr>DateAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" id=link17 onMouseOver="ShowTip(event, 'tt16', 'link17')" onMouseOut="HideTip('tt16')" class=ISymbol>$.jqplot.<wbr>DivTitleRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer" id=link18 onMouseOver="ShowTip(event, 'tt17', 'link18')" onMouseOut="HideTip('tt17')" class=ISymbol>$.jqplot.<wbr>DonutLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer" id=link19 onMouseOver="ShowTip(event, 'tt18', 'link19')" onMouseOut="HideTip('tt18')" class=ISymbol>$.jqplot.<wbr>DonutRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable" id=link20 onMouseOver="ShowTip(event, 'tt19', 'link20')" onMouseOut="HideTip('tt19')" class=ISymbol>$.jqplot.<wbr>Dragable</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer" id=link21 onMouseOver="ShowTip(event, 'tt20', 'link21')" onMouseOut="HideTip('tt20')" class=ISymbol>$.jqplot.<wbr>FunnelLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer" id=link22 onMouseOver="ShowTip(event, 'tt21', 'link22')" onMouseOut="HideTip('tt21')" class=ISymbol>$.jqplot.<wbr>FunnelRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter" id=link23 onMouseOver="ShowTip(event, 'tt22', 'link23')" onMouseOut="HideTip('tt22')" class=ISymbol>$.jqplot.<wbr>Highlighter</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer" id=link24 onMouseOver="ShowTip(event, 'tt23', 'link24')" onMouseOut="HideTip('tt23')" class=ISymbol>$.jqplot.<wbr>LinearAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" id=link25 onMouseOver="ShowTip(event, 'tt24', 'link25')" onMouseOut="HideTip('tt24')" class=ISymbol>$.jqplot.<wbr>LineRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer" id=link26 onMouseOver="ShowTip(event, 'tt25', 'link26')" onMouseOut="HideTip('tt25')" class=ISymbol>$.jqplot.<wbr>LogAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" id=link27 onMouseOver="ShowTip(event, 'tt26', 'link27')" onMouseOut="HideTip('tt26')" class=ISymbol>$.jqplot.<wbr>MarkerRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer" id=link28 onMouseOver="ShowTip(event, 'tt27', 'link28')" onMouseOut="HideTip('tt27')" class=ISymbol>$.jqplot.<wbr>MekkoAxisRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer" id=link29 onMouseOver="ShowTip(event, 'tt28', 'link29')" onMouseOut="HideTip('tt28')" class=ISymbol>$.jqplot.<wbr>MekkoLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer" id=link30 onMouseOver="ShowTip(event, 'tt29', 'link30')" onMouseOut="HideTip('tt29')" class=ISymbol>$.jqplot.<wbr>MekkoRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer" id=link31 onMouseOver="ShowTip(event, 'tt30', 'link31')" onMouseOut="HideTip('tt30')" class=ISymbol>$.jqplot.<wbr>MeterGaugeRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer" id=link32 onMouseOver="ShowTip(event, 'tt31', 'link32')" onMouseOut="HideTip('tt31')" class=ISymbol>$.jqplot.<wbr>OHLCRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer" id=link33 onMouseOver="ShowTip(event, 'tt32', 'link33')" onMouseOut="HideTip('tt32')" class=ISymbol>$.jqplot.<wbr>PieLegendRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer" id=link34 onMouseOver="ShowTip(event, 'tt33', 'link34')" onMouseOut="HideTip('tt33')" class=ISymbol>$.jqplot.<wbr>PieRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels" id=link35 onMouseOver="ShowTip(event, 'tt34', 'link35')" onMouseOut="HideTip('tt34')" class=ISymbol>$.jqplot.<wbr>PointLabels</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer" id=link36 onMouseOver="ShowTip(event, 'tt35', 'link36')" onMouseOut="HideTip('tt35')" class=ISymbol>$.jqplot.<wbr>shadowRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer" id=link37 onMouseOver="ShowTip(event, 'tt36', 'link37')" onMouseOut="HideTip('tt36')" class=ISymbol>$.jqplot.<wbr>shapeRenderer</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine" id=link38 onMouseOver="ShowTip(event, 'tt37', 'link38')" onMouseOut="HideTip('tt37')" class=ISymbol>$.jqplot.<wbr>ThemeEngine</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline" id=link39 onMouseOver="ShowTip(event, 'tt38', 'link39')" onMouseOut="HideTip('tt38')" class=ISymbol>$.jqplot.<wbr>Trendline</a></td></tr><tr><td class=IHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.activeTheme" id=link40 onMouseOver="ShowTip(event, 'tt39', 'link40')" onMouseOut="HideTip('tt39')" class=ISymbol>activeTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.addLegendRowHooks" id=link41 onMouseOver="ShowTip(event, 'tt40', 'link41')" onMouseOut="HideTip('tt40')" class=ISymbol>addLegendRowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.alignTicks" id=link42 onMouseOver="ShowTip(event, 'tt41', 'link42')" onMouseOut="HideTip('tt41')" class=ISymbol>alignTicks</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.alpha" id=link43 onMouseOver="ShowTip(event, 'tt42', 'link43')" onMouseOut="HideTip('tt42')" class=ISymbol>alpha</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>angle</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.angle" id=link44 onMouseOver="ShowTip(event, 'tt43', 'link44')" onMouseOut="HideTip('tt43')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.angle" id=link45 onMouseOver="ShowTip(event, 'tt44', 'link45')" onMouseOut="HideTip('tt44')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.angle" id=link46 onMouseOver="ShowTip(event, 'tt45', 'link46')" onMouseOut="HideTip('tt45')" class=IParent>$.jqplot.<wbr>shadowRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animate" id=link47 onMouseOver="ShowTip(event, 'tt46', 'link47')" onMouseOut="HideTip('tt46')" class=ISymbol>animate</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animateReplot" id=link48 onMouseOver="ShowTip(event, 'tt47', 'link48')" onMouseOut="HideTip('tt47')" class=ISymbol>animateReplot</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.autoscale" id=link49 onMouseOver="ShowTip(event, 'tt48', 'link49')" onMouseOut="HideTip('tt48')" class=ISymbol>autoscale</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleBubbles" id=link50 onMouseOver="ShowTip(event, 'tt49', 'link50')" onMouseOut="HideTip('tt49')" class=ISymbol>autoscaleBubbles</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleMultiplier" id=link51 onMouseOver="ShowTip(event, 'tt50', 'link51')" onMouseOut="HideTip('tt50')" class=ISymbol>autoscaleMultiplier</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscalePointsFactor" id=link52 onMouseOver="ShowTip(event, 'tt51', 'link52')" onMouseOut="HideTip('tt51')" class=ISymbol>autoscalePointsFactor</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Available_Options" id=link53 onMouseOver="ShowTip(event, 'tt52', 'link53')" onMouseOut="HideTip('tt52')" class=ISymbol>Available Options</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axes" id=link54 onMouseOver="ShowTip(event, 'tt53', 'link54')" onMouseOut="HideTip('tt53')" class=ISymbol>axes</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axesDefaults" id=link55 onMouseOver="ShowTip(event, 'tt54', 'link55')" onMouseOut="HideTip('tt54')" class=ISymbol>axesDefaults</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis" id=link56 onMouseOver="ShowTip(event, 'tt55', 'link56')" onMouseOut="HideTip('tt55')" class=ISymbol>Axis</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.axisDefaults" id=link57 onMouseOver="ShowTip(event, 'tt56', 'link57')" onMouseOut="HideTip('tt56')" class=ISymbol>axisDefaults</a>, <span class=IParent>$.jqplot.<wbr>LogAxisRenderer</span></td></tr><tr><td class=IHeading><a name="B"></a>B</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>background</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.background" id=link58 onMouseOver="ShowTip(event, 'tt57', 'link58')" onMouseOut="HideTip('tt57')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Grid.background" id=link59 onMouseOver="ShowTip(event, 'tt58', 'link59')" onMouseOut="HideTip('tt58')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.background" id=link60 onMouseOver="ShowTip(event, 'tt59', 'link60')" onMouseOut="HideTip('tt59')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bandData" id=link61 onMouseOver="ShowTip(event, 'tt60', 'link61')" onMouseOut="HideTip('tt60')" class=ISymbol>bandData</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bands" id=link62 onMouseOver="ShowTip(event, 'tt61', 'link62')" onMouseOut="HideTip('tt61')" class=ISymbol>bands</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barDirection" id=link63 onMouseOver="ShowTip(event, 'tt62', 'link63')" onMouseOut="HideTip('tt62')" class=ISymbol>barDirection</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelOptions" id=link64 onMouseOver="ShowTip(event, 'tt63', 'link64')" onMouseOut="HideTip('tt63')" class=ISymbol>barLabelOptions</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelRenderer" id=link65 onMouseOver="ShowTip(event, 'tt64', 'link65')" onMouseOut="HideTip('tt64')" class=ISymbol>barLabelRenderer</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabels" id=link66 onMouseOver="ShowTip(event, 'tt65', 'link66')" onMouseOut="HideTip('tt65')" class=ISymbol>barLabels</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barMargin" id=link67 onMouseOver="ShowTip(event, 'tt66', 'link67')" onMouseOut="HideTip('tt66')" class=ISymbol>barMargin</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>barPadding</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#barPadding" id=link68 onMouseOver="ShowTip(event, 'tt67', 'link68')" onMouseOut="HideTip('tt67')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barPadding" id=link69 onMouseOver="ShowTip(event, 'tt68', 'link69')" onMouseOut="HideTip('tt68')" class=IParent>$.jqplot.<wbr>BarRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barWidth" id=link70 onMouseOver="ShowTip(event, 'tt69', 'link70')" onMouseOut="HideTip('tt69')" class=ISymbol>barWidth</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>baselineColor</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineColor" id=link71 onMouseOver="ShowTip(event, 'tt70', 'link71')" onMouseOut="HideTip('tt70')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineColor" id=link72 onMouseOver="ShowTip(event, 'tt71', 'link72')" onMouseOut="HideTip('tt71')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineColor" id=link73 onMouseOver="ShowTip(event, 'tt72', 'link73')" onMouseOut="HideTip('tt72')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>baselineWidth</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineWidth" id=link74 onMouseOver="ShowTip(event, 'tt73', 'link74')" onMouseOut="HideTip('tt73')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineWidth" id=link75 onMouseOver="ShowTip(event, 'tt74', 'link75')" onMouseOut="HideTip('tt74')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineWidth" id=link76 onMouseOver="ShowTip(event, 'tt75', 'link76')" onMouseOut="HideTip('tt75')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.bodyWidth" id=link77 onMouseOver="ShowTip(event, 'tt76', 'link77')" onMouseOut="HideTip('tt76')" class=ISymbol>bodyWidth</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.border" id=link78 onMouseOver="ShowTip(event, 'tt77', 'link78')" onMouseOut="HideTip('tt77')" class=ISymbol>border</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>borderColor</span><div class=ISubIndex><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.borderColor" id=link79 onMouseOver="ShowTip(event, 'tt78', 'link79')" onMouseOut="HideTip('tt78')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-core-js.html#Axis.borderColor" id=link80 onMouseOver="ShowTip(event, 'tt79', 'link80')" onMouseOut="HideTip('tt79')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderColor" id=link81 onMouseOver="ShowTip(event, 'tt80', 'link81')" onMouseOut="HideTip('tt80')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>borderWidth</span><div class=ISubIndex><a href="../files/jqplot-core-js.html#Axis.borderWidth" id=link82 onMouseOver="ShowTip(event, 'tt81', 'link82')" onMouseOut="HideTip('tt81')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderWidth" id=link83 onMouseOver="ShowTip(event, 'tt82', 'link83')" onMouseOut="HideTip('tt82')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.breakOnNull" id=link84 onMouseOver="ShowTip(event, 'tt83', 'link84')" onMouseOut="HideTip('tt83')" class=ISymbol>breakOnNull</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakPoints" id=link85 onMouseOver="ShowTip(event, 'tt84', 'link85')" onMouseOut="HideTip('tt84')" class=ISymbol>breakPoints</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakTickLabel" id=link86 onMouseOver="ShowTip(event, 'tt85', 'link86')" onMouseOut="HideTip('tt85')" class=ISymbol>breakTickLabel</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.bringSeriesToFront" id=link87 onMouseOver="ShowTip(event, 'tt86', 'link87')" onMouseOut="HideTip('tt86')" class=ISymbol>bringSeriesToFront</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleAlpha" id=link88 onMouseOver="ShowTip(event, 'tt87', 'link88')" onMouseOut="HideTip('tt87')" class=ISymbol>bubbleAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleGradients" id=link89 onMouseOver="ShowTip(event, 'tt88', 'link89')" onMouseOut="HideTip('tt88')" class=ISymbol>bubbleGradients</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CClass>jQuery namespace to attach functions to jQuery elements.</div></div><div class=CToolTip id="tt2"><div class=CClass>jQuery function called by the user to create a plot.</div></div><div class=CToolTip id="tt3"><div class=CClass>Renderer to place labels on the axes.</div></div><div class=CToolTip id="tt4"><div class=CClass>A &ldquo;tick&rdquo; object showing the value of a tick/gridline on the plot.</div></div><div class=CToolTip id="tt5"><div class=CClass>A plugin renderer for jqPlot to draw a bar plot. </div></div><div class=CToolTip id="tt6"><div class=CClass>Renderer which draws lines as stacked bezier curves. </div></div><div class=CToolTip id="tt7"><div class=CClass>Plugin renderer to draw a x-y block chart. </div></div><div class=CToolTip id="tt8"><div class=CClass>Plugin renderer to draw a bubble chart. </div></div><div class=CToolTip id="tt9"><div class=CClass>Renderer to draw axis labels with a canvas element to support advanced featrues such as rotated text. </div></div><div class=CToolTip id="tt10"><div class=CClass>Renderer to draw axis ticks with a canvas element to support advanced featrues such as rotated text. </div></div><div class=CToolTip id="tt11"><div class=CClass>The default jqPlot grid renderer, creating a grid on a canvas element. </div></div><div class=CToolTip id="tt12"><div class=CClass>A plugin for jqPlot to render a category style axis, with equal pixel spacing between y data values of a series.</div></div><div class=CToolTip id="tt13"><div class=CClass>Data Renderer function which converts a custom JSON data object into jqPlot data format. </div></div><div class=CToolTip id="tt14"><div class=CClass>Plugin class representing the cursor as displayed on the plot.</div></div><div class=CToolTip id="tt15"><div class=CClass>A plugin for a jqPlot to render an axis as a series of date values. </div></div><div class=CToolTip id="tt16"><div class=CClass>The default title renderer for jqPlot. </div></div><div class=CToolTip id="tt17"><div class=CClass>Legend Renderer specific to donut plots. </div></div><div class=CToolTip id="tt18"><div class=CClass>Plugin renderer to draw a donut chart. </div></div><div class=CToolTip id="tt19"><div class=CClass>Plugin to make plotted points dragable by the user.</div></div><div class=CToolTip id="tt20"><div class=CClass>Legend Renderer specific to funnel plots. </div></div><div class=CToolTip id="tt21"><div class=CClass>Plugin renderer to draw a funnel chart. </div></div><div class=CToolTip id="tt22"><div class=CClass>Plugin which will highlight data points when they are moused over.</div></div><div class=CToolTip id="tt23"><div class=CClass>The default jqPlot axis renderer, creating a numeric axis.</div></div><div class=CToolTip id="tt24"><div class=CClass>The default line renderer for jqPlot, this class has no options beyond the Series class. </div></div><div class=CToolTip id="tt25"><div class=CClass>A plugin for a jqPlot to render a logarithmic axis.</div></div><div class=CToolTip id="tt26"><div class=CClass>The default jqPlot marker renderer, rendering the points on the line.</div></div><div class=CToolTip id="tt27"><div class=CClass>An axis renderer for a Mekko chart. </div></div><div class=CToolTip id="tt28"><div class=CClass>Legend renderer used by mekko charts with options for controlling number or rows and columns as well as placement outside of plot area.</div></div><div class=CToolTip id="tt29"><div class=CClass>Draws a Mekko style chart which shows 3 dimensional data on a 2 dimensional graph. </div></div><div class=CToolTip id="tt30"><div class=CClass>Plugin renderer to draw a meter gauge chart.</div></div><div class=CToolTip id="tt31"><div class=CClass>jqPlot Plugin to draw Open Hi Low Close, Candlestick and Hi Low Close charts.</div></div><div class=CToolTip id="tt32"><div class=CClass>Legend Renderer specific to pie plots. </div></div><div class=CToolTip id="tt33"><div class=CClass>Plugin renderer to draw a pie chart. </div></div><div class=CToolTip id="tt34"><div class=CClass>Plugin for putting labels at the data points.</div></div><div class=CToolTip id="tt35"><div class=CClass>The default jqPlot shadow renderer, rendering shadows behind shapes.</div></div><div class=CToolTip id="tt36"><div class=CClass>The default jqPlot shape renderer. </div></div><div class=CToolTip id="tt37"><div class=CClass>Theme Engine provides a programatic way to change some of the more common jqplot styling options such as fonts, colors and grid options. </div></div><div class=CToolTip id="tt38"><div class=CClass>Plugin which will automatically compute and draw trendlines for plotted data.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt39"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.activeTheme=null</td></tr></table></blockquote>Pointer to currently active theme</div></div><div class=CToolTip id="tt40"><div class=CHook>called at the end of legend draw, so plugins can add rows to the legend table.</div></div><div class=CToolTip id="tt41"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alignTicks = false</td></tr></table></blockquote>true to align tick marks across opposed axes such as from the y2axis to yaxis.</div></div><div class=CToolTip id="tt42"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alpha = 0.07</td></tr></table></blockquote>alpha transparency of shadow stroke.</div></div><div class=CToolTip id="tt43"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt44"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt45"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 45</td></tr></table></blockquote>Angle of the shadow in degrees. </div></div><div class=CToolTip id="tt46"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animate = false</td></tr></table></blockquote>True to animate the series on initial plot draw (renderer dependent). </div></div><div class=CToolTip id="tt47"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animateReplot = false</td></tr></table></blockquote>True to animate series after a call to the replot() method. </div></div><div class=CToolTip id="tt48"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscale = false</td></tr></table></blockquote>DEPRECATED the default scaling algorithm produces superior results.</div></div><div class=CToolTip id="tt49"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleBubbles = true</td></tr></table></blockquote>True to scale the bubble radius based on plot size. </div></div><div class=CToolTip id="tt50"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleMultiplier = 1.0</td></tr></table></blockquote>Multiplier the bubble size if autoscaleBubbles is true.</div></div><div class=CToolTip id="tt51"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscalePointsFactor = -0.07</td></tr></table></blockquote>Factor which decreases bubble size based on how many bubbles on on the chart. </div></div><div class=CToolTip id="tt52"><div class=CGeneric>See jqPlot Options for a list of options available thorugh the options object (not complete yet!)</div></div><div class=CToolTip id="tt53"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.axes = {xaxis: new Axis('xaxis'), yaxis: new Axis('yaxis'), x2axis: new Axis('x2axis'), y2axis: new Axis('y2axis'), y3axis: new Axis('y3axis'), y4axis: new Axis('y4axis'), y5axis: new Axis('y5axis'), y6axis: new Axis('y6axis'), y7axis: new Axis('y7axis'), y8axis: new Axis('y8axis'), y9axis: new Axis('y9axis'), yMidAxis: new Axis('yMidAxis')}</td></tr></table></blockquote>up to 4 axes are supported, each with it&rsquo;s own options, See Axis for axis specific options.</div></div><div class=CToolTip id="tt54"><div class=CProperty>default options that will be applied to all axes. </div></div><div class=CToolTip id="tt55"><div class=CClass>An individual axis object. </div></div><div class=CToolTip id="tt56"><div class=CProperty>Default properties which will be applied directly to the series.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt57"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = &quot;#efefef&quot;</td></tr></table></blockquote>background color of the inside of the gauge.</div></div><div class=CToolTip id="tt58"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = '#fffdf6'</td></tr></table></blockquote>css spec for the background color.</div></div><div class=CToolTip id="tt59"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background</td></tr></table></blockquote>css spec for the background of the legend box.</div></div><div class=CToolTip id="tt60"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.bandData = []</td></tr></table></blockquote>Data used to draw error bands or confidence intervals above/below a line.</div></div><div class=CToolTip id="tt61"><div class=CGroup>Banding around line, e.g error bands or confidence intervals.</div></div><div class=CToolTip id="tt62"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barDirection = 'vertical'</td></tr></table></blockquote>&lsquo;vertical&rsquo; = up and down bars, &lsquo;horizontal&rsquo; = side to side bars</div></div><div class=CToolTip id="tt63"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelOptions = {}</td></tr></table></blockquote>options object to pass to the bar label renderer.</div></div><div class=CToolTip id="tt64"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>renderer to use to draw labels under each bar.</div></div><div class=CToolTip id="tt65"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabels = this.barLabels || []</td></tr></table></blockquote>array of labels to put under each bar.</div></div><div class=CToolTip id="tt66"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barMargin = 10</td></tr></table></blockquote>Number of pixels between groups of bars at adjacent axis values.</div></div><div class=CToolTip id="tt67"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 10</td></tr></table></blockquote></div></div><div class=CToolTip id="tt68"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 8</td></tr></table></blockquote>Number of pixels between adjacent bars at the same axis value.</div></div><div class=CToolTip id="tt69"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barWidth = null</td></tr></table></blockquote>Width of the bar in pixels (auto by devaul). </div></div><div class=CToolTip id="tt70"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt71"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt72"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt73"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt74"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt75"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt76"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bodyWidth = 'auto'</td></tr></table></blockquote>width of the candlestick body in pixels. </div></div><div class=CToolTip id="tt77"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.border</td></tr></table></blockquote>css spec for the border around the legend box.</div></div><div class=CToolTip id="tt78"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the borders between areas on the chart</div></div><div class=CToolTip id="tt79"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the border adjacent to the axis. </div></div><div class=CToolTip id="tt80"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = '#999999'</td></tr></table></blockquote>css spec for the color of the grid border.</div></div><div class=CToolTip id="tt81"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = null</td></tr></table></blockquote>width of line stroked at the border of the axis. </div></div><div class=CToolTip id="tt82"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = 2.0</td></tr></table></blockquote>width of the border in pixels.</div></div><div class=CToolTip id="tt83"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakOnNull = false</td></tr></table></blockquote>Wether line segments should be be broken at null value. </div></div><div class=CToolTip id="tt84"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakPoints = null</td></tr></table></blockquote>EXPERIMENTAL!!&nbsp; </div></div><div class=CToolTip id="tt85"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakTickLabel = &quot;&amp;asymp</td></tr></table></blockquote>Label to use at the axis break if breakPoints are specified.</div></div><div class=CToolTip id="tt86"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bringSeriesToFront = false</td></tr></table></blockquote>This option requires jQuery 1.4+ True to bring the series of the highlighted point to the front of other series.</div></div><div class=CToolTip id="tt87"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleAlpha = 1.0</td></tr></table></blockquote>Alpha transparency to apply to all bubbles in this series.</div></div><div class=CToolTip id="tt88"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleGradients = false</td></tr></table></blockquote>True to color the bubbles with gradient fills instead of flat colors. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General2.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General2.html
deleted file mode 100644
index 3332307e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General2.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="#C">C</a> &middot; <a href="#D">D</a> &middot; <a href="#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.candleStick" id=link90 onMouseOver="ShowTip(event, 'tt89', 'link90')" onMouseOut="HideTip('tt89')" class=ISymbol>candleStick</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/changes-txt.html#Change_Log" class=ISymbol>Change Log</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Changes" id=link91 onMouseOver="ShowTip(event, 'tt90', 'link91')" onMouseOut="HideTip('tt90')" class=ISymbol>Changes</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.clearRect" id=link92 onMouseOver="ShowTip(event, 'tt91', 'link92')" onMouseOut="HideTip('tt91')" class=ISymbol>clearRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.clickReset" id=link93 onMouseOver="ShowTip(event, 'tt92', 'link93')" onMouseOut="HideTip('tt92')" class=ISymbol>clickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.closeColor" id=link94 onMouseOver="ShowTip(event, 'tt93', 'link94')" onMouseOut="HideTip('tt93')" class=ISymbol>closeColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>color</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.color" id=link95 onMouseOver="ShowTip(event, 'tt94', 'link95')" onMouseOut="HideTip('tt94')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.color" id=link96 onMouseOver="ShowTip(event, 'tt95', 'link96')" onMouseOut="HideTip('tt95')" class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.color" id=link97 onMouseOver="ShowTip(event, 'tt96', 'link97')" onMouseOut="HideTip('tt96')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.color" id=link98 onMouseOver="ShowTip(event, 'tt97', 'link98')" onMouseOut="HideTip('tt97')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.color" id=link99 onMouseOver="ShowTip(event, 'tt98', 'link99')" onMouseOut="HideTip('tt98')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.color" id=link100 onMouseOver="ShowTip(event, 'tt99', 'link100')" onMouseOut="HideTip('tt99')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainOutsideZoom" id=link101 onMouseOver="ShowTip(event, 'tt100', 'link101')" onMouseOut="HideTip('tt100')" class=ISymbol>constrainOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.constrainSmoothing" id=link102 onMouseOver="ShowTip(event, 'tt101', 'link102')" onMouseOut="HideTip('tt101')" class=ISymbol>constrainSmoothing</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.constrainTo" id=link103 onMouseOver="ShowTip(event, 'tt102', 'link103')" onMouseOut="HideTip('tt102')" class=ISymbol>constrainTo</a>, <span class=IParent>$.jqplot.<wbr>Dragable</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainZoomTo" id=link104 onMouseOver="ShowTip(event, 'tt103', 'link104')" onMouseOut="HideTip('tt103')" class=ISymbol>constrainZoomTo</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.copy" id=link105 onMouseOver="ShowTip(event, 'tt104', 'link105')" onMouseOut="HideTip('tt104')" class=ISymbol>copy</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#CopyrightLicense" id=link106 onMouseOver="ShowTip(event, 'tt105', 'link106')" onMouseOut="HideTip('tt105')" class=ISymbol>Copyright&amp;License</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.css" id=link107 onMouseOver="ShowTip(event, 'tt106', 'link107')" onMouseOut="HideTip('tt106')" class=ISymbol>css</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.cursorLegendFormatString" id=link108 onMouseOver="ShowTip(event, 'tt107', 'link108')" onMouseOut="HideTip('tt107')" class=ISymbol>cursorLegendFormatString</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=IHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine" id=link109 onMouseOver="ShowTip(event, 'tt108', 'link109')" onMouseOut="HideTip('tt108')" class=ISymbol>DashedHorizontalLine</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine" id=link110 onMouseOver="ShowTip(event, 'tt109', 'link110')" onMouseOut="HideTip('tt109')" class=ISymbol>DashedVerticalLine</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dashPattern</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.dashPattern" id=link111 onMouseOver="ShowTip(event, 'tt110', 'link111')" onMouseOut="HideTip('tt110')" class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.dashPattern" id=link112 onMouseOver="ShowTip(event, 'tt111', 'link112')" onMouseOut="HideTip('tt111')" class=IParent>DashedVerticalLine</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.data" id=link113 onMouseOver="ShowTip(event, 'tt112', 'link113')" onMouseOut="HideTip('tt112')" class=ISymbol>data</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelCenterOn" id=link114 onMouseOver="ShowTip(event, 'tt113', 'link114')" onMouseOut="HideTip('tt113')" class=ISymbol>dataLabelCenterOn</a>, <span class=IParent>$.jqplot.<wbr>PieRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelFormatString</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelFormatString" id=link115 onMouseOver="ShowTip(event, 'tt114', 'link115')" onMouseOut="HideTip('tt114')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelFormatString" id=link116 onMouseOver="ShowTip(event, 'tt115', 'link116')" onMouseOut="HideTip('tt115')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelFormatString" id=link117 onMouseOver="ShowTip(event, 'tt116', 'link117')" onMouseOut="HideTip('tt116')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelNudge</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelNudge" id=link118 onMouseOver="ShowTip(event, 'tt117', 'link118')" onMouseOut="HideTip('tt117')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelNudge" id=link119 onMouseOver="ShowTip(event, 'tt118', 'link119')" onMouseOut="HideTip('tt118')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelPositionFactor</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelPositionFactor" id=link120 onMouseOver="ShowTip(event, 'tt119', 'link120')" onMouseOut="HideTip('tt119')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelPositionFactor" id=link121 onMouseOver="ShowTip(event, 'tt120', 'link121')" onMouseOut="HideTip('tt120')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabels" id=link122 onMouseOver="ShowTip(event, 'tt121', 'link122')" onMouseOut="HideTip('tt121')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabels" id=link123 onMouseOver="ShowTip(event, 'tt122', 'link123')" onMouseOut="HideTip('tt122')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabels" id=link124 onMouseOver="ShowTip(event, 'tt123', 'link124')" onMouseOut="HideTip('tt123')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelThreshold</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelThreshold" id=link125 onMouseOver="ShowTip(event, 'tt124', 'link125')" onMouseOut="HideTip('tt124')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelThreshold" id=link126 onMouseOver="ShowTip(event, 'tt125', 'link126')" onMouseOut="HideTip('tt125')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelThreshold" id=link127 onMouseOver="ShowTip(event, 'tt126', 'link127')" onMouseOut="HideTip('tt126')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRenderer" id=link128 onMouseOver="ShowTip(event, 'tt127', 'link128')" onMouseOut="HideTip('tt127')" class=ISymbol>dataRenderer</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRendererOptions" id=link129 onMouseOver="ShowTip(event, 'tt128', 'link129')" onMouseOut="HideTip('tt128')" class=ISymbol>dataRendererOptions</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.dblClickReset" id=link130 onMouseOver="ShowTip(event, 'tt129', 'link130')" onMouseOut="HideTip('tt129')" class=ISymbol>dblClickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.defaultAxisStart" id=link131 onMouseOver="ShowTip(event, 'tt130', 'link131')" onMouseOut="HideTip('tt130')" class=ISymbol>defaultAxisStart</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.depth" id=link132 onMouseOver="ShowTip(event, 'tt131', 'link132')" onMouseOut="HideTip('tt131')" class=ISymbol>depth</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.destroy" id=link133 onMouseOver="ShowTip(event, 'tt132', 'link133')" onMouseOut="HideTip('tt132')" class=ISymbol>destroy</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>diameter</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.diameter" id=link134 onMouseOver="ShowTip(event, 'tt133', 'link134')" onMouseOut="HideTip('tt133')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.diameter" id=link135 onMouseOver="ShowTip(event, 'tt134', 'link135')" onMouseOut="HideTip('tt134')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.diameter" id=link136 onMouseOver="ShowTip(event, 'tt135', 'link136')" onMouseOut="HideTip('tt135')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#disableIEFading" id=link137 onMouseOver="ShowTip(event, 'tt136', 'link137')" onMouseOut="HideTip('tt136')" class=ISymbol>disableIEFading</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.disableStack" id=link138 onMouseOver="ShowTip(event, 'tt137', 'link138')" onMouseOut="HideTip('tt137')" class=ISymbol>disableStack</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.downBodyColor" id=link139 onMouseOver="ShowTip(event, 'tt138', 'link139')" onMouseOut="HideTip('tt138')" class=ISymbol>downBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>draw</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.draw" id=link140 onMouseOver="ShowTip(event, 'tt139', 'link140')" onMouseOut="HideTip('tt139')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.draw" id=link141 onMouseOver="ShowTip(event, 'tt140', 'link141')" onMouseOut="HideTip('tt140')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.draw" id=link142 onMouseOver="ShowTip(event, 'tt141', 'link142')" onMouseOut="HideTip('tt141')" class=IParent>jqPlot</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>drawBaseline</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#drawBaseline" id=link143 onMouseOver="ShowTip(event, 'tt142', 'link143')" onMouseOut="HideTip('tt142')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.drawBaseline" id=link144 onMouseOver="ShowTip(event, 'tt143', 'link144')" onMouseOut="HideTip('tt143')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.drawBaseline" id=link145 onMouseOver="ShowTip(event, 'tt144', 'link145')" onMouseOut="HideTip('tt144')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.drawBaseline" id=link146 onMouseOver="ShowTip(event, 'tt145', 'link146')" onMouseOut="HideTip('tt145')" class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawBorder" id=link147 onMouseOver="ShowTip(event, 'tt146', 'link147')" onMouseOut="HideTip('tt146')" class=ISymbol>drawBorder</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawGridlines" id=link148 onMouseOver="ShowTip(event, 'tt147', 'link148')" onMouseOut="HideTip('tt147')" class=ISymbol>drawGridlines</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorGridlines" id=link149 onMouseOver="ShowTip(event, 'tt148', 'link149')" onMouseOut="HideTip('tt148')" class=ISymbol>drawMajorGridlines</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorTickMarks" id=link150 onMouseOver="ShowTip(event, 'tt149', 'link150')" onMouseOut="HideTip('tt149')" class=ISymbol>drawMajorTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorGridlines" id=link151 onMouseOver="ShowTip(event, 'tt150', 'link151')" onMouseOut="HideTip('tt150')" class=ISymbol>drawMinorGridlines</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorTickMarks" id=link152 onMouseOver="ShowTip(event, 'tt151', 'link152')" onMouseOut="HideTip('tt151')" class=ISymbol>drawMinorTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.drawSeries" id=link153 onMouseOver="ShowTip(event, 'tt152', 'link153')" onMouseOut="HideTip('tt152')" class=ISymbol>drawSeries</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.edgeTolerance" id=link154 onMouseOver="ShowTip(event, 'tt153', 'link154')" onMouseOut="HideTip('tt153')" class=ISymbol>edgeTolerance</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>enableFontSupport</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.enableFontSupport" id=link155 onMouseOver="ShowTip(event, 'tt154', 'link155')" onMouseOut="HideTip('tt154')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.enableFontSupport" id=link156 onMouseOver="ShowTip(event, 'tt155', 'link156')" onMouseOut="HideTip('tt155')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>escapeHtml</span><div class=ISubIndex><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.escapeHtml" id=link157 onMouseOver="ShowTip(event, 'tt156', 'link157')" onMouseOut="HideTip('tt156')" class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.escapeHtml" id=link158 onMouseOver="ShowTip(event, 'tt157', 'link158')" onMouseOut="HideTip('tt157')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.escapeHtml" id=link159 onMouseOver="ShowTip(event, 'tt158', 'link159')" onMouseOut="HideTip('tt158')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.escapeHtml" id=link160 onMouseOver="ShowTip(event, 'tt159', 'link160')" onMouseOut="HideTip('tt159')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>escapeHTML</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.escapeHTML" id=link161 onMouseOver="ShowTip(event, 'tt160', 'link161')" onMouseOut="HideTip('tt160')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.escapeHTML" id=link162 onMouseOver="ShowTip(event, 'tt161', 'link162')" onMouseOut="HideTip('tt161')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.escapeHTML" id=link163 onMouseOver="ShowTip(event, 'tt162', 'link163')" onMouseOut="HideTip('tt162')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.eventListenerHooks" id=link164 onMouseOver="ShowTip(event, 'tt163', 'link164')" onMouseOut="HideTip('tt163')" class=ISymbol>eventListenerHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt89"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.candleStick = false</td></tr></table></blockquote>true to render chart as candleStick. </div></div><div class=CToolTip id="tt90"><div class=CGeneric>See Change Log</div></div><div class=CToolTip id="tt91"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearRect = false</td></tr></table></blockquote>true to cear a rectangle.</div></div><div class=CToolTip id="tt92"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clickReset = false</td></tr></table></blockquote>Will reset plot zoom if single click on plot without drag.</div></div><div class=CToolTip id="tt93"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.closeColor = null</td></tr></table></blockquote>color of the close price tick mark. </div></div><div class=CToolTip id="tt94"><div class=CProperty>color of the line</div></div><div class=CToolTip id="tt95"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>CSS color spec for the dragged point (and adjacent line segment or bar).</div></div><div class=CToolTip id="tt96"><div class=CProperty>color of lines at top and bottom of bands [default: series color].</div></div><div class=CToolTip id="tt97"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>color of marker. </div></div><div class=CToolTip id="tt98"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>CSS color spec for the trend line. </div></div><div class=CToolTip id="tt99"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>css color spec for the series</div></div><div class=CToolTip id="tt100"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainOutsideZoom = true</td></tr></table></blockquote>True to limit actual zoom area to edges of grid, even when zooming outside of plot area. </div></div><div class=CToolTip id="tt101"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.constrainSmoothing = true</td></tr></table></blockquote>True to use a more accurate smoothing algorithm that will not overshoot any data points. </div></div><div class=CToolTip id="tt102"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainTo = 'none'</td></tr></table></blockquote>Constrain dragging motion to an axis or to none. </div></div><div class=CToolTip id="tt103"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainZoomTo = 'none'</td></tr></table></blockquote>&lsquo;none&rsquo;, &lsquo;x&rsquo; or &lsquo;y&rsquo;</div></div><div class=CToolTip id="tt104"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.copy = function (</td><td class=PParameter nowrap>sourceName,</td></tr><tr><td></td><td class=PParameter nowrap>targetName,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a copy of an existing theme in the themeEngine, adding it the themeEngine.</div></div><div class=CToolTip id="tt105"><div class=CGeneric>Copyright &copy; 2009-2012 Chris Leonello jqPlot is currently available for use in all personal or commercial projects under both the MIT and GPL version 2.0 licenses. </div></div><div class=CToolTip id="tt106"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'}</td></tr></table></blockquote>default css styles that will be applied to all data blocks. </div></div><div class=CToolTip id="tt107"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.cursorLegendFormatString = $.jqplot.Cursor.cursorLegendFormatString</td></tr></table></blockquote>Format string used in the cursor legend. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt108"><div class=CClass>A straight dashed horizontal line.</div></div><div class=CToolTip id="tt109"><div class=CClass>A straight dashed vertical line.</div></div><div class=CToolTip id="tt110"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><div class=CToolTip id="tt111"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><div class=CToolTip id="tt112"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.data = []</td></tr></table></blockquote>user&rsquo;s data. </div></div><div class=CToolTip id="tt113"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelCenterOn = true</td></tr></table></blockquote>True to center the data label at its position. </div></div><div class=CToolTip id="tt114"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt115"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt116"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt117"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 0</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt118"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 2</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt119"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.4</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt120"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.52</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt121"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt122"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt123"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt124"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt125"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt126"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote>Threshhold in percentage (0-100) of pie area, below which no label will be displayed. </div></div><div class=CToolTip id="tt127"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRenderer</td></tr></table></blockquote>A callable which can be used to preprocess data passed into the plot. </div></div><div class=CToolTip id="tt128"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRendererOptions</td></tr></table></blockquote>Options that will be passed to the dataRenderer. </div></div><div class=CToolTip id="tt129"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dblClickReset = true</td></tr></table></blockquote>Will reset plot zoom if double click on plot without drag.</div></div><div class=CToolTip id="tt130"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.defaultAxisStart = 1</td></tr></table></blockquote>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot. </div></div><div class=CToolTip id="tt131"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.depth = 3</td></tr></table></blockquote>how many times the shadow is stroked. </div></div><div class=CToolTip id="tt132"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.destroy = function()</td></tr></table></blockquote>Releases all resources occupied by the plot</div></div><div class=CToolTip id="tt133"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the donut, auto computed by default</div></div><div class=CToolTip id="tt134"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the meterGauge, auto computed by default</div></div><div class=CToolTip id="tt135"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the pie, auto computed by default</div></div><div class=CToolTip id="tt136"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableIEFading = true</td></tr></table></blockquote>true to toggle series with a show/hide method only and not allow fading in/out. </div></div><div class=CToolTip id="tt137"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableStack = false</td></tr></table></blockquote>true to not stack this series with other series in the plot. </div></div><div class=CToolTip id="tt138"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.downBodyColor = null</td></tr></table></blockquote>Color of candlestick body on a &ldquo;down&rdquo; day. </div></div><div class=CToolTip id="tt139"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShadowRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws an transparent black (i.e. </div></div><div class=CToolTip id="tt140"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ShapeRenderer.prototype.draw = function(</td><td class=PParameter nowrap>ctx,</td></tr><tr><td></td><td class=PParameter nowrap>points,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>draws the shape.</div></div><div class=CToolTip id="tt141"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.draw = function()</td></tr></table></blockquote>Draws all elements of the plot into the container. </div></div><div class=CToolTip id="tt142"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt143"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt144"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt145"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt146"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBorder = true</td></tr></table></blockquote>True to draw border around grid.</div></div><div class=CToolTip id="tt147"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawGridlines = true</td></tr></table></blockquote>wether to draw the gridlines on the plot.</div></div><div class=CToolTip id="tt148"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorGridlines = true</td></tr></table></blockquote>True to draw gridlines for major axis ticks.</div></div><div class=CToolTip id="tt149"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for major axis ticks.</div></div><div class=CToolTip id="tt150"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorGridlines = false</td></tr></table></blockquote>True to draw gridlines for minor ticks.</div></div><div class=CToolTip id="tt151"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for minor ticks. </div></div><div class=CToolTip id="tt152"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.drawSeries = function(</td><td class=PParameter nowrap>options,</td></tr><tr><td></td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Redraws all or just one series on the plot. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt153"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.edgeTolerance = -5</td></tr></table></blockquote>Number of pixels that the label must be away from an axis boundary in order to be drawn. </div></div><div class=CToolTip id="tt154"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt155"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt156"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>true to escape html in the box label.</div></div><div class=CToolTip id="tt157"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = true</td></tr></table></blockquote>True to escape html in bubble label text.</div></div><div class=CToolTip id="tt158"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in legend text. </div></div><div class=CToolTip id="tt159"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in title text. </div></div><div class=CToolTip id="tt160"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><div class=CToolTip id="tt161"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><div class=CToolTip id="tt162"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = true</td></tr></table></blockquote>true to escape html entities in the labels. </div></div><div class=CToolTip id="tt163"><div class=CHook>called at the end of plot drawing, binds listeners to the event canvas which lays on top of the grid area.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General3.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General3.html
deleted file mode 100644
index 031f05c2..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General3.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="#F">F</a> &middot; <a href="#G">G</a> &middot; <a href="#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fadeTooltip</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.fadeTooltip" id=link165 onMouseOver="ShowTip(event, 'tt164', 'link165')" onMouseOut="HideTip('tt164')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.fadeTooltip" id=link166 onMouseOver="ShowTip(event, 'tt165', 'link166')" onMouseOut="HideTip('tt165')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fill</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#fill" id=link167 onMouseOver="ShowTip(event, 'tt166', 'link167')" onMouseOut="HideTip('tt166')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.fill" id=link168 onMouseOver="ShowTip(event, 'tt167', 'link168')" onMouseOut="HideTip('tt167')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.fill" id=link169 onMouseOver="ShowTip(event, 'tt168', 'link169')" onMouseOut="HideTip('tt168')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fill" id=link170 onMouseOver="ShowTip(event, 'tt169', 'link170')" onMouseOut="HideTip('tt169')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.fill" id=link171 onMouseOver="ShowTip(event, 'tt170', 'link171')" onMouseOut="HideTip('tt170')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.fill" id=link172 onMouseOver="ShowTip(event, 'tt171', 'link172')" onMouseOut="HideTip('tt171')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fill" id=link173 onMouseOver="ShowTip(event, 'tt172', 'link173')" onMouseOut="HideTip('tt172')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.fill" id=link174 onMouseOver="ShowTip(event, 'tt173', 'link174')" onMouseOut="HideTip('tt173')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAlpha" id=link175 onMouseOver="ShowTip(event, 'tt174', 'link175')" onMouseOut="HideTip('tt174')" class=ISymbol>fillAlpha</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAndStroke" id=link176 onMouseOver="ShowTip(event, 'tt175', 'link176')" onMouseOut="HideTip('tt175')" class=ISymbol>fillAndStroke</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAxis" id=link177 onMouseOver="ShowTip(event, 'tt176', 'link177')" onMouseOut="HideTip('tt176')" class=ISymbol>fillAxis</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.fillBetween" id=link178 onMouseOver="ShowTip(event, 'tt177', 'link178')" onMouseOut="HideTip('tt177')" class=ISymbol>fillBetween</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fillColor</span><div class=ISubIndex><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fillColor" id=link179 onMouseOver="ShowTip(event, 'tt178', 'link179')" onMouseOut="HideTip('tt178')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-core-js.html#Series.fillColor" id=link180 onMouseOver="ShowTip(event, 'tt179', 'link180')" onMouseOut="HideTip('tt179')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillDownBody" id=link181 onMouseOver="ShowTip(event, 'tt180', 'link181')" onMouseOut="HideTip('tt180')" class=ISymbol>fillDownBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillRect" id=link182 onMouseOver="ShowTip(event, 'tt181', 'link182')" onMouseOut="HideTip('tt181')" class=ISymbol>fillRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillStyle" id=link183 onMouseOver="ShowTip(event, 'tt182', 'link183')" onMouseOut="HideTip('tt182')" class=ISymbol>fillStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToValue" id=link184 onMouseOver="ShowTip(event, 'tt183', 'link184')" onMouseOut="HideTip('tt183')" class=ISymbol>fillToValue</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToZero" id=link185 onMouseOver="ShowTip(event, 'tt184', 'link185')" onMouseOut="HideTip('tt184')" class=ISymbol>fillToZero</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillUpBody" id=link186 onMouseOver="ShowTip(event, 'tt185', 'link186')" onMouseOut="HideTip('tt185')" class=ISymbol>fillUpBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.followMouse" id=link187 onMouseOver="ShowTip(event, 'tt186', 'link187')" onMouseOut="HideTip('tt186')" class=ISymbol>followMouse</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontFamily</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontFamily" id=link188 onMouseOver="ShowTip(event, 'tt187', 'link188')" onMouseOut="HideTip('tt187')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontFamily" id=link189 onMouseOver="ShowTip(event, 'tt188', 'link189')" onMouseOut="HideTip('tt188')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontFamily" id=link190 onMouseOver="ShowTip(event, 'tt189', 'link190')" onMouseOut="HideTip('tt189')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.fontFamily" id=link191 onMouseOver="ShowTip(event, 'tt190', 'link191')" onMouseOut="HideTip('tt190')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontFamily" id=link192 onMouseOver="ShowTip(event, 'tt191', 'link192')" onMouseOut="HideTip('tt191')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontSize</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontSize" id=link193 onMouseOver="ShowTip(event, 'tt192', 'link193')" onMouseOut="HideTip('tt192')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontSize" id=link194 onMouseOver="ShowTip(event, 'tt193', 'link194')" onMouseOut="HideTip('tt193')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontSize" id=link195 onMouseOver="ShowTip(event, 'tt194', 'link195')" onMouseOut="HideTip('tt194')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.fontSize" id=link196 onMouseOver="ShowTip(event, 'tt195', 'link196')" onMouseOut="HideTip('tt195')" class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.fontSize" id=link197 onMouseOver="ShowTip(event, 'tt196', 'link197')" onMouseOut="HideTip('tt196')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontSize" id=link198 onMouseOver="ShowTip(event, 'tt197', 'link198')" onMouseOut="HideTip('tt197')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontStretch</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontStretch" id=link199 onMouseOver="ShowTip(event, 'tt198', 'link199')" onMouseOut="HideTip('tt198')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontStretch" id=link200 onMouseOver="ShowTip(event, 'tt199', 'link200')" onMouseOut="HideTip('tt199')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontWeight</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontWeight" id=link201 onMouseOver="ShowTip(event, 'tt200', 'link201')" onMouseOut="HideTip('tt200')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontWeight" id=link202 onMouseOver="ShowTip(event, 'tt201', 'link202')" onMouseOut="HideTip('tt201')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt0" id=link203 onMouseOver="ShowTip(event, 'tt202', 'link203')" onMouseOut="HideTip('tt202')" class=ISymbol>forceTickAt0</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt100" id=link204 onMouseOver="ShowTip(event, 'tt203', 'link204')" onMouseOut="HideTip('tt203')" class=ISymbol>forceTickAt100</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>formatString</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatString" id=link205 onMouseOver="ShowTip(event, 'tt204', 'link205')" onMouseOut="HideTip('tt204')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatString" id=link206 onMouseOver="ShowTip(event, 'tt205', 'link206')" onMouseOut="HideTip('tt205')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.formatString" id=link207 onMouseOver="ShowTip(event, 'tt206', 'link207')" onMouseOut="HideTip('tt206')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatString" id=link208 onMouseOver="ShowTip(event, 'tt207', 'link208')" onMouseOut="HideTip('tt207')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>formatter</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatter" id=link209 onMouseOver="ShowTip(event, 'tt208', 'link209')" onMouseOut="HideTip('tt208')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatter" id=link210 onMouseOver="ShowTip(event, 'tt209', 'link210')" onMouseOut="HideTip('tt209')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatter" id=link211 onMouseOver="ShowTip(event, 'tt210', 'link211')" onMouseOut="HideTip('tt210')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Functions</span><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.Functions" class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.Functions" class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.Functions" class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></td></tr><tr><td class=IHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.get" id=link212 onMouseOver="ShowTip(event, 'tt211', 'link212')" onMouseOut="HideTip('tt211')" class=ISymbol>get</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemeNames" id=link213 onMouseOver="ShowTip(event, 'tt212', 'link213')" onMouseOut="HideTip('tt212')" class=ISymbol>getThemeNames</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemes" id=link214 onMouseOver="ShowTip(event, 'tt213', 'link214')" onMouseOut="HideTip('tt213')" class=ISymbol>getThemes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/gpl-2-0-txt.html#GPL_Version_2" id=link215 onMouseOver="ShowTip(event, 'tt214', 'link215')" onMouseOut="HideTip('tt214')" class=ISymbol>GPL Version 2</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.grid" id=link216 onMouseOver="ShowTip(event, 'tt215', 'link216')" onMouseOut="HideTip('tt215')" class=ISymbol>grid</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid" id=link217 onMouseOver="ShowTip(event, 'tt216', 'link217')" onMouseOut="HideTip('tt216')" class=ISymbol>Grid</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineColor" id=link218 onMouseOver="ShowTip(event, 'tt217', 'link218')" onMouseOut="HideTip('tt217')" class=ISymbol>gridLineColor</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineWidth" id=link219 onMouseOver="ShowTip(event, 'tt218', 'link219')" onMouseOut="HideTip('tt218')" class=ISymbol>gridLineWidth</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.groups" id=link220 onMouseOver="ShowTip(event, 'tt219', 'link220')" onMouseOut="HideTip('tt219')" class=ISymbol>groups</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=IHeading><a name="H"></a>H</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.hideZeros" id=link221 onMouseOver="ShowTip(event, 'tt220', 'link221')" onMouseOut="HideTip('tt220')" class=ISymbol>hideZeros</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightAlpha" id=link222 onMouseOver="ShowTip(event, 'tt221', 'link222')" onMouseOut="HideTip('tt221')" class=ISymbol>highlightAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightColor" id=link223 onMouseOver="ShowTip(event, 'tt222', 'link223')" onMouseOut="HideTip('tt222')" class=ISymbol>highlightColor</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightColors</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightColors" id=link224 onMouseOver="ShowTip(event, 'tt223', 'link224')" onMouseOut="HideTip('tt223')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightColors" id=link225 onMouseOver="ShowTip(event, 'tt224', 'link225')" onMouseOut="HideTip('tt224')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightColors" id=link226 onMouseOver="ShowTip(event, 'tt225', 'link226')" onMouseOut="HideTip('tt225')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightColors" id=link227 onMouseOver="ShowTip(event, 'tt226', 'link227')" onMouseOut="HideTip('tt226')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightColors" id=link228 onMouseOver="ShowTip(event, 'tt227', 'link228')" onMouseOut="HideTip('tt227')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightColors" id=link229 onMouseOver="ShowTip(event, 'tt228', 'link229')" onMouseOut="HideTip('tt228')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightMouseDown</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseDown" id=link230 onMouseOver="ShowTip(event, 'tt229', 'link230')" onMouseOut="HideTip('tt229')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseDown" id=link231 onMouseOver="ShowTip(event, 'tt230', 'link231')" onMouseOut="HideTip('tt230')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseDown" id=link232 onMouseOver="ShowTip(event, 'tt231', 'link232')" onMouseOut="HideTip('tt231')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseDown" id=link233 onMouseOver="ShowTip(event, 'tt232', 'link233')" onMouseOut="HideTip('tt232')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseDown" id=link234 onMouseOver="ShowTip(event, 'tt233', 'link234')" onMouseOut="HideTip('tt233')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseDown" id=link235 onMouseOver="ShowTip(event, 'tt234', 'link235')" onMouseOut="HideTip('tt234')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseDown" id=link236 onMouseOver="ShowTip(event, 'tt235', 'link236')" onMouseOut="HideTip('tt235')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightMouseOver</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseOver" id=link237 onMouseOver="ShowTip(event, 'tt236', 'link237')" onMouseOut="HideTip('tt236')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseOver" id=link238 onMouseOver="ShowTip(event, 'tt237', 'link238')" onMouseOut="HideTip('tt237')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseOver" id=link239 onMouseOver="ShowTip(event, 'tt238', 'link239')" onMouseOut="HideTip('tt238')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseOver" id=link240 onMouseOver="ShowTip(event, 'tt239', 'link240')" onMouseOut="HideTip('tt239')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseOver" id=link241 onMouseOver="ShowTip(event, 'tt240', 'link241')" onMouseOut="HideTip('tt240')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseOver" id=link242 onMouseOver="ShowTip(event, 'tt241', 'link242')" onMouseOut="HideTip('tt241')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseOver" id=link243 onMouseOver="ShowTip(event, 'tt242', 'link243')" onMouseOut="HideTip('tt242')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.hlc" id=link244 onMouseOver="ShowTip(event, 'tt243', 'link244')" onMouseOut="HideTip('tt243')" class=ISymbol>hlc</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.Hooks" class=ISymbol>Hooks</a>, <span class=IParent>$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine" id=link245 onMouseOver="ShowTip(event, 'tt244', 'link245')" onMouseOut="HideTip('tt244')" class=ISymbol>HorizontalLine</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.hubRadius" id=link246 onMouseOver="ShowTip(event, 'tt245', 'link246')" onMouseOut="HideTip('tt245')" class=ISymbol>hubRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt164"><div class=CProperty>true = fade in/out tooltip, flase = show/hide tooltip</div></div><div class=CToolTip id="tt165"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fadeTooltip = true</td></tr></table></blockquote>true = fade in/out tooltip, flase = show/hide tooltip</div></div><div class=CToolTip id="tt166"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>True to fill the bars.</div></div><div class=CToolTip id="tt167"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt168"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fill the areas.</div></div><div class=CToolTip id="tt169"><div class=CProperty>True to fill area between bands [default: true].</div></div><div class=CToolTip id="tt170"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt171"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt172"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt173"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>true or false, wether to fill under lines or in bars. </div></div><div class=CToolTip id="tt174"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAlpha</td></tr></table></blockquote>Alpha transparency to apply to the fill under the line. </div></div><div class=CToolTip id="tt175"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAndStroke = false</td></tr></table></blockquote>If true will stroke the line (with color this.color) as well as fill under it. </div></div><div class=CToolTip id="tt176"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAxis = 'y'</td></tr></table></blockquote>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;. </div></div><div class=CToolTip id="tt177"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillBetween = { series1: null, series2: null, color: null, baseSeries: 0, fill: true }</td></tr></table></blockquote>Fill between 2 line series in a plot. </div></div><div class=CToolTip id="tt178"><div class=CProperty>css color spec for filled area. </div></div><div class=CToolTip id="tt179"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillColor</td></tr></table></blockquote>CSS color spec to use for fill under line. </div></div><div class=CToolTip id="tt180"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillDownBody = true</td></tr></table></blockquote>true to render a &ldquo;down&rdquo; day (close price lower than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt181"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillRect = false</td></tr></table></blockquote>true to draw shape as a filled rectangle.</div></div><div class=CToolTip id="tt182"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillStyle = '#999999'</td></tr></table></blockquote>css color spec for the fill style.</div></div><div class=CToolTip id="tt183"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToValue = 0</td></tr></table></blockquote>fill a filled series to this value on the fill axis. </div></div><div class=CToolTip id="tt184"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToZero = false</td></tr></table></blockquote>true will force bar and filled series to fill toward zero on the fill Axis.</div></div><div class=CToolTip id="tt185"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillUpBody = false</td></tr></table></blockquote>true to render an &ldquo;up&rdquo; day (close price greater than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt186"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.followMouse = false</td></tr></table></blockquote>Tooltip follows the mouse, it is not at a fixed location. </div></div><div class=CToolTip id="tt187"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt188"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>CSS spec for the font-family css attribute. </div></div><div class=CToolTip id="tt189"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt190"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the legend text.</div></div><div class=CToolTip id="tt191"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the text.</div></div><div class=CToolTip id="tt192"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size css attribute.</div></div><div class=CToolTip id="tt193"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '11pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt194"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '10pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt195"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size attribute. </div></div><div class=CToolTip id="tt196"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the legend text.</div></div><div class=CToolTip id="tt197"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the text.</div></div><div class=CToolTip id="tt198"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt199"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt200"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote></div></div><div class=CToolTip id="tt201"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote>CSS spec for fontWeight</div></div><div class=CToolTip id="tt202"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt0 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 0. </div></div><div class=CToolTip id="tt203"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt100 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 100. </div></div><div class=CToolTip id="tt204"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt205"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt206"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = null</td></tr></table></blockquote>alternative to tooltipFormatString will format the whole tooltip text, populating with x, y values as indicated by tooltipAxes option. </div></div><div class=CToolTip id="tt207"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt208"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt209"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt210"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt211"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.get = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Get and return the named theme or the active theme if no name given.</div></div><div class=CToolTip id="tt212"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemeNames = function()</td></tr></table></blockquote>Return the list of theme names in this manager in alpha-numerical order.</div></div><div class=CToolTip id="tt213"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>$.jqplot.ThemeEngine.prototype.getThemes = function()</td></tr></table></blockquote>Return a list of themes in alpha-numerical order by name.</div></div><div class=CToolTip id="tt214"><div class=CSection>GNU GENERAL PUBLIC LICENSE Version 2, June 1991</div></div><div class=CToolTip id="tt215"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.grid = new Grid()</td></tr></table></blockquote>See Grid for grid specific options.</div></div><div class=CToolTip id="tt216"><div class=CClass>Object representing the grid on which the plot is drawn. </div></div><div class=CToolTip id="tt217"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineColor = '#cccccc'</td></tr></table></blockquote>color of the grid lines.</div></div><div class=CToolTip id="tt218"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineWidth = 1.0</td></tr></table></blockquote>width of the grid lines.</div></div><div class=CToolTip id="tt219"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.groups = 1</td></tr></table></blockquote>group bars into this many groups</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt220"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hideZeros = false</td></tr></table></blockquote>true to not show a label for a value which is 0.</div></div><div class=CToolTip id="tt221"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightAlpha = null</td></tr></table></blockquote>Alpha transparency to apply when highlighting bubble. </div></div><div class=CToolTip id="tt222"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColor = null</td></tr></table></blockquote>color to use when highlighting an area on a filled plot.</div></div><div class=CToolTip id="tt223"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt224"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a bar.</div></div><div class=CToolTip id="tt225"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>An array of colors to use when highlighting a slice. </div></div><div class=CToolTip id="tt226"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt227"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>array of colors to use when highlighting an area.</div></div><div class=CToolTip id="tt228"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt229"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt230"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt231"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a bubble. </div></div><div class=CToolTip id="tt232"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt233"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a area. </div></div><div class=CToolTip id="tt234"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over an area on a filled plot. </div></div><div class=CToolTip id="tt235"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt236"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt237"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt238"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight bubbles when moused over. </div></div><div class=CToolTip id="tt239"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt240"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area when moused over. </div></div><div class=CToolTip id="tt241"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area on a filled plot when moused over. </div></div><div class=CToolTip id="tt242"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt243"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hlc = false</td></tr></table></blockquote>true if is a hi-low-close chart (no open price). </div></div><div class=CToolTip id="tt244"><div class=CClass>A straight horizontal line.</div></div><div class=CToolTip id="tt245"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hubRadius = null</td></tr></table></blockquote>Radius of the hub at the bottom center of gauge which the needle attaches to. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General4.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General4.html
deleted file mode 100644
index 4798c87d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General4.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="#I">I</a> &middot; <a href="#J">J</a> &middot; K &middot; <a href="#L">L</a> &middot; <a href="#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.index" id=link247 onMouseOver="ShowTip(event, 'tt246', 'link247')" onMouseOut="HideTip('tt246')" class=ISymbol>index</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.init" id=link248 onMouseOver="ShowTip(event, 'tt247', 'link248')" onMouseOut="HideTip('tt247')" class=ISymbol>init</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.innerDiameter" id=link249 onMouseOver="ShowTip(event, 'tt248', 'link249')" onMouseOut="HideTip('tt248')" class=ISymbol>innerDiameter</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.insertBreaks" id=link250 onMouseOver="ShowTip(event, 'tt249', 'link250')" onMouseOut="HideTip('tt249')" class=ISymbol>insertBreaks</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.intersectionThreshold" id=link251 onMouseOver="ShowTip(event, 'tt250', 'link251')" onMouseOut="HideTip('tt250')" class=ISymbol>intersectionThreshold</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.interval" id=link252 onMouseOver="ShowTip(event, 'tt251', 'link252')" onMouseOut="HideTip('tt251')" class=ISymbol>interval</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalColors" id=link253 onMouseOver="ShowTip(event, 'tt252', 'link253')" onMouseOut="HideTip('tt252')" class=ISymbol>intervalColors</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalInnerRadius" id=link254 onMouseOver="ShowTip(event, 'tt253', 'link254')" onMouseOut="HideTip('tt253')" class=ISymbol>intervalInnerRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalOuterRadius" id=link255 onMouseOver="ShowTip(event, 'tt254', 'link255')" onMouseOut="HideTip('tt254')" class=ISymbol>intervalOuterRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervals" id=link256 onMouseOver="ShowTip(event, 'tt255', 'link256')" onMouseOut="HideTip('tt255')" class=ISymbol>intervals</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Introduction" id=link257 onMouseOver="ShowTip(event, 'tt256', 'link257')" onMouseOut="HideTip('tt256')" class=ISymbol>Introduction</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>isarc</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.isarc" id=link258 onMouseOver="ShowTip(event, 'tt257', 'link258')" onMouseOut="HideTip('tt257')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.isarc" id=link259 onMouseOver="ShowTip(event, 'tt258', 'link259')" onMouseOut="HideTip('tt258')" class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>isMinorTick</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.isMinorTick" id=link260 onMouseOver="ShowTip(event, 'tt259', 'link260')" onMouseOut="HideTip('tt259')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.isMinorTick" id=link261 onMouseOver="ShowTip(event, 'tt260', 'link261')" onMouseOut="HideTip('tt260')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=IHeading><a name="J"></a>J</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot" id=link262 onMouseOver="ShowTip(event, 'tt261', 'link262')" onMouseOut="HideTip('tt261')" class=ISymbol>jqPlot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot_Charts" id=link263 onMouseOver="ShowTip(event, 'tt262', 'link263')" onMouseOut="HideTip('tt262')" class=ISymbol>jqPlot Charts</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqPlotCssStyling-txt.html#jqPlot_CSS_Customization" id=link264 onMouseOver="ShowTip(event, 'tt263', 'link264')" onMouseOut="HideTip('tt263')" class=ISymbol>jqPlot CSS Customization</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqPlotOptions-txt.html#jqPlot_Options" id=link265 onMouseOver="ShowTip(event, 'tt264', 'link265')" onMouseOut="HideTip('tt264')" class=ISymbol>jqPlot Options</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.jqPlot_Pugin_Hooks" class=ISymbol>jqPlot Pugin Hooks</a>, <span class=IParent>$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/usage-txt.html#jqPlot_Usage" class=ISymbol>jqPlot Usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#jqplot.enhancedLegendRenderer.js" class=ISymbol>jqplot.<wbr>enhancedLegendRenderer.js</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#jqplot.pyramidAxisRenderer.js" class=ISymbol>jqplot.<wbr>pyramidAxisRenderer.js</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#jqplot.pyramidRenderer.js" class=ISymbol>jqplot.<wbr>pyramidRenderer.js</a></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>label</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.label" id=link266 onMouseOver="ShowTip(event, 'tt265', 'link266')" onMouseOut="HideTip('tt265')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.label" id=link267 onMouseOver="ShowTip(event, 'tt266', 'link267')" onMouseOut="HideTip('tt266')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.label" id=link268 onMouseOver="ShowTip(event, 'tt267', 'link268')" onMouseOut="HideTip('tt267')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.label" id=link269 onMouseOver="ShowTip(event, 'tt268', 'link269')" onMouseOut="HideTip('tt268')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.label" id=link270 onMouseOver="ShowTip(event, 'tt269', 'link270')" onMouseOut="HideTip('tt269')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.label" id=link271 onMouseOver="ShowTip(event, 'tt270', 'link271')" onMouseOut="HideTip('tt270')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelHeightAdjust" id=link272 onMouseOver="ShowTip(event, 'tt271', 'link272')" onMouseOut="HideTip('tt271')" class=ISymbol>labelHeightAdjust</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelOptions" id=link273 onMouseOver="ShowTip(event, 'tt272', 'link273')" onMouseOut="HideTip('tt272')" class=ISymbol>labelOptions</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>labelPosition</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.labelPosition" id=link274 onMouseOver="ShowTip(event, 'tt273', 'link274')" onMouseOut="HideTip('tt273')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelPosition" id=link275 onMouseOver="ShowTip(event, 'tt274', 'link275')" onMouseOut="HideTip('tt274')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelRenderer" id=link276 onMouseOver="ShowTip(event, 'tt275', 'link276')" onMouseOut="HideTip('tt275')" class=ISymbol>labelRenderer</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>labels</span><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labels" id=link277 onMouseOver="ShowTip(event, 'tt276', 'link277')" onMouseOut="HideTip('tt276')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.labels" id=link278 onMouseOver="ShowTip(event, 'tt277', 'link278')" onMouseOut="HideTip('tt277')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labelsFromSeries" id=link279 onMouseOver="ShowTip(event, 'tt278', 'link279')" onMouseOut="HideTip('tt278')" class=ISymbol>labelsFromSeries</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.legend" id=link280 onMouseOver="ShowTip(event, 'tt279', 'link280')" onMouseOut="HideTip('tt279')" class=ISymbol>legend</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend" id=link281 onMouseOver="ShowTip(event, 'tt280', 'link281')" onMouseOut="HideTip('tt280')" class=ISymbol>Legend</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line" id=link282 onMouseOver="ShowTip(event, 'tt281', 'link282')" onMouseOut="HideTip('tt281')" class=ISymbol>Line</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineCap</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineCap" id=link283 onMouseOver="ShowTip(event, 'tt282', 'link283')" onMouseOut="HideTip('tt282')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineCap" id=link284 onMouseOver="ShowTip(event, 'tt283', 'link284')" onMouseOut="HideTip('tt283')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineCap" id=link285 onMouseOver="ShowTip(event, 'tt284', 'link285')" onMouseOut="HideTip('tt284')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineCap" id=link286 onMouseOver="ShowTip(event, 'tt285', 'link286')" onMouseOut="HideTip('tt285')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineJoin</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineJoin" id=link287 onMouseOver="ShowTip(event, 'tt286', 'link287')" onMouseOut="HideTip('tt286')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineJoin" id=link288 onMouseOver="ShowTip(event, 'tt287', 'link288')" onMouseOut="HideTip('tt287')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineJoin" id=link289 onMouseOver="ShowTip(event, 'tt288', 'link289')" onMouseOut="HideTip('tt288')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>linePattern</span><div class=ISubIndex><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.linePattern" id=link290 onMouseOver="ShowTip(event, 'tt289', 'link290')" onMouseOut="HideTip('tt289')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.linePattern" id=link291 onMouseOver="ShowTip(event, 'tt290', 'link291')" onMouseOut="HideTip('tt290')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineWidth</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineWidth" id=link292 onMouseOver="ShowTip(event, 'tt291', 'link292')" onMouseOut="HideTip('tt291')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.lineWidth" id=link293 onMouseOver="ShowTip(event, 'tt292', 'link293')" onMouseOut="HideTip('tt292')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.lineWidth" id=link294 onMouseOver="ShowTip(event, 'tt293', 'link294')" onMouseOut="HideTip('tt293')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.lineWidth" id=link295 onMouseOver="ShowTip(event, 'tt294', 'link295')" onMouseOut="HideTip('tt294')" class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineWidth" id=link296 onMouseOver="ShowTip(event, 'tt295', 'link296')" onMouseOut="HideTip('tt295')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.lineWidth" id=link297 onMouseOver="ShowTip(event, 'tt296', 'link297')" onMouseOut="HideTip('tt296')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.lineWidth" id=link298 onMouseOver="ShowTip(event, 'tt297', 'link298')" onMouseOut="HideTip('tt297')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.lineWidthAdjust" id=link299 onMouseOver="ShowTip(event, 'tt298', 'link299')" onMouseOut="HideTip('tt298')" class=ISymbol>lineWidthAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>location</span><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.location" id=link300 onMouseOver="ShowTip(event, 'tt299', 'link300')" onMouseOut="HideTip('tt299')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.location" id=link301 onMouseOver="ShowTip(event, 'tt300', 'link301')" onMouseOut="HideTip('tt300')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.looseZoom" id=link302 onMouseOver="ShowTip(event, 'tt301', 'link302')" onMouseOut="HideTip('tt301')" class=ISymbol>looseZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=IHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>makeGridData</span><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.makeGridData" id=link303 onMouseOver="ShowTip(event, 'tt302', 'link303')" onMouseOut="HideTip('tt302')" class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.makeGridData" id=link304 onMouseOver="ShowTip(event, 'tt303', 'link304')" onMouseOut="HideTip('tt303')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginBottom" id=link305 onMouseOver="ShowTip(event, 'tt304', 'link305')" onMouseOut="HideTip('tt304')" class=ISymbol>marginBottom</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginLeft" id=link306 onMouseOver="ShowTip(event, 'tt305', 'link306')" onMouseOut="HideTip('tt305')" class=ISymbol>marginLeft</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginRight" id=link307 onMouseOver="ShowTip(event, 'tt306', 'link307')" onMouseOut="HideTip('tt306')" class=ISymbol>marginRight</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginTop" id=link308 onMouseOver="ShowTip(event, 'tt307', 'link308')" onMouseOut="HideTip('tt307')" class=ISymbol>marginTop</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>mark</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.mark" id=link309 onMouseOver="ShowTip(event, 'tt308', 'link309')" onMouseOut="HideTip('tt308')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.mark" id=link310 onMouseOver="ShowTip(event, 'tt309', 'link310')" onMouseOut="HideTip('tt309')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.markerOptions" id=link311 onMouseOver="ShowTip(event, 'tt310', 'link311')" onMouseOut="HideTip('tt310')" class=ISymbol>markerOptions</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>markerRenderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.markerRenderer" id=link312 onMouseOver="ShowTip(event, 'tt311', 'link312')" onMouseOut="HideTip('tt311')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.markerRenderer" id=link313 onMouseOver="ShowTip(event, 'tt312', 'link313')" onMouseOut="HideTip('tt312')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.markerRenderer" id=link314 onMouseOver="ShowTip(event, 'tt313', 'link314')" onMouseOut="HideTip('tt313')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>markSize</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.markSize" id=link315 onMouseOver="ShowTip(event, 'tt314', 'link315')" onMouseOut="HideTip('tt314')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.markSize" id=link316 onMouseOver="ShowTip(event, 'tt315', 'link316')" onMouseOut="HideTip('tt315')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>max</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.max" id=link317 onMouseOver="ShowTip(event, 'tt316', 'link317')" onMouseOut="HideTip('tt316')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.max" id=link318 onMouseOver="ShowTip(event, 'tt317', 'link318')" onMouseOut="HideTip('tt317')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>methods</span><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.methods" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.methods" class=IParent>$.jqplot.<wbr>ThemeEngine</a><a href="../files/jqplot-core-js.html#jqPlot.methods" class=IParent>jqPlot</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.Methods" class=ISymbol>Methods</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>min</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.min" id=link319 onMouseOver="ShowTip(event, 'tt318', 'link319')" onMouseOut="HideTip('tt318')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.min" id=link320 onMouseOver="ShowTip(event, 'tt319', 'link320')" onMouseOut="HideTip('tt319')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>minorTicks</span><div class=ISubIndex><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.minorTicks" id=link321 onMouseOver="ShowTip(event, 'tt320', 'link321')" onMouseOut="HideTip('tt320')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.minorTicks" id=link322 onMouseOver="ShowTip(event, 'tt321', 'link322')" onMouseOut="HideTip('tt321')" class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/MIT-LICENSE-txt.html#MIT_License" id=link323 onMouseOver="ShowTip(event, 'tt322', 'link323')" onMouseOut="HideTip('tt322')" class=ISymbol>MIT License</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.moveBlock" id=link324 onMouseOver="ShowTip(event, 'tt323', 'link324')" onMouseOut="HideTip('tt323')" class=ISymbol>moveBlock</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToBack" id=link325 onMouseOver="ShowTip(event, 'tt324', 'link325')" onMouseOut="HideTip('tt324')" class=ISymbol>moveSeriesToBack</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToFront" id=link326 onMouseOver="ShowTip(event, 'tt325', 'link326')" onMouseOut="HideTip('tt325')" class=ISymbol>moveSeriesToFront</a>, <span class=IParent>jqPlot</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt246"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.index</td></tr></table></blockquote>0 based index of this series in the plot series array.</div></div><div class=CToolTip id="tt247"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.init = function(</td><td class=PParameter nowrap>target,</td></tr><tr><td></td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>sets the plot target, checks data and applies user options to plot.</div></div><div class=CToolTip id="tt248"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.innerDiameter = null</td></tr></table></blockquote>Inner diameter of the donut, auto calculated by default. </div></div><div class=CToolTip id="tt249"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.insertBreaks = true</td></tr></table></blockquote>true to turn spaces in data block label into html breaks br /.</div></div><div class=CToolTip id="tt250"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intersectionThreshold = 2</td></tr></table></blockquote>pixel distance from data point or marker to consider cursor lines intersecting with point. </div></div><div class=CToolTip id="tt251"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>interval: '3%' }</td></tr></table></blockquote>User specified interval above and below line for bands [default: &lsquo;3%&rsquo;&rsquo;]. </div></div><div class=CToolTip id="tt252"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalColors = [ &quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;]</td></tr></table></blockquote>Array of colors to use for the intervals.</div></div><div class=CToolTip id="tt253"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalInnerRadius = null</td></tr></table></blockquote>Radius of the inner circle of the interval ring.</div></div><div class=CToolTip id="tt254"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalOuterRadius = null</td></tr></table></blockquote>Radius of the outer circle of the interval ring.</div></div><div class=CToolTip id="tt255"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervals = []</td></tr></table></blockquote>Array of ranges to be drawn around the gauge. </div></div><div class=CToolTip id="tt256"><div class=CGeneric>jqPlot requires jQuery (1.4+ required for certain features). </div></div><div class=CToolTip id="tt257"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt258"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt259"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><div class=CToolTip id="tt260"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt261"><div class=CClass>Plot object returned by call to $.jqplot. </div></div><div class=CToolTip id="tt262"><div class=CSection>Pure JavaScript plotting plugin for jQuery.</div></div><div class=CToolTip id="tt263"><div class=CSection>Much of the styling of jqPlot is done by css. </div></div><div class=CToolTip id="tt264"><div class=CSection><b>This document is out of date. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt265"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>The text or html for the label.</div></div><div class=CToolTip id="tt266"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>label for the axis.</div></div><div class=CToolTip id="tt267"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>A gauge label like &lsquo;kph&rsquo; or &lsquo;Volts&rsquo;</div></div><div class=CToolTip id="tt268"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Label for the trend line to use in the legend.</div></div><div class=CToolTip id="tt269"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>Label for the axis</div></div><div class=CToolTip id="tt270"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Line label to use in the legend.</div></div><div class=CToolTip id="tt271"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelHeightAdjust = 0</td></tr></table></blockquote>Number of Pixels to offset the label up (-) or down (+) from its default position.</div></div><div class=CToolTip id="tt272"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelOptions = {}</td></tr></table></blockquote>Options passed to the label renderer.</div></div><div class=CToolTip id="tt273"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'auto'</td></tr></table></blockquote>&lsquo;auto&rsquo;, &lsquo;start&rsquo;, &lsquo;middle&rsquo; or &lsquo;end&rsquo;. </div></div><div class=CToolTip id="tt274"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'inside'</td></tr></table></blockquote>Where to position the label, either &lsquo;inside&rsquo; or &lsquo;bottom&rsquo;.</div></div><div class=CToolTip id="tt275"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>A class of a rendering engine for creating an axis label.</div></div><div class=CToolTip id="tt276"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>array of arrays of labels, one array for each series.</div></div><div class=CToolTip id="tt277"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>Array of labels to use. </div></div><div class=CToolTip id="tt278"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelsFromSeries = false</td></tr></table></blockquote>true to use labels within data point arrays.</div></div><div class=CToolTip id="tt279"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.legend = new Legend()</td></tr></table></blockquote>see $.jqplot.TableLegendRenderer</div></div><div class=CToolTip id="tt280"><div class=CClass>Legend object. </div></div><div class=CToolTip id="tt281"><div class=CClass>A straight line.</div></div><div class=CToolTip id="tt282"><div class=CProperty>Type of ending placed on the line [&lsquo;round&rsquo;, &lsquo;butt&rsquo;, &lsquo;square&rsquo;]</div></div><div class=CToolTip id="tt283"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt284"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt285"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>Canvas lineCap style at ends of line.</div></div><div class=CToolTip id="tt286"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt287"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt288"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'round'</td></tr></table></blockquote>Canvas lineJoin style between segments of series.</div></div><div class=CToolTip id="tt289"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt290"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt291"><div class=CProperty>Width of the line.</div></div><div class=CToolTip id="tt292"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>width of line if areas are stroked and not filled.</div></div><div class=CToolTip id="tt293"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>size of the line for non-filled markers.</div></div><div class=CToolTip id="tt294"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the hi-low line and open/close ticks. </div></div><div class=CToolTip id="tt295"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>width of the shadow line stroke.</div></div><div class=CToolTip id="tt296"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the trend line.</div></div><div class=CToolTip id="tt297"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2.5</td></tr></table></blockquote>width of the line in pixels. </div></div><div class=CToolTip id="tt298"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidthAdjust = 2.5</td></tr></table></blockquote>Pixels to add to the lineWidth of the highlight.</div></div><div class=CToolTip id="tt299"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'n'</td></tr></table></blockquote>compass location where to position the label around the point. </div></div><div class=CToolTip id="tt300"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'ne'</td></tr></table></blockquote>Placement of the legend. </div></div><div class=CToolTip id="tt301"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.looseZoom = true</td></tr></table></blockquote>Will expand zoom range to provide more rounded tick values. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt302"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><div class=CToolTip id="tt303"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.makeGridData = function(</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts any arbitrary data values to grid coordinates and returns them. </div></div><div class=CToolTip id="tt304"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginBottom = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt305"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginLeft = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt306"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginRight = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt307"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginTop = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt308"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt309"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt310"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerOptions = {}</td></tr></table></blockquote>renderer specific options to pass to the markerRenderer, see $.jqplot.MarkerRenderer.</div></div><div class=CToolTip id="tt311"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.markerRenderer = new $.jqplot.MarkerRenderer(</td><td class=PParameter nowrap>{shadow:false}</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renderer used to draw the marker of the highlighted point. </div></div><div class=CToolTip id="tt312"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = {show:false}</td></tr></table></blockquote>Renderer to use to draw markers on the line. </div></div><div class=CToolTip id="tt313"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = $.jqplot.MarkerRenderer</td></tr></table></blockquote>A class of a renderer which will draw marker (e.g. </div></div><div class=CToolTip id="tt314"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 6</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt315"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 4</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt316"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max</td></tr></table></blockquote>Maximum value on the gauge. </div></div><div class=CToolTip id="tt317"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max = null</td></tr></table></blockquote>maximum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt318"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min</td></tr></table></blockquote>Minimum value on the gauge. </div></div><div class=CToolTip id="tt319"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min = null</td></tr></table></blockquote>minimum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt320"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 0</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><div class=CToolTip id="tt321"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 'auto'</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><div class=CToolTip id="tt322"><div class=CSection>Copyright &copy; 2009-2012 Chris Leonello</div></div><div class=CToolTip id="tt323"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveBlock = function (</td><td class=PParameter nowrap>idx,</td></tr><tr><td></td><td class=PParameter nowrap>x,</td></tr><tr><td></td><td class=PParameter nowrap>y,</td></tr><tr><td></td><td class=PParameter nowrap>duration</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Moves an individual block. </div></div><div class=CToolTip id="tt324"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToBack = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas behind all other series canvases.</div></div><div class=CToolTip id="tt325"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.moveSeriesToFront = function (</td><td class=PParameter nowrap>idx</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>This method requires jQuery 1.4+ Moves the specified series canvas in front of all other series canvases. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General5.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General5.html
deleted file mode 100644
index 05064f8b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General5.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="#N">N</a> &middot; <a href="#O">O</a> &middot; <a href="#P">P</a> &middot; <a href="#Q">Q</a> &middot; <a href="#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="N"></a>N</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.name" id=link327 onMouseOver="ShowTip(event, 'tt326', 'link327')" onMouseOut="HideTip('tt326')" class=ISymbol>name</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needlePad" id=link328 onMouseOver="ShowTip(event, 'tt327', 'link328')" onMouseOut="HideTip('tt327')" class=ISymbol>needlePad</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needleThickness" id=link329 onMouseOver="ShowTip(event, 'tt328', 'link329')" onMouseOut="HideTip('tt328')" class=ISymbol>needleThickness</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.negativeColor" id=link330 onMouseOver="ShowTip(event, 'tt329', 'link330')" onMouseOut="HideTip('tt329')" class=ISymbol>negativeColor</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.neighborThreshold" id=link331 onMouseOver="ShowTip(event, 'tt330', 'link331')" onMouseOut="HideTip('tt330')" class=ISymbol>neighborThreshold</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.newTheme" id=link332 onMouseOver="ShowTip(event, 'tt331', 'link332')" onMouseOut="HideTip('tt331')" class=ISymbol>newTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.noDataIndicator" id=link333 onMouseOver="ShowTip(event, 'tt332', 'link333')" onMouseOut="HideTip('tt332')" class=ISymbol>noDataIndicator</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>numberColumns</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberColumns" id=link334 onMouseOver="ShowTip(event, 'tt333', 'link334')" onMouseOut="HideTip('tt333')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberColumns" id=link335 onMouseOver="ShowTip(event, 'tt334', 'link335')" onMouseOut="HideTip('tt334')" class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberColumns" id=link336 onMouseOver="ShowTip(event, 'tt335', 'link336')" onMouseOut="HideTip('tt335')" class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberColumns" id=link337 onMouseOver="ShowTip(event, 'tt336', 'link337')" onMouseOut="HideTip('tt336')" class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberColumns" id=link338 onMouseOver="ShowTip(event, 'tt337', 'link338')" onMouseOut="HideTip('tt337')" class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>numberRows</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberRows" id=link339 onMouseOver="ShowTip(event, 'tt338', 'link339')" onMouseOut="HideTip('tt338')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberRows" id=link340 onMouseOver="ShowTip(event, 'tt339', 'link340')" onMouseOut="HideTip('tt339')" class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberRows" id=link341 onMouseOver="ShowTip(event, 'tt340', 'link341')" onMouseOut="HideTip('tt340')" class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberRows" id=link342 onMouseOver="ShowTip(event, 'tt341', 'link342')" onMouseOut="HideTip('tt341')" class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberRows" id=link343 onMouseOver="ShowTip(event, 'tt342', 'link343')" onMouseOut="HideTip('tt342')" class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.numberTicks" id=link344 onMouseOver="ShowTip(event, 'tt343', 'link344')" onMouseOut="HideTip('tt343')" class=ISymbol>numberTicks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=IHeading><a name="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.objects" id=link345 onMouseOver="ShowTip(event, 'tt344', 'link345')" onMouseOut="HideTip('tt344')" class=ISymbol>objects</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.offset" id=link346 onMouseOver="ShowTip(event, 'tt345', 'link346')" onMouseOut="HideTip('tt345')" class=ISymbol>offset</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#offsetBars" id=link347 onMouseOver="ShowTip(event, 'tt346', 'link347')" onMouseOut="HideTip('tt346')" class=ISymbol>offsetBars</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.openColor" id=link348 onMouseOver="ShowTip(event, 'tt347', 'link348')" onMouseOut="HideTip('tt347')" class=ISymbol>openColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/optionsTutorial-txt.html#Options_Tutorial" id=link349 onMouseOver="ShowTip(event, 'tt348', 'link349')" onMouseOut="HideTip('tt348')" class=ISymbol>Options Tutorial</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Options_Usage" id=link350 onMouseOver="ShowTip(event, 'tt349', 'link350')" onMouseOut="HideTip('tt349')" class=ISymbol>Options Usage</a></td></tr><tr><td class=IHeading><a name="P"></a>P</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.pad" id=link351 onMouseOver="ShowTip(event, 'tt350', 'link351')" onMouseOut="HideTip('tt350')" class=ISymbol>pad</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>padding</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.padding" id=link352 onMouseOver="ShowTip(event, 'tt351', 'link352')" onMouseOut="HideTip('tt351')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.padding" id=link353 onMouseOver="ShowTip(event, 'tt352', 'link353')" onMouseOut="HideTip('tt352')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.padding" id=link354 onMouseOver="ShowTip(event, 'tt353', 'link354')" onMouseOut="HideTip('tt353')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.padding" id=link355 onMouseOver="ShowTip(event, 'tt354', 'link355')" onMouseOut="HideTip('tt354')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMax" id=link356 onMouseOver="ShowTip(event, 'tt355', 'link356')" onMouseOut="HideTip('tt355')" class=ISymbol>padMax</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMin" id=link357 onMouseOver="ShowTip(event, 'tt356', 'link357')" onMouseOut="HideTip('tt356')" class=ISymbol>padMin</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.pegNeedle" id=link358 onMouseOver="ShowTip(event, 'tt357', 'link358')" onMouseOut="HideTip('tt357')" class=ISymbol>pegNeedle</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.placement" id=link359 onMouseOver="ShowTip(event, 'tt358', 'link359')" onMouseOut="HideTip('tt358')" class=ISymbol>placement</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#position" id=link360 onMouseOver="ShowTip(event, 'tt359', 'link360')" onMouseOut="HideTip('tt359')" class=ISymbol>position</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawHooks" id=link361 onMouseOver="ShowTip(event, 'tt360', 'link361')" onMouseOut="HideTip('tt360')" class=ISymbol>postDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesHooks" id=link362 onMouseOver="ShowTip(event, 'tt361', 'link362')" onMouseOut="HideTip('tt361')" class=ISymbol>postDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesShadowHooks" id=link363 onMouseOver="ShowTip(event, 'tt362', 'link363')" onMouseOut="HideTip('tt362')" class=ISymbol>postDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postInitHooks" id=link364 onMouseOver="ShowTip(event, 'tt363', 'link364')" onMouseOut="HideTip('tt363')" class=ISymbol>postInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseOptionsHooks" id=link365 onMouseOver="ShowTip(event, 'tt364', 'link365')" onMouseOut="HideTip('tt364')" class=ISymbol>postParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseSeriesOptionsHooks" id=link366 onMouseOver="ShowTip(event, 'tt365', 'link366')" onMouseOut="HideTip('tt365')" class=ISymbol>postParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postSeriesInitHooks" id=link367 onMouseOver="ShowTip(event, 'tt366', 'link367')" onMouseOut="HideTip('tt366')" class=ISymbol>postSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.predraw" id=link368 onMouseOver="ShowTip(event, 'tt367', 'link368')" onMouseOut="HideTip('tt367')" class=ISymbol>predraw</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawHooks" id=link369 onMouseOver="ShowTip(event, 'tt368', 'link369')" onMouseOut="HideTip('tt368')" class=ISymbol>preDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawLegendHooks" id=link370 onMouseOver="ShowTip(event, 'tt369', 'link370')" onMouseOut="HideTip('tt369')" class=ISymbol>preDrawLegendHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesHooks" id=link371 onMouseOver="ShowTip(event, 'tt370', 'link371')" onMouseOut="HideTip('tt370')" class=ISymbol>preDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesShadowHooks" id=link372 onMouseOver="ShowTip(event, 'tt371', 'link372')" onMouseOut="HideTip('tt371')" class=ISymbol>preDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>prefix</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.prefix" id=link373 onMouseOver="ShowTip(event, 'tt372', 'link373')" onMouseOut="HideTip('tt372')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.prefix" id=link374 onMouseOver="ShowTip(event, 'tt373', 'link374')" onMouseOut="HideTip('tt373')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preInitHooks" id=link375 onMouseOver="ShowTip(event, 'tt374', 'link375')" onMouseOut="HideTip('tt374')" class=ISymbol>preInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseOptionsHooks" id=link376 onMouseOver="ShowTip(event, 'tt375', 'link376')" onMouseOut="HideTip('tt375')" class=ISymbol>preParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseSeriesOptionsHooks" id=link377 onMouseOver="ShowTip(event, 'tt376', 'link377')" onMouseOut="HideTip('tt376')" class=ISymbol>preParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preSeriesInitHooks" id=link378 onMouseOver="ShowTip(event, 'tt377', 'link378')" onMouseOut="HideTip('tt377')" class=ISymbol>preSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>Properties</span><div class=ISubIndex><span class=IParent>Global</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#Properties" class=IFile>plugins/<wbr>jqplot.<wbr>enhancedLegendRenderer.js</a><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#Properties" class=IFile>plugins/<wbr>jqplot.<wbr>pyramidAxisRenderer.js</a><a href="../files/plugins/jqplot-pyramidRenderer-js.html#Properties" class=IFile>plugins/<wbr>jqplot.<wbr>pyramidRenderer.js</a></div><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.Properties" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.Properties" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.Properties" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.Properties" class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.Properties" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.Properties" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.Properties" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.Properties" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.Properties" class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.Properties" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.Properties" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.Properties" class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.Properties" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.Properties" class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.Properties" class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.Properties" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.Properties" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.Properties" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.Properties" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.Properties" id=link379 onMouseOver="ShowTip(event, 'tt378', 'link379')" onMouseOut="HideTip('tt378')" class=IParent>$.jqplot.<wbr>LogAxisRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.Properties" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.Properties" class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.Properties" class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.Properties" class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.Properties" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.Properties" class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.Properties" class=IParent>$.jqplot.<wbr>PieLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.Properties" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.Properties" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.Properties" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.Properties" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.Properties" class=IParent>$.jqplot.<wbr>ThemeEngine</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.Properties" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.Properties" id=link380 onMouseOver="ShowTip(event, 'tt379', 'link380')" onMouseOut="HideTip('tt379')" class=IParent>Axis</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.Properties" class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.Properties" class=IParent>DashedVerticalLine</a><a href="../files/jqplot-core-js.html#Grid.Properties" class=IParent>Grid</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.Properties" class=IParent>HorizontalLine</a><a href="../files/jqplot-core-js.html#jqPlot.Properties" id=link381 onMouseOver="ShowTip(event, 'tt380', 'link381')" onMouseOut="HideTip('tt380')" class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.Properties" class=IParent>Legend</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.Properties" class=IParent>Line</a><a href="../files/jqplot-core-js.html#Series.Properties" id=link382 onMouseOver="ShowTip(event, 'tt381', 'link382')" onMouseOut="HideTip('tt381')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.Properties" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>pt2px</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.pt2px" id=link383 onMouseOver="ShowTip(event, 'tt382', 'link383')" onMouseOut="HideTip('tt382')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.pt2px" id=link384 onMouseOver="ShowTip(event, 'tt383', 'link384')" onMouseOut="HideTip('tt383')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=IHeading><a name="Q"></a>Q</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.quickInit" id=link385 onMouseOver="ShowTip(event, 'tt384', 'link385')" onMouseOut="HideTip('tt384')" class=ISymbol>quickInit</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.redraw" id=link386 onMouseOver="ShowTip(event, 'tt385', 'link386')" onMouseOut="HideTip('tt385')" class=ISymbol>redraw</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.reInitialize" id=link387 onMouseOver="ShowTip(event, 'tt386', 'link387')" onMouseOut="HideTip('tt386')" class=ISymbol>reInitialize</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.remove" id=link388 onMouseOver="ShowTip(event, 'tt387', 'link388')" onMouseOut="HideTip('tt387')" class=ISymbol>remove</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.rename" id=link389 onMouseOver="ShowTip(event, 'tt388', 'link389')" onMouseOut="HideTip('tt388')" class=ISymbol>rename</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>renderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.renderer" id=link390 onMouseOver="ShowTip(event, 'tt389', 'link390')" onMouseOut="HideTip('tt389')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.renderer" id=link391 onMouseOver="ShowTip(event, 'tt390', 'link391')" onMouseOut="HideTip('tt390')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.renderer" id=link392 onMouseOver="ShowTip(event, 'tt391', 'link392')" onMouseOut="HideTip('tt391')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.renderer" id=link393 onMouseOver="ShowTip(event, 'tt392', 'link393')" onMouseOut="HideTip('tt392')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.renderer" id=link394 onMouseOver="ShowTip(event, 'tt393', 'link394')" onMouseOut="HideTip('tt393')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>rendererOptions</span><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.rendererOptions" id=link395 onMouseOver="ShowTip(event, 'tt394', 'link395')" onMouseOut="HideTip('tt394')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.rendererOptions" id=link396 onMouseOver="ShowTip(event, 'tt395', 'link396')" onMouseOut="HideTip('tt395')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.rendererOptions" id=link397 onMouseOver="ShowTip(event, 'tt396', 'link397')" onMouseOut="HideTip('tt396')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.rendererOptions" id=link398 onMouseOver="ShowTip(event, 'tt397', 'link398')" onMouseOut="HideTip('tt397')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.rendererOptions" id=link399 onMouseOver="ShowTip(event, 'tt398', 'link399')" onMouseOut="HideTip('tt398')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.rendererOptions" id=link400 onMouseOver="ShowTip(event, 'tt399', 'link400')" onMouseOut="HideTip('tt399')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.replot" id=link401 onMouseOver="ShowTip(event, 'tt400', 'link401')" onMouseOut="HideTip('tt400')" class=ISymbol>replot</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.resetAxesScale" id=link402 onMouseOver="ShowTip(event, 'tt401', 'link402')" onMouseOut="HideTip('tt401')" class=ISymbol>resetAxesScale</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restoreOriginalSeriesOrder" id=link403 onMouseOver="ShowTip(event, 'tt402', 'link403')" onMouseOut="HideTip('tt402')" class=ISymbol>restoreOriginalSeriesOrder</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restorePreviousSeriesOrder" id=link404 onMouseOver="ShowTip(event, 'tt403', 'link404')" onMouseOut="HideTip('tt403')" class=ISymbol>restorePreviousSeriesOrder</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringColor" id=link405 onMouseOver="ShowTip(event, 'tt404', 'link405')" onMouseOut="HideTip('tt404')" class=ISymbol>ringColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.ringMargin" id=link406 onMouseOver="ShowTip(event, 'tt405', 'link406')" onMouseOut="HideTip('tt405')" class=ISymbol>ringMargin</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringWidth" id=link407 onMouseOver="ShowTip(event, 'tt406', 'link407')" onMouseOut="HideTip('tt406')" class=ISymbol>ringWidth</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.rowSpacing" id=link408 onMouseOver="ShowTip(event, 'tt407', 'link408')" onMouseOut="HideTip('tt407')" class=ISymbol>rowSpacing</a>, <span class=IParent>Legend</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt326"><div class=CProperty>Optional name for the overlay object. </div></div><div class=CToolTip id="tt327"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needlePad = 6</td></tr></table></blockquote>Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.</div></div><div class=CToolTip id="tt328"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needleThickness = null</td></tr></table></blockquote>Maximum thickness the needle. </div></div><div class=CToolTip id="tt329"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.negativeColor</td></tr></table></blockquote>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</div></div><div class=CToolTip id="tt330"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.neighborThreshold = 4</td></tr></table></blockquote>how close or far (in pixels) the cursor must be from a point marker to detect the point.</div></div><div class=CToolTip id="tt331"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.newTheme = function(</td><td class=PParameter nowrap>name,</td></tr><tr><td></td><td class=PParameter nowrap>obj</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Create a new theme based on the default theme, adding it the themeEngine.</div></div><div class=CToolTip id="tt332"><div class=CProperty>Options to set up a mock plot with a data loading indicator if no data is specified.</div></div><div class=CToolTip id="tt333"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt334"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt335"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt336"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt337"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt338"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt339"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt340"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt341"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt342"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt343"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberTicks</td></tr></table></blockquote>Desired number of ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt344"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.objects = []</td></tr></table></blockquote></div></div><div class=CToolTip id="tt345"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offset = 1</td></tr></table></blockquote>Pixel offset at the given shadow angle of each shadow stroke from the last stroke.</div></div><div class=CToolTip id="tt346"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offsetBars = false</td></tr></table></blockquote>False will center bars on their y value. </div></div><div class=CToolTip id="tt347"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.openColor = null</td></tr></table></blockquote>color of the open price tick mark. </div></div><div class=CToolTip id="tt348"><div class=CSection>This document will help you understand how jqPlot&rsquo;s options relate to the API documentation and the jqPlot object itself. </div></div><div class=CToolTip id="tt349"><div class=CGeneric>See Options Tutorial</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt350"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pad = 1.2</td></tr></table></blockquote>Padding to extend the range above and below the data bounds. </div></div><div class=CToolTip id="tt351"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the donut and plot edges, legend, etc.</div></div><div class=CToolTip id="tt352"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = {top: 20, right: 20, bottom: 20, left: 20}</td></tr></table></blockquote>padding between the funnel and plot edges, legend, etc.</div></div><div class=CToolTip id="tt353"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = null</td></tr></table></blockquote>padding between the meterGauge and plot edges, auto calculated by default.</div></div><div class=CToolTip id="tt354"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the pie and plot edges, legend, etc.</div></div><div class=CToolTip id="tt355"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMax = null</td></tr></table></blockquote>Padding to extend the range above data bounds. </div></div><div class=CToolTip id="tt356"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMin = null</td></tr></table></blockquote>Padding to extend the range below data bounds. </div></div><div class=CToolTip id="tt357"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pegNeedle = true</td></tr></table></blockquote>True will stop needle just below/above the min/max values if data is below/above min/max, as if the meter is &ldquo;pegged&rdquo;.</div></div><div class=CToolTip id="tt358"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.placement = &quot;insideGrid&quot;</td></tr></table></blockquote>&ldquo;insideGrid&rdquo; places legend inside the grid area of the plot. </div></div><div class=CToolTip id="tt359"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.position = null</td></tr></table></blockquote>Position of axis. </div></div><div class=CToolTip id="tt360"><div class=CHook>called after plot draw.</div></div><div class=CToolTip id="tt361"><div class=CHook>called after each series is drawn.</div></div><div class=CToolTip id="tt362"><div class=CHook>called after series shadows are drawn.</div></div><div class=CToolTip id="tt363"><div class=CHook>called after initialization.</div></div><div class=CToolTip id="tt364"><div class=CHook>called after user options are parsed.</div></div><div class=CToolTip id="tt365"><div class=CHook>called after series related options are parsed.</div></div><div class=CToolTip id="tt366"><div class=CHook>called after series is initialized.</div></div><div class=CToolTip id="tt367"><div class=CProperty>Wether to draw the legend before the series or not. </div></div><div class=CToolTip id="tt368"><div class=CHook>called before plot draw.</div></div><div class=CToolTip id="tt369"><div class=CHook>called before the legend is drawn.</div></div><div class=CToolTip id="tt370"><div class=CHook>called before each series is drawn.</div></div><div class=CToolTip id="tt371"><div class=CHook>called before series shadows are drawn.</div></div><div class=CToolTip id="tt372"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt373"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt374"><div class=CHook>called before initialization.</div></div><div class=CToolTip id="tt375"><div class=CHook>called before user options are parsed.</div></div><div class=CToolTip id="tt376"><div class=CHook>called before series related options are parsed.</div></div><div class=CToolTip id="tt377"><div class=CHook>called before series is initialized.</div></div><div class=CToolTip id="tt378"><div class=CGroup>Properties</div></div><div class=CToolTip id="tt379"><div class=CGroup>Axes options are specified within an axes object at the top level of the plot options like so:</div></div><div class=CToolTip id="tt380"><div class=CGroup>These properties are specified at the top of the options object like so:</div></div><div class=CToolTip id="tt381"><div class=CGroup>Properties will be assigned from a series array at the top level of the options. </div></div><div class=CToolTip id="tt382"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><div class=CToolTip id="tt383"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt384"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.quickInit = function ()</td></tr></table></blockquote>Quick reinitialization plot for replotting. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt385"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.redraw = function(</td><td class=PParameter nowrap>clear</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Empties the plot target div and redraws the plot. </div></div><div class=CToolTip id="tt386"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.reInitialize = function (</td><td class=PParameter nowrap>data,</td></tr><tr><td></td><td class=PParameter nowrap>opts</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>reinitialize plot for replotting. </div></div><div class=CToolTip id="tt387"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.remove = function(</td><td class=PParameter nowrap>name</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Remove the given theme from the themeEngine.</div></div><div class=CToolTip id="tt388"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.ThemeEngine.prototype.rename = function (</td><td class=PParameter nowrap>oldName,</td></tr><tr><td></td><td class=PParameter nowrap>newName</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Rename a theme.</div></div><div class=CToolTip id="tt389"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = new $.jqplot.LineRenderer()</td></tr></table></blockquote>Renderer to use to draw the trend line. </div></div><div class=CToolTip id="tt390"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LinearAxisRenderer</td></tr></table></blockquote>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</div></div><div class=CToolTip id="tt391"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.CanvasGridRenderer</td></tr></table></blockquote>Instance of a renderer which will actually render the grid, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt392"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LineRenderer</td></tr></table></blockquote>A class of a renderer which will draw the series, see $.jqplot.LineRenderer.</div></div><div class=CToolTip id="tt393"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.DivTitleRenderer</td></tr></table></blockquote>A class for creating a DOM element for the title, see $.jqplot.DivTitleRenderer.</div></div><div class=CToolTip id="tt394"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {marker:{show:false}}</td></tr></table></blockquote>Options to pass to the line renderer. </div></div><div class=CToolTip id="tt395"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options. </div></div><div class=CToolTip id="tt396"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt397"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt398"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer.</div></div><div class=CToolTip id="tt399"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt400"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.replot = function(</td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Does a reinitialization of the plot followed by a redraw. </div></div><div class=CToolTip id="tt401"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.resetAxesScale = function(</td><td class=PParameter nowrap>axes,</td></tr><tr><td></td><td class=PParameter nowrap>options</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Reset the specified axes min, max, numberTicks and tickInterval properties to null or reset these properties on all axes if no list of axes is provided.</div></div><div class=CToolTip id="tt402"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restoreOriginalSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its original order when the plot was created.</div></div><div class=CToolTip id="tt403"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.restorePreviousSeriesOrder = function ()</td></tr></table></blockquote>This method requires jQuery 1.4+ Restore the series canvas order to its previous state. </div></div><div class=CToolTip id="tt404"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringColor = &quot;#BBC6D0&quot;</td></tr></table></blockquote>color of the outer ring, hub, and needle of the gauge.</div></div><div class=CToolTip id="tt405"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringMargin = null</td></tr></table></blockquote>pixel distance between rings, or multiple series in a donut plot. </div></div><div class=CToolTip id="tt406"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringWidth = null</td></tr></table></blockquote>width of the ring around the gauge. </div></div><div class=CToolTip id="tt407"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rowSpacing = '0.5em'</td></tr></table></blockquote>css padding-top spec for the rows in the legend.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General6.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General6.html
deleted file mode 100644
index 9070e89c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General6.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="#S">S</a> &middot; <a href="General7.html#T">T</a> &middot; <a href="General7.html#U">U</a> &middot; <a href="General7.html#V">V</a> &middot; <a href="General7.html#W">W</a> &middot; <a href="General7.html#X">X</a> &middot; <a href="General7.html#Y">Y</a> &middot; <a href="General7.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.scaleToHiddenSeries" id=link409 onMouseOver="ShowTip(event, 'tt408', 'link409')" onMouseOut="HideTip('tt408')" class=ISymbol>scaleToHiddenSeries</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.sectionMargin" id=link410 onMouseOver="ShowTip(event, 'tt409', 'link410')" onMouseOut="HideTip('tt409')" class=ISymbol>sectionMargin</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.series" id=link411 onMouseOver="ShowTip(event, 'tt410', 'link411')" onMouseOut="HideTip('tt410')" class=ISymbol>series</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series" id=link412 onMouseOver="ShowTip(event, 'tt411', 'link412')" onMouseOut="HideTip('tt411')" class=ISymbol>Series</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesColors" id=link413 onMouseOver="ShowTip(event, 'tt412', 'link413')" onMouseOut="HideTip('tt412')" class=ISymbol>seriesColors</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesDefaults" id=link414 onMouseOver="ShowTip(event, 'tt413', 'link414')" onMouseOut="HideTip('tt413')" class=ISymbol>seriesDefaults</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.seriesLabelIndex" id=link415 onMouseOver="ShowTip(event, 'tt414', 'link415')" onMouseOut="HideTip('tt414')" class=ISymbol>seriesLabelIndex</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggle" id=link416 onMouseOver="ShowTip(event, 'tt415', 'link416')" onMouseOut="HideTip('tt415')" class=ISymbol>seriesToggle</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggleReplot" id=link417 onMouseOver="ShowTip(event, 'tt416', 'link417')" onMouseOut="HideTip('tt416')" class=ISymbol>seriesToggleReplot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>setGridData</span><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.setGridData" id=link418 onMouseOver="ShowTip(event, 'tt417', 'link418')" onMouseOut="HideTip('tt417')" class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.setGridData" id=link419 onMouseOver="ShowTip(event, 'tt418', 'link419')" onMouseOut="HideTip('tt418')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadow</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadow" id=link420 onMouseOver="ShowTip(event, 'tt419', 'link420')" onMouseOut="HideTip('tt419')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadow" id=link421 onMouseOver="ShowTip(event, 'tt420', 'link421')" onMouseOut="HideTip('tt420')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadow" id=link422 onMouseOver="ShowTip(event, 'tt421', 'link422')" onMouseOut="HideTip('tt421')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadow" id=link423 onMouseOver="ShowTip(event, 'tt422', 'link423')" onMouseOut="HideTip('tt422')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowAlpha</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowAlpha" id=link424 onMouseOver="ShowTip(event, 'tt423', 'link424')" onMouseOut="HideTip('tt423')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAlpha" id=link425 onMouseOver="ShowTip(event, 'tt424', 'link425')" onMouseOut="HideTip('tt424')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowAlpha" id=link426 onMouseOver="ShowTip(event, 'tt425', 'link426')" onMouseOut="HideTip('tt425')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowAlpha" id=link427 onMouseOver="ShowTip(event, 'tt426', 'link427')" onMouseOut="HideTip('tt426')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAlpha" id=link428 onMouseOver="ShowTip(event, 'tt427', 'link428')" onMouseOut="HideTip('tt427')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowAlpha" id=link429 onMouseOver="ShowTip(event, 'tt428', 'link429')" onMouseOut="HideTip('tt428')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowAlpha" id=link430 onMouseOver="ShowTip(event, 'tt429', 'link430')" onMouseOut="HideTip('tt429')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAlpha" id=link431 onMouseOver="ShowTip(event, 'tt430', 'link431')" onMouseOut="HideTip('tt430')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAlpha" id=link432 onMouseOver="ShowTip(event, 'tt431', 'link432')" onMouseOut="HideTip('tt431')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAlpha" id=link433 onMouseOver="ShowTip(event, 'tt432', 'link433')" onMouseOut="HideTip('tt432')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowAngle</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAngle" id=link434 onMouseOver="ShowTip(event, 'tt433', 'link434')" onMouseOut="HideTip('tt433')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAngle" id=link435 onMouseOver="ShowTip(event, 'tt434', 'link435')" onMouseOut="HideTip('tt434')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAngle" id=link436 onMouseOver="ShowTip(event, 'tt435', 'link436')" onMouseOut="HideTip('tt435')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAngle" id=link437 onMouseOver="ShowTip(event, 'tt436', 'link437')" onMouseOut="HideTip('tt436')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAngle" id=link438 onMouseOver="ShowTip(event, 'tt437', 'link438')" onMouseOut="HideTip('tt437')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowColor" id=link439 onMouseOver="ShowTip(event, 'tt438', 'link439')" onMouseOut="HideTip('tt438')" class=ISymbol>shadowColor</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowDepth</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowDepth" id=link440 onMouseOver="ShowTip(event, 'tt439', 'link440')" onMouseOut="HideTip('tt439')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowDepth" id=link441 onMouseOver="ShowTip(event, 'tt440', 'link441')" onMouseOut="HideTip('tt440')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowDepth" id=link442 onMouseOver="ShowTip(event, 'tt441', 'link442')" onMouseOut="HideTip('tt441')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowDepth" id=link443 onMouseOver="ShowTip(event, 'tt442', 'link443')" onMouseOut="HideTip('tt442')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowDepth" id=link444 onMouseOver="ShowTip(event, 'tt443', 'link444')" onMouseOut="HideTip('tt443')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowDepth" id=link445 onMouseOver="ShowTip(event, 'tt444', 'link445')" onMouseOut="HideTip('tt444')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowDepth" id=link446 onMouseOver="ShowTip(event, 'tt445', 'link446')" onMouseOut="HideTip('tt445')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowDepth" id=link447 onMouseOver="ShowTip(event, 'tt446', 'link447')" onMouseOut="HideTip('tt446')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowDepth" id=link448 onMouseOver="ShowTip(event, 'tt447', 'link448')" onMouseOut="HideTip('tt447')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowDepth" id=link449 onMouseOver="ShowTip(event, 'tt448', 'link449')" onMouseOut="HideTip('tt448')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowOffset</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowOffset" id=link450 onMouseOver="ShowTip(event, 'tt449', 'link450')" onMouseOut="HideTip('tt449')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowOffset" id=link451 onMouseOver="ShowTip(event, 'tt450', 'link451')" onMouseOut="HideTip('tt450')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowOffset" id=link452 onMouseOver="ShowTip(event, 'tt451', 'link452')" onMouseOut="HideTip('tt451')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowOffset" id=link453 onMouseOver="ShowTip(event, 'tt452', 'link453')" onMouseOut="HideTip('tt452')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowOffset" id=link454 onMouseOver="ShowTip(event, 'tt453', 'link454')" onMouseOut="HideTip('tt453')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowOffset" id=link455 onMouseOver="ShowTip(event, 'tt454', 'link455')" onMouseOut="HideTip('tt454')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowOffset" id=link456 onMouseOver="ShowTip(event, 'tt455', 'link456')" onMouseOut="HideTip('tt455')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowOffset" id=link457 onMouseOver="ShowTip(event, 'tt456', 'link457')" onMouseOut="HideTip('tt456')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowOffset" id=link458 onMouseOver="ShowTip(event, 'tt457', 'link458')" onMouseOut="HideTip('tt457')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowOffset" id=link459 onMouseOver="ShowTip(event, 'tt458', 'link459')" onMouseOut="HideTip('tt458')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowRenderer" id=link460 onMouseOver="ShowTip(event, 'tt459', 'link460')" onMouseOut="HideTip('tt459')" class=ISymbol>shadowRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowWidth" id=link461 onMouseOver="ShowTip(event, 'tt460', 'link461')" onMouseOut="HideTip('tt460')" class=ISymbol>shadowWidth</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shapeRenderer" id=link462 onMouseOver="ShowTip(event, 'tt461', 'link462')" onMouseOut="HideTip('tt461')" class=ISymbol>shapeRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>show</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.show" id=link463 onMouseOver="ShowTip(event, 'tt462', 'link463')" onMouseOut="HideTip('tt462')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.show" id=link464 onMouseOver="ShowTip(event, 'tt463', 'link464')" onMouseOut="HideTip('tt463')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.show" id=link465 onMouseOver="ShowTip(event, 'tt464', 'link465')" onMouseOut="HideTip('tt464')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.show" id=link466 onMouseOver="ShowTip(event, 'tt465', 'link466')" onMouseOut="HideTip('tt465')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.show" id=link467 onMouseOver="ShowTip(event, 'tt466', 'link467')" onMouseOut="HideTip('tt466')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.show" id=link468 onMouseOver="ShowTip(event, 'tt467', 'link468')" onMouseOut="HideTip('tt467')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.show" id=link469 onMouseOver="ShowTip(event, 'tt468', 'link469')" onMouseOut="HideTip('tt468')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.show" id=link470 onMouseOver="ShowTip(event, 'tt469', 'link470')" onMouseOut="HideTip('tt469')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.show" id=link471 onMouseOver="ShowTip(event, 'tt470', 'link471')" onMouseOut="HideTip('tt470')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.show" id=link472 onMouseOver="ShowTip(event, 'tt471', 'link472')" onMouseOut="HideTip('tt471')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.show" id=link473 onMouseOver="ShowTip(event, 'tt472', 'link473')" onMouseOut="HideTip('tt472')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.show" id=link474 onMouseOver="ShowTip(event, 'tt473', 'link474')" onMouseOut="HideTip('tt473')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Legend.show" id=link475 onMouseOver="ShowTip(event, 'tt474', 'link475')" onMouseOut="HideTip('tt474')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.show" id=link476 onMouseOver="ShowTip(event, 'tt475', 'link476')" onMouseOut="HideTip('tt475')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.show" id=link477 onMouseOver="ShowTip(event, 'tt476', 'link477')" onMouseOut="HideTip('tt476')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.showBorders" id=link478 onMouseOver="ShowTip(event, 'tt477', 'link478')" onMouseOut="HideTip('tt477')" class=ISymbol>showBorders</a>, <span class=IParent>$.jqplot.<wbr>MekkoRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showCursorLegend" id=link479 onMouseOver="ShowTip(event, 'tt478', 'link479')" onMouseOut="HideTip('tt478')" class=ISymbol>showCursorLegend</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showDataLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.showDataLabels" id=link480 onMouseOver="ShowTip(event, 'tt479', 'link480')" onMouseOut="HideTip('tt479')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.showDataLabels" id=link481 onMouseOver="ShowTip(event, 'tt480', 'link481')" onMouseOut="HideTip('tt480')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.showDataLabels" id=link482 onMouseOver="ShowTip(event, 'tt481', 'link482')" onMouseOut="HideTip('tt481')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showGridline</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showGridline" id=link483 onMouseOver="ShowTip(event, 'tt482', 'link483')" onMouseOut="HideTip('tt482')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showGridline" id=link484 onMouseOver="ShowTip(event, 'tt483', 'link484')" onMouseOut="HideTip('tt483')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showHorizontalLine" id=link485 onMouseOver="ShowTip(event, 'tt484', 'link485')" onMouseOut="HideTip('tt484')" class=ISymbol>showHorizontalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showLabel</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showLabel" id=link486 onMouseOver="ShowTip(event, 'tt485', 'link486')" onMouseOut="HideTip('tt485')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.showLabel" id=link487 onMouseOver="ShowTip(event, 'tt486', 'link487')" onMouseOut="HideTip('tt486')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showLabel" id=link488 onMouseOver="ShowTip(event, 'tt487', 'link488')" onMouseOut="HideTip('tt487')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Axis.showLabel" id=link489 onMouseOver="ShowTip(event, 'tt488', 'link489')" onMouseOut="HideTip('tt488')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.showLabel" id=link490 onMouseOver="ShowTip(event, 'tt489', 'link490')" onMouseOut="HideTip('tt489')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.showLabels" id=link491 onMouseOver="ShowTip(event, 'tt490', 'link491')" onMouseOut="HideTip('tt490')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.showLabels" id=link492 onMouseOver="ShowTip(event, 'tt491', 'link492')" onMouseOut="HideTip('tt491')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.showLine" id=link493 onMouseOver="ShowTip(event, 'tt492', 'link493')" onMouseOut="HideTip('tt492')" class=ISymbol>showLine</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.showLines" id=link494 onMouseOver="ShowTip(event, 'tt493', 'link494')" onMouseOut="HideTip('tt493')" class=ISymbol>showLines</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showMark</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showMark" id=link495 onMouseOver="ShowTip(event, 'tt494', 'link495')" onMouseOut="HideTip('tt494')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showMark" id=link496 onMouseOver="ShowTip(event, 'tt495', 'link496')" onMouseOut="HideTip('tt495')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showMarker</span><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showMarker" id=link497 onMouseOver="ShowTip(event, 'tt496', 'link497')" onMouseOut="HideTip('tt496')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-core-js.html#Series.showMarker" id=link498 onMouseOver="ShowTip(event, 'tt497', 'link498')" onMouseOut="HideTip('tt497')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.showMinorTicks" id=link499 onMouseOver="ShowTip(event, 'tt498', 'link499')" onMouseOut="HideTip('tt498')" class=ISymbol>showMinorTicks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.showSwatch" id=link500 onMouseOver="ShowTip(event, 'tt499', 'link500')" onMouseOut="HideTip('tt499')" class=ISymbol>showSwatch</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTickLabels" id=link501 onMouseOver="ShowTip(event, 'tt500', 'link501')" onMouseOut="HideTip('tt500')" class=ISymbol>showTickLabels</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.showTickMarks" id=link502 onMouseOver="ShowTip(event, 'tt501', 'link502')" onMouseOut="HideTip('tt501')" class=ISymbol>showTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showTicks</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTicks" id=link503 onMouseOver="ShowTip(event, 'tt502', 'link503')" onMouseOut="HideTip('tt502')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.showTicks" id=link504 onMouseOver="ShowTip(event, 'tt503', 'link504')" onMouseOut="HideTip('tt503')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showTooltip</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltip" id=link505 onMouseOver="ShowTip(event, 'tt504', 'link505')" onMouseOut="HideTip('tt504')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltip" id=link506 onMouseOver="ShowTip(event, 'tt505', 'link506')" onMouseOut="HideTip('tt505')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showTooltip" id=link507 onMouseOver="ShowTip(event, 'tt506', 'link507')" onMouseOut="HideTip('tt506')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipDataPosition" id=link508 onMouseOver="ShowTip(event, 'tt507', 'link508')" onMouseOut="HideTip('tt507')" class=ISymbol>showTooltipDataPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipGridPosition" id=link509 onMouseOver="ShowTip(event, 'tt508', 'link509')" onMouseOut="HideTip('tt508')" class=ISymbol>showTooltipGridPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipOutsideZoom" id=link510 onMouseOver="ShowTip(event, 'tt509', 'link510')" onMouseOut="HideTip('tt509')" class=ISymbol>showTooltipOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltipPrecision" id=link511 onMouseOver="ShowTip(event, 'tt510', 'link511')" onMouseOut="HideTip('tt510')" class=ISymbol>showTooltipPrecision</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipUnitPosition" id=link512 onMouseOver="ShowTip(event, 'tt511', 'link512')" onMouseOut="HideTip('tt511')" class=ISymbol>showTooltipUnitPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showVerticalLine" id=link513 onMouseOver="ShowTip(event, 'tt512', 'link513')" onMouseOut="HideTip('tt512')" class=ISymbol>showVerticalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>size</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.size" id=link514 onMouseOver="ShowTip(event, 'tt513', 'link514')" onMouseOut="HideTip('tt513')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.size" id=link515 onMouseOver="ShowTip(event, 'tt514', 'link515')" onMouseOut="HideTip('tt514')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.sizeAdjust" id=link516 onMouseOver="ShowTip(event, 'tt515', 'link516')" onMouseOut="HideTip('tt515')" class=ISymbol>sizeAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>sliceMargin</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.sliceMargin" id=link517 onMouseOver="ShowTip(event, 'tt516', 'link517')" onMouseOut="HideTip('tt516')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.sliceMargin" id=link518 onMouseOver="ShowTip(event, 'tt517', 'link518')" onMouseOut="HideTip('tt517')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.smooth" id=link519 onMouseOver="ShowTip(event, 'tt518', 'link519')" onMouseOut="HideTip('tt518')" class=ISymbol>smooth</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.sortData" id=link520 onMouseOver="ShowTip(event, 'tt519', 'link520')" onMouseOut="HideTip('tt519')" class=ISymbol>sortData</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.sortMergedLabels" id=link521 onMouseOver="ShowTip(event, 'tt520', 'link521')" onMouseOut="HideTip('tt520')" class=ISymbol>sortMergedLabels</a>, <span class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.stackedValue" id=link522 onMouseOver="ShowTip(event, 'tt521', 'link522')" onMouseOut="HideTip('tt521')" class=ISymbol>stackedValue</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.stackSeries" id=link523 onMouseOver="ShowTip(event, 'tt522', 'link523')" onMouseOut="HideTip('tt522')" class=ISymbol>stackSeries</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.start" id=link524 onMouseOver="ShowTip(event, 'tt523', 'link524')" onMouseOut="HideTip('tt523')" class=ISymbol>start</a>, <span class=IParent>Line</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>startAngle</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.startAngle" id=link525 onMouseOver="ShowTip(event, 'tt524', 'link525')" onMouseOut="HideTip('tt524')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.startAngle" id=link526 onMouseOver="ShowTip(event, 'tt525', 'link526')" onMouseOut="HideTip('tt525')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.stop" id=link527 onMouseOver="ShowTip(event, 'tt526', 'link527')" onMouseOut="HideTip('tt526')" class=ISymbol>stop</a>, <span class=IParent>Line</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeRect" id=link528 onMouseOver="ShowTip(event, 'tt527', 'link528')" onMouseOut="HideTip('tt527')" class=ISymbol>strokeRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeStyle" id=link529 onMouseOver="ShowTip(event, 'tt528', 'link529')" onMouseOut="HideTip('tt528')" class=ISymbol>strokeStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>style</span><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.style" id=link530 onMouseOver="ShowTip(event, 'tt529', 'link530')" onMouseOut="HideTip('tt529')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.style" id=link531 onMouseOver="ShowTip(event, 'tt530', 'link531')" onMouseOut="HideTip('tt530')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.suffix" id=link532 onMouseOver="ShowTip(event, 'tt531', 'link532')" onMouseOut="HideTip('tt531')" class=ISymbol>suffix</a>, <span class=IParent>$.jqplot.<wbr>AxisTickRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#synchronizeHighlight" id=link533 onMouseOver="ShowTip(event, 'tt532', 'link533')" onMouseOut="HideTip('tt532')" class=ISymbol>synchronizeHighlight</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.syncTicks" id=link534 onMouseOver="ShowTip(event, 'tt533', 'link534')" onMouseOut="HideTip('tt533')" class=ISymbol>syncTicks</a>, <span class=IParent>Axis</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt408"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.scaleToHiddenSeries = false</td></tr></table></blockquote>True to include hidden series when computing axes bounds and scaling.</div></div><div class=CToolTip id="tt409"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sectionMargin = 6</td></tr></table></blockquote>spacing between funnel sections in pixels.</div></div><div class=CToolTip id="tt410"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.series = []</td></tr></table></blockquote>Array of series object options. </div></div><div class=CToolTip id="tt411"><div class=CClass>An individual data series object. </div></div><div class=CToolTip id="tt412"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesColors = $.jqplot.config.defaultColors</td></tr></table></blockquote>Ann array of CSS color specifications that will be applied, in order, to the series in the plot. </div></div><div class=CToolTip id="tt413"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>seriesDefaults: {}, series:[] }</td></tr></table></blockquote>default options that will be applied to all series. </div></div><div class=CToolTip id="tt414"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesLabelIndex = null</td></tr></table></blockquote>array index for location of labels within data point arrays. </div></div><div class=CToolTip id="tt415"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggle = 'normal'</td></tr></table></blockquote>false to not enable series on/off toggling on the legend. </div></div><div class=CToolTip id="tt416"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggleReplot = false</td></tr></table></blockquote>True to replot the chart after toggling series on/off. </div></div><div class=CToolTip id="tt417"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.BezierCurveRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><div class=CToolTip id="tt418"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.MekkoRenderer.prototype.setGridData = function(</td><td class=PParameter nowrap>plot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>converts the user data values to grid coordinates and stores them in the gridData array. </div></div><div class=CToolTip id="tt419"><div class=CProperty>wether or not to draw a shadow on the line</div></div><div class=CToolTip id="tt420"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether or not to draw a shadow on the line</div></div><div class=CToolTip id="tt421"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>true or false, wether or not to show the shadow.</div></div><div class=CToolTip id="tt422"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether to show a shadow behind the grid.</div></div><div class=CToolTip id="tt423"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.08</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt424"><div class=CProperty>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt425"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt426"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt427"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt428"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt429"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt430"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>Alpha transparency of the shadow.</div></div><div class=CToolTip id="tt431"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt432"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.1'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt433"><div class=CProperty>Shadow angle in degrees</div></div><div class=CToolTip id="tt434"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt435"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Angle of the shadow on the trend line.</div></div><div class=CToolTip id="tt436"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>shadow angle in degrees</div></div><div class=CToolTip id="tt437"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt438"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowColor = null</td></tr></table></blockquote>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</div></div><div class=CToolTip id="tt439"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt440"><div class=CProperty>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt441"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt442"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt443"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt444"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 4</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt445"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt446"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>number of strokes to make of the shadow.</div></div><div class=CToolTip id="tt447"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt448"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt449"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt450"><div class=CProperty>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt451"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt452"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the area and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt453"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt454"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the gauge ring and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt455"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt456"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.0</td></tr></table></blockquote>pixel offset for each stroke of the shadow.</div></div><div class=CToolTip id="tt457"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.5</td></tr></table></blockquote>Offset of each shadow stroke from the border in pixels</div></div><div class=CToolTip id="tt458"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.25</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt459"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowRenderer = new $.jqplot.ShadowRenderer()</td></tr></table></blockquote>Renderer that will draws the shadows on the marker.</div></div><div class=CToolTip id="tt460"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowWidth = 3</td></tr></table></blockquote>width of the stoke for the shadow</div></div><div class=CToolTip id="tt461"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shapeRenderer = new $.jqplot.ShapeRenderer()</td></tr></table></blockquote>Renderer that will draw the marker.</div></div><div class=CToolTip id="tt462"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt463"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label). </div></div><div class=CToolTip id="tt464"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt465"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt466"><div class=CProperty>true to show (draw), false to not draw.</div></div><div class=CToolTip id="tt467"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>wether to show the cursor or not.</div></div><div class=CToolTip id="tt468"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>true to show the highlight.</div></div><div class=CToolTip id="tt469"><div class=CProperty>true to show the bands. </div></div><div class=CToolTip id="tt470"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the marker.</div></div><div class=CToolTip id="tt471"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>show the labels or not.</div></div><div class=CToolTip id="tt472"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>Wether or not to show the trend line.</div></div><div class=CToolTip id="tt473"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the axis on the graph.</div></div><div class=CToolTip id="tt474"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the legend on the graph.</div></div><div class=CToolTip id="tt475"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to draw the series.</div></div><div class=CToolTip id="tt476"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the title</div></div><div class=CToolTip id="tt477"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showBorders = true</td></tr></table></blockquote>True to draw borders lines between areas on the chart. </div></div><div class=CToolTip id="tt478"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showCursorLegend = false</td></tr></table></blockquote>Replace the plot legend with an enhanced legend displaying intersection information.</div></div><div class=CToolTip id="tt479"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt480"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt481"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt482"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt483"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt484"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showHorizontalLine = false</td></tr></table></blockquote>draw a horizontal line across the plot which follows the cursor.</div></div><div class=CToolTip id="tt485"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt486"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt487"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt488"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show the axis label.</div></div><div class=CToolTip id="tt489"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show label for this series in the legend.</div></div><div class=CToolTip id="tt490"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>True to show labels on bubbles (if any), false to not show.</div></div><div class=CToolTip id="tt491"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>true to show the label text on the legend.</div></div><div class=CToolTip id="tt492"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLine = true</td></tr></table></blockquote>wether to actually draw the line or not. </div></div><div class=CToolTip id="tt493"><div class=CProperty>True to show lines at top and bottom of bands [default: false].</div></div><div class=CToolTip id="tt494"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt495"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt496"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>true to show the marker</div></div><div class=CToolTip id="tt497"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>wether or not to show the markers at the data points.</div></div><div class=CToolTip id="tt498"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMinorTicks = true</td></tr></table></blockquote>Wether or not to show minor ticks. </div></div><div class=CToolTip id="tt499"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showSwatches = true</td></tr></table></blockquote>true to show the color swatches on the legend.</div></div><div class=CToolTip id="tt500"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickLabels = true</td></tr></table></blockquote>true to show tick labels next to ticks.</div></div><div class=CToolTip id="tt501"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickMarks = true</td></tr></table></blockquote>Wether to show the tick marks (line crossing grid) or not. </div></div><div class=CToolTip id="tt502"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>true to show ticks around gauge.</div></div><div class=CToolTip id="tt503"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>Wether to show the ticks (both marks and labels) or not. </div></div><div class=CToolTip id="tt504"><div class=CProperty>Show a tooltip with data point values.</div></div><div class=CToolTip id="tt505"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>show a cursor position tooltip. </div></div><div class=CToolTip id="tt506"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>Show a tooltip with data point values.</div></div><div class=CToolTip id="tt507"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipDataPosition = false</td></tr></table></blockquote>Used with showVerticalLine to show intersecting data points in the tooltip.</div></div><div class=CToolTip id="tt508"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipGridPosition = false</td></tr></table></blockquote>show the grid pixel coordinates of the mouse.</div></div><div class=CToolTip id="tt509"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipOutsideZoom = false</td></tr></table></blockquote>True will keep updating the tooltip when zooming of the grid.</div></div><div class=CToolTip id="tt510"><div class=CProperty>Controls how close to line cursor must be to show tooltip. </div></div><div class=CToolTip id="tt511"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipUnitPosition = true</td></tr></table></blockquote>show the unit (data) coordinates of the mouse.</div></div><div class=CToolTip id="tt512"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showVerticalLine = false</td></tr></table></blockquote>draw a vertical line across the plot which follows the cursor. </div></div><div class=CToolTip id="tt513"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 4</td></tr></table></blockquote>Length of the tick beyond the grid in pixels. </div></div><div class=CToolTip id="tt514"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 9.0</td></tr></table></blockquote>Size of the marker (diameter or circle, length of edge of square, etc.)</div></div><div class=CToolTip id="tt515"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sizeAdjust = 5</td></tr></table></blockquote>Pixels to add to the overall size of the highlight.</div></div><div class=CToolTip id="tt516"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between donut slices in degrees.</div></div><div class=CToolTip id="tt517"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between pie slices in degrees.</div></div><div class=CToolTip id="tt518"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.smooth = false</td></tr></table></blockquote>True to draw a smoothed (interpolated) line through the data points with automatically computed number of smoothing points. </div></div><div class=CToolTip id="tt519"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortData = true</td></tr></table></blockquote>false to not sort the data passed in by the user. </div></div><div class=CToolTip id="tt520"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortMergedLabels = false</td></tr></table></blockquote>True to sort tick labels when labels are created by merging x axis values from multiple series. </div></div><div class=CToolTip id="tt521"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackedValue = false</td></tr></table></blockquote>true to display value as stacked in a stacked plot. </div></div><div class=CToolTip id="tt522"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackSeries = false</td></tr></table></blockquote>true or false, creates a stack or &ldquo;mountain&rdquo; plot. </div></div><div class=CToolTip id="tt523"><div class=CProperty>[x, y] coordinates for the start of the line.</div></div><div class=CToolTip id="tt524"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing donut in degrees. </div></div><div class=CToolTip id="tt525"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing pie in degrees. </div></div><div class=CToolTip id="tt526"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>stop: [] }</td></tr></table></blockquote>[x, y] coordinates for the end of the line.</div></div><div class=CToolTip id="tt527"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeRect = false</td></tr></table></blockquote>true to draw shape as a stroked rectangle.</div></div><div class=CToolTip id="tt528"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeStyle = '#999999'</td></tr></table></blockquote>css color spec for the stoke style</div></div><div class=CToolTip id="tt529"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'crosshair'</td></tr></table></blockquote>CSS spec for cursor style</div></div><div class=CToolTip id="tt530"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'filledCircle'</td></tr></table></blockquote>One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare</div></div><div class=CToolTip id="tt531"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.suffix = ''</td></tr></table></blockquote>String to append to the tick label. </div></div><div class=CToolTip id="tt532"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.synchronizeHighlight = false</td></tr></table></blockquote>Index of another series to highlight when this series is highlighted. </div></div><div class=CToolTip id="tt533"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.syncTicks = null</td></tr></table></blockquote>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/General7.html b/wqflask/wqflask/static/packages/jqplot/docs/index/General7.html
deleted file mode 100644
index 3eeb2422..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/General7.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Index</div><div class=INavigationBar><a href="General.html#Symbols">$#!</a> &middot; 0-9 &middot; <a href="General.html#A">A</a> &middot; <a href="General.html#B">B</a> &middot; <a href="General2.html#C">C</a> &middot; <a href="General2.html#D">D</a> &middot; <a href="General2.html#E">E</a> &middot; <a href="General3.html#F">F</a> &middot; <a href="General3.html#G">G</a> &middot; <a href="General3.html#H">H</a> &middot; <a href="General4.html#I">I</a> &middot; <a href="General4.html#J">J</a> &middot; K &middot; <a href="General4.html#L">L</a> &middot; <a href="General4.html#M">M</a> &middot; <a href="General5.html#N">N</a> &middot; <a href="General5.html#O">O</a> &middot; <a href="General5.html#P">P</a> &middot; <a href="General5.html#Q">Q</a> &middot; <a href="General5.html#R">R</a> &middot; <a href="General6.html#S">S</a> &middot; <a href="#T">T</a> &middot; <a href="#U">U</a> &middot; <a href="#V">V</a> &middot; <a href="#W">W</a> &middot; <a href="#X">X</a> &middot; <a href="#Y">Y</a> &middot; <a href="#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title.text" id=link535 onMouseOver="ShowTip(event, 'tt534', 'link535')" onMouseOut="HideTip('tt534')" class=ISymbol>text</a>, <span class=IParent>Title</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title.textAlign" id=link536 onMouseOver="ShowTip(event, 'tt535', 'link536')" onMouseOut="HideTip('tt535')" class=ISymbol>textAlign</a>, <span class=IParent>Title</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>textColor</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.textColor" id=link537 onMouseOver="ShowTip(event, 'tt536', 'link537')" onMouseOut="HideTip('tt536')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.textColor" id=link538 onMouseOver="ShowTip(event, 'tt537', 'link538')" onMouseOut="HideTip('tt537')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.textColor" id=link539 onMouseOver="ShowTip(event, 'tt538', 'link539')" onMouseOut="HideTip('tt538')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.textColor" id=link540 onMouseOver="ShowTip(event, 'tt539', 'link540')" onMouseOut="HideTip('tt539')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.textColor" id=link541 onMouseOver="ShowTip(event, 'tt540', 'link541')" onMouseOut="HideTip('tt540')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.themes" id=link542 onMouseOver="ShowTip(event, 'tt541', 'link542')" onMouseOut="HideTip('tt541')" class=ISymbol>themes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.thickness" id=link543 onMouseOver="ShowTip(event, 'tt542', 'link543')" onMouseOut="HideTip('tt542')" class=ISymbol>thickness</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickColor" id=link544 onMouseOver="ShowTip(event, 'tt543', 'link544')" onMouseOut="HideTip('tt543')" class=ISymbol>tickColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickInset</span><div class=ISubIndex><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickInset" id=link545 onMouseOver="ShowTip(event, 'tt544', 'link545')" onMouseOut="HideTip('tt544')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.tickInset" id=link546 onMouseOver="ShowTip(event, 'tt545', 'link546')" onMouseOut="HideTip('tt545')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickInterval" id=link547 onMouseOver="ShowTip(event, 'tt546', 'link547')" onMouseOut="HideTip('tt546')" class=ISymbol>tickInterval</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.tickLength" id=link548 onMouseOver="ShowTip(event, 'tt547', 'link548')" onMouseOut="HideTip('tt547')" class=ISymbol>tickLength</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.tickMode" id=link549 onMouseOver="ShowTip(event, 'tt548', 'link549')" onMouseOut="HideTip('tt548')" class=ISymbol>tickMode</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickOptions" id=link550 onMouseOver="ShowTip(event, 'tt549', 'link550')" onMouseOut="HideTip('tt549')" class=ISymbol>tickOptions</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickPadding" id=link551 onMouseOver="ShowTip(event, 'tt550', 'link551')" onMouseOut="HideTip('tt550')" class=ISymbol>tickPadding</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickRenderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.tickRenderer" id=link552 onMouseOver="ShowTip(event, 'tt551', 'link552')" onMouseOut="HideTip('tt551')" class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickRenderer" id=link553 onMouseOver="ShowTip(event, 'tt552', 'link553')" onMouseOut="HideTip('tt552')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickRenderer" id=link554 onMouseOver="ShowTip(event, 'tt553', 'link554')" onMouseOut="HideTip('tt553')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>ticks</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ticks" id=link555 onMouseOver="ShowTip(event, 'tt554', 'link555')" onMouseOut="HideTip('tt554')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.ticks" id=link556 onMouseOver="ShowTip(event, 'tt555', 'link556')" onMouseOut="HideTip('tt555')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickSpacing</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickSpacing" id=link557 onMouseOver="ShowTip(event, 'tt556', 'link557')" onMouseOut="HideTip('tt556')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickSpacing" id=link558 onMouseOver="ShowTip(event, 'tt557', 'link558')" onMouseOut="HideTip('tt557')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.title" id=link559 onMouseOver="ShowTip(event, 'tt558', 'link559')" onMouseOut="HideTip('tt558')" class=ISymbol>title</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title" id=link560 onMouseOver="ShowTip(event, 'tt559', 'link560')" onMouseOut="HideTip('tt559')" class=ISymbol>Title</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipAxes" id=link561 onMouseOver="ShowTip(event, 'tt560', 'link561')" onMouseOut="HideTip('tt560')" class=ISymbol>tooltipAxes</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipAxisGroups" id=link562 onMouseOver="ShowTip(event, 'tt561', 'link562')" onMouseOut="HideTip('tt561')" class=ISymbol>tooltipAxisGroups</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipFadeSpeed</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFadeSpeed" id=link563 onMouseOver="ShowTip(event, 'tt562', 'link563')" onMouseOut="HideTip('tt562')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFadeSpeed" id=link564 onMouseOver="ShowTip(event, 'tt563', 'link564')" onMouseOut="HideTip('tt563')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipFormatString</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFormatString" id=link565 onMouseOver="ShowTip(event, 'tt564', 'link565')" onMouseOut="HideTip('tt564')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipFormatString" id=link566 onMouseOver="ShowTip(event, 'tt565', 'link566')" onMouseOut="HideTip('tt565')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFormatString" id=link567 onMouseOver="ShowTip(event, 'tt566', 'link567')" onMouseOut="HideTip('tt566')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipLocation</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipLocation" id=link568 onMouseOver="ShowTip(event, 'tt567', 'link568')" onMouseOut="HideTip('tt567')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipLocation" id=link569 onMouseOver="ShowTip(event, 'tt568', 'link569')" onMouseOut="HideTip('tt568')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipLocation" id=link570 onMouseOver="ShowTip(event, 'tt569', 'link570')" onMouseOut="HideTip('tt569')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipOffset</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipOffset" id=link571 onMouseOver="ShowTip(event, 'tt570', 'link571')" onMouseOut="HideTip('tt570')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipOffset" id=link572 onMouseOver="ShowTip(event, 'tt571', 'link572')" onMouseOut="HideTip('tt571')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipOffset" id=link573 onMouseOver="ShowTip(event, 'tt572', 'link573')" onMouseOut="HideTip('tt572')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.transposedData" id=link574 onMouseOver="ShowTip(event, 'tt573', 'link574')" onMouseOut="HideTip('tt573')" class=ISymbol>transposedData</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.type" id=link575 onMouseOver="ShowTip(event, 'tt574', 'link575')" onMouseOut="HideTip('tt574')" class=ISymbol>type</a>, <span class=IParent>$.jqplot.<wbr>Trendline</span></td></tr><tr><td class=IHeading><a name="U"></a>U</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.upBodyColor" id=link576 onMouseOver="ShowTip(event, 'tt575', 'link576')" onMouseOut="HideTip('tt575')" class=ISymbol>upBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Usage" id=link577 onMouseOver="ShowTip(event, 'tt576', 'link577')" onMouseOut="HideTip('tt576')" class=ISymbol>Usage</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>useAxesFormatters</span><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.useAxesFormatters" id=link578 onMouseOver="ShowTip(event, 'tt577', 'link578')" onMouseOut="HideTip('tt577')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.useAxesFormatters" id=link579 onMouseOver="ShowTip(event, 'tt578', 'link579')" onMouseOut="HideTip('tt578')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.useNegativeColors" id=link580 onMouseOver="ShowTip(event, 'tt579', 'link580')" onMouseOut="HideTip('tt579')" class=ISymbol>useNegativeColors</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.useSeriesColor" id=link581 onMouseOver="ShowTip(event, 'tt580', 'link581')" onMouseOut="HideTip('tt580')" class=ISymbol>useSeriesColor</a>, <span class=IParent>Axis</span></td></tr><tr><td class=IHeading><a name="V"></a>V</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.varyBarColor" id=link582 onMouseOver="ShowTip(event, 'tt581', 'link582')" onMouseOut="HideTip('tt581')" class=ISymbol>varyBarColor</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.varyBlockColors" id=link583 onMouseOver="ShowTip(event, 'tt582', 'link583')" onMouseOut="HideTip('tt582')" class=ISymbol>varyBlockColors</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.varyBubbleColors" id=link584 onMouseOver="ShowTip(event, 'tt583', 'link584')" onMouseOut="HideTip('tt583')" class=ISymbol>varyBubbleColors</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Version" id=link585 onMouseOver="ShowTip(event, 'tt584', 'link585')" onMouseOut="HideTip('tt584')" class=ISymbol>Version</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#VerticalLine" id=link586 onMouseOver="ShowTip(event, 'tt585', 'link586')" onMouseOut="HideTip('tt585')" class=ISymbol>VerticalLine</a></td></tr><tr><td class=IHeading><a name="W"></a>W</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.waterfall" id=link587 onMouseOver="ShowTip(event, 'tt586', 'link587')" onMouseOut="HideTip('tt586')" class=ISymbol>waterfall</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.wickColor" id=link588 onMouseOver="ShowTip(event, 'tt587', 'link588')" onMouseOut="HideTip('tt587')" class=ISymbol>wickColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.widthRatio" id=link589 onMouseOver="ShowTip(event, 'tt588', 'link589')" onMouseOut="HideTip('tt588')" class=ISymbol>widthRatio</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></td></tr><tr><td class=IHeading><a name="X"></a>X</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>xaxis</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.xaxis" id=link590 onMouseOver="ShowTip(event, 'tt589', 'link590')" onMouseOut="HideTip('tt589')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.xaxis" id=link591 onMouseOver="ShowTip(event, 'tt590', 'link591')" onMouseOut="HideTip('tt590')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmax" id=link592 onMouseOver="ShowTip(event, 'tt591', 'link592')" onMouseOut="HideTip('tt591')" class=ISymbol>xmax</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmin" id=link593 onMouseOver="ShowTip(event, 'tt592', 'link593')" onMouseOut="HideTip('tt592')" class=ISymbol>xmin</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.xoffset" id=link594 onMouseOver="ShowTip(event, 'tt593', 'link594')" onMouseOut="HideTip('tt593')" class=ISymbol>xoffset</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.xpadding" id=link595 onMouseOver="ShowTip(event, 'tt594', 'link595')" onMouseOut="HideTip('tt594')" class=ISymbol>xpadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=IHeading><a name="Y"></a>Y</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.y" id=link596 onMouseOver="ShowTip(event, 'tt595', 'link596')" onMouseOut="HideTip('tt595')" class=ISymbol>y</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>yaxis</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.yaxis" id=link597 onMouseOver="ShowTip(event, 'tt596', 'link597')" onMouseOut="HideTip('tt596')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.yaxis" id=link598 onMouseOver="ShowTip(event, 'tt597', 'link598')" onMouseOut="HideTip('tt597')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.yoffset" id=link599 onMouseOver="ShowTip(event, 'tt598', 'link599')" onMouseOut="HideTip('tt598')" class=ISymbol>yoffset</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.ypadding" id=link600 onMouseOver="ShowTip(event, 'tt599', 'link600')" onMouseOut="HideTip('tt599')" class=ISymbol>ypadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.yvalues" id=link601 onMouseOver="ShowTip(event, 'tt600', 'link601')" onMouseOut="HideTip('tt600')" class=ISymbol>yvalues</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=IHeading><a name="Z"></a>Z</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.zoom" id=link602 onMouseOver="ShowTip(event, 'tt601', 'link602')" onMouseOut="HideTip('tt601')" class=ISymbol>zoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy" id=link603 onMouseOver="ShowTip(event, 'tt602', 'link603')" onMouseOut="HideTip('tt602')" class=ISymbol>zoomProxy</a>, <span class=IParent>$.jqplot.<wbr>Cursor.$.jqplot.<wbr>Cursor</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt534"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.text = text</td></tr></table></blockquote>text of the title;</div></div><div class=CToolTip id="tt535"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textAlign</td></tr></table></blockquote>css text-align spec for the text.</div></div><div class=CToolTip id="tt536"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt537"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt538"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt539"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the legend text.</div></div><div class=CToolTip id="tt540"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the text.</div></div><div class=CToolTip id="tt541"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.themes = {}</td></tr></table></blockquote>hash of themes managed by the theme engine. </div></div><div class=CToolTip id="tt542"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.thickness = null</td></tr></table></blockquote>thickness of the donut, auto computed by default Overridden by if innerDiameter is specified.</div></div><div class=CToolTip id="tt543"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickColor = &quot;989898&quot;</td></tr></table></blockquote>color of the tick marks around the gauge.</div></div><div class=CToolTip id="tt544"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt545"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt546"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInterval</td></tr></table></blockquote>number of units between ticks. </div></div><div class=CToolTip id="tt547"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickLength = 'auto'</td></tr></table></blockquote>length of the line in pixels indicating open and close price. </div></div><div class=CToolTip id="tt548"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickMode</td></tr></table></blockquote>How to space the ticks on the axis. </div></div><div class=CToolTip id="tt549"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickOptions = {}</td></tr></table></blockquote>Options that will be passed to the tickRenderer, see $.jqplot.AxisTickRenderer options.</div></div><div class=CToolTip id="tt550"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickPadding = null</td></tr></table></blockquote>padding of the tick marks to the outer ring and the tick labels to marks. </div></div><div class=CToolTip id="tt551"><div class=CProperty>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer. </div></div><div class=CToolTip id="tt552"><div class=CProperty>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer. </div></div><div class=CToolTip id="tt553"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickRenderer = $.jqplot.AxisTickRenderer</td></tr></table></blockquote>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer.</div></div><div class=CToolTip id="tt554"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>Array of tick values. </div></div><div class=CToolTip id="tt555"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis. </div></div><div class=CToolTip id="tt556"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 30</td></tr></table></blockquote>Degrees between ticks. </div></div><div class=CToolTip id="tt557"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 75</td></tr></table></blockquote>Approximate pixel spacing between ticks on graph. </div></div><div class=CToolTip id="tt558"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.title = new Title()</td></tr></table></blockquote>Title object. </div></div><div class=CToolTip id="tt559"><div class=CClass>Plot Title object. </div></div><div class=CToolTip id="tt560"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxes = 'both'</td></tr></table></blockquote>Which axes to display in tooltip, &lsquo;x&rsquo;, &lsquo;y&rsquo; or &lsquo;both&rsquo;, &lsquo;xy&rsquo; or &lsquo;yx&rsquo; &lsquo;both&rsquo; and &lsquo;xy&rsquo; are equivalent, &lsquo;yx&rsquo; reverses order of labels.</div></div><div class=CToolTip id="tt561"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxisGroups = []</td></tr></table></blockquote>Show position for the specified axes. </div></div><div class=CToolTip id="tt562"><div class=CProperty>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</div></div><div class=CToolTip id="tt563"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFadeSpeed = &quot;fast&quot;</td></tr></table></blockquote>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</div></div><div class=CToolTip id="tt564"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>tooltipFormatString: '%d, %d' }</td></tr></table></blockquote>Format string passed the x and y values of the cursor on the line. </div></div><div class=CToolTip id="tt565"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.4P, %.4P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt566"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.5P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt567"><div class=CProperty>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</div></div><div class=CToolTip id="tt568"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'se'</td></tr></table></blockquote>Where to position tooltip. </div></div><div class=CToolTip id="tt569"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'nw'</td></tr></table></blockquote>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</div></div><div class=CToolTip id="tt570"><div class=CProperty>Pixel offset of tooltip from the highlight.</div></div><div class=CToolTip id="tt571"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 6</td></tr></table></blockquote>Pixel offset of tooltip from the grid boudaries or cursor center.</div></div><div class=CToolTip id="tt572"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 2</td></tr></table></blockquote>Pixel offset of tooltip from the highlight.</div></div><div class=CToolTip id="tt573"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.transposedData = true</td></tr></table></blockquote>NOT IMPLEMENTED YET. </div></div><div class=CToolTip id="tt574"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.type = 'linear'</td></tr></table></blockquote>Either &lsquo;exponential&rsquo;, &lsquo;exp&rsquo;, or &lsquo;linear&rsquo;.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt575"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.upBodyColor = null</td></tr></table></blockquote>Color of candlestick body of an &ldquo;up&rdquo; day. </div></div><div class=CToolTip id="tt576"><div class=CGeneric>See jqPlot Usage</div></div><div class=CToolTip id="tt577"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt578"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt579"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useNegativeColors = true</td></tr></table></blockquote>true to color negative values differently in filled and bar charts.</div></div><div class=CToolTip id="tt580"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useSeriesColor = false</td></tr></table></blockquote>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt581"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBarColor = false</td></tr></table></blockquote>true to color each bar of a series separately rather than have every bar of a given series the same color. </div></div><div class=CToolTip id="tt582"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBlockColors = false</td></tr></table></blockquote>true to vary the color of each block in this series according to the seriesColors array. </div></div><div class=CToolTip id="tt583"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBubbleColors = true</td></tr></table></blockquote>True to vary the color of each bubble in this series according to the seriesColors array. </div></div><div class=CToolTip id="tt584"><div class=CGeneric>version: 1.0.4 revision: 1121</div></div><div class=CToolTip id="tt585"><div class=CClass>A straight vertical line.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt586"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.waterfall = false</td></tr></table></blockquote>true to enable waterfall plot.</div></div><div class=CToolTip id="tt587"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.wickColor = null</td></tr></table></blockquote>color of the hi-lo line thorugh the candlestick body. </div></div><div class=CToolTip id="tt588"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.widthRatio = 0.2</td></tr></table></blockquote>The ratio of the width of the top of the funnel to the bottom. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt589"><div class=CProperty>X axis to use for positioning/scaling the line.</div></div><div class=CToolTip id="tt590"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xaxis = 'xaxis'</td></tr></table></blockquote>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</div></div><div class=CToolTip id="tt591"><div class=CProperty>x value for the end of the line, null to scale to axis max.</div></div><div class=CToolTip id="tt592"><div class=CProperty>x value for the start of the line, null to scale to axis min.</div></div><div class=CToolTip id="tt593"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt594"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xpadding = 6</td></tr></table></blockquote>horizontal padding in pixels between point and label</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt595"><div class=CProperty>y value to position the line</div></div><div class=CToolTip id="tt596"><div class=CProperty>Y axis to use for positioning/scaling the line.</div></div><div class=CToolTip id="tt597"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yaxis = 'yaxis'</td></tr></table></blockquote>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</div></div><div class=CToolTip id="tt598"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt599"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ypadding = 6</td></tr></table></blockquote>vertical padding in pixels between point and label</div></div><div class=CToolTip id="tt600"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yvalues = 1</td></tr></table></blockquote>Number of y values to expect in the data point array. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt601"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.zoom = false</td></tr></table></blockquote>Enable plot zooming.</div></div><div class=CToolTip id="tt602"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>$.jqplot.Cursor.zoomProxy = function(</td><td class=PParameter nowrap>targetPlot,</td></tr><tr><td></td><td class=PParameter nowrap>controllerPlot</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>links targetPlot to controllerPlot so that plot zooming of targetPlot will be controlled by zooming on the controllerPlot. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex id=MSelected>Everything</div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Hooks.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Hooks.html
deleted file mode 100644
index 8b1a49f5..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Hooks.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Hook Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Hook Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; B &middot; C &middot; D &middot; <a href="#E">E</a> &middot; F &middot; G &middot; H &middot; I &middot; <a href="#J">J</a> &middot; K &middot; L &middot; M &middot; N &middot; O &middot; <a href="#P">P</a> &middot; Q &middot; R &middot; S &middot; T &middot; U &middot; V &middot; W &middot; X &middot; Y &middot; Z</div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.addLegendRowHooks" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>addLegendRowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.eventListenerHooks" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>eventListenerHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=IHeading><a name="J"></a>J</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.jqPlot_Pugin_Hooks" class=ISymbol>jqPlot Pugin Hooks</a>, <span class=IParent>$.jqplot</span></td></tr><tr><td class=IHeading><a name="P"></a>P</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawHooks" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>postDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesHooks" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=ISymbol>postDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesShadowHooks" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=ISymbol>postDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postInitHooks" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=ISymbol>postInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseOptionsHooks" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>postParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseSeriesOptionsHooks" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>postParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postSeriesInitHooks" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>postSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawHooks" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>preDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawLegendHooks" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>preDrawLegendHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesHooks" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>preDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesShadowHooks" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>preDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preInitHooks" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>preInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseOptionsHooks" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>preParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseSeriesOptionsHooks" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=ISymbol>preParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preSeriesInitHooks" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=ISymbol>preSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CHook>called at the end of legend draw, so plugins can add rows to the legend table.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt2"><div class=CHook>called at the end of plot drawing, binds listeners to the event canvas which lays on top of the grid area.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt3"><div class=CHook>called after plot draw.</div></div><div class=CToolTip id="tt4"><div class=CHook>called after each series is drawn.</div></div><div class=CToolTip id="tt5"><div class=CHook>called after series shadows are drawn.</div></div><div class=CToolTip id="tt6"><div class=CHook>called after initialization.</div></div><div class=CToolTip id="tt7"><div class=CHook>called after user options are parsed.</div></div><div class=CToolTip id="tt8"><div class=CHook>called after series related options are parsed.</div></div><div class=CToolTip id="tt9"><div class=CHook>called after series is initialized.</div></div><div class=CToolTip id="tt10"><div class=CHook>called before plot draw.</div></div><div class=CToolTip id="tt11"><div class=CHook>called before the legend is drawn.</div></div><div class=CToolTip id="tt12"><div class=CHook>called before each series is drawn.</div></div><div class=CToolTip id="tt13"><div class=CHook>called before series shadows are drawn.</div></div><div class=CToolTip id="tt14"><div class=CHook>called before initialization.</div></div><div class=CToolTip id="tt15"><div class=CHook>called before user options are parsed.</div></div><div class=CToolTip id="tt16"><div class=CHook>called before series related options are parsed.</div></div><div class=CToolTip id="tt17"><div class=CHook>called before series is initialized.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Hooks</div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties.html
deleted file mode 100644
index 24ad3fdf..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="#A">A</a> &middot; <a href="#B">B</a> &middot; <a href="#C">C</a> &middot; <a href="Properties2.html#D">D</a> &middot; <a href="Properties2.html#E">E</a> &middot; <a href="Properties2.html#F">F</a> &middot; <a href="Properties3.html#G">G</a> &middot; <a href="Properties3.html#H">H</a> &middot; <a href="Properties3.html#I">I</a> &middot; J &middot; K &middot; <a href="Properties3.html#L">L</a> &middot; <a href="Properties4.html#M">M</a> &middot; <a href="Properties4.html#N">N</a> &middot; <a href="Properties4.html#O">O</a> &middot; <a href="Properties4.html#P">P</a> &middot; Q &middot; <a href="Properties4.html#R">R</a> &middot; <a href="Properties5.html#S">S</a> &middot; <a href="Properties6.html#T">T</a> &middot; <a href="Properties6.html#U">U</a> &middot; <a href="Properties6.html#V">V</a> &middot; <a href="Properties6.html#W">W</a> &middot; <a href="Properties6.html#X">X</a> &middot; <a href="Properties6.html#Y">Y</a> &middot; <a href="Properties6.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="A"></a>A</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.activeTheme" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')" class=ISymbol>activeTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.alignTicks" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')" class=ISymbol>alignTicks</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.alpha" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')" class=ISymbol>alpha</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>angle</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.angle" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.angle" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.angle" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')" class=IParent>$.jqplot.<wbr>shadowRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animate" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')" class=ISymbol>animate</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animateReplot" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')" class=ISymbol>animateReplot</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.autoscale" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')" class=ISymbol>autoscale</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleBubbles" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')" class=ISymbol>autoscaleBubbles</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleMultiplier" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')" class=ISymbol>autoscaleMultiplier</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscalePointsFactor" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')" class=ISymbol>autoscalePointsFactor</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axes" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')" class=ISymbol>axes</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axesDefaults" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')" class=ISymbol>axesDefaults</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.axisDefaults" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')" class=ISymbol>axisDefaults</a>, <span class=IParent>$.jqplot.<wbr>LogAxisRenderer</span></td></tr><tr><td class=IHeading><a name="B"></a>B</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>background</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.background" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Grid.background" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.background" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bandData" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')" class=ISymbol>bandData</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barDirection" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')" class=ISymbol>barDirection</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelOptions" id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')" class=ISymbol>barLabelOptions</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelRenderer" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')" class=ISymbol>barLabelRenderer</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabels" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')" class=ISymbol>barLabels</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barMargin" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')" class=ISymbol>barMargin</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>barPadding</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#barPadding" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barPadding" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')" class=IParent>$.jqplot.<wbr>BarRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barWidth" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')" class=ISymbol>barWidth</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>baselineColor</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineColor" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineColor" id=link29 onMouseOver="ShowTip(event, 'tt29', 'link29')" onMouseOut="HideTip('tt29')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineColor" id=link30 onMouseOver="ShowTip(event, 'tt30', 'link30')" onMouseOut="HideTip('tt30')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>baselineWidth</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineWidth" id=link31 onMouseOver="ShowTip(event, 'tt31', 'link31')" onMouseOut="HideTip('tt31')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineWidth" id=link32 onMouseOver="ShowTip(event, 'tt32', 'link32')" onMouseOut="HideTip('tt32')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineWidth" id=link33 onMouseOver="ShowTip(event, 'tt33', 'link33')" onMouseOut="HideTip('tt33')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.bodyWidth" id=link34 onMouseOver="ShowTip(event, 'tt34', 'link34')" onMouseOut="HideTip('tt34')" class=ISymbol>bodyWidth</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.border" id=link35 onMouseOver="ShowTip(event, 'tt35', 'link35')" onMouseOut="HideTip('tt35')" class=ISymbol>border</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>borderColor</span><div class=ISubIndex><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.borderColor" id=link36 onMouseOver="ShowTip(event, 'tt36', 'link36')" onMouseOut="HideTip('tt36')" class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-core-js.html#Axis.borderColor" id=link37 onMouseOver="ShowTip(event, 'tt37', 'link37')" onMouseOut="HideTip('tt37')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderColor" id=link38 onMouseOver="ShowTip(event, 'tt38', 'link38')" onMouseOut="HideTip('tt38')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>borderWidth</span><div class=ISubIndex><a href="../files/jqplot-core-js.html#Axis.borderWidth" id=link39 onMouseOver="ShowTip(event, 'tt39', 'link39')" onMouseOut="HideTip('tt39')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderWidth" id=link40 onMouseOver="ShowTip(event, 'tt40', 'link40')" onMouseOut="HideTip('tt40')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.breakOnNull" id=link41 onMouseOver="ShowTip(event, 'tt41', 'link41')" onMouseOut="HideTip('tt41')" class=ISymbol>breakOnNull</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakPoints" id=link42 onMouseOver="ShowTip(event, 'tt42', 'link42')" onMouseOut="HideTip('tt42')" class=ISymbol>breakPoints</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakTickLabel" id=link43 onMouseOver="ShowTip(event, 'tt43', 'link43')" onMouseOut="HideTip('tt43')" class=ISymbol>breakTickLabel</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.bringSeriesToFront" id=link44 onMouseOver="ShowTip(event, 'tt44', 'link44')" onMouseOut="HideTip('tt44')" class=ISymbol>bringSeriesToFront</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleAlpha" id=link45 onMouseOver="ShowTip(event, 'tt45', 'link45')" onMouseOut="HideTip('tt45')" class=ISymbol>bubbleAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleGradients" id=link46 onMouseOver="ShowTip(event, 'tt46', 'link46')" onMouseOut="HideTip('tt46')" class=ISymbol>bubbleGradients</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=IHeading><a name="C"></a>C</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.candleStick" id=link47 onMouseOver="ShowTip(event, 'tt47', 'link47')" onMouseOut="HideTip('tt47')" class=ISymbol>candleStick</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.clearRect" id=link48 onMouseOver="ShowTip(event, 'tt48', 'link48')" onMouseOut="HideTip('tt48')" class=ISymbol>clearRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.clickReset" id=link49 onMouseOver="ShowTip(event, 'tt49', 'link49')" onMouseOut="HideTip('tt49')" class=ISymbol>clickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.closeColor" id=link50 onMouseOver="ShowTip(event, 'tt50', 'link50')" onMouseOut="HideTip('tt50')" class=ISymbol>closeColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>color</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.color" id=link51 onMouseOver="ShowTip(event, 'tt51', 'link51')" onMouseOut="HideTip('tt51')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.color" id=link52 onMouseOver="ShowTip(event, 'tt52', 'link52')" onMouseOut="HideTip('tt52')" class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.color" id=link53 onMouseOver="ShowTip(event, 'tt53', 'link53')" onMouseOut="HideTip('tt53')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.color" id=link54 onMouseOver="ShowTip(event, 'tt54', 'link54')" onMouseOut="HideTip('tt54')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.color" id=link55 onMouseOver="ShowTip(event, 'tt55', 'link55')" onMouseOut="HideTip('tt55')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.color" id=link56 onMouseOver="ShowTip(event, 'tt56', 'link56')" onMouseOut="HideTip('tt56')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainOutsideZoom" id=link57 onMouseOver="ShowTip(event, 'tt57', 'link57')" onMouseOut="HideTip('tt57')" class=ISymbol>constrainOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.constrainSmoothing" id=link58 onMouseOver="ShowTip(event, 'tt58', 'link58')" onMouseOut="HideTip('tt58')" class=ISymbol>constrainSmoothing</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.constrainTo" id=link59 onMouseOver="ShowTip(event, 'tt59', 'link59')" onMouseOut="HideTip('tt59')" class=ISymbol>constrainTo</a>, <span class=IParent>$.jqplot.<wbr>Dragable</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainZoomTo" id=link60 onMouseOver="ShowTip(event, 'tt60', 'link60')" onMouseOut="HideTip('tt60')" class=ISymbol>constrainZoomTo</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.css" id=link61 onMouseOver="ShowTip(event, 'tt61', 'link61')" onMouseOut="HideTip('tt61')" class=ISymbol>css</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.cursorLegendFormatString" id=link62 onMouseOver="ShowTip(event, 'tt62', 'link62')" onMouseOut="HideTip('tt62')" class=ISymbol>cursorLegendFormatString</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt1"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.activeTheme=null</td></tr></table></blockquote>Pointer to currently active theme</div></div><div class=CToolTip id="tt2"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alignTicks = false</td></tr></table></blockquote>true to align tick marks across opposed axes such as from the y2axis to yaxis.</div></div><div class=CToolTip id="tt3"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.alpha = 0.07</td></tr></table></blockquote>alpha transparency of shadow stroke.</div></div><div class=CToolTip id="tt4"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt5"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 0</td></tr></table></blockquote>angle of text, measured clockwise from x axis.</div></div><div class=CToolTip id="tt6"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.angle = 45</td></tr></table></blockquote>Angle of the shadow in degrees. </div></div><div class=CToolTip id="tt7"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animate = false</td></tr></table></blockquote>True to animate the series on initial plot draw (renderer dependent). </div></div><div class=CToolTip id="tt8"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.animateReplot = false</td></tr></table></blockquote>True to animate series after a call to the replot() method. </div></div><div class=CToolTip id="tt9"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscale = false</td></tr></table></blockquote>DEPRECATED the default scaling algorithm produces superior results.</div></div><div class=CToolTip id="tt10"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleBubbles = true</td></tr></table></blockquote>True to scale the bubble radius based on plot size. </div></div><div class=CToolTip id="tt11"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscaleMultiplier = 1.0</td></tr></table></blockquote>Multiplier the bubble size if autoscaleBubbles is true.</div></div><div class=CToolTip id="tt12"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.autoscalePointsFactor = -0.07</td></tr></table></blockquote>Factor which decreases bubble size based on how many bubbles on on the chart. </div></div><div class=CToolTip id="tt13"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.axes = {xaxis: new Axis('xaxis'), yaxis: new Axis('yaxis'), x2axis: new Axis('x2axis'), y2axis: new Axis('y2axis'), y3axis: new Axis('y3axis'), y4axis: new Axis('y4axis'), y5axis: new Axis('y5axis'), y6axis: new Axis('y6axis'), y7axis: new Axis('y7axis'), y8axis: new Axis('y8axis'), y9axis: new Axis('y9axis'), yMidAxis: new Axis('yMidAxis')}</td></tr></table></blockquote>up to 4 axes are supported, each with it&rsquo;s own options, See Axis for axis specific options.</div></div><div class=CToolTip id="tt14"><div class=CProperty>default options that will be applied to all axes. </div></div><div class=CToolTip id="tt15"><div class=CProperty>Default properties which will be applied directly to the series.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt16"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = &quot;#efefef&quot;</td></tr></table></blockquote>background color of the inside of the gauge.</div></div><div class=CToolTip id="tt17"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background = '#fffdf6'</td></tr></table></blockquote>css spec for the background color.</div></div><div class=CToolTip id="tt18"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.background</td></tr></table></blockquote>css spec for the background of the legend box.</div></div><div class=CToolTip id="tt19"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.bandData = []</td></tr></table></blockquote>Data used to draw error bands or confidence intervals above/below a line.</div></div><div class=CToolTip id="tt20"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barDirection = 'vertical'</td></tr></table></blockquote>&lsquo;vertical&rsquo; = up and down bars, &lsquo;horizontal&rsquo; = side to side bars</div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelOptions = {}</td></tr></table></blockquote>options object to pass to the bar label renderer.</div></div><div class=CToolTip id="tt22"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>renderer to use to draw labels under each bar.</div></div><div class=CToolTip id="tt23"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barLabels = this.barLabels || []</td></tr></table></blockquote>array of labels to put under each bar.</div></div><div class=CToolTip id="tt24"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barMargin = 10</td></tr></table></blockquote>Number of pixels between groups of bars at adjacent axis values.</div></div><div class=CToolTip id="tt25"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 10</td></tr></table></blockquote></div></div><div class=CToolTip id="tt26"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barPadding = 8</td></tr></table></blockquote>Number of pixels between adjacent bars at the same axis value.</div></div><div class=CToolTip id="tt27"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.barWidth = null</td></tr></table></blockquote>Width of the bar in pixels (auto by devaul). </div></div><div class=CToolTip id="tt28"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt29"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt30"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineColor = null</td></tr></table></blockquote>CSS color spec for the baseline.</div></div><div class=CToolTip id="tt31"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt32"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt33"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.baselineWidth = null</td></tr></table></blockquote>width of the baseline in pixels.</div></div><div class=CToolTip id="tt34"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bodyWidth = 'auto'</td></tr></table></blockquote>width of the candlestick body in pixels. </div></div><div class=CToolTip id="tt35"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.border</td></tr></table></blockquote>css spec for the border around the legend box.</div></div><div class=CToolTip id="tt36"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the borders between areas on the chart</div></div><div class=CToolTip id="tt37"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = null</td></tr></table></blockquote>color of the border adjacent to the axis. </div></div><div class=CToolTip id="tt38"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderColor = '#999999'</td></tr></table></blockquote>css spec for the color of the grid border.</div></div><div class=CToolTip id="tt39"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = null</td></tr></table></blockquote>width of line stroked at the border of the axis. </div></div><div class=CToolTip id="tt40"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.borderWidth = 2.0</td></tr></table></blockquote>width of the border in pixels.</div></div><div class=CToolTip id="tt41"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakOnNull = false</td></tr></table></blockquote>Wether line segments should be be broken at null value. </div></div><div class=CToolTip id="tt42"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakPoints = null</td></tr></table></blockquote>EXPERIMENTAL!!&nbsp; </div></div><div class=CToolTip id="tt43"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.breakTickLabel = &quot;&amp;asymp</td></tr></table></blockquote>Label to use at the axis break if breakPoints are specified.</div></div><div class=CToolTip id="tt44"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bringSeriesToFront = false</td></tr></table></blockquote>This option requires jQuery 1.4+ True to bring the series of the highlighted point to the front of other series.</div></div><div class=CToolTip id="tt45"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleAlpha = 1.0</td></tr></table></blockquote>Alpha transparency to apply to all bubbles in this series.</div></div><div class=CToolTip id="tt46"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.bubbleGradients = false</td></tr></table></blockquote>True to color the bubbles with gradient fills instead of flat colors. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt47"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.candleStick = false</td></tr></table></blockquote>true to render chart as candleStick. </div></div><div class=CToolTip id="tt48"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clearRect = false</td></tr></table></blockquote>true to cear a rectangle.</div></div><div class=CToolTip id="tt49"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.clickReset = false</td></tr></table></blockquote>Will reset plot zoom if single click on plot without drag.</div></div><div class=CToolTip id="tt50"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.closeColor = null</td></tr></table></blockquote>color of the close price tick mark. </div></div><div class=CToolTip id="tt51"><div class=CProperty>color of the line</div></div><div class=CToolTip id="tt52"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>CSS color spec for the dragged point (and adjacent line segment or bar).</div></div><div class=CToolTip id="tt53"><div class=CProperty>color of lines at top and bottom of bands [default: series color].</div></div><div class=CToolTip id="tt54"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>color of marker. </div></div><div class=CToolTip id="tt55"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color = '#666666'</td></tr></table></blockquote>CSS color spec for the trend line. </div></div><div class=CToolTip id="tt56"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.color</td></tr></table></blockquote>css color spec for the series</div></div><div class=CToolTip id="tt57"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainOutsideZoom = true</td></tr></table></blockquote>True to limit actual zoom area to edges of grid, even when zooming outside of plot area. </div></div><div class=CToolTip id="tt58"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.constrainSmoothing = true</td></tr></table></blockquote>True to use a more accurate smoothing algorithm that will not overshoot any data points. </div></div><div class=CToolTip id="tt59"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainTo = 'none'</td></tr></table></blockquote>Constrain dragging motion to an axis or to none. </div></div><div class=CToolTip id="tt60"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.constrainZoomTo = 'none'</td></tr></table></blockquote>&lsquo;none&rsquo;, &lsquo;x&rsquo; or &lsquo;y&rsquo;</div></div><div class=CToolTip id="tt61"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'}</td></tr></table></blockquote>default css styles that will be applied to all data blocks. </div></div><div class=CToolTip id="tt62"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.cursorLegendFormatString = $.jqplot.Cursor.cursorLegendFormatString</td></tr></table></blockquote>Format string used in the cursor legend. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties2.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties2.html
deleted file mode 100644
index 60336a39..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties2.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="Properties.html#A">A</a> &middot; <a href="Properties.html#B">B</a> &middot; <a href="Properties.html#C">C</a> &middot; <a href="#D">D</a> &middot; <a href="#E">E</a> &middot; <a href="#F">F</a> &middot; <a href="Properties3.html#G">G</a> &middot; <a href="Properties3.html#H">H</a> &middot; <a href="Properties3.html#I">I</a> &middot; J &middot; K &middot; <a href="Properties3.html#L">L</a> &middot; <a href="Properties4.html#M">M</a> &middot; <a href="Properties4.html#N">N</a> &middot; <a href="Properties4.html#O">O</a> &middot; <a href="Properties4.html#P">P</a> &middot; Q &middot; <a href="Properties4.html#R">R</a> &middot; <a href="Properties5.html#S">S</a> &middot; <a href="Properties6.html#T">T</a> &middot; <a href="Properties6.html#U">U</a> &middot; <a href="Properties6.html#V">V</a> &middot; <a href="Properties6.html#W">W</a> &middot; <a href="Properties6.html#X">X</a> &middot; <a href="Properties6.html#Y">Y</a> &middot; <a href="Properties6.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="D"></a>D</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dashPattern</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.dashPattern" id=link63 onMouseOver="ShowTip(event, 'tt63', 'link63')" onMouseOut="HideTip('tt63')" class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.dashPattern" id=link64 onMouseOver="ShowTip(event, 'tt64', 'link64')" onMouseOut="HideTip('tt64')" class=IParent>DashedVerticalLine</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.data" id=link65 onMouseOver="ShowTip(event, 'tt65', 'link65')" onMouseOut="HideTip('tt65')" class=ISymbol>data</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelCenterOn" id=link66 onMouseOver="ShowTip(event, 'tt66', 'link66')" onMouseOut="HideTip('tt66')" class=ISymbol>dataLabelCenterOn</a>, <span class=IParent>$.jqplot.<wbr>PieRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelFormatString</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelFormatString" id=link67 onMouseOver="ShowTip(event, 'tt67', 'link67')" onMouseOut="HideTip('tt67')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelFormatString" id=link68 onMouseOver="ShowTip(event, 'tt68', 'link68')" onMouseOut="HideTip('tt68')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelFormatString" id=link69 onMouseOver="ShowTip(event, 'tt69', 'link69')" onMouseOut="HideTip('tt69')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelNudge</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelNudge" id=link70 onMouseOver="ShowTip(event, 'tt70', 'link70')" onMouseOut="HideTip('tt70')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelNudge" id=link71 onMouseOver="ShowTip(event, 'tt71', 'link71')" onMouseOut="HideTip('tt71')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelPositionFactor</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelPositionFactor" id=link72 onMouseOver="ShowTip(event, 'tt72', 'link72')" onMouseOut="HideTip('tt72')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelPositionFactor" id=link73 onMouseOver="ShowTip(event, 'tt73', 'link73')" onMouseOut="HideTip('tt73')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabels" id=link74 onMouseOver="ShowTip(event, 'tt74', 'link74')" onMouseOut="HideTip('tt74')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabels" id=link75 onMouseOver="ShowTip(event, 'tt75', 'link75')" onMouseOut="HideTip('tt75')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabels" id=link76 onMouseOver="ShowTip(event, 'tt76', 'link76')" onMouseOut="HideTip('tt76')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>dataLabelThreshold</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelThreshold" id=link77 onMouseOver="ShowTip(event, 'tt77', 'link77')" onMouseOut="HideTip('tt77')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelThreshold" id=link78 onMouseOver="ShowTip(event, 'tt78', 'link78')" onMouseOut="HideTip('tt78')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelThreshold" id=link79 onMouseOver="ShowTip(event, 'tt79', 'link79')" onMouseOut="HideTip('tt79')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRenderer" id=link80 onMouseOver="ShowTip(event, 'tt80', 'link80')" onMouseOut="HideTip('tt80')" class=ISymbol>dataRenderer</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRendererOptions" id=link81 onMouseOver="ShowTip(event, 'tt81', 'link81')" onMouseOut="HideTip('tt81')" class=ISymbol>dataRendererOptions</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.dblClickReset" id=link82 onMouseOver="ShowTip(event, 'tt82', 'link82')" onMouseOut="HideTip('tt82')" class=ISymbol>dblClickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.defaultAxisStart" id=link83 onMouseOver="ShowTip(event, 'tt83', 'link83')" onMouseOut="HideTip('tt83')" class=ISymbol>defaultAxisStart</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.depth" id=link84 onMouseOver="ShowTip(event, 'tt84', 'link84')" onMouseOut="HideTip('tt84')" class=ISymbol>depth</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>diameter</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.diameter" id=link85 onMouseOver="ShowTip(event, 'tt85', 'link85')" onMouseOut="HideTip('tt85')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.diameter" id=link86 onMouseOver="ShowTip(event, 'tt86', 'link86')" onMouseOut="HideTip('tt86')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.diameter" id=link87 onMouseOver="ShowTip(event, 'tt87', 'link87')" onMouseOut="HideTip('tt87')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#disableIEFading" id=link88 onMouseOver="ShowTip(event, 'tt88', 'link88')" onMouseOut="HideTip('tt88')" class=ISymbol>disableIEFading</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.disableStack" id=link89 onMouseOver="ShowTip(event, 'tt89', 'link89')" onMouseOut="HideTip('tt89')" class=ISymbol>disableStack</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.downBodyColor" id=link90 onMouseOver="ShowTip(event, 'tt90', 'link90')" onMouseOut="HideTip('tt90')" class=ISymbol>downBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>drawBaseline</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#drawBaseline" id=link91 onMouseOver="ShowTip(event, 'tt91', 'link91')" onMouseOut="HideTip('tt91')" class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.drawBaseline" id=link92 onMouseOver="ShowTip(event, 'tt92', 'link92')" onMouseOut="HideTip('tt92')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.drawBaseline" id=link93 onMouseOver="ShowTip(event, 'tt93', 'link93')" onMouseOut="HideTip('tt93')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.drawBaseline" id=link94 onMouseOver="ShowTip(event, 'tt94', 'link94')" onMouseOut="HideTip('tt94')" class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawBorder" id=link95 onMouseOver="ShowTip(event, 'tt95', 'link95')" onMouseOut="HideTip('tt95')" class=ISymbol>drawBorder</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawGridlines" id=link96 onMouseOver="ShowTip(event, 'tt96', 'link96')" onMouseOut="HideTip('tt96')" class=ISymbol>drawGridlines</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorGridlines" id=link97 onMouseOver="ShowTip(event, 'tt97', 'link97')" onMouseOut="HideTip('tt97')" class=ISymbol>drawMajorGridlines</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorTickMarks" id=link98 onMouseOver="ShowTip(event, 'tt98', 'link98')" onMouseOut="HideTip('tt98')" class=ISymbol>drawMajorTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorGridlines" id=link99 onMouseOver="ShowTip(event, 'tt99', 'link99')" onMouseOut="HideTip('tt99')" class=ISymbol>drawMinorGridlines</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorTickMarks" id=link100 onMouseOver="ShowTip(event, 'tt100', 'link100')" onMouseOut="HideTip('tt100')" class=ISymbol>drawMinorTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=IHeading><a name="E"></a>E</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.edgeTolerance" id=link101 onMouseOver="ShowTip(event, 'tt101', 'link101')" onMouseOut="HideTip('tt101')" class=ISymbol>edgeTolerance</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>enableFontSupport</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.enableFontSupport" id=link102 onMouseOver="ShowTip(event, 'tt102', 'link102')" onMouseOut="HideTip('tt102')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.enableFontSupport" id=link103 onMouseOver="ShowTip(event, 'tt103', 'link103')" onMouseOut="HideTip('tt103')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>escapeHtml</span><div class=ISubIndex><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.escapeHtml" id=link104 onMouseOver="ShowTip(event, 'tt104', 'link104')" onMouseOut="HideTip('tt104')" class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.escapeHtml" id=link105 onMouseOver="ShowTip(event, 'tt105', 'link105')" onMouseOut="HideTip('tt105')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.escapeHtml" id=link106 onMouseOver="ShowTip(event, 'tt106', 'link106')" onMouseOut="HideTip('tt106')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.escapeHtml" id=link107 onMouseOver="ShowTip(event, 'tt107', 'link107')" onMouseOut="HideTip('tt107')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>escapeHTML</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.escapeHTML" id=link108 onMouseOver="ShowTip(event, 'tt108', 'link108')" onMouseOut="HideTip('tt108')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.escapeHTML" id=link109 onMouseOver="ShowTip(event, 'tt109', 'link109')" onMouseOut="HideTip('tt109')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.escapeHTML" id=link110 onMouseOver="ShowTip(event, 'tt110', 'link110')" onMouseOut="HideTip('tt110')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr><tr><td class=IHeading><a name="F"></a>F</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fadeTooltip</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.fadeTooltip" id=link111 onMouseOver="ShowTip(event, 'tt111', 'link111')" onMouseOut="HideTip('tt111')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.fadeTooltip" id=link112 onMouseOver="ShowTip(event, 'tt112', 'link112')" onMouseOut="HideTip('tt112')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fill</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#fill" id=link113 onMouseOver="ShowTip(event, 'tt113', 'link113')" onMouseOut="HideTip('tt113')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.fill" id=link114 onMouseOver="ShowTip(event, 'tt114', 'link114')" onMouseOut="HideTip('tt114')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.fill" id=link115 onMouseOver="ShowTip(event, 'tt115', 'link115')" onMouseOut="HideTip('tt115')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fill" id=link116 onMouseOver="ShowTip(event, 'tt116', 'link116')" onMouseOut="HideTip('tt116')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.fill" id=link117 onMouseOver="ShowTip(event, 'tt117', 'link117')" onMouseOut="HideTip('tt117')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.fill" id=link118 onMouseOver="ShowTip(event, 'tt118', 'link118')" onMouseOut="HideTip('tt118')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fill" id=link119 onMouseOver="ShowTip(event, 'tt119', 'link119')" onMouseOut="HideTip('tt119')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.fill" id=link120 onMouseOver="ShowTip(event, 'tt120', 'link120')" onMouseOut="HideTip('tt120')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAlpha" id=link121 onMouseOver="ShowTip(event, 'tt121', 'link121')" onMouseOut="HideTip('tt121')" class=ISymbol>fillAlpha</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAndStroke" id=link122 onMouseOver="ShowTip(event, 'tt122', 'link122')" onMouseOut="HideTip('tt122')" class=ISymbol>fillAndStroke</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAxis" id=link123 onMouseOver="ShowTip(event, 'tt123', 'link123')" onMouseOut="HideTip('tt123')" class=ISymbol>fillAxis</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.fillBetween" id=link124 onMouseOver="ShowTip(event, 'tt124', 'link124')" onMouseOut="HideTip('tt124')" class=ISymbol>fillBetween</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fillColor</span><div class=ISubIndex><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fillColor" id=link125 onMouseOver="ShowTip(event, 'tt125', 'link125')" onMouseOut="HideTip('tt125')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-core-js.html#Series.fillColor" id=link126 onMouseOver="ShowTip(event, 'tt126', 'link126')" onMouseOut="HideTip('tt126')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillDownBody" id=link127 onMouseOver="ShowTip(event, 'tt127', 'link127')" onMouseOut="HideTip('tt127')" class=ISymbol>fillDownBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillRect" id=link128 onMouseOver="ShowTip(event, 'tt128', 'link128')" onMouseOut="HideTip('tt128')" class=ISymbol>fillRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillStyle" id=link129 onMouseOver="ShowTip(event, 'tt129', 'link129')" onMouseOut="HideTip('tt129')" class=ISymbol>fillStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToValue" id=link130 onMouseOver="ShowTip(event, 'tt130', 'link130')" onMouseOut="HideTip('tt130')" class=ISymbol>fillToValue</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToZero" id=link131 onMouseOver="ShowTip(event, 'tt131', 'link131')" onMouseOut="HideTip('tt131')" class=ISymbol>fillToZero</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillUpBody" id=link132 onMouseOver="ShowTip(event, 'tt132', 'link132')" onMouseOut="HideTip('tt132')" class=ISymbol>fillUpBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.followMouse" id=link133 onMouseOver="ShowTip(event, 'tt133', 'link133')" onMouseOut="HideTip('tt133')" class=ISymbol>followMouse</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontFamily</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontFamily" id=link134 onMouseOver="ShowTip(event, 'tt134', 'link134')" onMouseOut="HideTip('tt134')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontFamily" id=link135 onMouseOver="ShowTip(event, 'tt135', 'link135')" onMouseOut="HideTip('tt135')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontFamily" id=link136 onMouseOver="ShowTip(event, 'tt136', 'link136')" onMouseOut="HideTip('tt136')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.fontFamily" id=link137 onMouseOver="ShowTip(event, 'tt137', 'link137')" onMouseOut="HideTip('tt137')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontFamily" id=link138 onMouseOver="ShowTip(event, 'tt138', 'link138')" onMouseOut="HideTip('tt138')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontSize</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontSize" id=link139 onMouseOver="ShowTip(event, 'tt139', 'link139')" onMouseOut="HideTip('tt139')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontSize" id=link140 onMouseOver="ShowTip(event, 'tt140', 'link140')" onMouseOut="HideTip('tt140')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontSize" id=link141 onMouseOver="ShowTip(event, 'tt141', 'link141')" onMouseOut="HideTip('tt141')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.fontSize" id=link142 onMouseOver="ShowTip(event, 'tt142', 'link142')" onMouseOut="HideTip('tt142')" class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.fontSize" id=link143 onMouseOver="ShowTip(event, 'tt143', 'link143')" onMouseOut="HideTip('tt143')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontSize" id=link144 onMouseOver="ShowTip(event, 'tt144', 'link144')" onMouseOut="HideTip('tt144')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontStretch</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontStretch" id=link145 onMouseOver="ShowTip(event, 'tt145', 'link145')" onMouseOut="HideTip('tt145')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontStretch" id=link146 onMouseOver="ShowTip(event, 'tt146', 'link146')" onMouseOut="HideTip('tt146')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>fontWeight</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontWeight" id=link147 onMouseOver="ShowTip(event, 'tt147', 'link147')" onMouseOut="HideTip('tt147')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontWeight" id=link148 onMouseOver="ShowTip(event, 'tt148', 'link148')" onMouseOut="HideTip('tt148')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt0" id=link149 onMouseOver="ShowTip(event, 'tt149', 'link149')" onMouseOut="HideTip('tt149')" class=ISymbol>forceTickAt0</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt100" id=link150 onMouseOver="ShowTip(event, 'tt150', 'link150')" onMouseOut="HideTip('tt150')" class=ISymbol>forceTickAt100</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>formatString</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatString" id=link151 onMouseOver="ShowTip(event, 'tt151', 'link151')" onMouseOut="HideTip('tt151')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatString" id=link152 onMouseOver="ShowTip(event, 'tt152', 'link152')" onMouseOut="HideTip('tt152')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.formatString" id=link153 onMouseOver="ShowTip(event, 'tt153', 'link153')" onMouseOut="HideTip('tt153')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatString" id=link154 onMouseOver="ShowTip(event, 'tt154', 'link154')" onMouseOut="HideTip('tt154')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>formatter</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatter" id=link155 onMouseOver="ShowTip(event, 'tt155', 'link155')" onMouseOut="HideTip('tt155')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatter" id=link156 onMouseOver="ShowTip(event, 'tt156', 'link156')" onMouseOut="HideTip('tt156')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatter" id=link157 onMouseOver="ShowTip(event, 'tt157', 'link157')" onMouseOut="HideTip('tt157')" class=IParent>$.jqplot.<wbr>PointLabels</a></div></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt63"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><div class=CToolTip id="tt64"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>dashPattern: [8,8] }</td></tr></table></blockquote>Array of line, space settings in pixels. </div></div><div class=CToolTip id="tt65"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.data = []</td></tr></table></blockquote>user&rsquo;s data. </div></div><div class=CToolTip id="tt66"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelCenterOn = true</td></tr></table></blockquote>True to center the data label at its position. </div></div><div class=CToolTip id="tt67"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt68"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt69"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelFormatString = null</td></tr></table></blockquote>Format string for data labels. </div></div><div class=CToolTip id="tt70"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 0</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt71"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelNudge = 2</td></tr></table></blockquote>Number of pixels to slide the label away from (+) or toward (-) the center of the pie.</div></div><div class=CToolTip id="tt72"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.4</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt73"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelPositionFactor = 0.52</td></tr></table></blockquote>A Multiplier (0-1) of the pie radius which controls position of label on slice. </div></div><div class=CToolTip id="tt74"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt75"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt76"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabels = 'percent'</td></tr></table></blockquote>Either &lsquo;label&rsquo;, &lsquo;value&rsquo;, &lsquo;percent&rsquo; or an array of labels to place on the pie slices. </div></div><div class=CToolTip id="tt77"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt78"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote></div></div><div class=CToolTip id="tt79"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataLabelThreshold = 3</td></tr></table></blockquote>Threshhold in percentage (0-100) of pie area, below which no label will be displayed. </div></div><div class=CToolTip id="tt80"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRenderer</td></tr></table></blockquote>A callable which can be used to preprocess data passed into the plot. </div></div><div class=CToolTip id="tt81"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dataRendererOptions</td></tr></table></blockquote>Options that will be passed to the dataRenderer. </div></div><div class=CToolTip id="tt82"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.dblClickReset = true</td></tr></table></blockquote>Will reset plot zoom if double click on plot without drag.</div></div><div class=CToolTip id="tt83"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.defaultAxisStart = 1</td></tr></table></blockquote>1-D data series are internally converted into 2-D [x,y] data point arrays by jqPlot. </div></div><div class=CToolTip id="tt84"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.depth = 3</td></tr></table></blockquote>how many times the shadow is stroked. </div></div><div class=CToolTip id="tt85"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the donut, auto computed by default</div></div><div class=CToolTip id="tt86"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the meterGauge, auto computed by default</div></div><div class=CToolTip id="tt87"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.diameter = null</td></tr></table></blockquote>Outer diameter of the pie, auto computed by default</div></div><div class=CToolTip id="tt88"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableIEFading = true</td></tr></table></blockquote>true to toggle series with a show/hide method only and not allow fading in/out. </div></div><div class=CToolTip id="tt89"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.disableStack = false</td></tr></table></blockquote>true to not stack this series with other series in the plot. </div></div><div class=CToolTip id="tt90"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.downBodyColor = null</td></tr></table></blockquote>Color of candlestick body on a &ldquo;down&rdquo; day. </div></div><div class=CToolTip id="tt91"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt92"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt93"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt94"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBaseline = true</td></tr></table></blockquote>True to draw the axis baseline.</div></div><div class=CToolTip id="tt95"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawBorder = true</td></tr></table></blockquote>True to draw border around grid.</div></div><div class=CToolTip id="tt96"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawGridlines = true</td></tr></table></blockquote>wether to draw the gridlines on the plot.</div></div><div class=CToolTip id="tt97"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorGridlines = true</td></tr></table></blockquote>True to draw gridlines for major axis ticks.</div></div><div class=CToolTip id="tt98"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMajorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for major axis ticks.</div></div><div class=CToolTip id="tt99"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorGridlines = false</td></tr></table></blockquote>True to draw gridlines for minor ticks.</div></div><div class=CToolTip id="tt100"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.drawMinorTickMarks = true</td></tr></table></blockquote>True to draw tick marks for minor ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt101"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.edgeTolerance = -5</td></tr></table></blockquote>Number of pixels that the label must be away from an axis boundary in order to be drawn. </div></div><div class=CToolTip id="tt102"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt103"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.enableFontSupport = true</td></tr></table></blockquote>true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+. </div></div><div class=CToolTip id="tt104"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>true to escape html in the box label.</div></div><div class=CToolTip id="tt105"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = true</td></tr></table></blockquote>True to escape html in bubble label text.</div></div><div class=CToolTip id="tt106"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in legend text. </div></div><div class=CToolTip id="tt107"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHtml = false</td></tr></table></blockquote>True to escape special characters with their html entity equivalents in title text. </div></div><div class=CToolTip id="tt108"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><div class=CToolTip id="tt109"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = false</td></tr></table></blockquote>true to escape HTML entities in the label.</div></div><div class=CToolTip id="tt110"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.escapeHTML = true</td></tr></table></blockquote>true to escape html entities in the labels. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt111"><div class=CProperty>true = fade in/out tooltip, flase = show/hide tooltip</div></div><div class=CToolTip id="tt112"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fadeTooltip = true</td></tr></table></blockquote>true = fade in/out tooltip, flase = show/hide tooltip</div></div><div class=CToolTip id="tt113"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>True to fill the bars.</div></div><div class=CToolTip id="tt114"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt115"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fill the areas.</div></div><div class=CToolTip id="tt116"><div class=CProperty>True to fill area between bands [default: true].</div></div><div class=CToolTip id="tt117"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = true</td></tr></table></blockquote>true or false, wether to fil the slices.</div></div><div class=CToolTip id="tt118"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt119"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>whether to fill the shape.</div></div><div class=CToolTip id="tt120"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fill = false</td></tr></table></blockquote>true or false, wether to fill under lines or in bars. </div></div><div class=CToolTip id="tt121"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAlpha</td></tr></table></blockquote>Alpha transparency to apply to the fill under the line. </div></div><div class=CToolTip id="tt122"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAndStroke = false</td></tr></table></blockquote>If true will stroke the line (with color this.color) as well as fill under it. </div></div><div class=CToolTip id="tt123"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillAxis = 'y'</td></tr></table></blockquote>Either &lsquo;x&rsquo; or &lsquo;y&rsquo;. </div></div><div class=CToolTip id="tt124"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillBetween = { series1: null, series2: null, color: null, baseSeries: 0, fill: true }</td></tr></table></blockquote>Fill between 2 line series in a plot. </div></div><div class=CToolTip id="tt125"><div class=CProperty>css color spec for filled area. </div></div><div class=CToolTip id="tt126"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillColor</td></tr></table></blockquote>CSS color spec to use for fill under line. </div></div><div class=CToolTip id="tt127"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillDownBody = true</td></tr></table></blockquote>true to render a &ldquo;down&rdquo; day (close price lower than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt128"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillRect = false</td></tr></table></blockquote>true to draw shape as a filled rectangle.</div></div><div class=CToolTip id="tt129"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillStyle = '#999999'</td></tr></table></blockquote>css color spec for the fill style.</div></div><div class=CToolTip id="tt130"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToValue = 0</td></tr></table></blockquote>fill a filled series to this value on the fill axis. </div></div><div class=CToolTip id="tt131"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillToZero = false</td></tr></table></blockquote>true will force bar and filled series to fill toward zero on the fill Axis.</div></div><div class=CToolTip id="tt132"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fillUpBody = false</td></tr></table></blockquote>true to render an &ldquo;up&rdquo; day (close price greater than open price) with a filled candlestick body.</div></div><div class=CToolTip id="tt133"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.followMouse = false</td></tr></table></blockquote>Tooltip follows the mouse, it is not at a fixed location. </div></div><div class=CToolTip id="tt134"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt135"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>CSS spec for the font-family css attribute. </div></div><div class=CToolTip id="tt136"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily = '&quot;Trebuchet MS&quot;, Arial, Helvetica, sans-serif'</td></tr></table></blockquote>css spec for the font-family css attribute.</div></div><div class=CToolTip id="tt137"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the legend text.</div></div><div class=CToolTip id="tt138"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontFamily</td></tr></table></blockquote>css font-family spec for the text.</div></div><div class=CToolTip id="tt139"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size css attribute.</div></div><div class=CToolTip id="tt140"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '11pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt141"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize = '10pt'</td></tr></table></blockquote>CSS spec for font size.</div></div><div class=CToolTip id="tt142"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css spec for the font-size attribute. </div></div><div class=CToolTip id="tt143"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the legend text.</div></div><div class=CToolTip id="tt144"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontSize</td></tr></table></blockquote>css font-size spec for the text.</div></div><div class=CToolTip id="tt145"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt146"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontStretch = 1.0</td></tr></table></blockquote>Multiplier to condense or expand font width. </div></div><div class=CToolTip id="tt147"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote></div></div><div class=CToolTip id="tt148"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.fontWeight = 'normal'</td></tr></table></blockquote>CSS spec for fontWeight</div></div><div class=CToolTip id="tt149"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt0 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 0. </div></div><div class=CToolTip id="tt150"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.forceTickAt100 = false</td></tr></table></blockquote>This will ensure that there is always a tick mark at 100. </div></div><div class=CToolTip id="tt151"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt152"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt153"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = null</td></tr></table></blockquote>alternative to tooltipFormatString will format the whole tooltip text, populating with x, y values as indicated by tooltipAxes option. </div></div><div class=CToolTip id="tt154"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatString = ''</td></tr></table></blockquote>string passed to the formatter.</div></div><div class=CToolTip id="tt155"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt156"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><div class=CToolTip id="tt157"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.formatter = $.jqplot.DefaultTickFormatter</td></tr></table></blockquote>A class of a formatter for the tick text. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties3.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties3.html
deleted file mode 100644
index a3549331..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties3.html
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="Properties.html#A">A</a> &middot; <a href="Properties.html#B">B</a> &middot; <a href="Properties.html#C">C</a> &middot; <a href="Properties2.html#D">D</a> &middot; <a href="Properties2.html#E">E</a> &middot; <a href="Properties2.html#F">F</a> &middot; <a href="#G">G</a> &middot; <a href="#H">H</a> &middot; <a href="#I">I</a> &middot; J &middot; K &middot; <a href="#L">L</a> &middot; <a href="Properties4.html#M">M</a> &middot; <a href="Properties4.html#N">N</a> &middot; <a href="Properties4.html#O">O</a> &middot; <a href="Properties4.html#P">P</a> &middot; Q &middot; <a href="Properties4.html#R">R</a> &middot; <a href="Properties5.html#S">S</a> &middot; <a href="Properties6.html#T">T</a> &middot; <a href="Properties6.html#U">U</a> &middot; <a href="Properties6.html#V">V</a> &middot; <a href="Properties6.html#W">W</a> &middot; <a href="Properties6.html#X">X</a> &middot; <a href="Properties6.html#Y">Y</a> &middot; <a href="Properties6.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="G"></a>G</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.grid" id=link158 onMouseOver="ShowTip(event, 'tt158', 'link158')" onMouseOut="HideTip('tt158')" class=ISymbol>grid</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineColor" id=link159 onMouseOver="ShowTip(event, 'tt159', 'link159')" onMouseOut="HideTip('tt159')" class=ISymbol>gridLineColor</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineWidth" id=link160 onMouseOver="ShowTip(event, 'tt160', 'link160')" onMouseOut="HideTip('tt160')" class=ISymbol>gridLineWidth</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.groups" id=link161 onMouseOver="ShowTip(event, 'tt161', 'link161')" onMouseOut="HideTip('tt161')" class=ISymbol>groups</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=IHeading><a name="H"></a>H</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.hideZeros" id=link162 onMouseOver="ShowTip(event, 'tt162', 'link162')" onMouseOut="HideTip('tt162')" class=ISymbol>hideZeros</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightAlpha" id=link163 onMouseOver="ShowTip(event, 'tt163', 'link163')" onMouseOut="HideTip('tt163')" class=ISymbol>highlightAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightColor" id=link164 onMouseOver="ShowTip(event, 'tt164', 'link164')" onMouseOut="HideTip('tt164')" class=ISymbol>highlightColor</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightColors</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightColors" id=link165 onMouseOver="ShowTip(event, 'tt165', 'link165')" onMouseOut="HideTip('tt165')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightColors" id=link166 onMouseOver="ShowTip(event, 'tt166', 'link166')" onMouseOut="HideTip('tt166')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightColors" id=link167 onMouseOver="ShowTip(event, 'tt167', 'link167')" onMouseOut="HideTip('tt167')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightColors" id=link168 onMouseOver="ShowTip(event, 'tt168', 'link168')" onMouseOut="HideTip('tt168')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightColors" id=link169 onMouseOver="ShowTip(event, 'tt169', 'link169')" onMouseOut="HideTip('tt169')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightColors" id=link170 onMouseOver="ShowTip(event, 'tt170', 'link170')" onMouseOut="HideTip('tt170')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightMouseDown</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseDown" id=link171 onMouseOver="ShowTip(event, 'tt171', 'link171')" onMouseOut="HideTip('tt171')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseDown" id=link172 onMouseOver="ShowTip(event, 'tt172', 'link172')" onMouseOut="HideTip('tt172')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseDown" id=link173 onMouseOver="ShowTip(event, 'tt173', 'link173')" onMouseOut="HideTip('tt173')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseDown" id=link174 onMouseOver="ShowTip(event, 'tt174', 'link174')" onMouseOut="HideTip('tt174')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseDown" id=link175 onMouseOver="ShowTip(event, 'tt175', 'link175')" onMouseOut="HideTip('tt175')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseDown" id=link176 onMouseOver="ShowTip(event, 'tt176', 'link176')" onMouseOut="HideTip('tt176')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseDown" id=link177 onMouseOver="ShowTip(event, 'tt177', 'link177')" onMouseOut="HideTip('tt177')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>highlightMouseOver</span><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseOver" id=link178 onMouseOver="ShowTip(event, 'tt178', 'link178')" onMouseOut="HideTip('tt178')" class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseOver" id=link179 onMouseOver="ShowTip(event, 'tt179', 'link179')" onMouseOut="HideTip('tt179')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseOver" id=link180 onMouseOver="ShowTip(event, 'tt180', 'link180')" onMouseOut="HideTip('tt180')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseOver" id=link181 onMouseOver="ShowTip(event, 'tt181', 'link181')" onMouseOut="HideTip('tt181')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseOver" id=link182 onMouseOver="ShowTip(event, 'tt182', 'link182')" onMouseOut="HideTip('tt182')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseOver" id=link183 onMouseOver="ShowTip(event, 'tt183', 'link183')" onMouseOut="HideTip('tt183')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseOver" id=link184 onMouseOver="ShowTip(event, 'tt184', 'link184')" onMouseOut="HideTip('tt184')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.hlc" id=link185 onMouseOver="ShowTip(event, 'tt185', 'link185')" onMouseOut="HideTip('tt185')" class=ISymbol>hlc</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.hubRadius" id=link186 onMouseOver="ShowTip(event, 'tt186', 'link186')" onMouseOut="HideTip('tt186')" class=ISymbol>hubRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=IHeading><a name="I"></a>I</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.index" id=link187 onMouseOver="ShowTip(event, 'tt187', 'link187')" onMouseOut="HideTip('tt187')" class=ISymbol>index</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.innerDiameter" id=link188 onMouseOver="ShowTip(event, 'tt188', 'link188')" onMouseOut="HideTip('tt188')" class=ISymbol>innerDiameter</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.insertBreaks" id=link189 onMouseOver="ShowTip(event, 'tt189', 'link189')" onMouseOut="HideTip('tt189')" class=ISymbol>insertBreaks</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.intersectionThreshold" id=link190 onMouseOver="ShowTip(event, 'tt190', 'link190')" onMouseOut="HideTip('tt190')" class=ISymbol>intersectionThreshold</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.interval" id=link191 onMouseOver="ShowTip(event, 'tt191', 'link191')" onMouseOut="HideTip('tt191')" class=ISymbol>interval</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalColors" id=link192 onMouseOver="ShowTip(event, 'tt192', 'link192')" onMouseOut="HideTip('tt192')" class=ISymbol>intervalColors</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalInnerRadius" id=link193 onMouseOver="ShowTip(event, 'tt193', 'link193')" onMouseOut="HideTip('tt193')" class=ISymbol>intervalInnerRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalOuterRadius" id=link194 onMouseOver="ShowTip(event, 'tt194', 'link194')" onMouseOut="HideTip('tt194')" class=ISymbol>intervalOuterRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervals" id=link195 onMouseOver="ShowTip(event, 'tt195', 'link195')" onMouseOut="HideTip('tt195')" class=ISymbol>intervals</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>isarc</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.isarc" id=link196 onMouseOver="ShowTip(event, 'tt196', 'link196')" onMouseOut="HideTip('tt196')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.isarc" id=link197 onMouseOver="ShowTip(event, 'tt197', 'link197')" onMouseOut="HideTip('tt197')" class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>isMinorTick</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.isMinorTick" id=link198 onMouseOver="ShowTip(event, 'tt198', 'link198')" onMouseOut="HideTip('tt198')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.isMinorTick" id=link199 onMouseOver="ShowTip(event, 'tt199', 'link199')" onMouseOut="HideTip('tt199')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=IHeading><a name="L"></a>L</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>label</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.label" id=link200 onMouseOver="ShowTip(event, 'tt200', 'link200')" onMouseOut="HideTip('tt200')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.label" id=link201 onMouseOver="ShowTip(event, 'tt201', 'link201')" onMouseOut="HideTip('tt201')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.label" id=link202 onMouseOver="ShowTip(event, 'tt202', 'link202')" onMouseOut="HideTip('tt202')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.label" id=link203 onMouseOver="ShowTip(event, 'tt203', 'link203')" onMouseOut="HideTip('tt203')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.label" id=link204 onMouseOver="ShowTip(event, 'tt204', 'link204')" onMouseOut="HideTip('tt204')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.label" id=link205 onMouseOver="ShowTip(event, 'tt205', 'link205')" onMouseOut="HideTip('tt205')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelHeightAdjust" id=link206 onMouseOver="ShowTip(event, 'tt206', 'link206')" onMouseOut="HideTip('tt206')" class=ISymbol>labelHeightAdjust</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelOptions" id=link207 onMouseOver="ShowTip(event, 'tt207', 'link207')" onMouseOut="HideTip('tt207')" class=ISymbol>labelOptions</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>labelPosition</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.labelPosition" id=link208 onMouseOver="ShowTip(event, 'tt208', 'link208')" onMouseOut="HideTip('tt208')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelPosition" id=link209 onMouseOver="ShowTip(event, 'tt209', 'link209')" onMouseOut="HideTip('tt209')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelRenderer" id=link210 onMouseOver="ShowTip(event, 'tt210', 'link210')" onMouseOut="HideTip('tt210')" class=ISymbol>labelRenderer</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>labels</span><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labels" id=link211 onMouseOver="ShowTip(event, 'tt211', 'link211')" onMouseOut="HideTip('tt211')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.labels" id=link212 onMouseOver="ShowTip(event, 'tt212', 'link212')" onMouseOut="HideTip('tt212')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labelsFromSeries" id=link213 onMouseOver="ShowTip(event, 'tt213', 'link213')" onMouseOut="HideTip('tt213')" class=ISymbol>labelsFromSeries</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.legend" id=link214 onMouseOver="ShowTip(event, 'tt214', 'link214')" onMouseOut="HideTip('tt214')" class=ISymbol>legend</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineCap</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineCap" id=link215 onMouseOver="ShowTip(event, 'tt215', 'link215')" onMouseOut="HideTip('tt215')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineCap" id=link216 onMouseOver="ShowTip(event, 'tt216', 'link216')" onMouseOut="HideTip('tt216')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineCap" id=link217 onMouseOver="ShowTip(event, 'tt217', 'link217')" onMouseOut="HideTip('tt217')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineCap" id=link218 onMouseOver="ShowTip(event, 'tt218', 'link218')" onMouseOut="HideTip('tt218')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineJoin</span><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineJoin" id=link219 onMouseOver="ShowTip(event, 'tt219', 'link219')" onMouseOut="HideTip('tt219')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineJoin" id=link220 onMouseOver="ShowTip(event, 'tt220', 'link220')" onMouseOut="HideTip('tt220')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineJoin" id=link221 onMouseOver="ShowTip(event, 'tt221', 'link221')" onMouseOut="HideTip('tt221')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>linePattern</span><div class=ISubIndex><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.linePattern" id=link222 onMouseOver="ShowTip(event, 'tt222', 'link222')" onMouseOut="HideTip('tt222')" class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.linePattern" id=link223 onMouseOver="ShowTip(event, 'tt223', 'link223')" onMouseOut="HideTip('tt223')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>lineWidth</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineWidth" id=link224 onMouseOver="ShowTip(event, 'tt224', 'link224')" onMouseOut="HideTip('tt224')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.lineWidth" id=link225 onMouseOver="ShowTip(event, 'tt225', 'link225')" onMouseOut="HideTip('tt225')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.lineWidth" id=link226 onMouseOver="ShowTip(event, 'tt226', 'link226')" onMouseOut="HideTip('tt226')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.lineWidth" id=link227 onMouseOver="ShowTip(event, 'tt227', 'link227')" onMouseOut="HideTip('tt227')" class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineWidth" id=link228 onMouseOver="ShowTip(event, 'tt228', 'link228')" onMouseOut="HideTip('tt228')" class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.lineWidth" id=link229 onMouseOver="ShowTip(event, 'tt229', 'link229')" onMouseOut="HideTip('tt229')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.lineWidth" id=link230 onMouseOver="ShowTip(event, 'tt230', 'link230')" onMouseOut="HideTip('tt230')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.lineWidthAdjust" id=link231 onMouseOver="ShowTip(event, 'tt231', 'link231')" onMouseOut="HideTip('tt231')" class=ISymbol>lineWidthAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>location</span><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.location" id=link232 onMouseOver="ShowTip(event, 'tt232', 'link232')" onMouseOut="HideTip('tt232')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.location" id=link233 onMouseOver="ShowTip(event, 'tt233', 'link233')" onMouseOut="HideTip('tt233')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.looseZoom" id=link234 onMouseOver="ShowTip(event, 'tt234', 'link234')" onMouseOut="HideTip('tt234')" class=ISymbol>looseZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt158"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.grid = new Grid()</td></tr></table></blockquote>See Grid for grid specific options.</div></div><div class=CToolTip id="tt159"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineColor = '#cccccc'</td></tr></table></blockquote>color of the grid lines.</div></div><div class=CToolTip id="tt160"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.gridLineWidth = 1.0</td></tr></table></blockquote>width of the grid lines.</div></div><div class=CToolTip id="tt161"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.groups = 1</td></tr></table></blockquote>group bars into this many groups</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt162"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hideZeros = false</td></tr></table></blockquote>true to not show a label for a value which is 0.</div></div><div class=CToolTip id="tt163"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightAlpha = null</td></tr></table></blockquote>Alpha transparency to apply when highlighting bubble. </div></div><div class=CToolTip id="tt164"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColor = null</td></tr></table></blockquote>color to use when highlighting an area on a filled plot.</div></div><div class=CToolTip id="tt165"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt166"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a bar.</div></div><div class=CToolTip id="tt167"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>An array of colors to use when highlighting a slice. </div></div><div class=CToolTip id="tt168"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt169"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>array of colors to use when highlighting an area.</div></div><div class=CToolTip id="tt170"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightColors = []</td></tr></table></blockquote>an array of colors to use when highlighting a slice.</div></div><div class=CToolTip id="tt171"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt172"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt173"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a bubble. </div></div><div class=CToolTip id="tt174"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt175"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a area. </div></div><div class=CToolTip id="tt176"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over an area on a filled plot. </div></div><div class=CToolTip id="tt177"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseDown = false</td></tr></table></blockquote>True to highlight when a mouse button is pressed over a slice. </div></div><div class=CToolTip id="tt178"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt179"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt180"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight bubbles when moused over. </div></div><div class=CToolTip id="tt181"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt182"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area when moused over. </div></div><div class=CToolTip id="tt183"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight area on a filled plot when moused over. </div></div><div class=CToolTip id="tt184"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.highlightMouseOver = true</td></tr></table></blockquote>True to highlight slice when moused over. </div></div><div class=CToolTip id="tt185"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hlc = false</td></tr></table></blockquote>true if is a hi-low-close chart (no open price). </div></div><div class=CToolTip id="tt186"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.hubRadius = null</td></tr></table></blockquote>Radius of the hub at the bottom center of gauge which the needle attaches to. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt187"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.index</td></tr></table></blockquote>0 based index of this series in the plot series array.</div></div><div class=CToolTip id="tt188"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.innerDiameter = null</td></tr></table></blockquote>Inner diameter of the donut, auto calculated by default. </div></div><div class=CToolTip id="tt189"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.insertBreaks = true</td></tr></table></blockquote>true to turn spaces in data block label into html breaks br /.</div></div><div class=CToolTip id="tt190"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intersectionThreshold = 2</td></tr></table></blockquote>pixel distance from data point or marker to consider cursor lines intersecting with point. </div></div><div class=CToolTip id="tt191"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>interval: '3%' }</td></tr></table></blockquote>User specified interval above and below line for bands [default: &lsquo;3%&rsquo;&rsquo;]. </div></div><div class=CToolTip id="tt192"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalColors = [ &quot;#4bb2c5&quot;, &quot;#EAA228&quot;, &quot;#c5b47f&quot;, &quot;#579575&quot;, &quot;#839557&quot;, &quot;#958c12&quot;, &quot;#953579&quot;, &quot;#4b5de4&quot;, &quot;#d8b83f&quot;, &quot;#ff5800&quot;, &quot;#0085cc&quot;, &quot;#c747a3&quot;, &quot;#cddf54&quot;, &quot;#FBD178&quot;, &quot;#26B4E3&quot;, &quot;#bd70c7&quot;]</td></tr></table></blockquote>Array of colors to use for the intervals.</div></div><div class=CToolTip id="tt193"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalInnerRadius = null</td></tr></table></blockquote>Radius of the inner circle of the interval ring.</div></div><div class=CToolTip id="tt194"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervalOuterRadius = null</td></tr></table></blockquote>Radius of the outer circle of the interval ring.</div></div><div class=CToolTip id="tt195"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.intervals = []</td></tr></table></blockquote>Array of ranges to be drawn around the gauge. </div></div><div class=CToolTip id="tt196"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt197"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isarc = false</td></tr></table></blockquote>wether the shadow is an arc or not.</div></div><div class=CToolTip id="tt198"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><div class=CToolTip id="tt199"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.isMinorTick = false</td></tr></table></blockquote>if this is a minor tick.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt200"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>The text or html for the label.</div></div><div class=CToolTip id="tt201"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>label for the axis.</div></div><div class=CToolTip id="tt202"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>A gauge label like &lsquo;kph&rsquo; or &lsquo;Volts&rsquo;</div></div><div class=CToolTip id="tt203"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Label for the trend line to use in the legend.</div></div><div class=CToolTip id="tt204"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = null</td></tr></table></blockquote>Label for the axis</div></div><div class=CToolTip id="tt205"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.label = ''</td></tr></table></blockquote>Line label to use in the legend.</div></div><div class=CToolTip id="tt206"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelHeightAdjust = 0</td></tr></table></blockquote>Number of Pixels to offset the label up (-) or down (+) from its default position.</div></div><div class=CToolTip id="tt207"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelOptions = {}</td></tr></table></blockquote>Options passed to the label renderer.</div></div><div class=CToolTip id="tt208"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'auto'</td></tr></table></blockquote>&lsquo;auto&rsquo;, &lsquo;start&rsquo;, &lsquo;middle&rsquo; or &lsquo;end&rsquo;. </div></div><div class=CToolTip id="tt209"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelPosition = 'inside'</td></tr></table></blockquote>Where to position the label, either &lsquo;inside&rsquo; or &lsquo;bottom&rsquo;.</div></div><div class=CToolTip id="tt210"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelRenderer = $.jqplot.AxisLabelRenderer</td></tr></table></blockquote>A class of a rendering engine for creating an axis label.</div></div><div class=CToolTip id="tt211"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>array of arrays of labels, one array for each series.</div></div><div class=CToolTip id="tt212"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labels = []</td></tr></table></blockquote>Array of labels to use. </div></div><div class=CToolTip id="tt213"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.labelsFromSeries = false</td></tr></table></blockquote>true to use labels within data point arrays.</div></div><div class=CToolTip id="tt214"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.legend = new Legend()</td></tr></table></blockquote>see $.jqplot.TableLegendRenderer</div></div><div class=CToolTip id="tt215"><div class=CProperty>Type of ending placed on the line [&lsquo;round&rsquo;, &lsquo;butt&rsquo;, &lsquo;square&rsquo;]</div></div><div class=CToolTip id="tt216"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt217"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>how ends of the shadow line are rendered.</div></div><div class=CToolTip id="tt218"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineCap = 'round'</td></tr></table></blockquote>Canvas lineCap style at ends of line.</div></div><div class=CToolTip id="tt219"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt220"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'miter'</td></tr></table></blockquote>How line segments of the shadow are joined.</div></div><div class=CToolTip id="tt221"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineJoin = 'round'</td></tr></table></blockquote>Canvas lineJoin style between segments of series.</div></div><div class=CToolTip id="tt222"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt223"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.linePattern = 'solid'</td></tr></table></blockquote>line pattern &lsquo;dashed&rsquo;, &lsquo;dotted&rsquo;, &lsquo;solid&rsquo;, some combination of &lsquo;-&rsquo; and &lsquo;.&rsquo;</div></div><div class=CToolTip id="tt224"><div class=CProperty>Width of the line.</div></div><div class=CToolTip id="tt225"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>width of line if areas are stroked and not filled.</div></div><div class=CToolTip id="tt226"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2</td></tr></table></blockquote>size of the line for non-filled markers.</div></div><div class=CToolTip id="tt227"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the hi-low line and open/close ticks. </div></div><div class=CToolTip id="tt228"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>width of the shadow line stroke.</div></div><div class=CToolTip id="tt229"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 1.5</td></tr></table></blockquote>Width of the trend line.</div></div><div class=CToolTip id="tt230"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidth = 2.5</td></tr></table></blockquote>width of the line in pixels. </div></div><div class=CToolTip id="tt231"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.lineWidthAdjust = 2.5</td></tr></table></blockquote>Pixels to add to the lineWidth of the highlight.</div></div><div class=CToolTip id="tt232"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'n'</td></tr></table></blockquote>compass location where to position the label around the point. </div></div><div class=CToolTip id="tt233"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.location = 'ne'</td></tr></table></blockquote>Placement of the legend. </div></div><div class=CToolTip id="tt234"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.looseZoom = true</td></tr></table></blockquote>Will expand zoom range to provide more rounded tick values. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties4.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties4.html
deleted file mode 100644
index f802eb57..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties4.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="Properties.html#A">A</a> &middot; <a href="Properties.html#B">B</a> &middot; <a href="Properties.html#C">C</a> &middot; <a href="Properties2.html#D">D</a> &middot; <a href="Properties2.html#E">E</a> &middot; <a href="Properties2.html#F">F</a> &middot; <a href="Properties3.html#G">G</a> &middot; <a href="Properties3.html#H">H</a> &middot; <a href="Properties3.html#I">I</a> &middot; J &middot; K &middot; <a href="Properties3.html#L">L</a> &middot; <a href="#M">M</a> &middot; <a href="#N">N</a> &middot; <a href="#O">O</a> &middot; <a href="#P">P</a> &middot; Q &middot; <a href="#R">R</a> &middot; <a href="Properties5.html#S">S</a> &middot; <a href="Properties6.html#T">T</a> &middot; <a href="Properties6.html#U">U</a> &middot; <a href="Properties6.html#V">V</a> &middot; <a href="Properties6.html#W">W</a> &middot; <a href="Properties6.html#X">X</a> &middot; <a href="Properties6.html#Y">Y</a> &middot; <a href="Properties6.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="M"></a>M</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginBottom" id=link235 onMouseOver="ShowTip(event, 'tt235', 'link235')" onMouseOut="HideTip('tt235')" class=ISymbol>marginBottom</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginLeft" id=link236 onMouseOver="ShowTip(event, 'tt236', 'link236')" onMouseOut="HideTip('tt236')" class=ISymbol>marginLeft</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginRight" id=link237 onMouseOver="ShowTip(event, 'tt237', 'link237')" onMouseOut="HideTip('tt237')" class=ISymbol>marginRight</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginTop" id=link238 onMouseOver="ShowTip(event, 'tt238', 'link238')" onMouseOut="HideTip('tt238')" class=ISymbol>marginTop</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>mark</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.mark" id=link239 onMouseOver="ShowTip(event, 'tt239', 'link239')" onMouseOut="HideTip('tt239')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.mark" id=link240 onMouseOver="ShowTip(event, 'tt240', 'link240')" onMouseOut="HideTip('tt240')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.markerOptions" id=link241 onMouseOver="ShowTip(event, 'tt241', 'link241')" onMouseOut="HideTip('tt241')" class=ISymbol>markerOptions</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>markerRenderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.markerRenderer" id=link242 onMouseOver="ShowTip(event, 'tt242', 'link242')" onMouseOut="HideTip('tt242')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.markerRenderer" id=link243 onMouseOver="ShowTip(event, 'tt243', 'link243')" onMouseOut="HideTip('tt243')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.markerRenderer" id=link244 onMouseOver="ShowTip(event, 'tt244', 'link244')" onMouseOut="HideTip('tt244')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>markSize</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.markSize" id=link245 onMouseOver="ShowTip(event, 'tt245', 'link245')" onMouseOut="HideTip('tt245')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.markSize" id=link246 onMouseOver="ShowTip(event, 'tt246', 'link246')" onMouseOut="HideTip('tt246')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>max</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.max" id=link247 onMouseOver="ShowTip(event, 'tt247', 'link247')" onMouseOut="HideTip('tt247')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.max" id=link248 onMouseOver="ShowTip(event, 'tt248', 'link248')" onMouseOut="HideTip('tt248')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>min</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.min" id=link249 onMouseOver="ShowTip(event, 'tt249', 'link249')" onMouseOut="HideTip('tt249')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.min" id=link250 onMouseOver="ShowTip(event, 'tt250', 'link250')" onMouseOut="HideTip('tt250')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>minorTicks</span><div class=ISubIndex><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.minorTicks" id=link251 onMouseOver="ShowTip(event, 'tt251', 'link251')" onMouseOut="HideTip('tt251')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.minorTicks" id=link252 onMouseOver="ShowTip(event, 'tt252', 'link252')" onMouseOut="HideTip('tt252')" class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></td></tr><tr><td class=IHeading><a name="N"></a>N</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.name" id=link253 onMouseOver="ShowTip(event, 'tt253', 'link253')" onMouseOut="HideTip('tt253')" class=ISymbol>name</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needlePad" id=link254 onMouseOver="ShowTip(event, 'tt254', 'link254')" onMouseOut="HideTip('tt254')" class=ISymbol>needlePad</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needleThickness" id=link255 onMouseOver="ShowTip(event, 'tt255', 'link255')" onMouseOut="HideTip('tt255')" class=ISymbol>needleThickness</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.negativeColor" id=link256 onMouseOver="ShowTip(event, 'tt256', 'link256')" onMouseOut="HideTip('tt256')" class=ISymbol>negativeColor</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.neighborThreshold" id=link257 onMouseOver="ShowTip(event, 'tt257', 'link257')" onMouseOut="HideTip('tt257')" class=ISymbol>neighborThreshold</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.noDataIndicator" id=link258 onMouseOver="ShowTip(event, 'tt258', 'link258')" onMouseOut="HideTip('tt258')" class=ISymbol>noDataIndicator</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>numberColumns</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberColumns" id=link259 onMouseOver="ShowTip(event, 'tt259', 'link259')" onMouseOut="HideTip('tt259')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberColumns" id=link260 onMouseOver="ShowTip(event, 'tt260', 'link260')" onMouseOut="HideTip('tt260')" class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberColumns" id=link261 onMouseOver="ShowTip(event, 'tt261', 'link261')" onMouseOut="HideTip('tt261')" class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberColumns" id=link262 onMouseOver="ShowTip(event, 'tt262', 'link262')" onMouseOut="HideTip('tt262')" class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberColumns" id=link263 onMouseOver="ShowTip(event, 'tt263', 'link263')" onMouseOut="HideTip('tt263')" class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>numberRows</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberRows" id=link264 onMouseOver="ShowTip(event, 'tt264', 'link264')" onMouseOut="HideTip('tt264')" class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberRows" id=link265 onMouseOver="ShowTip(event, 'tt265', 'link265')" onMouseOut="HideTip('tt265')" class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberRows" id=link266 onMouseOver="ShowTip(event, 'tt266', 'link266')" onMouseOut="HideTip('tt266')" class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberRows" id=link267 onMouseOver="ShowTip(event, 'tt267', 'link267')" onMouseOut="HideTip('tt267')" class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberRows" id=link268 onMouseOver="ShowTip(event, 'tt268', 'link268')" onMouseOut="HideTip('tt268')" class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.numberTicks" id=link269 onMouseOver="ShowTip(event, 'tt269', 'link269')" onMouseOut="HideTip('tt269')" class=ISymbol>numberTicks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=IHeading><a name="O"></a>O</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.objects" id=link270 onMouseOver="ShowTip(event, 'tt270', 'link270')" onMouseOut="HideTip('tt270')" class=ISymbol>objects</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.offset" id=link271 onMouseOver="ShowTip(event, 'tt271', 'link271')" onMouseOut="HideTip('tt271')" class=ISymbol>offset</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#offsetBars" id=link272 onMouseOver="ShowTip(event, 'tt272', 'link272')" onMouseOut="HideTip('tt272')" class=ISymbol>offsetBars</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.openColor" id=link273 onMouseOver="ShowTip(event, 'tt273', 'link273')" onMouseOut="HideTip('tt273')" class=ISymbol>openColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=IHeading><a name="P"></a>P</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.pad" id=link274 onMouseOver="ShowTip(event, 'tt274', 'link274')" onMouseOut="HideTip('tt274')" class=ISymbol>pad</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>padding</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.padding" id=link275 onMouseOver="ShowTip(event, 'tt275', 'link275')" onMouseOut="HideTip('tt275')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.padding" id=link276 onMouseOver="ShowTip(event, 'tt276', 'link276')" onMouseOut="HideTip('tt276')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.padding" id=link277 onMouseOver="ShowTip(event, 'tt277', 'link277')" onMouseOut="HideTip('tt277')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.padding" id=link278 onMouseOver="ShowTip(event, 'tt278', 'link278')" onMouseOut="HideTip('tt278')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMax" id=link279 onMouseOver="ShowTip(event, 'tt279', 'link279')" onMouseOut="HideTip('tt279')" class=ISymbol>padMax</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMin" id=link280 onMouseOver="ShowTip(event, 'tt280', 'link280')" onMouseOut="HideTip('tt280')" class=ISymbol>padMin</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.pegNeedle" id=link281 onMouseOver="ShowTip(event, 'tt281', 'link281')" onMouseOut="HideTip('tt281')" class=ISymbol>pegNeedle</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.placement" id=link282 onMouseOver="ShowTip(event, 'tt282', 'link282')" onMouseOut="HideTip('tt282')" class=ISymbol>placement</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#position" id=link283 onMouseOver="ShowTip(event, 'tt283', 'link283')" onMouseOut="HideTip('tt283')" class=ISymbol>position</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.predraw" id=link284 onMouseOver="ShowTip(event, 'tt284', 'link284')" onMouseOut="HideTip('tt284')" class=ISymbol>predraw</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>prefix</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.prefix" id=link285 onMouseOver="ShowTip(event, 'tt285', 'link285')" onMouseOut="HideTip('tt285')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.prefix" id=link286 onMouseOver="ShowTip(event, 'tt286', 'link286')" onMouseOut="HideTip('tt286')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>pt2px</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.pt2px" id=link287 onMouseOver="ShowTip(event, 'tt287', 'link287')" onMouseOut="HideTip('tt287')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.pt2px" id=link288 onMouseOver="ShowTip(event, 'tt288', 'link288')" onMouseOut="HideTip('tt288')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=IHeading><a name="R"></a>R</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>renderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.renderer" id=link289 onMouseOver="ShowTip(event, 'tt289', 'link289')" onMouseOut="HideTip('tt289')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.renderer" id=link290 onMouseOver="ShowTip(event, 'tt290', 'link290')" onMouseOut="HideTip('tt290')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.renderer" id=link291 onMouseOver="ShowTip(event, 'tt291', 'link291')" onMouseOut="HideTip('tt291')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.renderer" id=link292 onMouseOver="ShowTip(event, 'tt292', 'link292')" onMouseOut="HideTip('tt292')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.renderer" id=link293 onMouseOver="ShowTip(event, 'tt293', 'link293')" onMouseOut="HideTip('tt293')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>rendererOptions</span><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.rendererOptions" id=link294 onMouseOver="ShowTip(event, 'tt294', 'link294')" onMouseOut="HideTip('tt294')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.rendererOptions" id=link295 onMouseOver="ShowTip(event, 'tt295', 'link295')" onMouseOut="HideTip('tt295')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.rendererOptions" id=link296 onMouseOver="ShowTip(event, 'tt296', 'link296')" onMouseOut="HideTip('tt296')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.rendererOptions" id=link297 onMouseOver="ShowTip(event, 'tt297', 'link297')" onMouseOut="HideTip('tt297')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.rendererOptions" id=link298 onMouseOver="ShowTip(event, 'tt298', 'link298')" onMouseOut="HideTip('tt298')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.rendererOptions" id=link299 onMouseOver="ShowTip(event, 'tt299', 'link299')" onMouseOut="HideTip('tt299')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringColor" id=link300 onMouseOver="ShowTip(event, 'tt300', 'link300')" onMouseOut="HideTip('tt300')" class=ISymbol>ringColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.ringMargin" id=link301 onMouseOver="ShowTip(event, 'tt301', 'link301')" onMouseOut="HideTip('tt301')" class=ISymbol>ringMargin</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringWidth" id=link302 onMouseOver="ShowTip(event, 'tt302', 'link302')" onMouseOut="HideTip('tt302')" class=ISymbol>ringWidth</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.rowSpacing" id=link303 onMouseOver="ShowTip(event, 'tt303', 'link303')" onMouseOut="HideTip('tt303')" class=ISymbol>rowSpacing</a>, <span class=IParent>Legend</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt235"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginBottom = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt236"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginLeft = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt237"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginRight = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt238"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.marginTop = null</td></tr></table></blockquote>CSS margin for the legend DOM element. </div></div><div class=CToolTip id="tt239"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt240"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.mark = 'outside'</td></tr></table></blockquote>tick mark on the axis. </div></div><div class=CToolTip id="tt241"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerOptions = {}</td></tr></table></blockquote>renderer specific options to pass to the markerRenderer, see $.jqplot.MarkerRenderer.</div></div><div class=CToolTip id="tt242"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class=PBeforeParameters nowrap>this.markerRenderer = new $.jqplot.MarkerRenderer(</td><td class=PParameter nowrap>{shadow:false}</td><td class=PAfterParameters nowrap>)</td></tr></table></td></tr></table></blockquote>Renderer used to draw the marker of the highlighted point. </div></div><div class=CToolTip id="tt243"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = {show:false}</td></tr></table></blockquote>Renderer to use to draw markers on the line. </div></div><div class=CToolTip id="tt244"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markerRenderer = $.jqplot.MarkerRenderer</td></tr></table></blockquote>A class of a renderer which will draw marker (e.g. </div></div><div class=CToolTip id="tt245"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 6</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt246"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.markSize = 4</td></tr></table></blockquote>Length of the tick marks in pixels. </div></div><div class=CToolTip id="tt247"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max</td></tr></table></blockquote>Maximum value on the gauge. </div></div><div class=CToolTip id="tt248"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.max = null</td></tr></table></blockquote>maximum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt249"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min</td></tr></table></blockquote>Minimum value on the gauge. </div></div><div class=CToolTip id="tt250"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.min = null</td></tr></table></blockquote>minimum value of the axis (in data units, not pixels).</div></div><div class=CToolTip id="tt251"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 0</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><div class=CToolTip id="tt252"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.minorTicks = 'auto'</td></tr></table></blockquote>Number of ticks to add between &ldquo;major&rdquo; ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt253"><div class=CProperty>Optional name for the overlay object. </div></div><div class=CToolTip id="tt254"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needlePad = 6</td></tr></table></blockquote>Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.</div></div><div class=CToolTip id="tt255"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.needleThickness = null</td></tr></table></blockquote>Maximum thickness the needle. </div></div><div class=CToolTip id="tt256"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.negativeColor</td></tr></table></blockquote>css color spec used for filled (area) plots that are filled to zero and the &ldquo;useNegativeColors&rdquo; option is true.</div></div><div class=CToolTip id="tt257"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.neighborThreshold = 4</td></tr></table></blockquote>how close or far (in pixels) the cursor must be from a point marker to detect the point.</div></div><div class=CToolTip id="tt258"><div class=CProperty>Options to set up a mock plot with a data loading indicator if no data is specified.</div></div><div class=CToolTip id="tt259"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt260"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt261"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt262"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt263"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberColumns = null</td></tr></table></blockquote>Maximum number of columns in the legend. </div></div><div class=CToolTip id="tt264"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt265"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt266"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt267"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt268"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberRows = null</td></tr></table></blockquote>Maximum number of rows in the legend. </div></div><div class=CToolTip id="tt269"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.numberTicks</td></tr></table></blockquote>Desired number of ticks. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt270"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.objects = []</td></tr></table></blockquote></div></div><div class=CToolTip id="tt271"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offset = 1</td></tr></table></blockquote>Pixel offset at the given shadow angle of each shadow stroke from the last stroke.</div></div><div class=CToolTip id="tt272"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.offsetBars = false</td></tr></table></blockquote>False will center bars on their y value. </div></div><div class=CToolTip id="tt273"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.openColor = null</td></tr></table></blockquote>color of the open price tick mark. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt274"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pad = 1.2</td></tr></table></blockquote>Padding to extend the range above and below the data bounds. </div></div><div class=CToolTip id="tt275"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the donut and plot edges, legend, etc.</div></div><div class=CToolTip id="tt276"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = {top: 20, right: 20, bottom: 20, left: 20}</td></tr></table></blockquote>padding between the funnel and plot edges, legend, etc.</div></div><div class=CToolTip id="tt277"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = null</td></tr></table></blockquote>padding between the meterGauge and plot edges, auto calculated by default.</div></div><div class=CToolTip id="tt278"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padding = 20</td></tr></table></blockquote>padding between the pie and plot edges, legend, etc.</div></div><div class=CToolTip id="tt279"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMax = null</td></tr></table></blockquote>Padding to extend the range above data bounds. </div></div><div class=CToolTip id="tt280"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.padMin = null</td></tr></table></blockquote>Padding to extend the range below data bounds. </div></div><div class=CToolTip id="tt281"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pegNeedle = true</td></tr></table></blockquote>True will stop needle just below/above the min/max values if data is below/above min/max, as if the meter is &ldquo;pegged&rdquo;.</div></div><div class=CToolTip id="tt282"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.placement = &quot;insideGrid&quot;</td></tr></table></blockquote>&ldquo;insideGrid&rdquo; places legend inside the grid area of the plot. </div></div><div class=CToolTip id="tt283"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.position = null</td></tr></table></blockquote>Position of axis. </div></div><div class=CToolTip id="tt284"><div class=CProperty>Wether to draw the legend before the series or not. </div></div><div class=CToolTip id="tt285"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt286"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.prefix = ''</td></tr></table></blockquote>String to prepend to the tick label. </div></div><div class=CToolTip id="tt287"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><div class=CToolTip id="tt288"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.pt2px = null</td></tr></table></blockquote>Point to pixel scaling factor, used for computing height of bounding box around a label. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt289"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = new $.jqplot.LineRenderer()</td></tr></table></blockquote>Renderer to use to draw the trend line. </div></div><div class=CToolTip id="tt290"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LinearAxisRenderer</td></tr></table></blockquote>A class of a rendering engine that handles tick generation, scaling input data to pixel grid units and drawing the axis element.</div></div><div class=CToolTip id="tt291"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.CanvasGridRenderer</td></tr></table></blockquote>Instance of a renderer which will actually render the grid, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt292"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.LineRenderer</td></tr></table></blockquote>A class of a renderer which will draw the series, see $.jqplot.LineRenderer.</div></div><div class=CToolTip id="tt293"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer = $.jqplot.DivTitleRenderer</td></tr></table></blockquote>A class for creating a DOM element for the title, see $.jqplot.DivTitleRenderer.</div></div><div class=CToolTip id="tt294"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {marker:{show:false}}</td></tr></table></blockquote>Options to pass to the line renderer. </div></div><div class=CToolTip id="tt295"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options. </div></div><div class=CToolTip id="tt296"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer, see $.jqplot.CanvasGridRenderer.</div></div><div class=CToolTip id="tt297"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt298"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>Options to pass on to the renderer.</div></div><div class=CToolTip id="tt299"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rendererOptions = {}</td></tr></table></blockquote>renderer specific options passed to the renderer.</div></div><div class=CToolTip id="tt300"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringColor = &quot;#BBC6D0&quot;</td></tr></table></blockquote>color of the outer ring, hub, and needle of the gauge.</div></div><div class=CToolTip id="tt301"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringMargin = null</td></tr></table></blockquote>pixel distance between rings, or multiple series in a donut plot. </div></div><div class=CToolTip id="tt302"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ringWidth = null</td></tr></table></blockquote>width of the ring around the gauge. </div></div><div class=CToolTip id="tt303"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.rowSpacing = '0.5em'</td></tr></table></blockquote>css padding-top spec for the rows in the legend.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties5.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties5.html
deleted file mode 100644
index 088d73b5..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties5.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="Properties.html#A">A</a> &middot; <a href="Properties.html#B">B</a> &middot; <a href="Properties.html#C">C</a> &middot; <a href="Properties2.html#D">D</a> &middot; <a href="Properties2.html#E">E</a> &middot; <a href="Properties2.html#F">F</a> &middot; <a href="Properties3.html#G">G</a> &middot; <a href="Properties3.html#H">H</a> &middot; <a href="Properties3.html#I">I</a> &middot; J &middot; K &middot; <a href="Properties3.html#L">L</a> &middot; <a href="Properties4.html#M">M</a> &middot; <a href="Properties4.html#N">N</a> &middot; <a href="Properties4.html#O">O</a> &middot; <a href="Properties4.html#P">P</a> &middot; Q &middot; <a href="Properties4.html#R">R</a> &middot; <a href="#S">S</a> &middot; <a href="Properties6.html#T">T</a> &middot; <a href="Properties6.html#U">U</a> &middot; <a href="Properties6.html#V">V</a> &middot; <a href="Properties6.html#W">W</a> &middot; <a href="Properties6.html#X">X</a> &middot; <a href="Properties6.html#Y">Y</a> &middot; <a href="Properties6.html#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="S"></a>S</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.scaleToHiddenSeries" id=link304 onMouseOver="ShowTip(event, 'tt304', 'link304')" onMouseOut="HideTip('tt304')" class=ISymbol>scaleToHiddenSeries</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.sectionMargin" id=link305 onMouseOver="ShowTip(event, 'tt305', 'link305')" onMouseOut="HideTip('tt305')" class=ISymbol>sectionMargin</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.series" id=link306 onMouseOver="ShowTip(event, 'tt306', 'link306')" onMouseOut="HideTip('tt306')" class=ISymbol>series</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesColors" id=link307 onMouseOver="ShowTip(event, 'tt307', 'link307')" onMouseOut="HideTip('tt307')" class=ISymbol>seriesColors</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesDefaults" id=link308 onMouseOver="ShowTip(event, 'tt308', 'link308')" onMouseOut="HideTip('tt308')" class=ISymbol>seriesDefaults</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.seriesLabelIndex" id=link309 onMouseOver="ShowTip(event, 'tt309', 'link309')" onMouseOut="HideTip('tt309')" class=ISymbol>seriesLabelIndex</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggle" id=link310 onMouseOver="ShowTip(event, 'tt310', 'link310')" onMouseOut="HideTip('tt310')" class=ISymbol>seriesToggle</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggleReplot" id=link311 onMouseOver="ShowTip(event, 'tt311', 'link311')" onMouseOut="HideTip('tt311')" class=ISymbol>seriesToggleReplot</a></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadow</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadow" id=link312 onMouseOver="ShowTip(event, 'tt312', 'link312')" onMouseOut="HideTip('tt312')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadow" id=link313 onMouseOver="ShowTip(event, 'tt313', 'link313')" onMouseOut="HideTip('tt313')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadow" id=link314 onMouseOver="ShowTip(event, 'tt314', 'link314')" onMouseOut="HideTip('tt314')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadow" id=link315 onMouseOver="ShowTip(event, 'tt315', 'link315')" onMouseOut="HideTip('tt315')" class=IParent>Grid</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowAlpha</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowAlpha" id=link316 onMouseOver="ShowTip(event, 'tt316', 'link316')" onMouseOut="HideTip('tt316')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAlpha" id=link317 onMouseOver="ShowTip(event, 'tt317', 'link317')" onMouseOut="HideTip('tt317')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowAlpha" id=link318 onMouseOver="ShowTip(event, 'tt318', 'link318')" onMouseOut="HideTip('tt318')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowAlpha" id=link319 onMouseOver="ShowTip(event, 'tt319', 'link319')" onMouseOut="HideTip('tt319')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAlpha" id=link320 onMouseOver="ShowTip(event, 'tt320', 'link320')" onMouseOut="HideTip('tt320')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowAlpha" id=link321 onMouseOver="ShowTip(event, 'tt321', 'link321')" onMouseOut="HideTip('tt321')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowAlpha" id=link322 onMouseOver="ShowTip(event, 'tt322', 'link322')" onMouseOut="HideTip('tt322')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAlpha" id=link323 onMouseOver="ShowTip(event, 'tt323', 'link323')" onMouseOut="HideTip('tt323')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAlpha" id=link324 onMouseOver="ShowTip(event, 'tt324', 'link324')" onMouseOut="HideTip('tt324')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAlpha" id=link325 onMouseOver="ShowTip(event, 'tt325', 'link325')" onMouseOut="HideTip('tt325')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowAngle</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAngle" id=link326 onMouseOver="ShowTip(event, 'tt326', 'link326')" onMouseOut="HideTip('tt326')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAngle" id=link327 onMouseOver="ShowTip(event, 'tt327', 'link327')" onMouseOut="HideTip('tt327')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAngle" id=link328 onMouseOver="ShowTip(event, 'tt328', 'link328')" onMouseOut="HideTip('tt328')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAngle" id=link329 onMouseOver="ShowTip(event, 'tt329', 'link329')" onMouseOut="HideTip('tt329')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAngle" id=link330 onMouseOver="ShowTip(event, 'tt330', 'link330')" onMouseOut="HideTip('tt330')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowColor" id=link331 onMouseOver="ShowTip(event, 'tt331', 'link331')" onMouseOut="HideTip('tt331')" class=ISymbol>shadowColor</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowDepth</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowDepth" id=link332 onMouseOver="ShowTip(event, 'tt332', 'link332')" onMouseOut="HideTip('tt332')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowDepth" id=link333 onMouseOver="ShowTip(event, 'tt333', 'link333')" onMouseOut="HideTip('tt333')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowDepth" id=link334 onMouseOver="ShowTip(event, 'tt334', 'link334')" onMouseOut="HideTip('tt334')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowDepth" id=link335 onMouseOver="ShowTip(event, 'tt335', 'link335')" onMouseOut="HideTip('tt335')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowDepth" id=link336 onMouseOver="ShowTip(event, 'tt336', 'link336')" onMouseOut="HideTip('tt336')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowDepth" id=link337 onMouseOver="ShowTip(event, 'tt337', 'link337')" onMouseOut="HideTip('tt337')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowDepth" id=link338 onMouseOver="ShowTip(event, 'tt338', 'link338')" onMouseOut="HideTip('tt338')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowDepth" id=link339 onMouseOver="ShowTip(event, 'tt339', 'link339')" onMouseOut="HideTip('tt339')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowDepth" id=link340 onMouseOver="ShowTip(event, 'tt340', 'link340')" onMouseOut="HideTip('tt340')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowDepth" id=link341 onMouseOver="ShowTip(event, 'tt341', 'link341')" onMouseOut="HideTip('tt341')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>shadowOffset</span><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowOffset" id=link342 onMouseOver="ShowTip(event, 'tt342', 'link342')" onMouseOut="HideTip('tt342')" class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowOffset" id=link343 onMouseOver="ShowTip(event, 'tt343', 'link343')" onMouseOut="HideTip('tt343')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowOffset" id=link344 onMouseOver="ShowTip(event, 'tt344', 'link344')" onMouseOut="HideTip('tt344')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowOffset" id=link345 onMouseOver="ShowTip(event, 'tt345', 'link345')" onMouseOut="HideTip('tt345')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowOffset" id=link346 onMouseOver="ShowTip(event, 'tt346', 'link346')" onMouseOut="HideTip('tt346')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowOffset" id=link347 onMouseOver="ShowTip(event, 'tt347', 'link347')" onMouseOut="HideTip('tt347')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowOffset" id=link348 onMouseOver="ShowTip(event, 'tt348', 'link348')" onMouseOut="HideTip('tt348')" class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowOffset" id=link349 onMouseOver="ShowTip(event, 'tt349', 'link349')" onMouseOut="HideTip('tt349')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowOffset" id=link350 onMouseOver="ShowTip(event, 'tt350', 'link350')" onMouseOut="HideTip('tt350')" class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowOffset" id=link351 onMouseOver="ShowTip(event, 'tt351', 'link351')" onMouseOut="HideTip('tt351')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowRenderer" id=link352 onMouseOver="ShowTip(event, 'tt352', 'link352')" onMouseOut="HideTip('tt352')" class=ISymbol>shadowRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowWidth" id=link353 onMouseOver="ShowTip(event, 'tt353', 'link353')" onMouseOut="HideTip('tt353')" class=ISymbol>shadowWidth</a>, <span class=IParent>Grid</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shapeRenderer" id=link354 onMouseOver="ShowTip(event, 'tt354', 'link354')" onMouseOut="HideTip('tt354')" class=ISymbol>shapeRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>show</span><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.show" id=link355 onMouseOver="ShowTip(event, 'tt355', 'link355')" onMouseOut="HideTip('tt355')" class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.show" id=link356 onMouseOver="ShowTip(event, 'tt356', 'link356')" onMouseOut="HideTip('tt356')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.show" id=link357 onMouseOver="ShowTip(event, 'tt357', 'link357')" onMouseOut="HideTip('tt357')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.show" id=link358 onMouseOver="ShowTip(event, 'tt358', 'link358')" onMouseOut="HideTip('tt358')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.show" id=link359 onMouseOver="ShowTip(event, 'tt359', 'link359')" onMouseOut="HideTip('tt359')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.show" id=link360 onMouseOver="ShowTip(event, 'tt360', 'link360')" onMouseOut="HideTip('tt360')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.show" id=link361 onMouseOver="ShowTip(event, 'tt361', 'link361')" onMouseOut="HideTip('tt361')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.show" id=link362 onMouseOver="ShowTip(event, 'tt362', 'link362')" onMouseOut="HideTip('tt362')" class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.show" id=link363 onMouseOver="ShowTip(event, 'tt363', 'link363')" onMouseOut="HideTip('tt363')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.show" id=link364 onMouseOver="ShowTip(event, 'tt364', 'link364')" onMouseOut="HideTip('tt364')" class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.show" id=link365 onMouseOver="ShowTip(event, 'tt365', 'link365')" onMouseOut="HideTip('tt365')" class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.show" id=link366 onMouseOver="ShowTip(event, 'tt366', 'link366')" onMouseOut="HideTip('tt366')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Legend.show" id=link367 onMouseOver="ShowTip(event, 'tt367', 'link367')" onMouseOut="HideTip('tt367')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.show" id=link368 onMouseOver="ShowTip(event, 'tt368', 'link368')" onMouseOut="HideTip('tt368')" class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.show" id=link369 onMouseOver="ShowTip(event, 'tt369', 'link369')" onMouseOut="HideTip('tt369')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.showBorders" id=link370 onMouseOver="ShowTip(event, 'tt370', 'link370')" onMouseOut="HideTip('tt370')" class=ISymbol>showBorders</a>, <span class=IParent>$.jqplot.<wbr>MekkoRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showCursorLegend" id=link371 onMouseOver="ShowTip(event, 'tt371', 'link371')" onMouseOut="HideTip('tt371')" class=ISymbol>showCursorLegend</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showDataLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.showDataLabels" id=link372 onMouseOver="ShowTip(event, 'tt372', 'link372')" onMouseOut="HideTip('tt372')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.showDataLabels" id=link373 onMouseOver="ShowTip(event, 'tt373', 'link373')" onMouseOut="HideTip('tt373')" class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.showDataLabels" id=link374 onMouseOver="ShowTip(event, 'tt374', 'link374')" onMouseOut="HideTip('tt374')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showGridline</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showGridline" id=link375 onMouseOver="ShowTip(event, 'tt375', 'link375')" onMouseOut="HideTip('tt375')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showGridline" id=link376 onMouseOver="ShowTip(event, 'tt376', 'link376')" onMouseOut="HideTip('tt376')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showHorizontalLine" id=link377 onMouseOver="ShowTip(event, 'tt377', 'link377')" onMouseOut="HideTip('tt377')" class=ISymbol>showHorizontalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showLabel</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showLabel" id=link378 onMouseOver="ShowTip(event, 'tt378', 'link378')" onMouseOut="HideTip('tt378')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.showLabel" id=link379 onMouseOver="ShowTip(event, 'tt379', 'link379')" onMouseOut="HideTip('tt379')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showLabel" id=link380 onMouseOver="ShowTip(event, 'tt380', 'link380')" onMouseOut="HideTip('tt380')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Axis.showLabel" id=link381 onMouseOver="ShowTip(event, 'tt381', 'link381')" onMouseOut="HideTip('tt381')" class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.showLabel" id=link382 onMouseOver="ShowTip(event, 'tt382', 'link382')" onMouseOut="HideTip('tt382')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showLabels</span><div class=ISubIndex><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.showLabels" id=link383 onMouseOver="ShowTip(event, 'tt383', 'link383')" onMouseOut="HideTip('tt383')" class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.showLabels" id=link384 onMouseOver="ShowTip(event, 'tt384', 'link384')" onMouseOut="HideTip('tt384')" class=IParent>Legend</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.showLine" id=link385 onMouseOver="ShowTip(event, 'tt385', 'link385')" onMouseOut="HideTip('tt385')" class=ISymbol>showLine</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.showLines" id=link386 onMouseOver="ShowTip(event, 'tt386', 'link386')" onMouseOut="HideTip('tt386')" class=ISymbol>showLines</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showMark</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showMark" id=link387 onMouseOver="ShowTip(event, 'tt387', 'link387')" onMouseOut="HideTip('tt387')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showMark" id=link388 onMouseOver="ShowTip(event, 'tt388', 'link388')" onMouseOut="HideTip('tt388')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showMarker</span><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showMarker" id=link389 onMouseOver="ShowTip(event, 'tt389', 'link389')" onMouseOut="HideTip('tt389')" class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-core-js.html#Series.showMarker" id=link390 onMouseOver="ShowTip(event, 'tt390', 'link390')" onMouseOut="HideTip('tt390')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.showMinorTicks" id=link391 onMouseOver="ShowTip(event, 'tt391', 'link391')" onMouseOut="HideTip('tt391')" class=ISymbol>showMinorTicks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.showSwatch" id=link392 onMouseOver="ShowTip(event, 'tt392', 'link392')" onMouseOut="HideTip('tt392')" class=ISymbol>showSwatch</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTickLabels" id=link393 onMouseOver="ShowTip(event, 'tt393', 'link393')" onMouseOut="HideTip('tt393')" class=ISymbol>showTickLabels</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.showTickMarks" id=link394 onMouseOver="ShowTip(event, 'tt394', 'link394')" onMouseOut="HideTip('tt394')" class=ISymbol>showTickMarks</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showTicks</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTicks" id=link395 onMouseOver="ShowTip(event, 'tt395', 'link395')" onMouseOut="HideTip('tt395')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.showTicks" id=link396 onMouseOver="ShowTip(event, 'tt396', 'link396')" onMouseOut="HideTip('tt396')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>showTooltip</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltip" id=link397 onMouseOver="ShowTip(event, 'tt397', 'link397')" onMouseOut="HideTip('tt397')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltip" id=link398 onMouseOver="ShowTip(event, 'tt398', 'link398')" onMouseOut="HideTip('tt398')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showTooltip" id=link399 onMouseOver="ShowTip(event, 'tt399', 'link399')" onMouseOut="HideTip('tt399')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipDataPosition" id=link400 onMouseOver="ShowTip(event, 'tt400', 'link400')" onMouseOut="HideTip('tt400')" class=ISymbol>showTooltipDataPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipGridPosition" id=link401 onMouseOver="ShowTip(event, 'tt401', 'link401')" onMouseOut="HideTip('tt401')" class=ISymbol>showTooltipGridPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipOutsideZoom" id=link402 onMouseOver="ShowTip(event, 'tt402', 'link402')" onMouseOut="HideTip('tt402')" class=ISymbol>showTooltipOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltipPrecision" id=link403 onMouseOver="ShowTip(event, 'tt403', 'link403')" onMouseOut="HideTip('tt403')" class=ISymbol>showTooltipPrecision</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipUnitPosition" id=link404 onMouseOver="ShowTip(event, 'tt404', 'link404')" onMouseOut="HideTip('tt404')" class=ISymbol>showTooltipUnitPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showVerticalLine" id=link405 onMouseOver="ShowTip(event, 'tt405', 'link405')" onMouseOut="HideTip('tt405')" class=ISymbol>showVerticalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>size</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.size" id=link406 onMouseOver="ShowTip(event, 'tt406', 'link406')" onMouseOut="HideTip('tt406')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.size" id=link407 onMouseOver="ShowTip(event, 'tt407', 'link407')" onMouseOut="HideTip('tt407')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.sizeAdjust" id=link408 onMouseOver="ShowTip(event, 'tt408', 'link408')" onMouseOut="HideTip('tt408')" class=ISymbol>sizeAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>sliceMargin</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.sliceMargin" id=link409 onMouseOver="ShowTip(event, 'tt409', 'link409')" onMouseOut="HideTip('tt409')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.sliceMargin" id=link410 onMouseOver="ShowTip(event, 'tt410', 'link410')" onMouseOut="HideTip('tt410')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.smooth" id=link411 onMouseOver="ShowTip(event, 'tt411', 'link411')" onMouseOut="HideTip('tt411')" class=ISymbol>smooth</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.sortData" id=link412 onMouseOver="ShowTip(event, 'tt412', 'link412')" onMouseOut="HideTip('tt412')" class=ISymbol>sortData</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.sortMergedLabels" id=link413 onMouseOver="ShowTip(event, 'tt413', 'link413')" onMouseOut="HideTip('tt413')" class=ISymbol>sortMergedLabels</a>, <span class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.stackedValue" id=link414 onMouseOver="ShowTip(event, 'tt414', 'link414')" onMouseOut="HideTip('tt414')" class=ISymbol>stackedValue</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.stackSeries" id=link415 onMouseOver="ShowTip(event, 'tt415', 'link415')" onMouseOut="HideTip('tt415')" class=ISymbol>stackSeries</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.start" id=link416 onMouseOver="ShowTip(event, 'tt416', 'link416')" onMouseOut="HideTip('tt416')" class=ISymbol>start</a>, <span class=IParent>Line</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>startAngle</span><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.startAngle" id=link417 onMouseOver="ShowTip(event, 'tt417', 'link417')" onMouseOut="HideTip('tt417')" class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.startAngle" id=link418 onMouseOver="ShowTip(event, 'tt418', 'link418')" onMouseOut="HideTip('tt418')" class=IParent>$.jqplot.<wbr>PieRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.stop" id=link419 onMouseOver="ShowTip(event, 'tt419', 'link419')" onMouseOut="HideTip('tt419')" class=ISymbol>stop</a>, <span class=IParent>Line</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeRect" id=link420 onMouseOver="ShowTip(event, 'tt420', 'link420')" onMouseOut="HideTip('tt420')" class=ISymbol>strokeRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeStyle" id=link421 onMouseOver="ShowTip(event, 'tt421', 'link421')" onMouseOut="HideTip('tt421')" class=ISymbol>strokeStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>style</span><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.style" id=link422 onMouseOver="ShowTip(event, 'tt422', 'link422')" onMouseOut="HideTip('tt422')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.style" id=link423 onMouseOver="ShowTip(event, 'tt423', 'link423')" onMouseOut="HideTip('tt423')" class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.suffix" id=link424 onMouseOver="ShowTip(event, 'tt424', 'link424')" onMouseOut="HideTip('tt424')" class=ISymbol>suffix</a>, <span class=IParent>$.jqplot.<wbr>AxisTickRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#synchronizeHighlight" id=link425 onMouseOver="ShowTip(event, 'tt425', 'link425')" onMouseOut="HideTip('tt425')" class=ISymbol>synchronizeHighlight</a></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.syncTicks" id=link426 onMouseOver="ShowTip(event, 'tt426', 'link426')" onMouseOut="HideTip('tt426')" class=ISymbol>syncTicks</a>, <span class=IParent>Axis</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt304"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.scaleToHiddenSeries = false</td></tr></table></blockquote>True to include hidden series when computing axes bounds and scaling.</div></div><div class=CToolTip id="tt305"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sectionMargin = 6</td></tr></table></blockquote>spacing between funnel sections in pixels.</div></div><div class=CToolTip id="tt306"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.series = []</td></tr></table></blockquote>Array of series object options. </div></div><div class=CToolTip id="tt307"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesColors = $.jqplot.config.defaultColors</td></tr></table></blockquote>Ann array of CSS color specifications that will be applied, in order, to the series in the plot. </div></div><div class=CToolTip id="tt308"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>seriesDefaults: {}, series:[] }</td></tr></table></blockquote>default options that will be applied to all series. </div></div><div class=CToolTip id="tt309"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesLabelIndex = null</td></tr></table></blockquote>array index for location of labels within data point arrays. </div></div><div class=CToolTip id="tt310"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggle = 'normal'</td></tr></table></blockquote>false to not enable series on/off toggling on the legend. </div></div><div class=CToolTip id="tt311"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.seriesToggleReplot = false</td></tr></table></blockquote>True to replot the chart after toggling series on/off. </div></div><div class=CToolTip id="tt312"><div class=CProperty>wether or not to draw a shadow on the line</div></div><div class=CToolTip id="tt313"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether or not to draw a shadow on the line</div></div><div class=CToolTip id="tt314"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>true or false, wether or not to show the shadow.</div></div><div class=CToolTip id="tt315"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadow = true</td></tr></table></blockquote>wether to show a shadow behind the grid.</div></div><div class=CToolTip id="tt316"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.08</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt317"><div class=CProperty>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt318"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt319"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt320"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt321"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt322"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>transparency of the shadow (0 = transparent, 1 = opaque)</div></div><div class=CToolTip id="tt323"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = 0.07</td></tr></table></blockquote>Alpha transparency of the shadow.</div></div><div class=CToolTip id="tt324"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.07'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt325"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAlpha = '0.1'</td></tr></table></blockquote>Alpha channel transparency of shadow. </div></div><div class=CToolTip id="tt326"><div class=CProperty>Shadow angle in degrees</div></div><div class=CToolTip id="tt327"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt328"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Angle of the shadow on the trend line.</div></div><div class=CToolTip id="tt329"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>shadow angle in degrees</div></div><div class=CToolTip id="tt330"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowAngle = 45</td></tr></table></blockquote>Shadow angle in degrees</div></div><div class=CToolTip id="tt331"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowColor = null</td></tr></table></blockquote>an optional css color spec for the shadow in &lsquo;rgba(n, n, n, n)&rsquo; form</div></div><div class=CToolTip id="tt332"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt333"><div class=CProperty>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt334"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt335"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt336"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt337"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 4</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt338"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 5</td></tr></table></blockquote>number of strokes to apply to the shadow, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt339"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>number of strokes to make of the shadow.</div></div><div class=CToolTip id="tt340"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt341"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowDepth = 3</td></tr></table></blockquote>Number of times shadow is stroked, each stroke offset shadowOffset from the last.</div></div><div class=CToolTip id="tt342"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt343"><div class=CProperty>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt344"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt345"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the area and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt346"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt347"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the gauge ring and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt348"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 2</td></tr></table></blockquote>offset of the shadow from the slice and offset of each succesive stroke of the shadow from the last.</div></div><div class=CToolTip id="tt349"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.0</td></tr></table></blockquote>pixel offset for each stroke of the shadow.</div></div><div class=CToolTip id="tt350"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.5</td></tr></table></blockquote>Offset of each shadow stroke from the border in pixels</div></div><div class=CToolTip id="tt351"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowOffset = 1.25</td></tr></table></blockquote>Shadow offset from line in pixels</div></div><div class=CToolTip id="tt352"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowRenderer = new $.jqplot.ShadowRenderer()</td></tr></table></blockquote>Renderer that will draws the shadows on the marker.</div></div><div class=CToolTip id="tt353"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shadowWidth = 3</td></tr></table></blockquote>width of the stoke for the shadow</div></div><div class=CToolTip id="tt354"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.shapeRenderer = new $.jqplot.ShapeRenderer()</td></tr></table></blockquote>Renderer that will draw the marker.</div></div><div class=CToolTip id="tt355"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt356"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label). </div></div><div class=CToolTip id="tt357"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt358"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the tick (mark and label).</div></div><div class=CToolTip id="tt359"><div class=CProperty>true to show (draw), false to not draw.</div></div><div class=CToolTip id="tt360"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>wether to show the cursor or not.</div></div><div class=CToolTip id="tt361"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>true to show the highlight.</div></div><div class=CToolTip id="tt362"><div class=CProperty>true to show the bands. </div></div><div class=CToolTip id="tt363"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the marker.</div></div><div class=CToolTip id="tt364"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>show the labels or not.</div></div><div class=CToolTip id="tt365"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = $.jqplot.config.enablePlugins</td></tr></table></blockquote>Wether or not to show the trend line.</div></div><div class=CToolTip id="tt366"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the axis on the graph.</div></div><div class=CToolTip id="tt367"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = false</td></tr></table></blockquote>Wether to display the legend on the graph.</div></div><div class=CToolTip id="tt368"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to draw the series.</div></div><div class=CToolTip id="tt369"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.show = true</td></tr></table></blockquote>wether or not to show the title</div></div><div class=CToolTip id="tt370"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showBorders = true</td></tr></table></blockquote>True to draw borders lines between areas on the chart. </div></div><div class=CToolTip id="tt371"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showCursorLegend = false</td></tr></table></blockquote>Replace the plot legend with an enhanced legend displaying intersection information.</div></div><div class=CToolTip id="tt372"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt373"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt374"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showDataLabels = false</td></tr></table></blockquote>true to show data labels on slices.</div></div><div class=CToolTip id="tt375"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt376"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showGridline = true</td></tr></table></blockquote>wether or not to draw the gridline on the grid at this tick.</div></div><div class=CToolTip id="tt377"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showHorizontalLine = false</td></tr></table></blockquote>draw a horizontal line across the plot which follows the cursor.</div></div><div class=CToolTip id="tt378"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt379"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt380"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>wether or not to show the label.</div></div><div class=CToolTip id="tt381"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show the axis label.</div></div><div class=CToolTip id="tt382"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabel = true</td></tr></table></blockquote>true to show label for this series in the legend.</div></div><div class=CToolTip id="tt383"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>True to show labels on bubbles (if any), false to not show.</div></div><div class=CToolTip id="tt384"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLabels = true</td></tr></table></blockquote>true to show the label text on the legend.</div></div><div class=CToolTip id="tt385"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showLine = true</td></tr></table></blockquote>wether to actually draw the line or not. </div></div><div class=CToolTip id="tt386"><div class=CProperty>True to show lines at top and bottom of bands [default: false].</div></div><div class=CToolTip id="tt387"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt388"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMark = true</td></tr></table></blockquote>wether or not to show the mark on the axis.</div></div><div class=CToolTip id="tt389"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>true to show the marker</div></div><div class=CToolTip id="tt390"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMarker = true</td></tr></table></blockquote>wether or not to show the markers at the data points.</div></div><div class=CToolTip id="tt391"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showMinorTicks = true</td></tr></table></blockquote>Wether or not to show minor ticks. </div></div><div class=CToolTip id="tt392"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showSwatches = true</td></tr></table></blockquote>true to show the color swatches on the legend.</div></div><div class=CToolTip id="tt393"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickLabels = true</td></tr></table></blockquote>true to show tick labels next to ticks.</div></div><div class=CToolTip id="tt394"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTickMarks = true</td></tr></table></blockquote>Wether to show the tick marks (line crossing grid) or not. </div></div><div class=CToolTip id="tt395"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>true to show ticks around gauge.</div></div><div class=CToolTip id="tt396"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTicks = true</td></tr></table></blockquote>Wether to show the ticks (both marks and labels) or not. </div></div><div class=CToolTip id="tt397"><div class=CProperty>Show a tooltip with data point values.</div></div><div class=CToolTip id="tt398"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>show a cursor position tooltip. </div></div><div class=CToolTip id="tt399"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltip = true</td></tr></table></blockquote>Show a tooltip with data point values.</div></div><div class=CToolTip id="tt400"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipDataPosition = false</td></tr></table></blockquote>Used with showVerticalLine to show intersecting data points in the tooltip.</div></div><div class=CToolTip id="tt401"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipGridPosition = false</td></tr></table></blockquote>show the grid pixel coordinates of the mouse.</div></div><div class=CToolTip id="tt402"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipOutsideZoom = false</td></tr></table></blockquote>True will keep updating the tooltip when zooming of the grid.</div></div><div class=CToolTip id="tt403"><div class=CProperty>Controls how close to line cursor must be to show tooltip. </div></div><div class=CToolTip id="tt404"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showTooltipUnitPosition = true</td></tr></table></blockquote>show the unit (data) coordinates of the mouse.</div></div><div class=CToolTip id="tt405"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.showVerticalLine = false</td></tr></table></blockquote>draw a vertical line across the plot which follows the cursor. </div></div><div class=CToolTip id="tt406"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 4</td></tr></table></blockquote>Length of the tick beyond the grid in pixels. </div></div><div class=CToolTip id="tt407"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.size = 9.0</td></tr></table></blockquote>Size of the marker (diameter or circle, length of edge of square, etc.)</div></div><div class=CToolTip id="tt408"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sizeAdjust = 5</td></tr></table></blockquote>Pixels to add to the overall size of the highlight.</div></div><div class=CToolTip id="tt409"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between donut slices in degrees.</div></div><div class=CToolTip id="tt410"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sliceMargin = 0</td></tr></table></blockquote>angular spacing between pie slices in degrees.</div></div><div class=CToolTip id="tt411"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.renderer.smooth = false</td></tr></table></blockquote>True to draw a smoothed (interpolated) line through the data points with automatically computed number of smoothing points. </div></div><div class=CToolTip id="tt412"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortData = true</td></tr></table></blockquote>false to not sort the data passed in by the user. </div></div><div class=CToolTip id="tt413"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.sortMergedLabels = false</td></tr></table></blockquote>True to sort tick labels when labels are created by merging x axis values from multiple series. </div></div><div class=CToolTip id="tt414"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackedValue = false</td></tr></table></blockquote>true to display value as stacked in a stacked plot. </div></div><div class=CToolTip id="tt415"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.stackSeries = false</td></tr></table></blockquote>true or false, creates a stack or &ldquo;mountain&rdquo; plot. </div></div><div class=CToolTip id="tt416"><div class=CProperty>[x, y] coordinates for the start of the line.</div></div><div class=CToolTip id="tt417"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing donut in degrees. </div></div><div class=CToolTip id="tt418"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.startAngle = 0</td></tr></table></blockquote>Angle to start drawing pie in degrees. </div></div><div class=CToolTip id="tt419"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>stop: [] }</td></tr></table></blockquote>[x, y] coordinates for the end of the line.</div></div><div class=CToolTip id="tt420"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeRect = false</td></tr></table></blockquote>true to draw shape as a stroked rectangle.</div></div><div class=CToolTip id="tt421"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.strokeStyle = '#999999'</td></tr></table></blockquote>css color spec for the stoke style</div></div><div class=CToolTip id="tt422"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'crosshair'</td></tr></table></blockquote>CSS spec for cursor style</div></div><div class=CToolTip id="tt423"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.style = 'filledCircle'</td></tr></table></blockquote>One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare</div></div><div class=CToolTip id="tt424"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.suffix = ''</td></tr></table></blockquote>String to append to the tick label. </div></div><div class=CToolTip id="tt425"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.synchronizeHighlight = false</td></tr></table></blockquote>Index of another series to highlight when this series is highlighted. </div></div><div class=CToolTip id="tt426"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.syncTicks = null</td></tr></table></blockquote>true to try and synchronize tick spacing across multiple axes so that ticks and grid lines line up. </div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties6.html b/wqflask/wqflask/static/packages/jqplot/docs/index/Properties6.html
deleted file mode 100644
index 985ab8eb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/index/Properties6.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><title>Property Index</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="IndexPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=IPageTitle>Property Index</div><div class=INavigationBar>$#! &middot; 0-9 &middot; <a href="Properties.html#A">A</a> &middot; <a href="Properties.html#B">B</a> &middot; <a href="Properties.html#C">C</a> &middot; <a href="Properties2.html#D">D</a> &middot; <a href="Properties2.html#E">E</a> &middot; <a href="Properties2.html#F">F</a> &middot; <a href="Properties3.html#G">G</a> &middot; <a href="Properties3.html#H">H</a> &middot; <a href="Properties3.html#I">I</a> &middot; J &middot; K &middot; <a href="Properties3.html#L">L</a> &middot; <a href="Properties4.html#M">M</a> &middot; <a href="Properties4.html#N">N</a> &middot; <a href="Properties4.html#O">O</a> &middot; <a href="Properties4.html#P">P</a> &middot; Q &middot; <a href="Properties4.html#R">R</a> &middot; <a href="Properties5.html#S">S</a> &middot; <a href="#T">T</a> &middot; <a href="#U">U</a> &middot; <a href="#V">V</a> &middot; <a href="#W">W</a> &middot; <a href="#X">X</a> &middot; <a href="#Y">Y</a> &middot; <a href="#Z">Z</a></div><table border=0 cellspacing=0 cellpadding=0><tr><td class=IHeading id=IFirstHeading><a name="T"></a>T</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title.text" id=link427 onMouseOver="ShowTip(event, 'tt427', 'link427')" onMouseOut="HideTip('tt427')" class=ISymbol>text</a>, <span class=IParent>Title</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Title.textAlign" id=link428 onMouseOver="ShowTip(event, 'tt428', 'link428')" onMouseOut="HideTip('tt428')" class=ISymbol>textAlign</a>, <span class=IParent>Title</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>textColor</span><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.textColor" id=link429 onMouseOver="ShowTip(event, 'tt429', 'link429')" onMouseOut="HideTip('tt429')" class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.textColor" id=link430 onMouseOver="ShowTip(event, 'tt430', 'link430')" onMouseOut="HideTip('tt430')" class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.textColor" id=link431 onMouseOver="ShowTip(event, 'tt431', 'link431')" onMouseOut="HideTip('tt431')" class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.textColor" id=link432 onMouseOver="ShowTip(event, 'tt432', 'link432')" onMouseOut="HideTip('tt432')" class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.textColor" id=link433 onMouseOver="ShowTip(event, 'tt433', 'link433')" onMouseOut="HideTip('tt433')" class=IParent>Title</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.themes" id=link434 onMouseOver="ShowTip(event, 'tt434', 'link434')" onMouseOut="HideTip('tt434')" class=ISymbol>themes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.thickness" id=link435 onMouseOver="ShowTip(event, 'tt435', 'link435')" onMouseOut="HideTip('tt435')" class=ISymbol>thickness</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickColor" id=link436 onMouseOver="ShowTip(event, 'tt436', 'link436')" onMouseOut="HideTip('tt436')" class=ISymbol>tickColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickInset</span><div class=ISubIndex><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickInset" id=link437 onMouseOver="ShowTip(event, 'tt437', 'link437')" onMouseOut="HideTip('tt437')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.tickInset" id=link438 onMouseOver="ShowTip(event, 'tt438', 'link438')" onMouseOut="HideTip('tt438')" class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickInterval" id=link439 onMouseOver="ShowTip(event, 'tt439', 'link439')" onMouseOut="HideTip('tt439')" class=ISymbol>tickInterval</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.tickLength" id=link440 onMouseOver="ShowTip(event, 'tt440', 'link440')" onMouseOut="HideTip('tt440')" class=ISymbol>tickLength</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.tickMode" id=link441 onMouseOver="ShowTip(event, 'tt441', 'link441')" onMouseOut="HideTip('tt441')" class=ISymbol>tickMode</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickOptions" id=link442 onMouseOver="ShowTip(event, 'tt442', 'link442')" onMouseOut="HideTip('tt442')" class=ISymbol>tickOptions</a>, <span class=IParent>Axis</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickPadding" id=link443 onMouseOver="ShowTip(event, 'tt443', 'link443')" onMouseOut="HideTip('tt443')" class=ISymbol>tickPadding</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickRenderer</span><div class=ISubIndex><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.tickRenderer" id=link444 onMouseOver="ShowTip(event, 'tt444', 'link444')" onMouseOut="HideTip('tt444')" class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickRenderer" id=link445 onMouseOver="ShowTip(event, 'tt445', 'link445')" onMouseOut="HideTip('tt445')" class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickRenderer" id=link446 onMouseOver="ShowTip(event, 'tt446', 'link446')" onMouseOut="HideTip('tt446')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>ticks</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ticks" id=link447 onMouseOver="ShowTip(event, 'tt447', 'link447')" onMouseOut="HideTip('tt447')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.ticks" id=link448 onMouseOver="ShowTip(event, 'tt448', 'link448')" onMouseOut="HideTip('tt448')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tickSpacing</span><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickSpacing" id=link449 onMouseOver="ShowTip(event, 'tt449', 'link449')" onMouseOut="HideTip('tt449')" class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickSpacing" id=link450 onMouseOver="ShowTip(event, 'tt450', 'link450')" onMouseOut="HideTip('tt450')" class=IParent>Axis</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.title" id=link451 onMouseOver="ShowTip(event, 'tt451', 'link451')" onMouseOut="HideTip('tt451')" class=ISymbol>title</a>, <span class=IParent>jqPlot</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipAxes" id=link452 onMouseOver="ShowTip(event, 'tt452', 'link452')" onMouseOut="HideTip('tt452')" class=ISymbol>tooltipAxes</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipAxisGroups" id=link453 onMouseOver="ShowTip(event, 'tt453', 'link453')" onMouseOut="HideTip('tt453')" class=ISymbol>tooltipAxisGroups</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipFadeSpeed</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFadeSpeed" id=link454 onMouseOver="ShowTip(event, 'tt454', 'link454')" onMouseOut="HideTip('tt454')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFadeSpeed" id=link455 onMouseOver="ShowTip(event, 'tt455', 'link455')" onMouseOut="HideTip('tt455')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipFormatString</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFormatString" id=link456 onMouseOver="ShowTip(event, 'tt456', 'link456')" onMouseOut="HideTip('tt456')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipFormatString" id=link457 onMouseOver="ShowTip(event, 'tt457', 'link457')" onMouseOut="HideTip('tt457')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFormatString" id=link458 onMouseOver="ShowTip(event, 'tt458', 'link458')" onMouseOut="HideTip('tt458')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipLocation</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipLocation" id=link459 onMouseOver="ShowTip(event, 'tt459', 'link459')" onMouseOut="HideTip('tt459')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipLocation" id=link460 onMouseOver="ShowTip(event, 'tt460', 'link460')" onMouseOut="HideTip('tt460')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipLocation" id=link461 onMouseOver="ShowTip(event, 'tt461', 'link461')" onMouseOut="HideTip('tt461')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>tooltipOffset</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipOffset" id=link462 onMouseOver="ShowTip(event, 'tt462', 'link462')" onMouseOut="HideTip('tt462')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipOffset" id=link463 onMouseOver="ShowTip(event, 'tt463', 'link463')" onMouseOut="HideTip('tt463')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipOffset" id=link464 onMouseOver="ShowTip(event, 'tt464', 'link464')" onMouseOut="HideTip('tt464')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.transposedData" id=link465 onMouseOver="ShowTip(event, 'tt465', 'link465')" onMouseOut="HideTip('tt465')" class=ISymbol>transposedData</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.type" id=link466 onMouseOver="ShowTip(event, 'tt466', 'link466')" onMouseOut="HideTip('tt466')" class=ISymbol>type</a>, <span class=IParent>$.jqplot.<wbr>Trendline</span></td></tr><tr><td class=IHeading><a name="U"></a>U</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.upBodyColor" id=link467 onMouseOver="ShowTip(event, 'tt467', 'link467')" onMouseOut="HideTip('tt467')" class=ISymbol>upBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>useAxesFormatters</span><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.useAxesFormatters" id=link468 onMouseOver="ShowTip(event, 'tt468', 'link468')" onMouseOut="HideTip('tt468')" class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.useAxesFormatters" id=link469 onMouseOver="ShowTip(event, 'tt469', 'link469')" onMouseOut="HideTip('tt469')" class=IParent>$.jqplot.<wbr>Highlighter</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Series.useNegativeColors" id=link470 onMouseOver="ShowTip(event, 'tt470', 'link470')" onMouseOut="HideTip('tt470')" class=ISymbol>useNegativeColors</a>, <span class=IParent>Series</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Axis.useSeriesColor" id=link471 onMouseOver="ShowTip(event, 'tt471', 'link471')" onMouseOut="HideTip('tt471')" class=ISymbol>useSeriesColor</a>, <span class=IParent>Axis</span></td></tr><tr><td class=IHeading><a name="V"></a>V</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.varyBarColor" id=link472 onMouseOver="ShowTip(event, 'tt472', 'link472')" onMouseOut="HideTip('tt472')" class=ISymbol>varyBarColor</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.varyBlockColors" id=link473 onMouseOver="ShowTip(event, 'tt473', 'link473')" onMouseOut="HideTip('tt473')" class=ISymbol>varyBlockColors</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.varyBubbleColors" id=link474 onMouseOver="ShowTip(event, 'tt474', 'link474')" onMouseOut="HideTip('tt474')" class=ISymbol>varyBubbleColors</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></td></tr><tr><td class=IHeading><a name="W"></a>W</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.waterfall" id=link475 onMouseOver="ShowTip(event, 'tt475', 'link475')" onMouseOut="HideTip('tt475')" class=ISymbol>waterfall</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.wickColor" id=link476 onMouseOver="ShowTip(event, 'tt476', 'link476')" onMouseOut="HideTip('tt476')" class=ISymbol>wickColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.widthRatio" id=link477 onMouseOver="ShowTip(event, 'tt477', 'link477')" onMouseOut="HideTip('tt477')" class=ISymbol>widthRatio</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></td></tr><tr><td class=IHeading><a name="X"></a>X</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>xaxis</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.xaxis" id=link478 onMouseOver="ShowTip(event, 'tt478', 'link478')" onMouseOut="HideTip('tt478')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.xaxis" id=link479 onMouseOver="ShowTip(event, 'tt479', 'link479')" onMouseOut="HideTip('tt479')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmax" id=link480 onMouseOver="ShowTip(event, 'tt480', 'link480')" onMouseOut="HideTip('tt480')" class=ISymbol>xmax</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmin" id=link481 onMouseOver="ShowTip(event, 'tt481', 'link481')" onMouseOut="HideTip('tt481')" class=ISymbol>xmin</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.xoffset" id=link482 onMouseOver="ShowTip(event, 'tt482', 'link482')" onMouseOut="HideTip('tt482')" class=ISymbol>xoffset</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.xpadding" id=link483 onMouseOver="ShowTip(event, 'tt483', 'link483')" onMouseOut="HideTip('tt483')" class=ISymbol>xpadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=IHeading><a name="Y"></a>Y</td><td></td></tr><tr><td class=ISymbolPrefix id=IFirstSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.y" id=link484 onMouseOver="ShowTip(event, 'tt484', 'link484')" onMouseOut="HideTip('tt484')" class=ISymbol>y</a>, <span class=IParent>HorizontalLine</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><span class=ISymbol>yaxis</span><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.yaxis" id=link485 onMouseOver="ShowTip(event, 'tt485', 'link485')" onMouseOut="HideTip('tt485')" class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.yaxis" id=link486 onMouseOver="ShowTip(event, 'tt486', 'link486')" onMouseOut="HideTip('tt486')" class=IParent>Series</a></div></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/jqplot-core-js.html#Legend.yoffset" id=link487 onMouseOver="ShowTip(event, 'tt487', 'link487')" onMouseOut="HideTip('tt487')" class=ISymbol>yoffset</a>, <span class=IParent>Legend</span></td></tr><tr><td class=ISymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.ypadding" id=link488 onMouseOver="ShowTip(event, 'tt488', 'link488')" onMouseOut="HideTip('tt488')" class=ISymbol>ypadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></td></tr><tr><td class=ISymbolPrefix id=ILastSymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.yvalues" id=link489 onMouseOver="ShowTip(event, 'tt489', 'link489')" onMouseOut="HideTip('tt489')" class=ISymbol>yvalues</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></td></tr><tr><td class=IHeading><a name="Z"></a>Z</td><td></td></tr><tr><td class=ISymbolPrefix id=IOnlySymbolPrefix>&nbsp;</td><td class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.zoom" id=link490 onMouseOver="ShowTip(event, 'tt490', 'link490')" onMouseOut="HideTip('tt490')" class=ISymbol>zoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></td></tr></table>
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt427"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.text = text</td></tr></table></blockquote>text of the title;</div></div><div class=CToolTip id="tt428"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textAlign</td></tr></table></blockquote>css text-align spec for the text.</div></div><div class=CToolTip id="tt429"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt430"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt431"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor = '#666666'</td></tr></table></blockquote>css spec for the color attribute.</div></div><div class=CToolTip id="tt432"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the legend text.</div></div><div class=CToolTip id="tt433"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.textColor</td></tr></table></blockquote>css color spec for the text.</div></div><div class=CToolTip id="tt434"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.themes = {}</td></tr></table></blockquote>hash of themes managed by the theme engine. </div></div><div class=CToolTip id="tt435"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.thickness = null</td></tr></table></blockquote>thickness of the donut, auto computed by default Overridden by if innerDiameter is specified.</div></div><div class=CToolTip id="tt436"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickColor = &quot;989898&quot;</td></tr></table></blockquote>color of the tick marks around the gauge.</div></div><div class=CToolTip id="tt437"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt438"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInset = 0</td></tr></table></blockquote>Controls the amount to inset the first and last ticks from the edges of the grid, in multiples of the tick interval. </div></div><div class=CToolTip id="tt439"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickInterval</td></tr></table></blockquote>number of units between ticks. </div></div><div class=CToolTip id="tt440"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickLength = 'auto'</td></tr></table></blockquote>length of the line in pixels indicating open and close price. </div></div><div class=CToolTip id="tt441"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickMode</td></tr></table></blockquote>How to space the ticks on the axis. </div></div><div class=CToolTip id="tt442"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickOptions = {}</td></tr></table></blockquote>Options that will be passed to the tickRenderer, see $.jqplot.AxisTickRenderer options.</div></div><div class=CToolTip id="tt443"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickPadding = null</td></tr></table></blockquote>padding of the tick marks to the outer ring and the tick labels to marks. </div></div><div class=CToolTip id="tt444"><div class=CProperty>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer. </div></div><div class=CToolTip id="tt445"><div class=CProperty>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer. </div></div><div class=CToolTip id="tt446"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickRenderer = $.jqplot.AxisTickRenderer</td></tr></table></blockquote>A class of a rendering engine for creating the ticks labels displayed on the plot, See $.jqplot.AxisTickRenderer.</div></div><div class=CToolTip id="tt447"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>Array of tick values. </div></div><div class=CToolTip id="tt448"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ticks = []</td></tr></table></blockquote>1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis. </div></div><div class=CToolTip id="tt449"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 30</td></tr></table></blockquote>Degrees between ticks. </div></div><div class=CToolTip id="tt450"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tickSpacing = 75</td></tr></table></blockquote>Approximate pixel spacing between ticks on graph. </div></div><div class=CToolTip id="tt451"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.title = new Title()</td></tr></table></blockquote>Title object. </div></div><div class=CToolTip id="tt452"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxes = 'both'</td></tr></table></blockquote>Which axes to display in tooltip, &lsquo;x&rsquo;, &lsquo;y&rsquo; or &lsquo;both&rsquo;, &lsquo;xy&rsquo; or &lsquo;yx&rsquo; &lsquo;both&rsquo; and &lsquo;xy&rsquo; are equivalent, &lsquo;yx&rsquo; reverses order of labels.</div></div><div class=CToolTip id="tt453"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipAxisGroups = []</td></tr></table></blockquote>Show position for the specified axes. </div></div><div class=CToolTip id="tt454"><div class=CProperty>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</div></div><div class=CToolTip id="tt455"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFadeSpeed = &quot;fast&quot;</td></tr></table></blockquote>&lsquo;slow&rsquo;, &lsquo;def&rsquo;, &lsquo;fast&rsquo;, or number of milliseconds.</div></div><div class=CToolTip id="tt456"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>tooltipFormatString: '%d, %d' }</td></tr></table></blockquote>Format string passed the x and y values of the cursor on the line. </div></div><div class=CToolTip id="tt457"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.4P, %.4P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt458"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipFormatString = '%.5P'</td></tr></table></blockquote>sprintf format string for the tooltip. </div></div><div class=CToolTip id="tt459"><div class=CProperty>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</div></div><div class=CToolTip id="tt460"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'se'</td></tr></table></blockquote>Where to position tooltip. </div></div><div class=CToolTip id="tt461"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipLocation = 'nw'</td></tr></table></blockquote>Where to position tooltip, &lsquo;n&rsquo;, &lsquo;ne&rsquo;, &lsquo;e&rsquo;, &lsquo;se&rsquo;, &lsquo;s&rsquo;, &lsquo;sw&rsquo;, &lsquo;w&rsquo;, &lsquo;nw&rsquo;</div></div><div class=CToolTip id="tt462"><div class=CProperty>Pixel offset of tooltip from the highlight.</div></div><div class=CToolTip id="tt463"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 6</td></tr></table></blockquote>Pixel offset of tooltip from the grid boudaries or cursor center.</div></div><div class=CToolTip id="tt464"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.tooltipOffset = 2</td></tr></table></blockquote>Pixel offset of tooltip from the highlight.</div></div><div class=CToolTip id="tt465"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.transposedData = true</td></tr></table></blockquote>NOT IMPLEMENTED YET. </div></div><div class=CToolTip id="tt466"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.type = 'linear'</td></tr></table></blockquote>Either &lsquo;exponential&rsquo;, &lsquo;exp&rsquo;, or &lsquo;linear&rsquo;.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt467"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.upBodyColor = null</td></tr></table></blockquote>Color of candlestick body of an &ldquo;up&rdquo; day. </div></div><div class=CToolTip id="tt468"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt469"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useAxesFormatters = true</td></tr></table></blockquote>Use the x and y axes formatters to format the text in the tooltip.</div></div><div class=CToolTip id="tt470"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useNegativeColors = true</td></tr></table></blockquote>true to color negative values differently in filled and bar charts.</div></div><div class=CToolTip id="tt471"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.useSeriesColor = false</td></tr></table></blockquote>Use the color of the first series associated with this axis for the tick marks and line bordering this axis.</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt472"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBarColor = false</td></tr></table></blockquote>true to color each bar of a series separately rather than have every bar of a given series the same color. </div></div><div class=CToolTip id="tt473"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBlockColors = false</td></tr></table></blockquote>true to vary the color of each block in this series according to the seriesColors array. </div></div><div class=CToolTip id="tt474"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.varyBubbleColors = true</td></tr></table></blockquote>True to vary the color of each bubble in this series according to the seriesColors array. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt475"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.waterfall = false</td></tr></table></blockquote>true to enable waterfall plot.</div></div><div class=CToolTip id="tt476"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.wickColor = null</td></tr></table></blockquote>color of the hi-lo line thorugh the candlestick body. </div></div><div class=CToolTip id="tt477"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.widthRatio = 0.2</td></tr></table></blockquote>The ratio of the width of the top of the funnel to the bottom. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt478"><div class=CProperty>X axis to use for positioning/scaling the line.</div></div><div class=CToolTip id="tt479"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xaxis = 'xaxis'</td></tr></table></blockquote>which x axis to use with this series, either &lsquo;xaxis&rsquo; or &lsquo;x2axis&rsquo;.</div></div><div class=CToolTip id="tt480"><div class=CProperty>x value for the end of the line, null to scale to axis max.</div></div><div class=CToolTip id="tt481"><div class=CProperty>x value for the start of the line, null to scale to axis min.</div></div><div class=CToolTip id="tt482"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt483"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.xpadding = 6</td></tr></table></blockquote>horizontal padding in pixels between point and label</div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt484"><div class=CProperty>y value to position the line</div></div><div class=CToolTip id="tt485"><div class=CProperty>Y axis to use for positioning/scaling the line.</div></div><div class=CToolTip id="tt486"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yaxis = 'yaxis'</td></tr></table></blockquote>which y axis to use with this series, either &lsquo;yaxis&rsquo; or &lsquo;y2axis&rsquo;.</div></div><div class=CToolTip id="tt487"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yoffset = 0</td></tr></table></blockquote>DEPRECATED. </div></div><div class=CToolTip id="tt488"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.ypadding = 6</td></tr></table></blockquote>vertical padding in pixels between point and label</div></div><div class=CToolTip id="tt489"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.yvalues = 1</td></tr></table></blockquote>Number of y values to expect in the data point array. </div></div><!--END_ND_TOOLTIPS-->
-
-
-<!--START_ND_TOOLTIPS-->
-<div class=CToolTip id="tt490"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class=Prototype><tr><td>this.zoom = false</td></tr></table></blockquote>Enable plot zooming.</div></div><!--END_ND_TOOLTIPS-->
-
-</div><!--Index-->
-
-
-<div id=Footer>Copyright &copy; 2009 - 2010 Chris Leonello&nbsp; &middot;&nbsp; Updated October 7th, 2012&nbsp; &middot;&nbsp; <a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->
-
-
-<div id=Menu><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Usage and Options</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../files/usage-txt.html">Usage</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotOptions-txt.html">jqPlot Options</a></div></div><div class=MEntry><div class=MFile><a href="../files/optionsTutorial-txt.html">Options Tutorial</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqPlotCssStyling-txt.html">jqPlot CSS Customization</a></div></div><div class=MEntry><div class=MFile><a href="../files/changes-txt.html">Change Log</a></div></div><div class=MEntry><div class=MLink><a href="../../tests/">Examples</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">API Documentation</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../files/jqplot-core-js.html">jqPlot Charts</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Core Renderers</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../files/jqplot-axisTickRenderer-js.html">Axis Tick Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-canvasGridRenderer-js.html">Canvas Grid Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-divTitleRenderer-js.html">Div Title Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-linearAxisRenderer-js.html">Linear Axis Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-markerRenderer-js.html">Marker Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shapeRenderer-js.html">Shape Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-shadowRenderer-js.html">Shadow Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-lineRenderer-js.html">Line Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-axisLabelRenderer-js.html">Axis Label Renderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-themeEngine-js.html">Theme Engine</a></div></div><div class=MEntry><div class=MFile><a href="../files/jqplot-toImage-js.html">fn</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Plugins</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-barRenderer-js.html">jqplot.<wbr>BarRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html">jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-blockRenderer-js.html">jqplot.<wbr>BlockRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-bubbleRenderer-js.html">jqplot.<wbr>BubbleRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html">jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html">jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html">jqplot.<wbr>CanvasGridRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-canvasOverlay-js.html">jqplot.<wbr>CanvasOverlay</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html">jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ciParser-js.html">jqplot.<wbr>ciParser</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-cursor-js.html">jqplot.<wbr>Cursor</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dateAxisRenderer-js.html">jqplot.<wbr>DateAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-donutRenderer-js.html">jqplot.<wbr>DonutRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-dragable-js.html">jqplot.<wbr>Dragable</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html">jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-funnelRenderer-js.html">jqplot.<wbr>FunnelRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-highlighter-js.html">jqplot.<wbr>Highlighter</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-logAxisRenderer-js.html">jqplot.<wbr>LogAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html">jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-mekkoRenderer-js.html">jqplot.<wbr>MekkoRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html">jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-ohlcRenderer-js.html">jqplot.<wbr>OHLCRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pieRenderer-js.html">jqplot.<wbr>PieRenderer</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pointLabels-js.html">jqplot.<wbr>PointLabels</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html">jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-pyramidRenderer-js.html">jqplot.<wbr>pyramidRenderer.js</a></div></div><div class=MEntry><div class=MFile><a href="../files/plugins/jqplot-trendline-js.html">jqplot.<wbr>Trendline</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../files/gpl-2-0-txt.html">GPL License</a></div></div><div class=MEntry><div class=MFile><a href="../files/MIT-LICENSE-txt.html">MIT License</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex id=MSelected>Properties</div></div><div class=MEntry><div class=MIndex><a href="Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="Hooks.html">Hooks</a></div></div><div class=MEntry><div class=MIndex><a href="Files.html">Files</a></div></div></div></div></div><script type="text/javascript"><!--
-var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
---></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Hooks">Hooks</option><option value="Properties">Properties</option></select></div><script language=JavaScript><!--
-HideAllBut([5, 4, 1], 6);// --></script></div><!--Menu-->
-
-
-<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>
-
-
-<script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/javascript/main.js b/wqflask/wqflask/static/packages/jqplot/docs/javascript/main.js
deleted file mode 100644
index efcdca96..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/javascript/main.js
+++ /dev/null
@@ -1,836 +0,0 @@
-// This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
-// Natural Docs is licensed under the GPL
-
-
-//
-// Browser Styles
-// ____________________________________________________________________________
-
-var agt=navigator.userAgent.toLowerCase();
-var browserType;
-var browserVer;
-
-if (agt.indexOf("opera") != -1)
- {
- browserType = "Opera";
-
- if (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1)
- { browserVer = "Opera7"; }
- else if (agt.indexOf("opera 8") != -1 || agt.indexOf("opera/8") != -1)
- { browserVer = "Opera8"; }
- else if (agt.indexOf("opera 9") != -1 || agt.indexOf("opera/9") != -1)
- { browserVer = "Opera9"; }
- }
-
-else if (agt.indexOf("applewebkit") != -1)
- {
- browserType = "Safari";
-
- if (agt.indexOf("version/3") != -1)
- { browserVer = "Safari3"; }
- else if (agt.indexOf("safari/4") != -1)
- { browserVer = "Safari2"; }
- }
-
-else if (agt.indexOf("khtml") != -1)
- {
- browserType = "Konqueror";
- }
-
-else if (agt.indexOf("msie") != -1)
- {
- browserType = "IE";
-
- if (agt.indexOf("msie 6") != -1)
- { browserVer = "IE6"; }
- else if (agt.indexOf("msie 7") != -1)
- { browserVer = "IE7"; }
- }
-
-else if (agt.indexOf("gecko") != -1)
- {
- browserType = "Firefox";
-
- if (agt.indexOf("rv:1.7") != -1)
- { browserVer = "Firefox1"; }
- else if (agt.indexOf("rv:1.8)") != -1 || agt.indexOf("rv:1.8.0") != -1)
- { browserVer = "Firefox15"; }
- else if (agt.indexOf("rv:1.8.1") != -1)
- { browserVer = "Firefox2"; }
- }
-
-
-//
-// Support Functions
-// ____________________________________________________________________________
-
-
-function GetXPosition(item)
- {
- var position = 0;
-
- if (item.offsetWidth != null)
- {
- while (item != document.body && item != null)
- {
- position += item.offsetLeft;
- item = item.offsetParent;
- };
- };
-
- return position;
- };
-
-
-function GetYPosition(item)
- {
- var position = 0;
-
- if (item.offsetWidth != null)
- {
- while (item != document.body && item != null)
- {
- position += item.offsetTop;
- item = item.offsetParent;
- };
- };
-
- return position;
- };
-
-
-function MoveToPosition(item, x, y)
- {
- // Opera 5 chokes on the px extension, so it can use the Microsoft one instead.
-
- if (item.style.left != null)
- {
- item.style.left = x + "px";
- item.style.top = y + "px";
- }
- else if (item.style.pixelLeft != null)
- {
- item.style.pixelLeft = x;
- item.style.pixelTop = y;
- };
- };
-
-
-//
-// Menu
-// ____________________________________________________________________________
-
-
-function ToggleMenu(id)
- {
- if (!window.document.getElementById)
- { return; };
-
- var display = window.document.getElementById(id).style.display;
-
- if (display == "none")
- { display = "block"; }
- else
- { display = "none"; }
-
- window.document.getElementById(id).style.display = display;
- }
-
-function HideAllBut(ids, max)
- {
- if (document.getElementById)
- {
- ids.sort( function(a,b) { return a - b; } );
- var number = 1;
-
- while (number < max)
- {
- if (ids.length > 0 && number == ids[0])
- { ids.shift(); }
- else
- {
- document.getElementById("MGroupContent" + number).style.display = "none";
- };
-
- number++;
- };
- };
- }
-
-
-//
-// Tooltips
-// ____________________________________________________________________________
-
-
-var tooltipTimer = 0;
-
-function ShowTip(event, tooltipID, linkID)
- {
- if (tooltipTimer)
- { clearTimeout(tooltipTimer); };
-
- var docX = event.clientX + window.pageXOffset;
- var docY = event.clientY + window.pageYOffset;
-
- var showCommand = "ReallyShowTip('" + tooltipID + "', '" + linkID + "', " + docX + ", " + docY + ")";
-
- tooltipTimer = setTimeout(showCommand, 1000);
- }
-
-function ReallyShowTip(tooltipID, linkID, docX, docY)
- {
- tooltipTimer = 0;
-
- var tooltip;
- var link;
-
- if (document.getElementById)
- {
- tooltip = document.getElementById(tooltipID);
- link = document.getElementById(linkID);
- }
-/* else if (document.all)
- {
- tooltip = eval("document.all['" + tooltipID + "']");
- link = eval("document.all['" + linkID + "']");
- }
-*/
- if (tooltip)
- {
- var left = GetXPosition(link);
- var top = GetYPosition(link);
- top += link.offsetHeight;
-
-
- // The fallback method is to use the mouse X and Y relative to the document. We use a separate if and test if its a number
- // in case some browser snuck through the above if statement but didn't support everything.
-
- if (!isFinite(top) || top == 0)
- {
- left = docX;
- top = docY;
- }
-
- // Some spacing to get it out from under the cursor.
-
- top += 10;
-
- // Make sure the tooltip doesnt get smushed by being too close to the edge, or in some browsers, go off the edge of the
- // page. We do it here because Konqueror does get offsetWidth right even if it doesnt get the positioning right.
-
- if (tooltip.offsetWidth != null)
- {
- var width = tooltip.offsetWidth;
- var docWidth = document.body.clientWidth;
-
- if (left + width > docWidth)
- { left = docWidth - width - 1; }
-
- // If there's a horizontal scroll bar we could go past zero because it's using the page width, not the window width.
- if (left < 0)
- { left = 0; };
- }
-
- MoveToPosition(tooltip, left, top);
- tooltip.style.visibility = "visible";
- }
- }
-
-function HideTip(tooltipID)
- {
- if (tooltipTimer)
- {
- clearTimeout(tooltipTimer);
- tooltipTimer = 0;
- }
-
- var tooltip;
-
- if (document.getElementById)
- { tooltip = document.getElementById(tooltipID); }
- else if (document.all)
- { tooltip = eval("document.all['" + tooltipID + "']"); }
-
- if (tooltip)
- { tooltip.style.visibility = "hidden"; }
- }
-
-
-//
-// Blockquote fix for IE
-// ____________________________________________________________________________
-
-
-function NDOnLoad()
- {
- if (browserVer == "IE6")
- {
- var scrollboxes = document.getElementsByTagName('blockquote');
-
- if (scrollboxes.item(0))
- {
- NDDoResize();
- window.onresize=NDOnResize;
- };
- };
- };
-
-
-var resizeTimer = 0;
-
-function NDOnResize()
- {
- if (resizeTimer != 0)
- { clearTimeout(resizeTimer); };
-
- resizeTimer = setTimeout(NDDoResize, 250);
- };
-
-
-function NDDoResize()
- {
- var scrollboxes = document.getElementsByTagName('blockquote');
-
- var i;
- var item;
-
- i = 0;
- while (item = scrollboxes.item(i))
- {
- item.style.width = 100;
- i++;
- };
-
- i = 0;
- while (item = scrollboxes.item(i))
- {
- item.style.width = item.parentNode.offsetWidth;
- i++;
- };
-
- clearTimeout(resizeTimer);
- resizeTimer = 0;
- }
-
-
-
-/* ________________________________________________________________________________________________________
-
- Class: SearchPanel
- ________________________________________________________________________________________________________
-
- A class handling everything associated with the search panel.
-
- Parameters:
-
- name - The name of the global variable that will be storing this instance. Is needed to be able to set timeouts.
- mode - The mode the search is going to work in. Pass <NaturalDocs::Builder::Base->CommandLineOption()>, so the
- value will be something like "HTML" or "FramedHTML".
-
- ________________________________________________________________________________________________________
-*/
-
-
-function SearchPanel(name, mode, resultsPath)
- {
- if (!name || !mode || !resultsPath)
- { alert("Incorrect parameters to SearchPanel."); };
-
-
- // Group: Variables
- // ________________________________________________________________________
-
- /*
- var: name
- The name of the global variable that will be storing this instance of the class.
- */
- this.name = name;
-
- /*
- var: mode
- The mode the search is going to work in, such as "HTML" or "FramedHTML".
- */
- this.mode = mode;
-
- /*
- var: resultsPath
- The relative path from the current HTML page to the results page directory.
- */
- this.resultsPath = resultsPath;
-
- /*
- var: keyTimeout
- The timeout used between a keystroke and when a search is performed.
- */
- this.keyTimeout = 0;
-
- /*
- var: keyTimeoutLength
- The length of <keyTimeout> in thousandths of a second.
- */
- this.keyTimeoutLength = 500;
-
- /*
- var: lastSearchValue
- The last search string executed, or an empty string if none.
- */
- this.lastSearchValue = "";
-
- /*
- var: lastResultsPage
- The last results page. The value is only relevant if <lastSearchValue> is set.
- */
- this.lastResultsPage = "";
-
- /*
- var: deactivateTimeout
-
- The timeout used between when a control is deactivated and when the entire panel is deactivated. Is necessary
- because a control may be deactivated in favor of another control in the same panel, in which case it should stay
- active.
- */
- this.deactivateTimout = 0;
-
- /*
- var: deactivateTimeoutLength
- The length of <deactivateTimeout> in thousandths of a second.
- */
- this.deactivateTimeoutLength = 200;
-
-
-
-
- // Group: DOM Elements
- // ________________________________________________________________________
-
-
- // Function: DOMSearchField
- this.DOMSearchField = function()
- { return document.getElementById("MSearchField"); };
-
- // Function: DOMSearchType
- this.DOMSearchType = function()
- { return document.getElementById("MSearchType"); };
-
- // Function: DOMPopupSearchResults
- this.DOMPopupSearchResults = function()
- { return document.getElementById("MSearchResults"); };
-
- // Function: DOMPopupSearchResultsWindow
- this.DOMPopupSearchResultsWindow = function()
- { return document.getElementById("MSearchResultsWindow"); };
-
- // Function: DOMSearchPanel
- this.DOMSearchPanel = function()
- { return document.getElementById("MSearchPanel"); };
-
-
-
-
- // Group: Event Handlers
- // ________________________________________________________________________
-
-
- /*
- Function: OnSearchFieldFocus
- Called when focus is added or removed from the search field.
- */
- this.OnSearchFieldFocus = function(isActive)
- {
- this.Activate(isActive);
- };
-
-
- /*
- Function: OnSearchFieldChange
- Called when the content of the search field is changed.
- */
- this.OnSearchFieldChange = function()
- {
- if (this.keyTimeout)
- {
- clearTimeout(this.keyTimeout);
- this.keyTimeout = 0;
- };
-
- var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
-
- if (searchValue != this.lastSearchValue)
- {
- if (searchValue != "")
- {
- this.keyTimeout = setTimeout(this.name + ".Search()", this.keyTimeoutLength);
- }
- else
- {
- if (this.mode == "HTML")
- { this.DOMPopupSearchResultsWindow().style.display = "none"; };
- this.lastSearchValue = "";
- };
- };
- };
-
-
- /*
- Function: OnSearchTypeFocus
- Called when focus is added or removed from the search type.
- */
- this.OnSearchTypeFocus = function(isActive)
- {
- this.Activate(isActive);
- };
-
-
- /*
- Function: OnSearchTypeChange
- Called when the search type is changed.
- */
- this.OnSearchTypeChange = function()
- {
- var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
-
- if (searchValue != "")
- {
- this.Search();
- };
- };
-
-
-
- // Group: Action Functions
- // ________________________________________________________________________
-
-
- /*
- Function: CloseResultsWindow
- Closes the results window.
- */
- this.CloseResultsWindow = function()
- {
- this.DOMPopupSearchResultsWindow().style.display = "none";
- this.Activate(false, true);
- };
-
-
- /*
- Function: Search
- Performs a search.
- */
- this.Search = function()
- {
- this.keyTimeout = 0;
-
- var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
- var searchTopic = this.DOMSearchType().value;
-
- var pageExtension = searchValue.substr(0,1);
-
- if (pageExtension.match(/^[a-z]/i))
- { pageExtension = pageExtension.toUpperCase(); }
- else if (pageExtension.match(/^[0-9]/))
- { pageExtension = 'Numbers'; }
- else
- { pageExtension = "Symbols"; };
-
- var resultsPage;
- var resultsPageWithSearch;
- var hasResultsPage;
-
- // indexSectionsWithContent is defined in searchdata.js
- if (indexSectionsWithContent[searchTopic][pageExtension] == true)
- {
- resultsPage = this.resultsPath + '/' + searchTopic + pageExtension + '.html';
- resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
- hasResultsPage = true;
- }
- else
- {
- resultsPage = this.resultsPath + '/NoResults.html';
- resultsPageWithSearch = resultsPage;
- hasResultsPage = false;
- };
-
- var resultsFrame;
- if (this.mode == "HTML")
- { resultsFrame = window.frames.MSearchResults; }
- else if (this.mode == "FramedHTML")
- { resultsFrame = window.top.frames['Content']; };
-
-
- if (resultsPage != this.lastResultsPage ||
-
- // Bug in IE. If everything becomes hidden in a run, none of them will be able to be reshown in the next for some
- // reason. It counts the right number of results, and you can even read the display as "block" after setting it, but it
- // just doesn't work in IE 6 or IE 7. So if we're on the right page but the previous search had no results, reload the
- // page anyway to get around the bug.
- (browserType == "IE" && hasResultsPage &&
- (!resultsFrame.searchResults || resultsFrame.searchResults.lastMatchCount == 0)) )
-
- {
- resultsFrame.location.href = resultsPageWithSearch;
- }
-
- // So if the results page is right and there's no IE bug, reperform the search on the existing page. We have to check if there
- // are results because NoResults.html doesn't have any JavaScript, and it would be useless to do anything on that page even
- // if it did.
- else if (hasResultsPage)
- {
- // We need to check if this exists in case the frame is present but didn't finish loading.
- if (resultsFrame.searchResults)
- { resultsFrame.searchResults.Search(searchValue); }
-
- // Otherwise just reload instead of waiting.
- else
- { resultsFrame.location.href = resultsPageWithSearch; };
- };
-
-
- var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
-
- if (this.mode == "HTML" && domPopupSearchResultsWindow.style.display != "block")
- {
- var domSearchType = this.DOMSearchType();
-
- var left = GetXPosition(domSearchType);
- var top = GetYPosition(domSearchType) + domSearchType.offsetHeight;
-
- MoveToPosition(domPopupSearchResultsWindow, left, top);
- domPopupSearchResultsWindow.style.display = 'block';
- };
-
-
- this.lastSearchValue = searchValue;
- this.lastResultsPage = resultsPage;
- };
-
-
-
- // Group: Activation Functions
- // Functions that handle whether the entire panel is active or not.
- // ________________________________________________________________________
-
-
- /*
- Function: Activate
-
- Activates or deactivates the search panel, resetting things to their default values if necessary. You can call this on every
- control's OnBlur() and it will handle not deactivating the entire panel when focus is just switching between them transparently.
-
- Parameters:
-
- isActive - Whether you're activating or deactivating the panel.
- ignoreDeactivateDelay - Set if you're positive the action will deactivate the panel and thus want to skip the delay.
- */
- this.Activate = function(isActive, ignoreDeactivateDelay)
- {
- // We want to ignore isActive being false while the results window is open.
- if (isActive || (this.mode == "HTML" && this.DOMPopupSearchResultsWindow().style.display == "block"))
- {
- if (this.inactivateTimeout)
- {
- clearTimeout(this.inactivateTimeout);
- this.inactivateTimeout = 0;
- };
-
- this.DOMSearchPanel().className = 'MSearchPanelActive';
-
- var searchField = this.DOMSearchField();
-
- if (searchField.value == 'Search')
- { searchField.value = ""; }
- }
- else if (!ignoreDeactivateDelay)
- {
- this.inactivateTimeout = setTimeout(this.name + ".InactivateAfterTimeout()", this.inactivateTimeoutLength);
- }
- else
- {
- this.InactivateAfterTimeout();
- };
- };
-
-
- /*
- Function: InactivateAfterTimeout
-
- Called by <inactivateTimeout>, which is set by <Activate()>. Inactivation occurs on a timeout because a control may
- receive OnBlur() when focus is really transferring to another control in the search panel. In this case we don't want to
- actually deactivate the panel because not only would that cause a visible flicker but it could also reset the search value.
- So by doing it on a timeout instead, there's a short period where the second control's OnFocus() can cancel the deactivation.
- */
- this.InactivateAfterTimeout = function()
- {
- this.inactivateTimeout = 0;
-
- this.DOMSearchPanel().className = 'MSearchPanelInactive';
- this.DOMSearchField().value = "Search";
-
- this.lastSearchValue = "";
- this.lastResultsPage = "";
- };
- };
-
-
-
-
-/* ________________________________________________________________________________________________________
-
- Class: SearchResults
- _________________________________________________________________________________________________________
-
- The class that handles everything on the search results page.
- _________________________________________________________________________________________________________
-*/
-
-
-function SearchResults(name, mode)
- {
- /*
- var: mode
- The mode the search is going to work in, such as "HTML" or "FramedHTML".
- */
- this.mode = mode;
-
- /*
- var: lastMatchCount
- The number of matches from the last run of <Search()>.
- */
- this.lastMatchCount = 0;
-
-
- /*
- Function: Toggle
- Toggles the visibility of the passed element ID.
- */
- this.Toggle = function(id)
- {
- if (this.mode == "FramedHTML")
- { return; };
-
- var parentElement = document.getElementById(id);
-
- var element = parentElement.firstChild;
-
- while (element && element != parentElement)
- {
- if (element.nodeName == 'DIV' && element.className == 'ISubIndex')
- {
- if (element.style.display == 'block')
- { element.style.display = "none"; }
- else
- { element.style.display = 'block'; }
- };
-
- if (element.nodeName == 'DIV' && element.hasChildNodes())
- { element = element.firstChild; }
- else if (element.nextSibling)
- { element = element.nextSibling; }
- else
- {
- do
- {
- element = element.parentNode;
- }
- while (element && element != parentElement && !element.nextSibling);
-
- if (element && element != parentElement)
- { element = element.nextSibling; };
- };
- };
- };
-
-
- /*
- Function: Search
-
- Searches for the passed string. If there is no parameter, it takes it from the URL query.
-
- Always returns true, since other documents may try to call it and that may or may not be possible.
- */
- this.Search = function(search)
- {
- if (!search)
- {
- search = window.location.search;
- search = search.substring(1); // Remove the leading ?
- search = unescape(search);
- };
-
- search = search.replace(/^ +/, "");
- search = search.replace(/ +$/, "");
- search = search.toLowerCase();
-
- if (search.match(/[^a-z0-9]/)) // Just a little speedup so it doesn't have to go through the below unnecessarily.
- {
- search = search.replace(/\_/g, "_und");
- search = search.replace(/\ +/gi, "_spc");
- search = search.replace(/\~/g, "_til");
- search = search.replace(/\!/g, "_exc");
- search = search.replace(/\@/g, "_att");
- search = search.replace(/\#/g, "_num");
- search = search.replace(/\$/g, "_dol");
- search = search.replace(/\%/g, "_pct");
- search = search.replace(/\^/g, "_car");
- search = search.replace(/\&/g, "_amp");
- search = search.replace(/\*/g, "_ast");
- search = search.replace(/\(/g, "_lpa");
- search = search.replace(/\)/g, "_rpa");
- search = search.replace(/\-/g, "_min");
- search = search.replace(/\+/g, "_plu");
- search = search.replace(/\=/g, "_equ");
- search = search.replace(/\{/g, "_lbc");
- search = search.replace(/\}/g, "_rbc");
- search = search.replace(/\[/g, "_lbk");
- search = search.replace(/\]/g, "_rbk");
- search = search.replace(/\:/g, "_col");
- search = search.replace(/\;/g, "_sco");
- search = search.replace(/\"/g, "_quo");
- search = search.replace(/\'/g, "_apo");
- search = search.replace(/\</g, "_lan");
- search = search.replace(/\>/g, "_ran");
- search = search.replace(/\,/g, "_com");
- search = search.replace(/\./g, "_per");
- search = search.replace(/\?/g, "_que");
- search = search.replace(/\//g, "_sla");
- search = search.replace(/[^a-z0-9\_]i/gi, "_zzz");
- };
-
- var resultRows = document.getElementsByTagName("div");
- var matches = 0;
-
- var i = 0;
- while (i < resultRows.length)
- {
- var row = resultRows.item(i);
-
- if (row.className == "SRResult")
- {
- var rowMatchName = row.id.toLowerCase();
- rowMatchName = rowMatchName.replace(/^sr\d*_/, '');
-
- if (search.length <= rowMatchName.length && rowMatchName.substr(0, search.length) == search)
- {
- row.style.display = "block";
- matches++;
- }
- else
- { row.style.display = "none"; };
- };
-
- i++;
- };
-
- document.getElementById("Searching").style.display="none";
-
- if (matches == 0)
- { document.getElementById("NoMatches").style.display="block"; }
- else
- { document.getElementById("NoMatches").style.display="none"; }
-
- this.lastMatchCount = matches;
-
- return true;
- };
- };
-
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/javascript/searchdata.js b/wqflask/wqflask/static/packages/jqplot/docs/javascript/searchdata.js
deleted file mode 100644
index 72083b4e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/javascript/searchdata.js
+++ /dev/null
@@ -1,182 +0,0 @@
-var indexSectionsWithContent = {
- "General": {
- "Symbols": true,
- "Numbers": false,
- "A": true,
- "B": true,
- "C": true,
- "D": true,
- "E": true,
- "F": true,
- "G": true,
- "H": true,
- "I": true,
- "J": true,
- "K": false,
- "L": true,
- "M": true,
- "N": true,
- "O": true,
- "P": true,
- "Q": true,
- "R": true,
- "S": true,
- "T": true,
- "U": true,
- "V": true,
- "W": true,
- "X": true,
- "Y": true,
- "Z": true
- },
- "Functions": {
- "Symbols": false,
- "Numbers": false,
- "A": false,
- "B": false,
- "C": true,
- "D": true,
- "E": false,
- "F": false,
- "G": true,
- "H": false,
- "I": true,
- "J": false,
- "K": false,
- "L": false,
- "M": true,
- "N": true,
- "O": false,
- "P": false,
- "Q": true,
- "R": true,
- "S": true,
- "T": false,
- "U": false,
- "V": false,
- "W": false,
- "X": false,
- "Y": false,
- "Z": true
- },
- "Files": {
- "Symbols": false,
- "Numbers": false,
- "A": false,
- "B": false,
- "C": false,
- "D": false,
- "E": false,
- "F": false,
- "G": false,
- "H": false,
- "I": false,
- "J": true,
- "K": false,
- "L": false,
- "M": false,
- "N": false,
- "O": false,
- "P": false,
- "Q": false,
- "R": false,
- "S": false,
- "T": false,
- "U": false,
- "V": false,
- "W": false,
- "X": false,
- "Y": false,
- "Z": false
- },
- "Classes": {
- "Symbols": true,
- "Numbers": false,
- "A": true,
- "B": false,
- "C": false,
- "D": true,
- "E": false,
- "F": false,
- "G": true,
- "H": true,
- "I": false,
- "J": true,
- "K": false,
- "L": true,
- "M": false,
- "N": false,
- "O": false,
- "P": false,
- "Q": false,
- "R": false,
- "S": true,
- "T": true,
- "U": false,
- "V": true,
- "W": false,
- "X": false,
- "Y": false,
- "Z": false
- },
- "Hooks": {
- "Symbols": false,
- "Numbers": false,
- "A": true,
- "B": false,
- "C": false,
- "D": false,
- "E": true,
- "F": false,
- "G": false,
- "H": false,
- "I": false,
- "J": true,
- "K": false,
- "L": false,
- "M": false,
- "N": false,
- "O": false,
- "P": true,
- "Q": false,
- "R": false,
- "S": false,
- "T": false,
- "U": false,
- "V": false,
- "W": false,
- "X": false,
- "Y": false,
- "Z": false
- },
- "Properties": {
- "Symbols": false,
- "Numbers": false,
- "A": true,
- "B": true,
- "C": true,
- "D": true,
- "E": true,
- "F": true,
- "G": true,
- "H": true,
- "I": true,
- "J": false,
- "K": false,
- "L": true,
- "M": true,
- "N": true,
- "O": true,
- "P": true,
- "Q": false,
- "R": true,
- "S": true,
- "T": true,
- "U": true,
- "V": true,
- "W": true,
- "X": true,
- "Y": true,
- "Z": true
- }
- } \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesA.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesA.html
deleted file mode 100644
index 2f4dab57..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesA.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Axis><div class=IEntry><a href="../files/jqplot-core-js.html#Axis" target=_parent class=ISymbol>Axis</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesD.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesD.html
deleted file mode 100644
index 135eeb6a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesD.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_DashedHorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine" target=_parent class=ISymbol>DashedHorizontalLine</a></div></div><div class=SRResult id=SR_DashedVerticalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine" target=_parent class=ISymbol>DashedVerticalLine</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesG.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesG.html
deleted file mode 100644
index 36f121b0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesG.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Grid><div class=IEntry><a href="../files/jqplot-core-js.html#Grid" target=_parent class=ISymbol>Grid</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesH.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesH.html
deleted file mode 100644
index c411b320..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesH.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_HorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine" target=_parent class=ISymbol>HorizontalLine</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesJ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesJ.html
deleted file mode 100644
index b2250098..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesJ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_jqPlot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot" target=_parent class=ISymbol>jqPlot</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesL.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesL.html
deleted file mode 100644
index 6a93b819..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesL.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Legend><div class=IEntry><a href="../files/jqplot-core-js.html#Legend" target=_parent class=ISymbol>Legend</a></div></div><div class=SRResult id=SR_Line><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line" target=_parent class=ISymbol>Line</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesS.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesS.html
deleted file mode 100644
index 53823e7d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesS.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Series><div class=IEntry><a href="../files/jqplot-core-js.html#Series" target=_parent class=ISymbol>Series</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesSymbols.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesSymbols.html
deleted file mode 100644
index 53396614..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesSymbols.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR__dol_perfn><div class=IEntry><a href="../files/jqplot-toImage-js.html#$.fn" target=_parent class=ISymbol>$.fn</a></div></div><div class=SRResult id=SR__dol_perjqplot><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot" target=_parent class=ISymbol>$.jqplot</a></div></div><div class=SRResult id=SR__dol_perjqplot_perAxisLabelRenderer><div class=IEntry><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>AxisLabelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perAxisTickRenderer><div class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>AxisTickRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBarRenderer><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BarRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBezierCurveRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js" target=_parent class=ISymbol>$.jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBlockRenderer><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BlockRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBubbleRenderer><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BubbleRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasAxisLabelRenderer><div class=IEntry><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasAxisTickRenderer><div class=IEntry><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasGridRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR__dol_perjqplot_perCanvasGridRenderer')" class=ISymbol>$.jqplot.<wbr>CanvasGridRenderer</a><div class=ISubIndex><a href="../files/jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" target=_parent class=IFile>jqplot.<wbr>canvasGridRenderer.js</a><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html#$.jqplot.CanvasGridRenderer" target=_parent class=IFile>plugins/<wbr>jqplot.<wbr>pyramidGridRenderer.js</a></div></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasOverlay><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasOverlay</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCategoryAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perciParser><div class=IEntry><a href="../files/plugins/jqplot-ciParser-js.html#$.jqplot.ciParser" target=_parent class=ISymbol>$.jqplot.<wbr>ciParser</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCursor><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor" target=_parent class=ISymbol>$.jqplot.<wbr>Cursor</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDateAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DateAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDivTitleRenderer><div class=IEntry><a href="../files/jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DivTitleRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDonutLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DonutLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDonutRenderer><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DonutRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDragable><div class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable" target=_parent class=ISymbol>$.jqplot.<wbr>Dragable</a></div></div><div class=SRResult id=SR__dol_perjqplot_perFunnelLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>FunnelLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perFunnelRenderer><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>FunnelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perHighlighter><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter" target=_parent class=ISymbol>$.jqplot.<wbr>Highlighter</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLinearAxisRenderer><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LinearAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLineRenderer><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LineRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLogAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LogAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMarkerRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MarkerRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMeterGaugeRenderer><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perOHLCRenderer><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>OHLCRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPieLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>PieLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPieRenderer><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>PieRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPointLabels><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels" target=_parent class=ISymbol>$.jqplot.<wbr>PointLabels</a></div></div><div class=SRResult id=SR__dol_perjqplot_pershadowRenderer><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>shadowRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_pershapeRenderer><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>shapeRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perThemeEngine><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine" target=_parent class=ISymbol>$.jqplot.<wbr>ThemeEngine</a></div></div><div class=SRResult id=SR__dol_perjqplot_perTrendline><div class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline" target=_parent class=ISymbol>$.jqplot.<wbr>Trendline</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesT.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesT.html
deleted file mode 100644
index 782f11db..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesT.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_Title><div class=IEntry><a href="../files/jqplot-core-js.html#Title" target=_parent class=ISymbol>Title</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesV.html b/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesV.html
deleted file mode 100644
index 62d2e7cb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/ClassesV.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_VerticalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#VerticalLine" target=_parent class=ISymbol>VerticalLine</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FilesJ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FilesJ.html
deleted file mode 100644
index 3c66afa0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FilesJ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_jqplot_perenhancedLegendRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#jqplot.enhancedLegendRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=SRResult id=SR_jqplot_perpyramidAxisRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#jqplot.pyramidAxisRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=SRResult id=SR_jqplot_perpyramidRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#jqplot.pyramidRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>pyramidRenderer.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsC.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsC.html
deleted file mode 100644
index 40135d3a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsC.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_copy><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.copy" target=_parent class=ISymbol>copy</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsD.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsD.html
deleted file mode 100644
index 2c2bed5d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsD.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_destroy><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.destroy" target=_parent class=ISymbol>destroy</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_draw><div class=IEntry><a href="javascript:searchResults.Toggle('SR_draw')" class=ISymbol>draw</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.draw" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.draw" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.draw" target=_parent class=IParent>jqPlot</a></div></div></div><div class=SRResult id=SR_drawSeries><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.drawSeries" target=_parent class=ISymbol>drawSeries</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsG.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsG.html
deleted file mode 100644
index 561eabc0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsG.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_get><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.get" target=_parent class=ISymbol>get</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_getThemeNames><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemeNames" target=_parent class=ISymbol>getThemeNames</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_getThemes><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemes" target=_parent class=ISymbol>getThemes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsI.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsI.html
deleted file mode 100644
index 45090983..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsI.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_init><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.init" target=_parent class=ISymbol>init</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsM.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsM.html
deleted file mode 100644
index 0b6446cb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsM.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeGridData><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeGridData')" class=ISymbol>makeGridData</a><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.makeGridData" target=_parent class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.makeGridData" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></div></div><div class=SRResult id=SR_moveBlock><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.moveBlock" target=_parent class=ISymbol>moveBlock</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_moveSeriesToBack><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToBack" target=_parent class=ISymbol>moveSeriesToBack</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_moveSeriesToFront><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToFront" target=_parent class=ISymbol>moveSeriesToFront</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsN.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsN.html
deleted file mode 100644
index 7cc60bfe..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsN.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_newTheme><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.newTheme" target=_parent class=ISymbol>newTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsQ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsQ.html
deleted file mode 100644
index 9d06ebc0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsQ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_quickInit><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.quickInit" target=_parent class=ISymbol>quickInit</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsR.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsR.html
deleted file mode 100644
index fac0dbcc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsR.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_redraw><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.redraw" target=_parent class=ISymbol>redraw</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_reInitialize><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.reInitialize" target=_parent class=ISymbol>reInitialize</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_remove><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.remove" target=_parent class=ISymbol>remove</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_rename><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.rename" target=_parent class=ISymbol>rename</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_replot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.replot" target=_parent class=ISymbol>replot</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_resetAxesScale><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.resetAxesScale" target=_parent class=ISymbol>resetAxesScale</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_restoreOriginalSeriesOrder><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restoreOriginalSeriesOrder" target=_parent class=ISymbol>restoreOriginalSeriesOrder</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_restorePreviousSeriesOrder><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restorePreviousSeriesOrder" target=_parent class=ISymbol>restorePreviousSeriesOrder</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsS.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsS.html
deleted file mode 100644
index bab767cf..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsS.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_setGridData><div class=IEntry><a href="javascript:searchResults.Toggle('SR_setGridData')" class=ISymbol>setGridData</a><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.setGridData" target=_parent class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.setGridData" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsZ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsZ.html
deleted file mode 100644
index 4b364e98..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/FunctionsZ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zoomProxy><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy" target=_parent class=ISymbol>zoomProxy</a>, <span class=IParent>$.jqplot.<wbr>Cursor.$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralA.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralA.html
deleted file mode 100644
index f62a230b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralA.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_activeTheme><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.activeTheme" target=_parent class=ISymbol>activeTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_addLegendRowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.addLegendRowHooks" target=_parent class=ISymbol>addLegendRowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_alignTicks><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.alignTicks" target=_parent class=ISymbol>alignTicks</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_alpha><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.alpha" target=_parent class=ISymbol>alpha</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_angle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_angle')" class=ISymbol>angle</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a></div></div></div><div class=SRResult id=SR_animate><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animate" target=_parent class=ISymbol>animate</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_animateReplot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animateReplot" target=_parent class=ISymbol>animateReplot</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_autoscale><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.autoscale" target=_parent class=ISymbol>autoscale</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_autoscaleBubbles><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleBubbles" target=_parent class=ISymbol>autoscaleBubbles</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_autoscaleMultiplier><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleMultiplier" target=_parent class=ISymbol>autoscaleMultiplier</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_autoscalePointsFactor><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscalePointsFactor" target=_parent class=ISymbol>autoscalePointsFactor</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_Available_spcOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Available_Options" target=_parent class=ISymbol>Available Options</a></div></div><div class=SRResult id=SR_axes><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axes" target=_parent class=ISymbol>axes</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_axesDefaults><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axesDefaults" target=_parent class=ISymbol>axesDefaults</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_Axis><div class=IEntry><a href="../files/jqplot-core-js.html#Axis" target=_parent class=ISymbol>Axis</a></div></div><div class=SRResult id=SR_axisDefaults><div class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.axisDefaults" target=_parent class=ISymbol>axisDefaults</a>, <span class=IParent>$.jqplot.<wbr>LogAxisRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralB.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralB.html
deleted file mode 100644
index 06a97030..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralB.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_background><div class=IEntry><a href="javascript:searchResults.Toggle('SR_background')" class=ISymbol>background</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.background" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Grid.background" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.background" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_bandData><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bandData" target=_parent class=ISymbol>bandData</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_bands><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bands" target=_parent class=ISymbol>bands</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_barDirection><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barDirection" target=_parent class=ISymbol>barDirection</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_barLabelOptions><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelOptions" target=_parent class=ISymbol>barLabelOptions</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barLabelRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelRenderer" target=_parent class=ISymbol>barLabelRenderer</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barLabels><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabels" target=_parent class=ISymbol>barLabels</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barMargin><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barMargin" target=_parent class=ISymbol>barMargin</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_barPadding><div class=IEntry><a href="javascript:searchResults.Toggle('SR_barPadding')" class=ISymbol>barPadding</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#barPadding" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barPadding" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a></div></div></div><div class=SRResult id=SR_barWidth><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barWidth" target=_parent class=ISymbol>barWidth</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_baselineColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_baselineColor')" class=ISymbol>baselineColor</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineColor" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineColor" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineColor" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_baselineWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_baselineWidth')" class=ISymbol>baselineWidth</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineWidth" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineWidth" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineWidth" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_bodyWidth><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.bodyWidth" target=_parent class=ISymbol>bodyWidth</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_border><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.border" target=_parent class=ISymbol>border</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_borderColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_borderColor')" class=ISymbol>borderColor</a><div class=ISubIndex><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.borderColor" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-core-js.html#Axis.borderColor" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderColor" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_borderWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_borderWidth')" class=ISymbol>borderWidth</a><div class=ISubIndex><a href="../files/jqplot-core-js.html#Axis.borderWidth" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderWidth" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_breakOnNull><div class=IEntry><a href="../files/jqplot-core-js.html#Series.breakOnNull" target=_parent class=ISymbol>breakOnNull</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_breakPoints><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakPoints" target=_parent class=ISymbol>breakPoints</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_breakTickLabel><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakTickLabel" target=_parent class=ISymbol>breakTickLabel</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_bringSeriesToFront><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.bringSeriesToFront" target=_parent class=ISymbol>bringSeriesToFront</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_bubbleAlpha><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleAlpha" target=_parent class=ISymbol>bubbleAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_bubbleGradients><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleGradients" target=_parent class=ISymbol>bubbleGradients</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralC.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralC.html
deleted file mode 100644
index 20bb76ec..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralC.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_candleStick><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.candleStick" target=_parent class=ISymbol>candleStick</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_Change_spcLog><div class=IEntry><a href="../files/changes-txt.html#Change_Log" target=_parent class=ISymbol>Change Log</a></div></div><div class=SRResult id=SR_Changes><div class=IEntry><a href="../files/jqplot-core-js.html#Changes" target=_parent class=ISymbol>Changes</a></div></div><div class=SRResult id=SR_clearRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.clearRect" target=_parent class=ISymbol>clearRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_clickReset><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.clickReset" target=_parent class=ISymbol>clickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_closeColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.closeColor" target=_parent class=ISymbol>closeColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_color><div class=IEntry><a href="javascript:searchResults.Toggle('SR_color')" class=ISymbol>color</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.color" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.color" target=_parent class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.color" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.color" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.color" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.color" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_constrainOutsideZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainOutsideZoom" target=_parent class=ISymbol>constrainOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_constrainSmoothing><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.constrainSmoothing" target=_parent class=ISymbol>constrainSmoothing</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_constrainTo><div class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.constrainTo" target=_parent class=ISymbol>constrainTo</a>, <span class=IParent>$.jqplot.<wbr>Dragable</span></div></div><div class=SRResult id=SR_constrainZoomTo><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainZoomTo" target=_parent class=ISymbol>constrainZoomTo</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_copy><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.copy" target=_parent class=ISymbol>copy</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_Copyright_ampLicense><div class=IEntry><a href="../files/jqplot-core-js.html#CopyrightLicense" target=_parent class=ISymbol>Copyright&amp;License</a></div></div><div class=SRResult id=SR_css><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.css" target=_parent class=ISymbol>css</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_cursorLegendFormatString><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.cursorLegendFormatString" target=_parent class=ISymbol>cursorLegendFormatString</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralD.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralD.html
deleted file mode 100644
index 3c759ce2..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralD.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_DashedHorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine" target=_parent class=ISymbol>DashedHorizontalLine</a></div></div><div class=SRResult id=SR_DashedVerticalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine" target=_parent class=ISymbol>DashedVerticalLine</a></div></div><div class=SRResult id=SR_dashPattern><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashPattern')" class=ISymbol>dashPattern</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.dashPattern" target=_parent class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.dashPattern" target=_parent class=IParent>DashedVerticalLine</a></div></div></div><div class=SRResult id=SR_data><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.data" target=_parent class=ISymbol>data</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dataLabelCenterOn><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelCenterOn" target=_parent class=ISymbol>dataLabelCenterOn</a>, <span class=IParent>$.jqplot.<wbr>PieRenderer</span></div></div><div class=SRResult id=SR_dataLabelFormatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelFormatString')" class=ISymbol>dataLabelFormatString</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelNudge><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelNudge')" class=ISymbol>dataLabelNudge</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelNudge" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelNudge" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelPositionFactor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelPositionFactor')" class=ISymbol>dataLabelPositionFactor</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelPositionFactor" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelPositionFactor" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabels')" class=ISymbol>dataLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelThreshold><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelThreshold')" class=ISymbol>dataLabelThreshold</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataRenderer><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRenderer" target=_parent class=ISymbol>dataRenderer</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dataRendererOptions><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRendererOptions" target=_parent class=ISymbol>dataRendererOptions</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dblClickReset><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.dblClickReset" target=_parent class=ISymbol>dblClickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_defaultAxisStart><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.defaultAxisStart" target=_parent class=ISymbol>defaultAxisStart</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_depth><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.depth" target=_parent class=ISymbol>depth</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_destroy><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.destroy" target=_parent class=ISymbol>destroy</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_diameter><div class=IEntry><a href="javascript:searchResults.Toggle('SR_diameter')" class=ISymbol>diameter</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_disableIEFading><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#disableIEFading" target=_parent class=ISymbol>disableIEFading</a></div></div><div class=SRResult id=SR_disableStack><div class=IEntry><a href="../files/jqplot-core-js.html#Series.disableStack" target=_parent class=ISymbol>disableStack</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_downBodyColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.downBodyColor" target=_parent class=ISymbol>downBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_draw><div class=IEntry><a href="javascript:searchResults.Toggle('SR_draw')" class=ISymbol>draw</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.draw" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.draw" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.draw" target=_parent class=IParent>jqPlot</a></div></div></div><div class=SRResult id=SR_drawBaseline><div class=IEntry><a href="javascript:searchResults.Toggle('SR_drawBaseline')" class=ISymbol>drawBaseline</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#drawBaseline" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></div></div><div class=SRResult id=SR_drawBorder><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawBorder" target=_parent class=ISymbol>drawBorder</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_drawGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawGridlines" target=_parent class=ISymbol>drawGridlines</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_drawMajorGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorGridlines" target=_parent class=ISymbol>drawMajorGridlines</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMajorTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorTickMarks" target=_parent class=ISymbol>drawMajorTickMarks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMinorGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorGridlines" target=_parent class=ISymbol>drawMinorGridlines</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMinorTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorTickMarks" target=_parent class=ISymbol>drawMinorTickMarks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawSeries><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.drawSeries" target=_parent class=ISymbol>drawSeries</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralE.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralE.html
deleted file mode 100644
index 5f3a9205..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralE.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_edgeTolerance><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.edgeTolerance" target=_parent class=ISymbol>edgeTolerance</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_enableFontSupport><div class=IEntry><a href="javascript:searchResults.Toggle('SR_enableFontSupport')" class=ISymbol>enableFontSupport</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.enableFontSupport" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.enableFontSupport" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_escapeHtml><div class=IEntry><a href="javascript:searchResults.Toggle('SR_escapeHtml')" class=ISymbol>escapeHtml</a><div class=ISubIndex><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.escapeHtml" target=_parent class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.escapeHtml" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.escapeHtml" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.escapeHtml" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR2_escapeHTML><div class=IEntry><a href="javascript:searchResults.Toggle('SR2_escapeHTML')" class=ISymbol>escapeHTML</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div><div class=SRResult id=SR_eventListenerHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.eventListenerHooks" target=_parent class=ISymbol>eventListenerHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralF.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralF.html
deleted file mode 100644
index c1af77c8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralF.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fadeTooltip><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fadeTooltip')" class=ISymbol>fadeTooltip</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.fadeTooltip" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.fadeTooltip" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_fill><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fill')" class=ISymbol>fill</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#fill" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.fill" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_fillAlpha><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAlpha" target=_parent class=ISymbol>fillAlpha</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillAndStroke><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAndStroke" target=_parent class=ISymbol>fillAndStroke</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillAxis><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAxis" target=_parent class=ISymbol>fillAxis</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillBetween><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.fillBetween" target=_parent class=ISymbol>fillBetween</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_fillColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fillColor')" class=ISymbol>fillColor</a><div class=ISubIndex><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fillColor" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-core-js.html#Series.fillColor" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_fillDownBody><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillDownBody" target=_parent class=ISymbol>fillDownBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_fillRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillRect" target=_parent class=ISymbol>fillRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_fillStyle><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillStyle" target=_parent class=ISymbol>fillStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_fillToValue><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToValue" target=_parent class=ISymbol>fillToValue</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillToZero><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToZero" target=_parent class=ISymbol>fillToZero</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillUpBody><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillUpBody" target=_parent class=ISymbol>fillUpBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_followMouse><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.followMouse" target=_parent class=ISymbol>followMouse</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_fontFamily><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontFamily')" class=ISymbol>fontFamily</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.fontFamily" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontFamily" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_fontSize><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontSize')" class=ISymbol>fontSize</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.fontSize" target=_parent class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.fontSize" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontSize" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_fontStretch><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontStretch')" class=ISymbol>fontStretch</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontStretch" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontStretch" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_fontWeight><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontWeight')" class=ISymbol>fontWeight</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontWeight" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontWeight" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_forceTickAt0><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt0" target=_parent class=ISymbol>forceTickAt0</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_forceTickAt100><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt100" target=_parent class=ISymbol>forceTickAt100</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_formatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_formatString')" class=ISymbol>formatString</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatString" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatString" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.formatString" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatString" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div><div class=SRResult id=SR_formatter><div class=IEntry><a href="javascript:searchResults.Toggle('SR_formatter')" class=ISymbol>formatter</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatter" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatter" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatter" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div><div class=SRResult id=SR_Functions><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Functions')" class=ISymbol>Functions</a><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.Functions" target=_parent class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.Functions" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.Functions" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralG.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralG.html
deleted file mode 100644
index 092df150..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralG.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_get><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.get" target=_parent class=ISymbol>get</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_getThemeNames><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemeNames" target=_parent class=ISymbol>getThemeNames</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_getThemes><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.getThemes" target=_parent class=ISymbol>getThemes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_GPL_spcVersion_spc2><div class=IEntry><a href="../files/gpl-2-0-txt.html#GPL_Version_2" target=_parent class=ISymbol>GPL Version 2</a></div></div><div class=SRResult id=SR_grid><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.grid" target=_parent class=ISymbol>grid</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR2_Grid><div class=IEntry><a href="../files/jqplot-core-js.html#Grid" target=_parent class=ISymbol>Grid</a></div></div><div class=SRResult id=SR_gridLineColor><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineColor" target=_parent class=ISymbol>gridLineColor</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_gridLineWidth><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineWidth" target=_parent class=ISymbol>gridLineWidth</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_groups><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.groups" target=_parent class=ISymbol>groups</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralH.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralH.html
deleted file mode 100644
index ff6d0676..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralH.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_hideZeros><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.hideZeros" target=_parent class=ISymbol>hideZeros</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_highlightAlpha><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightAlpha" target=_parent class=ISymbol>highlightAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_highlightColor><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightColor" target=_parent class=ISymbol>highlightColor</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_highlightColors><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightColors')" class=ISymbol>highlightColors</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightColors" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_highlightMouseDown><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightMouseDown')" class=ISymbol>highlightMouseDown</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseDown" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_highlightMouseOver><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightMouseOver')" class=ISymbol>highlightMouseOver</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseOver" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_hlc><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.hlc" target=_parent class=ISymbol>hlc</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_Hooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.Hooks" target=_parent class=ISymbol>Hooks</a>, <span class=IParent>$.jqplot</span></div></div><div class=SRResult id=SR_HorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine" target=_parent class=ISymbol>HorizontalLine</a></div></div><div class=SRResult id=SR_hubRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.hubRadius" target=_parent class=ISymbol>hubRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralI.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralI.html
deleted file mode 100644
index 7873ee40..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralI.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_index><div class=IEntry><a href="../files/jqplot-core-js.html#Series.index" target=_parent class=ISymbol>index</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_init><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.init" target=_parent class=ISymbol>init</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_innerDiameter><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.innerDiameter" target=_parent class=ISymbol>innerDiameter</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_insertBreaks><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.insertBreaks" target=_parent class=ISymbol>insertBreaks</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_intersectionThreshold><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.intersectionThreshold" target=_parent class=ISymbol>intersectionThreshold</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_interval><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.interval" target=_parent class=ISymbol>interval</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_intervalColors><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalColors" target=_parent class=ISymbol>intervalColors</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervalInnerRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalInnerRadius" target=_parent class=ISymbol>intervalInnerRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervalOuterRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalOuterRadius" target=_parent class=ISymbol>intervalOuterRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervals><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervals" target=_parent class=ISymbol>intervals</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_Introduction><div class=IEntry><a href="../files/jqplot-core-js.html#Introduction" target=_parent class=ISymbol>Introduction</a></div></div><div class=SRResult id=SR_isarc><div class=IEntry><a href="javascript:searchResults.Toggle('SR_isarc')" class=ISymbol>isarc</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.isarc" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.isarc" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></div></div><div class=SRResult id=SR_isMinorTick><div class=IEntry><a href="javascript:searchResults.Toggle('SR_isMinorTick')" class=ISymbol>isMinorTick</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.isMinorTick" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.isMinorTick" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralJ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralJ.html
deleted file mode 100644
index fe560304..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralJ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_jqPlot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot" target=_parent class=ISymbol>jqPlot</a></div></div><div class=SRResult id=SR_jqPlot_spcCharts><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot_Charts" target=_parent class=ISymbol>jqPlot Charts</a></div></div><div class=SRResult id=SR_jqPlot_spcCSS_spcCustomization><div class=IEntry><a href="../files/jqPlotCssStyling-txt.html#jqPlot_CSS_Customization" target=_parent class=ISymbol>jqPlot CSS Customization</a></div></div><div class=SRResult id=SR_jqPlot_spcOptions><div class=IEntry><a href="../files/jqPlotOptions-txt.html#jqPlot_Options" target=_parent class=ISymbol>jqPlot Options</a></div></div><div class=SRResult id=SR_jqPlot_spcPugin_spcHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.jqPlot_Pugin_Hooks" target=_parent class=ISymbol>jqPlot Pugin Hooks</a>, <span class=IParent>$.jqplot</span></div></div><div class=SRResult id=SR_jqPlot_spcUsage><div class=IEntry><a href="../files/usage-txt.html#jqPlot_Usage" target=_parent class=ISymbol>jqPlot Usage</a></div></div><div class=SRResult id=SR_jqplot_perenhancedLegendRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#jqplot.enhancedLegendRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>enhancedLegendRenderer.js</a></div></div><div class=SRResult id=SR_jqplot_perpyramidAxisRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#jqplot.pyramidAxisRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>pyramidAxisRenderer.js</a></div></div><div class=SRResult id=SR_jqplot_perpyramidRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#jqplot.pyramidRenderer.js" target=_parent class=ISymbol>jqplot.<wbr>pyramidRenderer.js</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralL.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralL.html
deleted file mode 100644
index 0fc12896..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralL.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="javascript:searchResults.Toggle('SR_label')" class=ISymbol>label</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.label" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.label" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.label" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_labelHeightAdjust><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelHeightAdjust" target=_parent class=ISymbol>labelHeightAdjust</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_labelOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelOptions" target=_parent class=ISymbol>labelOptions</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_labelPosition><div class=IEntry><a href="javascript:searchResults.Toggle('SR_labelPosition')" class=ISymbol>labelPosition</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.labelPosition" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelPosition" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a></div></div></div><div class=SRResult id=SR_labelRenderer><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelRenderer" target=_parent class=ISymbol>labelRenderer</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_labels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_labels')" class=ISymbol>labels</a><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labels" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.labels" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_labelsFromSeries><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labelsFromSeries" target=_parent class=ISymbol>labelsFromSeries</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_legend><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.legend" target=_parent class=ISymbol>legend</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR2_Legend><div class=IEntry><a href="../files/jqplot-core-js.html#Legend" target=_parent class=ISymbol>Legend</a></div></div><div class=SRResult id=SR_Line><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line" target=_parent class=ISymbol>Line</a></div></div><div class=SRResult id=SR_lineCap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineCap')" class=ISymbol>lineCap</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineCap" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineCap" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineCap" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineCap" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineJoin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineJoin')" class=ISymbol>lineJoin</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineJoin" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineJoin" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineJoin" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_linePattern><div class=IEntry><a href="javascript:searchResults.Toggle('SR_linePattern')" class=ISymbol>linePattern</a><div class=ISubIndex><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.linePattern" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.linePattern" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineWidth')" class=ISymbol>lineWidth</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.lineWidth" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineWidthAdjust><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.lineWidthAdjust" target=_parent class=ISymbol>lineWidthAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_location><div class=IEntry><a href="javascript:searchResults.Toggle('SR_location')" class=ISymbol>location</a><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.location" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.location" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_looseZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.looseZoom" target=_parent class=ISymbol>looseZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralM.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralM.html
deleted file mode 100644
index 53789fac..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralM.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_makeGridData><div class=IEntry><a href="javascript:searchResults.Toggle('SR_makeGridData')" class=ISymbol>makeGridData</a><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.makeGridData" target=_parent class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.makeGridData" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></div></div><div class=SRResult id=SR_marginBottom><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginBottom" target=_parent class=ISymbol>marginBottom</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginLeft><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginLeft" target=_parent class=ISymbol>marginLeft</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginRight><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginRight" target=_parent class=ISymbol>marginRight</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginTop><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginTop" target=_parent class=ISymbol>marginTop</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_mark><div class=IEntry><a href="javascript:searchResults.Toggle('SR_mark')" class=ISymbol>mark</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.mark" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.mark" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_markerOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Series.markerOptions" target=_parent class=ISymbol>markerOptions</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_markerRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_markerRenderer')" class=ISymbol>markerRenderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.markerRenderer" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.markerRenderer" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.markerRenderer" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_markSize><div class=IEntry><a href="javascript:searchResults.Toggle('SR_markSize')" class=ISymbol>markSize</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.markSize" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.markSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_max><div class=IEntry><a href="javascript:searchResults.Toggle('SR_max')" class=ISymbol>max</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.max" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.max" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_methods><div class=IEntry><a href="javascript:searchResults.Toggle('SR_methods')" class=ISymbol>methods</a><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.methods" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.methods" target=_parent class=IParent>$.jqplot.<wbr>ThemeEngine</a><a href="../files/jqplot-core-js.html#jqPlot.methods" target=_parent class=IParent>jqPlot</a></div></div></div><div class=SRResult id=SR2_Methods><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.Methods" target=_parent class=ISymbol>Methods</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_min><div class=IEntry><a href="javascript:searchResults.Toggle('SR_min')" class=ISymbol>min</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.min" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.min" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_minorTicks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_minorTicks')" class=ISymbol>minorTicks</a><div class=ISubIndex><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.minorTicks" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.minorTicks" target=_parent class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></div></div><div class=SRResult id=SR_MIT_spcLicense><div class=IEntry><a href="../files/MIT-LICENSE-txt.html#MIT_License" target=_parent class=ISymbol>MIT License</a></div></div><div class=SRResult id=SR_moveBlock><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.moveBlock" target=_parent class=ISymbol>moveBlock</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_moveSeriesToBack><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToBack" target=_parent class=ISymbol>moveSeriesToBack</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_moveSeriesToFront><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.moveSeriesToFront" target=_parent class=ISymbol>moveSeriesToFront</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralN.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralN.html
deleted file mode 100644
index d282c788..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralN.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.name" target=_parent class=ISymbol>name</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_needlePad><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needlePad" target=_parent class=ISymbol>needlePad</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_needleThickness><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needleThickness" target=_parent class=ISymbol>needleThickness</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_negativeColor><div class=IEntry><a href="../files/jqplot-core-js.html#Series.negativeColor" target=_parent class=ISymbol>negativeColor</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_neighborThreshold><div class=IEntry><a href="../files/jqplot-core-js.html#Series.neighborThreshold" target=_parent class=ISymbol>neighborThreshold</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_newTheme><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.newTheme" target=_parent class=ISymbol>newTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_noDataIndicator><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.noDataIndicator" target=_parent class=ISymbol>noDataIndicator</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_numberColumns><div class=IEntry><a href="javascript:searchResults.Toggle('SR_numberColumns')" class=ISymbol>numberColumns</a><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberColumns" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></div></div><div class=SRResult id=SR_numberRows><div class=IEntry><a href="javascript:searchResults.Toggle('SR_numberRows')" class=ISymbol>numberRows</a><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberRows" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></div></div><div class=SRResult id=SR_numberTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.numberTicks" target=_parent class=ISymbol>numberTicks</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralO.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralO.html
deleted file mode 100644
index bac068d9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralO.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_objects><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.objects" target=_parent class=ISymbol>objects</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.offset" target=_parent class=ISymbol>offset</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_offsetBars><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#offsetBars" target=_parent class=ISymbol>offsetBars</a></div></div><div class=SRResult id=SR_openColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.openColor" target=_parent class=ISymbol>openColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_Options_spcTutorial><div class=IEntry><a href="../files/optionsTutorial-txt.html#Options_Tutorial" target=_parent class=ISymbol>Options Tutorial</a></div></div><div class=SRResult id=SR_Options_spcUsage><div class=IEntry><a href="../files/jqplot-core-js.html#Options_Usage" target=_parent class=ISymbol>Options Usage</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralP.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralP.html
deleted file mode 100644
index 25e44059..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralP.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pad><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.pad" target=_parent class=ISymbol>pad</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_padding><div class=IEntry><a href="javascript:searchResults.Toggle('SR_padding')" class=ISymbol>padding</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_padMax><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMax" target=_parent class=ISymbol>padMax</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_padMin><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMin" target=_parent class=ISymbol>padMin</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_pegNeedle><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.pegNeedle" target=_parent class=ISymbol>pegNeedle</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_placement><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.placement" target=_parent class=ISymbol>placement</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_position><div class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#position" target=_parent class=ISymbol>position</a></div></div><div class=SRResult id=SR_postDrawHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawHooks" target=_parent class=ISymbol>postDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postDrawSeriesHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesHooks" target=_parent class=ISymbol>postDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postDrawSeriesShadowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesShadowHooks" target=_parent class=ISymbol>postDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postInitHooks" target=_parent class=ISymbol>postInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postParseOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseOptionsHooks" target=_parent class=ISymbol>postParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postParseSeriesOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseSeriesOptionsHooks" target=_parent class=ISymbol>postParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postSeriesInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postSeriesInitHooks" target=_parent class=ISymbol>postSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_predraw><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.predraw" target=_parent class=ISymbol>predraw</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_preDrawHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawHooks" target=_parent class=ISymbol>preDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawLegendHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawLegendHooks" target=_parent class=ISymbol>preDrawLegendHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawSeriesHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesHooks" target=_parent class=ISymbol>preDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawSeriesShadowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesShadowHooks" target=_parent class=ISymbol>preDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_prefix><div class=IEntry><a href="javascript:searchResults.Toggle('SR_prefix')" class=ISymbol>prefix</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.prefix" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.prefix" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_preInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preInitHooks" target=_parent class=ISymbol>preInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preParseOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseOptionsHooks" target=_parent class=ISymbol>preParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preParseSeriesOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseSeriesOptionsHooks" target=_parent class=ISymbol>preParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preSeriesInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preSeriesInitHooks" target=_parent class=ISymbol>preSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_Properties><div class=IEntry><a href="javascript:searchResults.Toggle('SR_Properties')" class=ISymbol>Properties</a><div class=ISubIndex><span class=IParent>Global</span><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#Properties" target=_parent class=IFile>plugins/<wbr>jqplot.<wbr>enhancedLegendRenderer.js</a><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#Properties" target=_parent class=IFile>plugins/<wbr>jqplot.<wbr>pyramidAxisRenderer.js</a><a href="../files/plugins/jqplot-pyramidRenderer-js.html#Properties" target=_parent class=IFile>plugins/<wbr>jqplot.<wbr>pyramidRenderer.js</a></div><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.Properties" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.Properties" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.Properties" target=_parent class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.Properties" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>LogAxisRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>PieLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.Properties" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.Properties" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.Properties" target=_parent class=IParent>$.jqplot.<wbr>ThemeEngine</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.Properties" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.Properties" target=_parent class=IParent>Axis</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.Properties" target=_parent class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.Properties" target=_parent class=IParent>DashedVerticalLine</a><a href="../files/jqplot-core-js.html#Grid.Properties" target=_parent class=IParent>Grid</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.Properties" target=_parent class=IParent>HorizontalLine</a><a href="../files/jqplot-core-js.html#jqPlot.Properties" target=_parent class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.Properties" target=_parent class=IParent>Legend</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.Properties" target=_parent class=IParent>Line</a><a href="../files/jqplot-core-js.html#Series.Properties" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.Properties" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_pt2px><div class=IEntry><a href="javascript:searchResults.Toggle('SR_pt2px')" class=ISymbol>pt2px</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.pt2px" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.pt2px" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralQ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralQ.html
deleted file mode 100644
index 9d06ebc0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralQ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_quickInit><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.quickInit" target=_parent class=ISymbol>quickInit</a>, <span class=IParent>jqPlot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralR.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralR.html
deleted file mode 100644
index 830dac93..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralR.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_redraw><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.redraw" target=_parent class=ISymbol>redraw</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_reInitialize><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.reInitialize" target=_parent class=ISymbol>reInitialize</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_remove><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.remove" target=_parent class=ISymbol>remove</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_rename><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.rename" target=_parent class=ISymbol>rename</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_renderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_renderer')" class=ISymbol>renderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.renderer" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.renderer" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.renderer" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.renderer" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.renderer" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_rendererOptions><div class=IEntry><a href="javascript:searchResults.Toggle('SR_rendererOptions')" class=ISymbol>rendererOptions</a><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.rendererOptions" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.rendererOptions" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.rendererOptions" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.rendererOptions" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.rendererOptions" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.rendererOptions" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_replot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.replot" target=_parent class=ISymbol>replot</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_resetAxesScale><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.resetAxesScale" target=_parent class=ISymbol>resetAxesScale</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_restoreOriginalSeriesOrder><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restoreOriginalSeriesOrder" target=_parent class=ISymbol>restoreOriginalSeriesOrder</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_restorePreviousSeriesOrder><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.restorePreviousSeriesOrder" target=_parent class=ISymbol>restorePreviousSeriesOrder</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_ringColor><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringColor" target=_parent class=ISymbol>ringColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_ringMargin><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.ringMargin" target=_parent class=ISymbol>ringMargin</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_ringWidth><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringWidth" target=_parent class=ISymbol>ringWidth</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_rowSpacing><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.rowSpacing" target=_parent class=ISymbol>rowSpacing</a>, <span class=IParent>Legend</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralS.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralS.html
deleted file mode 100644
index 4cfc8650..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralS.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_scaleToHiddenSeries><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.scaleToHiddenSeries" target=_parent class=ISymbol>scaleToHiddenSeries</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_sectionMargin><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.sectionMargin" target=_parent class=ISymbol>sectionMargin</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></div></div><div class=SRResult id=SR_series><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.series" target=_parent class=ISymbol>series</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR2_Series><div class=IEntry><a href="../files/jqplot-core-js.html#Series" target=_parent class=ISymbol>Series</a></div></div><div class=SRResult id=SR_seriesColors><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesColors" target=_parent class=ISymbol>seriesColors</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_seriesDefaults><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesDefaults" target=_parent class=ISymbol>seriesDefaults</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_seriesLabelIndex><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.seriesLabelIndex" target=_parent class=ISymbol>seriesLabelIndex</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_seriesToggle><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggle" target=_parent class=ISymbol>seriesToggle</a></div></div><div class=SRResult id=SR_seriesToggleReplot><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggleReplot" target=_parent class=ISymbol>seriesToggleReplot</a></div></div><div class=SRResult id=SR_setGridData><div class=IEntry><a href="javascript:searchResults.Toggle('SR_setGridData')" class=ISymbol>setGridData</a><div class=ISubIndex><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js.setGridData" target=_parent class=IParent>$.jqplot.<wbr>BezierCurveRenderer.js</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.setGridData" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a></div></div></div><div class=SRResult id=SR_shadow><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadow')" class=ISymbol>shadow</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadow" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadow" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadow" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadow" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_shadowAlpha><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowAlpha')" class=ISymbol>shadowAlpha</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAlpha" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAlpha" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowAngle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowAngle')" class=ISymbol>shadowAngle</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAngle" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAngle" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowColor><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowColor" target=_parent class=ISymbol>shadowColor</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_shadowDepth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowDepth')" class=ISymbol>shadowDepth</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowDepth" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowDepth" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowOffset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowOffset')" class=ISymbol>shadowOffset</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowOffset" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowOffset" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowRenderer" target=_parent class=ISymbol>shadowRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></div></div><div class=SRResult id=SR_shadowWidth><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowWidth" target=_parent class=ISymbol>shadowWidth</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_shapeRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shapeRenderer" target=_parent class=ISymbol>shapeRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></div></div><div class=SRResult id=SR_show><div class=IEntry><a href="javascript:searchResults.Toggle('SR_show')" class=ISymbol>show</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.show" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.show" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.show" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.show" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.show" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Legend.show" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.show" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.show" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_showBorders><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.showBorders" target=_parent class=ISymbol>showBorders</a>, <span class=IParent>$.jqplot.<wbr>MekkoRenderer</span></div></div><div class=SRResult id=SR_showCursorLegend><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showCursorLegend" target=_parent class=ISymbol>showCursorLegend</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showDataLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showDataLabels')" class=ISymbol>showDataLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_showGridline><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showGridline')" class=ISymbol>showGridline</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showGridline" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showGridline" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_showHorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showHorizontalLine" target=_parent class=ISymbol>showHorizontalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showLabel><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showLabel')" class=ISymbol>showLabel</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Axis.showLabel" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.showLabel" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_showLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showLabels')" class=ISymbol>showLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.showLabels" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.showLabels" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_showLine><div class=IEntry><a href="../files/jqplot-core-js.html#Series.showLine" target=_parent class=ISymbol>showLine</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_showLines><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.showLines" target=_parent class=ISymbol>showLines</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_showMark><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showMark')" class=ISymbol>showMark</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showMark" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showMark" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_showMarker><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showMarker')" class=ISymbol>showMarker</a><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showMarker" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-core-js.html#Series.showMarker" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_showMinorTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.showMinorTicks" target=_parent class=ISymbol>showMinorTicks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_showSwatch><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.showSwatch" target=_parent class=ISymbol>showSwatch</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_showTickLabels><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTickLabels" target=_parent class=ISymbol>showTickLabels</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_showTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.showTickMarks" target=_parent class=ISymbol>showTickMarks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_showTicks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showTicks')" class=ISymbol>showTicks</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTicks" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.showTicks" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_showTooltip><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showTooltip')" class=ISymbol>showTooltip</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_showTooltipDataPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipDataPosition" target=_parent class=ISymbol>showTooltipDataPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipGridPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipGridPosition" target=_parent class=ISymbol>showTooltipGridPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipOutsideZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipOutsideZoom" target=_parent class=ISymbol>showTooltipOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipPrecision><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltipPrecision" target=_parent class=ISymbol>showTooltipPrecision</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_showTooltipUnitPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipUnitPosition" target=_parent class=ISymbol>showTooltipUnitPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showVerticalLine><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showVerticalLine" target=_parent class=ISymbol>showVerticalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_size><div class=IEntry><a href="javascript:searchResults.Toggle('SR_size')" class=ISymbol>size</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.size" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.size" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></div></div><div class=SRResult id=SR_sizeAdjust><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.sizeAdjust" target=_parent class=ISymbol>sizeAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_sliceMargin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_sliceMargin')" class=ISymbol>sliceMargin</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.sliceMargin" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.sliceMargin" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_smooth><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.smooth" target=_parent class=ISymbol>smooth</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_sortData><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.sortData" target=_parent class=ISymbol>sortData</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_sortMergedLabels><div class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.sortMergedLabels" target=_parent class=ISymbol>sortMergedLabels</a>, <span class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</span></div></div><div class=SRResult id=SR_stackedValue><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.stackedValue" target=_parent class=ISymbol>stackedValue</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_stackSeries><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.stackSeries" target=_parent class=ISymbol>stackSeries</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_start><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.start" target=_parent class=ISymbol>start</a>, <span class=IParent>Line</span></div></div><div class=SRResult id=SR_startAngle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_startAngle')" class=ISymbol>startAngle</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.startAngle" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.startAngle" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_stop><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.stop" target=_parent class=ISymbol>stop</a>, <span class=IParent>Line</span></div></div><div class=SRResult id=SR_strokeRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeRect" target=_parent class=ISymbol>strokeRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_strokeStyle><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeStyle" target=_parent class=ISymbol>strokeStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_style><div class=IEntry><a href="javascript:searchResults.Toggle('SR_style')" class=ISymbol>style</a><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.style" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.style" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></div></div><div class=SRResult id=SR_suffix><div class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.suffix" target=_parent class=ISymbol>suffix</a>, <span class=IParent>$.jqplot.<wbr>AxisTickRenderer</span></div></div><div class=SRResult id=SR_synchronizeHighlight><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#synchronizeHighlight" target=_parent class=ISymbol>synchronizeHighlight</a></div></div><div class=SRResult id=SR_syncTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.syncTicks" target=_parent class=ISymbol>syncTicks</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralSymbols.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralSymbols.html
deleted file mode 100644
index 53396614..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralSymbols.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR__dol_perfn><div class=IEntry><a href="../files/jqplot-toImage-js.html#$.fn" target=_parent class=ISymbol>$.fn</a></div></div><div class=SRResult id=SR__dol_perjqplot><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot" target=_parent class=ISymbol>$.jqplot</a></div></div><div class=SRResult id=SR__dol_perjqplot_perAxisLabelRenderer><div class=IEntry><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>AxisLabelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perAxisTickRenderer><div class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>AxisTickRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBarRenderer><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BarRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBezierCurveRenderer_perjs><div class=IEntry><a href="../files/plugins/jqplot-BezierCurveRenderer-js.html#$.jqplot.BezierCurveRenderer.js" target=_parent class=ISymbol>$.jqplot.<wbr>BezierCurveRenderer.js</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBlockRenderer><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BlockRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perBubbleRenderer><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>BubbleRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasAxisLabelRenderer><div class=IEntry><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasAxisLabelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasAxisTickRenderer><div class=IEntry><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasGridRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR__dol_perjqplot_perCanvasGridRenderer')" class=ISymbol>$.jqplot.<wbr>CanvasGridRenderer</a><div class=ISubIndex><a href="../files/jqplot-canvasGridRenderer-js.html#$.jqplot.CanvasGridRenderer" target=_parent class=IFile>jqplot.<wbr>canvasGridRenderer.js</a><a href="../files/plugins/jqplot-pyramidGridRenderer-js.html#$.jqplot.CanvasGridRenderer" target=_parent class=IFile>plugins/<wbr>jqplot.<wbr>pyramidGridRenderer.js</a></div></div></div><div class=SRResult id=SR__dol_perjqplot_perCanvasOverlay><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay" target=_parent class=ISymbol>$.jqplot.<wbr>CanvasOverlay</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCategoryAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>CategoryAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perciParser><div class=IEntry><a href="../files/plugins/jqplot-ciParser-js.html#$.jqplot.ciParser" target=_parent class=ISymbol>$.jqplot.<wbr>ciParser</a></div></div><div class=SRResult id=SR__dol_perjqplot_perCursor><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor" target=_parent class=ISymbol>$.jqplot.<wbr>Cursor</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDateAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DateAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDivTitleRenderer><div class=IEntry><a href="../files/jqplot-divTitleRenderer-js.html#$.jqplot.DivTitleRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DivTitleRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDonutLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DonutLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDonutRenderer><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>DonutRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perDragable><div class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable" target=_parent class=ISymbol>$.jqplot.<wbr>Dragable</a></div></div><div class=SRResult id=SR__dol_perjqplot_perFunnelLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>FunnelLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perFunnelRenderer><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>FunnelRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perHighlighter><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter" target=_parent class=ISymbol>$.jqplot.<wbr>Highlighter</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLinearAxisRenderer><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LinearAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLineRenderer><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LineRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perLogAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>LogAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMarkerRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MarkerRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoAxisRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoAxisRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMekkoRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MekkoRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perMeterGaugeRenderer><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>MeterGaugeRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perOHLCRenderer><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>OHLCRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPieLegendRenderer><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>PieLegendRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPieRenderer><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>PieRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perPointLabels><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels" target=_parent class=ISymbol>$.jqplot.<wbr>PointLabels</a></div></div><div class=SRResult id=SR__dol_perjqplot_pershadowRenderer><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>shadowRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_pershapeRenderer><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer" target=_parent class=ISymbol>$.jqplot.<wbr>shapeRenderer</a></div></div><div class=SRResult id=SR__dol_perjqplot_perThemeEngine><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine" target=_parent class=ISymbol>$.jqplot.<wbr>ThemeEngine</a></div></div><div class=SRResult id=SR__dol_perjqplot_perTrendline><div class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline" target=_parent class=ISymbol>$.jqplot.<wbr>Trendline</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralT.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralT.html
deleted file mode 100644
index 20f4ead9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralT.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_text><div class=IEntry><a href="../files/jqplot-core-js.html#Title.text" target=_parent class=ISymbol>text</a>, <span class=IParent>Title</span></div></div><div class=SRResult id=SR_textAlign><div class=IEntry><a href="../files/jqplot-core-js.html#Title.textAlign" target=_parent class=ISymbol>textAlign</a>, <span class=IParent>Title</span></div></div><div class=SRResult id=SR_textColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_textColor')" class=ISymbol>textColor</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.textColor" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.textColor" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_themes><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.themes" target=_parent class=ISymbol>themes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_thickness><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.thickness" target=_parent class=ISymbol>thickness</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_tickColor><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickColor" target=_parent class=ISymbol>tickColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_tickInset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickInset')" class=ISymbol>tickInset</a><div class=ISubIndex><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickInset" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.tickInset" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_tickInterval><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickInterval" target=_parent class=ISymbol>tickInterval</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_tickLength><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.tickLength" target=_parent class=ISymbol>tickLength</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_tickMode><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.tickMode" target=_parent class=ISymbol>tickMode</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_tickOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickOptions" target=_parent class=ISymbol>tickOptions</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_tickPadding><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickPadding" target=_parent class=ISymbol>tickPadding</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_tickRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickRenderer')" class=ISymbol>tickRenderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.tickRenderer" target=_parent class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickRenderer" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickRenderer" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_ticks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_ticks')" class=ISymbol>ticks</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ticks" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.ticks" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_tickSpacing><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickSpacing')" class=ISymbol>tickSpacing</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickSpacing" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickSpacing" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_title><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.title" target=_parent class=ISymbol>title</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR2_Title><div class=IEntry><a href="../files/jqplot-core-js.html#Title" target=_parent class=ISymbol>Title</a></div></div><div class=SRResult id=SR_tooltipAxes><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipAxes" target=_parent class=ISymbol>tooltipAxes</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_tooltipAxisGroups><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipAxisGroups" target=_parent class=ISymbol>tooltipAxisGroups</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_tooltipFadeSpeed><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipFadeSpeed')" class=ISymbol>tooltipFadeSpeed</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFadeSpeed" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFadeSpeed" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipFormatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipFormatString')" class=ISymbol>tooltipFormatString</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipLocation><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipLocation')" class=ISymbol>tooltipLocation</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipOffset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipOffset')" class=ISymbol>tooltipOffset</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_transposedData><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.transposedData" target=_parent class=ISymbol>transposedData</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_type><div class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.type" target=_parent class=ISymbol>type</a>, <span class=IParent>$.jqplot.<wbr>Trendline</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralU.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralU.html
deleted file mode 100644
index 31bcbf12..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralU.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_upBodyColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.upBodyColor" target=_parent class=ISymbol>upBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_Usage><div class=IEntry><a href="../files/jqplot-core-js.html#Usage" target=_parent class=ISymbol>Usage</a></div></div><div class=SRResult id=SR_useAxesFormatters><div class=IEntry><a href="javascript:searchResults.Toggle('SR_useAxesFormatters')" class=ISymbol>useAxesFormatters</a><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.useAxesFormatters" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.useAxesFormatters" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_useNegativeColors><div class=IEntry><a href="../files/jqplot-core-js.html#Series.useNegativeColors" target=_parent class=ISymbol>useNegativeColors</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_useSeriesColor><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.useSeriesColor" target=_parent class=ISymbol>useSeriesColor</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralV.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralV.html
deleted file mode 100644
index 51af427e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralV.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_varyBarColor><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.varyBarColor" target=_parent class=ISymbol>varyBarColor</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_varyBlockColors><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.varyBlockColors" target=_parent class=ISymbol>varyBlockColors</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_varyBubbleColors><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.varyBubbleColors" target=_parent class=ISymbol>varyBubbleColors</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_Version><div class=IEntry><a href="../files/jqplot-core-js.html#Version" target=_parent class=ISymbol>Version</a></div></div><div class=SRResult id=SR_VerticalLine><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#VerticalLine" target=_parent class=ISymbol>VerticalLine</a></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralW.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralW.html
deleted file mode 100644
index ce589762..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralW.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_waterfall><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.waterfall" target=_parent class=ISymbol>waterfall</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_wickColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.wickColor" target=_parent class=ISymbol>wickColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_widthRatio><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.widthRatio" target=_parent class=ISymbol>widthRatio</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralX.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralX.html
deleted file mode 100644
index 443e98c4..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralX.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_xaxis><div class=IEntry><a href="javascript:searchResults.Toggle('SR_xaxis')" class=ISymbol>xaxis</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.xaxis" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.xaxis" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_xmax><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmax" target=_parent class=ISymbol>xmax</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_xmin><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmin" target=_parent class=ISymbol>xmin</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_xoffset><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.xoffset" target=_parent class=ISymbol>xoffset</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_xpadding><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.xpadding" target=_parent class=ISymbol>xpadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralY.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralY.html
deleted file mode 100644
index 8f6ea7a6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralY.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_y><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.y" target=_parent class=ISymbol>y</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_yaxis><div class=IEntry><a href="javascript:searchResults.Toggle('SR_yaxis')" class=ISymbol>yaxis</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.yaxis" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.yaxis" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_yoffset><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.yoffset" target=_parent class=ISymbol>yoffset</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_ypadding><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.ypadding" target=_parent class=ISymbol>ypadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_yvalues><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.yvalues" target=_parent class=ISymbol>yvalues</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralZ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralZ.html
deleted file mode 100644
index 1e8baa08..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/GeneralZ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.zoom" target=_parent class=ISymbol>zoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_zoomProxy><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.$.jqplot.Cursor.zoomProxy" target=_parent class=ISymbol>zoomProxy</a>, <span class=IParent>$.jqplot.<wbr>Cursor.$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksA.html b/wqflask/wqflask/static/packages/jqplot/docs/search/HooksA.html
deleted file mode 100644
index 82b17cda..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksA.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_addLegendRowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.addLegendRowHooks" target=_parent class=ISymbol>addLegendRowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksE.html b/wqflask/wqflask/static/packages/jqplot/docs/search/HooksE.html
deleted file mode 100644
index fe464932..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksE.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_eventListenerHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.eventListenerHooks" target=_parent class=ISymbol>eventListenerHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksJ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/HooksJ.html
deleted file mode 100644
index f94e0036..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksJ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_jqPlot_spcPugin_spcHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.jqPlot_Pugin_Hooks" target=_parent class=ISymbol>jqPlot Pugin Hooks</a>, <span class=IParent>$.jqplot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksP.html b/wqflask/wqflask/static/packages/jqplot/docs/search/HooksP.html
deleted file mode 100644
index eb28c716..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/HooksP.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_postDrawHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawHooks" target=_parent class=ISymbol>postDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postDrawSeriesHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesHooks" target=_parent class=ISymbol>postDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postDrawSeriesShadowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postDrawSeriesShadowHooks" target=_parent class=ISymbol>postDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postInitHooks" target=_parent class=ISymbol>postInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postParseOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseOptionsHooks" target=_parent class=ISymbol>postParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postParseSeriesOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postParseSeriesOptionsHooks" target=_parent class=ISymbol>postParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_postSeriesInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.postSeriesInitHooks" target=_parent class=ISymbol>postSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawHooks" target=_parent class=ISymbol>preDrawHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawLegendHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawLegendHooks" target=_parent class=ISymbol>preDrawLegendHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawSeriesHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesHooks" target=_parent class=ISymbol>preDrawSeriesHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preDrawSeriesShadowHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preDrawSeriesShadowHooks" target=_parent class=ISymbol>preDrawSeriesShadowHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preInitHooks" target=_parent class=ISymbol>preInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preParseOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseOptionsHooks" target=_parent class=ISymbol>preParseOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preParseSeriesOptionsHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preParseSeriesOptionsHooks" target=_parent class=ISymbol>preParseSeriesOptionsHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div><div class=SRResult id=SR_preSeriesInitHooks><div class=IEntry><a href="../files/jqplot-core-js.html#$.jqplot.$.jqplot.preSeriesInitHooks" target=_parent class=ISymbol>preSeriesInitHooks</a>, <span class=IParent>$.jqplot.$.jqplot</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/NoResults.html b/wqflask/wqflask/static/packages/jqplot/docs/search/NoResults.html
deleted file mode 100644
index d2459c05..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/NoResults.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=NoMatches>No Matches</div></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesA.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesA.html
deleted file mode 100644
index 386d9e89..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesA.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_activeTheme><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.activeTheme" target=_parent class=ISymbol>activeTheme</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_alignTicks><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.alignTicks" target=_parent class=ISymbol>alignTicks</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_alpha><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.alpha" target=_parent class=ISymbol>alpha</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_angle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_angle')" class=ISymbol>angle</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.angle" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a></div></div></div><div class=SRResult id=SR_animate><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animate" target=_parent class=ISymbol>animate</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_animateReplot><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.animateReplot" target=_parent class=ISymbol>animateReplot</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_autoscale><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.autoscale" target=_parent class=ISymbol>autoscale</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_autoscaleBubbles><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleBubbles" target=_parent class=ISymbol>autoscaleBubbles</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_autoscaleMultiplier><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscaleMultiplier" target=_parent class=ISymbol>autoscaleMultiplier</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_autoscalePointsFactor><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.autoscalePointsFactor" target=_parent class=ISymbol>autoscalePointsFactor</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_axes><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axes" target=_parent class=ISymbol>axes</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_axesDefaults><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.axesDefaults" target=_parent class=ISymbol>axesDefaults</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_axisDefaults><div class=IEntry><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.axisDefaults" target=_parent class=ISymbol>axisDefaults</a>, <span class=IParent>$.jqplot.<wbr>LogAxisRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesB.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesB.html
deleted file mode 100644
index a6cef468..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesB.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_background><div class=IEntry><a href="javascript:searchResults.Toggle('SR_background')" class=ISymbol>background</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.background" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Grid.background" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.background" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_bandData><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.bandData" target=_parent class=ISymbol>bandData</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_barDirection><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barDirection" target=_parent class=ISymbol>barDirection</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_barLabelOptions><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelOptions" target=_parent class=ISymbol>barLabelOptions</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barLabelRenderer><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabelRenderer" target=_parent class=ISymbol>barLabelRenderer</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barLabels><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.barLabels" target=_parent class=ISymbol>barLabels</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_barMargin><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barMargin" target=_parent class=ISymbol>barMargin</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_barPadding><div class=IEntry><a href="javascript:searchResults.Toggle('SR_barPadding')" class=ISymbol>barPadding</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#barPadding" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barPadding" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a></div></div></div><div class=SRResult id=SR_barWidth><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.barWidth" target=_parent class=ISymbol>barWidth</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_baselineColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_baselineColor')" class=ISymbol>baselineColor</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineColor" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineColor" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineColor" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_baselineWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_baselineWidth')" class=ISymbol>baselineWidth</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#baselineWidth" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.baselineWidth" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.baselineWidth" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_bodyWidth><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.bodyWidth" target=_parent class=ISymbol>bodyWidth</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_border><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.border" target=_parent class=ISymbol>border</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_borderColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_borderColor')" class=ISymbol>borderColor</a><div class=ISubIndex><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.borderColor" target=_parent class=IParent>$.jqplot.<wbr>MekkoRenderer</a><a href="../files/jqplot-core-js.html#Axis.borderColor" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderColor" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_borderWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_borderWidth')" class=ISymbol>borderWidth</a><div class=ISubIndex><a href="../files/jqplot-core-js.html#Axis.borderWidth" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.borderWidth" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_breakOnNull><div class=IEntry><a href="../files/jqplot-core-js.html#Series.breakOnNull" target=_parent class=ISymbol>breakOnNull</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_breakPoints><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakPoints" target=_parent class=ISymbol>breakPoints</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_breakTickLabel><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.breakTickLabel" target=_parent class=ISymbol>breakTickLabel</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_bringSeriesToFront><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.bringSeriesToFront" target=_parent class=ISymbol>bringSeriesToFront</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_bubbleAlpha><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleAlpha" target=_parent class=ISymbol>bubbleAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_bubbleGradients><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.bubbleGradients" target=_parent class=ISymbol>bubbleGradients</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesC.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesC.html
deleted file mode 100644
index a30bf3da..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesC.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_candleStick><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.candleStick" target=_parent class=ISymbol>candleStick</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_clearRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.clearRect" target=_parent class=ISymbol>clearRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_clickReset><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.clickReset" target=_parent class=ISymbol>clickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_closeColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.closeColor" target=_parent class=ISymbol>closeColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_color><div class=IEntry><a href="javascript:searchResults.Toggle('SR_color')" class=ISymbol>color</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.color" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.color" target=_parent class=IParent>$.jqplot.<wbr>Dragable</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.color" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.color" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.color" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.color" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_constrainOutsideZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainOutsideZoom" target=_parent class=ISymbol>constrainOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_constrainSmoothing><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.constrainSmoothing" target=_parent class=ISymbol>constrainSmoothing</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_constrainTo><div class=IEntry><a href="../files/plugins/jqplot-dragable-js.html#$.jqplot.Dragable.constrainTo" target=_parent class=ISymbol>constrainTo</a>, <span class=IParent>$.jqplot.<wbr>Dragable</span></div></div><div class=SRResult id=SR_constrainZoomTo><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.constrainZoomTo" target=_parent class=ISymbol>constrainZoomTo</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_css><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.css" target=_parent class=ISymbol>css</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_cursorLegendFormatString><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.cursorLegendFormatString" target=_parent class=ISymbol>cursorLegendFormatString</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesD.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesD.html
deleted file mode 100644
index e0380eae..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesD.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_dashPattern><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dashPattern')" class=ISymbol>dashPattern</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedHorizontalLine.dashPattern" target=_parent class=IParent>DashedHorizontalLine</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#DashedVerticalLine.dashPattern" target=_parent class=IParent>DashedVerticalLine</a></div></div></div><div class=SRResult id=SR_data><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.data" target=_parent class=ISymbol>data</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dataLabelCenterOn><div class=IEntry><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelCenterOn" target=_parent class=ISymbol>dataLabelCenterOn</a>, <span class=IParent>$.jqplot.<wbr>PieRenderer</span></div></div><div class=SRResult id=SR_dataLabelFormatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelFormatString')" class=ISymbol>dataLabelFormatString</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelFormatString" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelNudge><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelNudge')" class=ISymbol>dataLabelNudge</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelNudge" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelNudge" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelPositionFactor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelPositionFactor')" class=ISymbol>dataLabelPositionFactor</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelPositionFactor" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelPositionFactor" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabels')" class=ISymbol>dataLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabels" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataLabelThreshold><div class=IEntry><a href="javascript:searchResults.Toggle('SR_dataLabelThreshold')" class=ISymbol>dataLabelThreshold</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.dataLabelThreshold" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_dataRenderer><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRenderer" target=_parent class=ISymbol>dataRenderer</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dataRendererOptions><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.dataRendererOptions" target=_parent class=ISymbol>dataRendererOptions</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_dblClickReset><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.dblClickReset" target=_parent class=ISymbol>dblClickReset</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_defaultAxisStart><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.defaultAxisStart" target=_parent class=ISymbol>defaultAxisStart</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_depth><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.depth" target=_parent class=ISymbol>depth</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_diameter><div class=IEntry><a href="javascript:searchResults.Toggle('SR_diameter')" class=ISymbol>diameter</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.diameter" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_disableIEFading><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#disableIEFading" target=_parent class=ISymbol>disableIEFading</a></div></div><div class=SRResult id=SR_disableStack><div class=IEntry><a href="../files/jqplot-core-js.html#Series.disableStack" target=_parent class=ISymbol>disableStack</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_downBodyColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.downBodyColor" target=_parent class=ISymbol>downBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_drawBaseline><div class=IEntry><a href="javascript:searchResults.Toggle('SR_drawBaseline')" class=ISymbol>drawBaseline</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#drawBaseline" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.drawBaseline" target=_parent class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></div></div><div class=SRResult id=SR_drawBorder><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawBorder" target=_parent class=ISymbol>drawBorder</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_drawGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.drawGridlines" target=_parent class=ISymbol>drawGridlines</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_drawMajorGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorGridlines" target=_parent class=ISymbol>drawMajorGridlines</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMajorTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMajorTickMarks" target=_parent class=ISymbol>drawMajorTickMarks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMinorGridlines><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorGridlines" target=_parent class=ISymbol>drawMinorGridlines</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_drawMinorTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.drawMinorTickMarks" target=_parent class=ISymbol>drawMinorTickMarks</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesE.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesE.html
deleted file mode 100644
index 5bb760ff..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesE.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_edgeTolerance><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.edgeTolerance" target=_parent class=ISymbol>edgeTolerance</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_enableFontSupport><div class=IEntry><a href="javascript:searchResults.Toggle('SR_enableFontSupport')" class=ISymbol>enableFontSupport</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.enableFontSupport" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.enableFontSupport" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_escapeHtml><div class=IEntry><a href="javascript:searchResults.Toggle('SR_escapeHtml')" class=ISymbol>escapeHtml</a><div class=ISubIndex><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.escapeHtml" target=_parent class=IParent>$.jqplot.<wbr>BlockRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.escapeHtml" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.escapeHtml" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.escapeHtml" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR2_escapeHTML><div class=IEntry><a href="javascript:searchResults.Toggle('SR2_escapeHTML')" class=ISymbol>escapeHTML</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.escapeHTML" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesF.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesF.html
deleted file mode 100644
index cf90670b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesF.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_fadeTooltip><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fadeTooltip')" class=ISymbol>fadeTooltip</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.fadeTooltip" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.fadeTooltip" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_fill><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fill')" class=ISymbol>fill</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#fill" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fill" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.fill" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_fillAlpha><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAlpha" target=_parent class=ISymbol>fillAlpha</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillAndStroke><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAndStroke" target=_parent class=ISymbol>fillAndStroke</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillAxis><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillAxis" target=_parent class=ISymbol>fillAxis</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillBetween><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.fillBetween" target=_parent class=ISymbol>fillBetween</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_fillColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fillColor')" class=ISymbol>fillColor</a><div class=ISubIndex><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.fillColor" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-core-js.html#Series.fillColor" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_fillDownBody><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillDownBody" target=_parent class=ISymbol>fillDownBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_fillRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillRect" target=_parent class=ISymbol>fillRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_fillStyle><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.fillStyle" target=_parent class=ISymbol>fillStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_fillToValue><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToValue" target=_parent class=ISymbol>fillToValue</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillToZero><div class=IEntry><a href="../files/jqplot-core-js.html#Series.fillToZero" target=_parent class=ISymbol>fillToZero</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_fillUpBody><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.fillUpBody" target=_parent class=ISymbol>fillUpBody</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_followMouse><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.followMouse" target=_parent class=ISymbol>followMouse</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_fontFamily><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontFamily')" class=ISymbol>fontFamily</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontFamily" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.fontFamily" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontFamily" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_fontSize><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontSize')" class=ISymbol>fontSize</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#jqPlot.fontSize" target=_parent class=IParent>jqPlot</a><a href="../files/jqplot-core-js.html#Legend.fontSize" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.fontSize" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_fontStretch><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontStretch')" class=ISymbol>fontStretch</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontStretch" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontStretch" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_fontWeight><div class=IEntry><a href="javascript:searchResults.Toggle('SR_fontWeight')" class=ISymbol>fontWeight</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.fontWeight" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.fontWeight" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_forceTickAt0><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt0" target=_parent class=ISymbol>forceTickAt0</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_forceTickAt100><div class=IEntry><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.forceTickAt100" target=_parent class=ISymbol>forceTickAt100</a>, <span class=IParent>$.jqplot.<wbr>LinearAxisRenderer</span></div></div><div class=SRResult id=SR_formatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_formatString')" class=ISymbol>formatString</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatString" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatString" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.formatString" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatString" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div><div class=SRResult id=SR_formatter><div class=IEntry><a href="javascript:searchResults.Toggle('SR_formatter')" class=ISymbol>formatter</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.formatter" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.formatter" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.formatter" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesG.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesG.html
deleted file mode 100644
index 3a7573d1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesG.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_grid><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.grid" target=_parent class=ISymbol>grid</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_gridLineColor><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineColor" target=_parent class=ISymbol>gridLineColor</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_gridLineWidth><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.gridLineWidth" target=_parent class=ISymbol>gridLineWidth</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_groups><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.groups" target=_parent class=ISymbol>groups</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesH.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesH.html
deleted file mode 100644
index ca8f802e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesH.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_hideZeros><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.hideZeros" target=_parent class=ISymbol>hideZeros</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_highlightAlpha><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightAlpha" target=_parent class=ISymbol>highlightAlpha</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div><div class=SRResult id=SR_highlightColor><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightColor" target=_parent class=ISymbol>highlightColor</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_highlightColors><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightColors')" class=ISymbol>highlightColors</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightColors" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightColors" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_highlightMouseDown><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightMouseDown')" class=ISymbol>highlightMouseDown</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseDown" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseDown" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_highlightMouseOver><div class=IEntry><a href="javascript:searchResults.Toggle('SR_highlightMouseOver')" class=ISymbol>highlightMouseOver</a><div class=ISubIndex><a href="../files/plugins/jqplot-pyramidRenderer-js.html#highlightMouseOver" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.highlightMouseOver" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_hlc><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.hlc" target=_parent class=ISymbol>hlc</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_hubRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.hubRadius" target=_parent class=ISymbol>hubRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesI.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesI.html
deleted file mode 100644
index 289adc8d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesI.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_index><div class=IEntry><a href="../files/jqplot-core-js.html#Series.index" target=_parent class=ISymbol>index</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_innerDiameter><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.innerDiameter" target=_parent class=ISymbol>innerDiameter</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_insertBreaks><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.insertBreaks" target=_parent class=ISymbol>insertBreaks</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_intersectionThreshold><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.intersectionThreshold" target=_parent class=ISymbol>intersectionThreshold</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_interval><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.interval" target=_parent class=ISymbol>interval</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_intervalColors><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalColors" target=_parent class=ISymbol>intervalColors</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervalInnerRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalInnerRadius" target=_parent class=ISymbol>intervalInnerRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervalOuterRadius><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervalOuterRadius" target=_parent class=ISymbol>intervalOuterRadius</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_intervals><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.intervals" target=_parent class=ISymbol>intervals</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_isarc><div class=IEntry><a href="javascript:searchResults.Toggle('SR_isarc')" class=ISymbol>isarc</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.isarc" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.isarc" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a></div></div></div><div class=SRResult id=SR_isMinorTick><div class=IEntry><a href="javascript:searchResults.Toggle('SR_isMinorTick')" class=ISymbol>isMinorTick</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.isMinorTick" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.isMinorTick" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesL.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesL.html
deleted file mode 100644
index 2465230d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesL.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_label><div class=IEntry><a href="javascript:searchResults.Toggle('SR_label')" class=ISymbol>label</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.label" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.label" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.label" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.label" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_labelHeightAdjust><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelHeightAdjust" target=_parent class=ISymbol>labelHeightAdjust</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_labelOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelOptions" target=_parent class=ISymbol>labelOptions</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_labelPosition><div class=IEntry><a href="javascript:searchResults.Toggle('SR_labelPosition')" class=ISymbol>labelPosition</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.labelPosition" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.labelPosition" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a></div></div></div><div class=SRResult id=SR_labelRenderer><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.labelRenderer" target=_parent class=ISymbol>labelRenderer</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_labels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_labels')" class=ISymbol>labels</a><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labels" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.labels" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_labelsFromSeries><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.labelsFromSeries" target=_parent class=ISymbol>labelsFromSeries</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_legend><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.legend" target=_parent class=ISymbol>legend</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_lineCap><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineCap')" class=ISymbol>lineCap</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineCap" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineCap" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineCap" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineCap" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineJoin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineJoin')" class=ISymbol>lineJoin</a><div class=ISubIndex><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineJoin" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.lineJoin" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.lineJoin" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_linePattern><div class=IEntry><a href="javascript:searchResults.Toggle('SR_linePattern')" class=ISymbol>linePattern</a><div class=ISubIndex><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.linePattern" target=_parent class=IParent>$.jqplot.<wbr>shapeRenderer</a><a href="../files/jqplot-core-js.html#Series.linePattern" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineWidth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_lineWidth')" class=ISymbol>lineWidth</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>OHLCRenderer</a><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>shadowRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.lineWidth" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.lineWidth" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_lineWidthAdjust><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.lineWidthAdjust" target=_parent class=ISymbol>lineWidthAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_location><div class=IEntry><a href="javascript:searchResults.Toggle('SR_location')" class=ISymbol>location</a><div class=ISubIndex><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.location" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/jqplot-core-js.html#Legend.location" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_looseZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.looseZoom" target=_parent class=ISymbol>looseZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesM.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesM.html
deleted file mode 100644
index 80a53cbf..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesM.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_marginBottom><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginBottom" target=_parent class=ISymbol>marginBottom</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginLeft><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginLeft" target=_parent class=ISymbol>marginLeft</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginRight><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginRight" target=_parent class=ISymbol>marginRight</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_marginTop><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.marginTop" target=_parent class=ISymbol>marginTop</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_mark><div class=IEntry><a href="javascript:searchResults.Toggle('SR_mark')" class=ISymbol>mark</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.mark" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.mark" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_markerOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Series.markerOptions" target=_parent class=ISymbol>markerOptions</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_markerRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_markerRenderer')" class=ISymbol>markerRenderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.markerRenderer" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.markerRenderer" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Series.markerRenderer" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_markSize><div class=IEntry><a href="javascript:searchResults.Toggle('SR_markSize')" class=ISymbol>markSize</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.markSize" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.markSize" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_max><div class=IEntry><a href="javascript:searchResults.Toggle('SR_max')" class=ISymbol>max</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.max" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.max" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_min><div class=IEntry><a href="javascript:searchResults.Toggle('SR_min')" class=ISymbol>min</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.min" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.min" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_minorTicks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_minorTicks')" class=ISymbol>minorTicks</a><div class=ISubIndex><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.minorTicks" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a><a href="../files/plugins/jqplot-logAxisRenderer-js.html#$.jqplot.LogAxisRenderer.minorTicks" target=_parent class=IParent>$.jqplot.<wbr>LogAxisRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesN.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesN.html
deleted file mode 100644
index c6018830..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesN.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_name><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.name" target=_parent class=ISymbol>name</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_needlePad><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needlePad" target=_parent class=ISymbol>needlePad</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_needleThickness><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.needleThickness" target=_parent class=ISymbol>needleThickness</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_negativeColor><div class=IEntry><a href="../files/jqplot-core-js.html#Series.negativeColor" target=_parent class=ISymbol>negativeColor</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_neighborThreshold><div class=IEntry><a href="../files/jqplot-core-js.html#Series.neighborThreshold" target=_parent class=ISymbol>neighborThreshold</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_noDataIndicator><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.noDataIndicator" target=_parent class=ISymbol>noDataIndicator</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_numberColumns><div class=IEntry><a href="javascript:searchResults.Toggle('SR_numberColumns')" class=ISymbol>numberColumns</a><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberColumns" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberColumns" target=_parent class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></div></div><div class=SRResult id=SR_numberRows><div class=IEntry><a href="javascript:searchResults.Toggle('SR_numberRows')" class=ISymbol>numberRows</a><div class=ISubIndex><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#numberRows" target=_parent class=IParent>Global</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>DonutLegendRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>FunnelLegendRenderer</a><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>MekkoLegendRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieLegendRenderer.numberRows" target=_parent class=IParent>$.jqplot.<wbr>PieLegendRenderer</a></div></div></div><div class=SRResult id=SR_numberTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.numberTicks" target=_parent class=ISymbol>numberTicks</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesO.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesO.html
deleted file mode 100644
index e3e5f594..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesO.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_objects><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.objects" target=_parent class=ISymbol>objects</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_offset><div class=IEntry><a href="../files/jqplot-shadowRenderer-js.html#$.jqplot.shadowRenderer.offset" target=_parent class=ISymbol>offset</a>, <span class=IParent>$.jqplot.<wbr>shadowRenderer</span></div></div><div class=SRResult id=SR_offsetBars><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#offsetBars" target=_parent class=ISymbol>offsetBars</a></div></div><div class=SRResult id=SR_openColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.openColor" target=_parent class=ISymbol>openColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesP.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesP.html
deleted file mode 100644
index f1a4b167..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesP.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_pad><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.pad" target=_parent class=ISymbol>pad</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_padding><div class=IEntry><a href="javascript:searchResults.Toggle('SR_padding')" class=ISymbol>padding</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.padding" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_padMax><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMax" target=_parent class=ISymbol>padMax</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_padMin><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.padMin" target=_parent class=ISymbol>padMin</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_pegNeedle><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.pegNeedle" target=_parent class=ISymbol>pegNeedle</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_placement><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.placement" target=_parent class=ISymbol>placement</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_position><div class=IEntry><a href="../files/plugins/jqplot-pyramidAxisRenderer-js.html#position" target=_parent class=ISymbol>position</a></div></div><div class=SRResult id=SR_predraw><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.predraw" target=_parent class=ISymbol>predraw</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_prefix><div class=IEntry><a href="javascript:searchResults.Toggle('SR_prefix')" class=ISymbol>prefix</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.prefix" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.prefix" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_pt2px><div class=IEntry><a href="javascript:searchResults.Toggle('SR_pt2px')" class=ISymbol>pt2px</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.pt2px" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.pt2px" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesR.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesR.html
deleted file mode 100644
index a462e099..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesR.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_renderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_renderer')" class=ISymbol>renderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.renderer" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.renderer" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.renderer" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.renderer" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.renderer" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_rendererOptions><div class=IEntry><a href="javascript:searchResults.Toggle('SR_rendererOptions')" class=ISymbol>rendererOptions</a><div class=ISubIndex><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.rendererOptions" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.rendererOptions" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Grid.rendererOptions" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Legend.rendererOptions" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.rendererOptions" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.rendererOptions" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_ringColor><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringColor" target=_parent class=ISymbol>ringColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_ringMargin><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.ringMargin" target=_parent class=ISymbol>ringMargin</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_ringWidth><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ringWidth" target=_parent class=ISymbol>ringWidth</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_rowSpacing><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.rowSpacing" target=_parent class=ISymbol>rowSpacing</a>, <span class=IParent>Legend</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesS.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesS.html
deleted file mode 100644
index 712da7fb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesS.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_scaleToHiddenSeries><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.scaleToHiddenSeries" target=_parent class=ISymbol>scaleToHiddenSeries</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_sectionMargin><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.sectionMargin" target=_parent class=ISymbol>sectionMargin</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></div></div><div class=SRResult id=SR_series><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.series" target=_parent class=ISymbol>series</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_seriesColors><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesColors" target=_parent class=ISymbol>seriesColors</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_seriesDefaults><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.seriesDefaults" target=_parent class=ISymbol>seriesDefaults</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_seriesLabelIndex><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.seriesLabelIndex" target=_parent class=ISymbol>seriesLabelIndex</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_seriesToggle><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggle" target=_parent class=ISymbol>seriesToggle</a></div></div><div class=SRResult id=SR_seriesToggleReplot><div class=IEntry><a href="../files/plugins/jqplot-enhancedLegendRenderer-js.html#seriesToggleReplot" target=_parent class=ISymbol>seriesToggleReplot</a></div></div><div class=SRResult id=SR_shadow><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadow')" class=ISymbol>shadow</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadow" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadow" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadow" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadow" target=_parent class=IParent>Grid</a></div></div></div><div class=SRResult id=SR_shadowAlpha><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowAlpha')" class=ISymbol>shadowAlpha</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAlpha" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAlpha" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAlpha" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowAngle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowAngle')" class=ISymbol>shadowAngle</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowAngle" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowAngle" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowAngle" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowColor><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowColor" target=_parent class=ISymbol>shadowColor</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_shadowDepth><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowDepth')" class=ISymbol>shadowDepth</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowDepth" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowDepth" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowDepth" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowOffset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_shadowOffset')" class=ISymbol>shadowOffset</a><div class=ISubIndex><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>BarRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.shadowOffset" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Grid.shadowOffset" target=_parent class=IParent>Grid</a><a href="../files/jqplot-core-js.html#Series.shadowOffset" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_shadowRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shadowRenderer" target=_parent class=ISymbol>shadowRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></div></div><div class=SRResult id=SR_shadowWidth><div class=IEntry><a href="../files/jqplot-core-js.html#Grid.shadowWidth" target=_parent class=ISymbol>shadowWidth</a>, <span class=IParent>Grid</span></div></div><div class=SRResult id=SR_shapeRenderer><div class=IEntry><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.shapeRenderer" target=_parent class=ISymbol>shapeRenderer</a>, <span class=IParent>$.jqplot.<wbr>MarkerRenderer</span></div></div><div class=SRResult id=SR_show><div class=IEntry><a href="javascript:searchResults.Toggle('SR_show')" class=ISymbol>show</a><div class=ISubIndex><a href="../files/jqplot-axisLabelRenderer-js.html#$.jqplot.AxisLabelRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>AxisLabelRenderer</a><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.show" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.show" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.show" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>LineRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.show" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.show" target=_parent class=IParent>$.jqplot.<wbr>PointLabels</a><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.show" target=_parent class=IParent>$.jqplot.<wbr>Trendline</a><a href="../files/jqplot-core-js.html#Axis.show" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Legend.show" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Series.show" target=_parent class=IParent>Series</a><a href="../files/jqplot-core-js.html#Title.show" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_showBorders><div class=IEntry><a href="../files/plugins/jqplot-mekkoRenderer-js.html#$.jqplot.MekkoRenderer.showBorders" target=_parent class=ISymbol>showBorders</a>, <span class=IParent>$.jqplot.<wbr>MekkoRenderer</span></div></div><div class=SRResult id=SR_showCursorLegend><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showCursorLegend" target=_parent class=ISymbol>showCursorLegend</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showDataLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showDataLabels')" class=ISymbol>showDataLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>FunnelRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.showDataLabels" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_showGridline><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showGridline')" class=ISymbol>showGridline</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showGridline" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showGridline" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_showHorizontalLine><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showHorizontalLine" target=_parent class=ISymbol>showHorizontalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showLabel><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showLabel')" class=ISymbol>showLabel</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showLabel" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Axis.showLabel" target=_parent class=IParent>Axis</a><a href="../files/jqplot-core-js.html#Series.showLabel" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_showLabels><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showLabels')" class=ISymbol>showLabels</a><div class=ISubIndex><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.showLabels" target=_parent class=IParent>$.jqplot.<wbr>BubbleRenderer</a><a href="../files/jqplot-core-js.html#Legend.showLabels" target=_parent class=IParent>Legend</a></div></div></div><div class=SRResult id=SR_showLine><div class=IEntry><a href="../files/jqplot-core-js.html#Series.showLine" target=_parent class=ISymbol>showLine</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_showLines><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.showLines" target=_parent class=ISymbol>showLines</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_showMark><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showMark')" class=ISymbol>showMark</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.showMark" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.showMark" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a></div></div></div><div class=SRResult id=SR_showMarker><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showMarker')" class=ISymbol>showMarker</a><div class=ISubIndex><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showMarker" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a><a href="../files/jqplot-core-js.html#Series.showMarker" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_showMinorTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.showMinorTicks" target=_parent class=ISymbol>showMinorTicks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_showSwatch><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.showSwatch" target=_parent class=ISymbol>showSwatch</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_showTickLabels><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTickLabels" target=_parent class=ISymbol>showTickLabels</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_showTickMarks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.showTickMarks" target=_parent class=ISymbol>showTickMarks</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_showTicks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showTicks')" class=ISymbol>showTicks</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.showTicks" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.showTicks" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_showTooltip><div class=IEntry><a href="javascript:searchResults.Toggle('SR_showTooltip')" class=ISymbol>showTooltip</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.showTooltip" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_showTooltipDataPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipDataPosition" target=_parent class=ISymbol>showTooltipDataPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipGridPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipGridPosition" target=_parent class=ISymbol>showTooltipGridPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipOutsideZoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipOutsideZoom" target=_parent class=ISymbol>showTooltipOutsideZoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showTooltipPrecision><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.showTooltipPrecision" target=_parent class=ISymbol>showTooltipPrecision</a>, <span class=IParent>$.jqplot.<wbr>CanvasOverlay</span></div></div><div class=SRResult id=SR_showTooltipUnitPosition><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showTooltipUnitPosition" target=_parent class=ISymbol>showTooltipUnitPosition</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_showVerticalLine><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.showVerticalLine" target=_parent class=ISymbol>showVerticalLine</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_size><div class=IEntry><a href="javascript:searchResults.Toggle('SR_size')" class=ISymbol>size</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.size" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.size" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></div></div><div class=SRResult id=SR_sizeAdjust><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.sizeAdjust" target=_parent class=ISymbol>sizeAdjust</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_sliceMargin><div class=IEntry><a href="javascript:searchResults.Toggle('SR_sliceMargin')" class=ISymbol>sliceMargin</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.sliceMargin" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.sliceMargin" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_smooth><div class=IEntry><a href="../files/jqplot-lineRenderer-js.html#$.jqplot.LineRenderer.smooth" target=_parent class=ISymbol>smooth</a>, <span class=IParent>$.jqplot.<wbr>LineRenderer</span></div></div><div class=SRResult id=SR_sortData><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.sortData" target=_parent class=ISymbol>sortData</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_sortMergedLabels><div class=IEntry><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.sortMergedLabels" target=_parent class=ISymbol>sortMergedLabels</a>, <span class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</span></div></div><div class=SRResult id=SR_stackedValue><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.stackedValue" target=_parent class=ISymbol>stackedValue</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_stackSeries><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.stackSeries" target=_parent class=ISymbol>stackSeries</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_start><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.start" target=_parent class=ISymbol>start</a>, <span class=IParent>Line</span></div></div><div class=SRResult id=SR_startAngle><div class=IEntry><a href="javascript:searchResults.Toggle('SR_startAngle')" class=ISymbol>startAngle</a><div class=ISubIndex><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.startAngle" target=_parent class=IParent>$.jqplot.<wbr>DonutRenderer</a><a href="../files/plugins/jqplot-pieRenderer-js.html#$.jqplot.PieRenderer.startAngle" target=_parent class=IParent>$.jqplot.<wbr>PieRenderer</a></div></div></div><div class=SRResult id=SR_stop><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#Line.stop" target=_parent class=ISymbol>stop</a>, <span class=IParent>Line</span></div></div><div class=SRResult id=SR_strokeRect><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeRect" target=_parent class=ISymbol>strokeRect</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_strokeStyle><div class=IEntry><a href="../files/jqplot-shapeRenderer-js.html#$.jqplot.shapeRenderer.strokeStyle" target=_parent class=ISymbol>strokeStyle</a>, <span class=IParent>$.jqplot.<wbr>shapeRenderer</span></div></div><div class=SRResult id=SR_style><div class=IEntry><a href="javascript:searchResults.Toggle('SR_style')" class=ISymbol>style</a><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.style" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/jqplot-markerRenderer-js.html#$.jqplot.MarkerRenderer.style" target=_parent class=IParent>$.jqplot.<wbr>MarkerRenderer</a></div></div></div><div class=SRResult id=SR_suffix><div class=IEntry><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.suffix" target=_parent class=ISymbol>suffix</a>, <span class=IParent>$.jqplot.<wbr>AxisTickRenderer</span></div></div><div class=SRResult id=SR_synchronizeHighlight><div class=IEntry><a href="../files/plugins/jqplot-pyramidRenderer-js.html#synchronizeHighlight" target=_parent class=ISymbol>synchronizeHighlight</a></div></div><div class=SRResult id=SR_syncTicks><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.syncTicks" target=_parent class=ISymbol>syncTicks</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesT.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesT.html
deleted file mode 100644
index bc107de4..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesT.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_text><div class=IEntry><a href="../files/jqplot-core-js.html#Title.text" target=_parent class=ISymbol>text</a>, <span class=IParent>Title</span></div></div><div class=SRResult id=SR_textAlign><div class=IEntry><a href="../files/jqplot-core-js.html#Title.textAlign" target=_parent class=ISymbol>textAlign</a>, <span class=IParent>Title</span></div></div><div class=SRResult id=SR_textColor><div class=IEntry><a href="javascript:searchResults.Toggle('SR_textColor')" class=ISymbol>textColor</a><div class=ISubIndex><a href="../files/jqplot-axisTickRenderer-js.html#$.jqplot.AxisTickRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>AxisTickRenderer</a><a href="../files/plugins/jqplot-canvasAxisLabelRenderer-js.html#$.jqplot.CanvasAxisLabelRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisLabelRenderer</a><a href="../files/plugins/jqplot-canvasAxisTickRenderer-js.html#$.jqplot.CanvasAxisTickRenderer.textColor" target=_parent class=IParent>$.jqplot.<wbr>CanvasAxisTickRenderer</a><a href="../files/jqplot-core-js.html#Legend.textColor" target=_parent class=IParent>Legend</a><a href="../files/jqplot-core-js.html#Title.textColor" target=_parent class=IParent>Title</a></div></div></div><div class=SRResult id=SR_themes><div class=IEntry><a href="../files/jqplot-themeEngine-js.html#$.jqplot.ThemeEngine.themes" target=_parent class=ISymbol>themes</a>, <span class=IParent>$.jqplot.<wbr>ThemeEngine</span></div></div><div class=SRResult id=SR_thickness><div class=IEntry><a href="../files/plugins/jqplot-donutRenderer-js.html#$.jqplot.DonutRenderer.thickness" target=_parent class=ISymbol>thickness</a>, <span class=IParent>$.jqplot.<wbr>DonutRenderer</span></div></div><div class=SRResult id=SR_tickColor><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickColor" target=_parent class=ISymbol>tickColor</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_tickInset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickInset')" class=ISymbol>tickInset</a><div class=ISubIndex><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickInset" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-linearAxisRenderer-js.html#$.jqplot.LinearAxisRenderer.tickInset" target=_parent class=IParent>$.jqplot.<wbr>LinearAxisRenderer</a></div></div></div><div class=SRResult id=SR_tickInterval><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickInterval" target=_parent class=ISymbol>tickInterval</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_tickLength><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.tickLength" target=_parent class=ISymbol>tickLength</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_tickMode><div class=IEntry><a href="../files/plugins/jqplot-mekkoAxisRenderer-js.html#$.jqplot.MekkoAxisRenderer.tickMode" target=_parent class=ISymbol>tickMode</a>, <span class=IParent>$.jqplot.<wbr>MekkoAxisRenderer</span></div></div><div class=SRResult id=SR_tickOptions><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.tickOptions" target=_parent class=ISymbol>tickOptions</a>, <span class=IParent>Axis</span></div></div><div class=SRResult id=SR_tickPadding><div class=IEntry><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickPadding" target=_parent class=ISymbol>tickPadding</a>, <span class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</span></div></div><div class=SRResult id=SR_tickRenderer><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickRenderer')" class=ISymbol>tickRenderer</a><div class=ISubIndex><a href="../files/plugins/jqplot-categoryAxisRenderer-js.html#$.jqplot.CategoryAxisRenderer.tickRenderer" target=_parent class=IParent>$.jqplot.<wbr>CategoryAxisRenderer</a><a href="../files/plugins/jqplot-dateAxisRenderer-js.html#$.jqplot.DateAxisRenderer.tickRenderer" target=_parent class=IParent>$.jqplot.<wbr>DateAxisRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickRenderer" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_ticks><div class=IEntry><a href="javascript:searchResults.Toggle('SR_ticks')" class=ISymbol>ticks</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.ticks" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.ticks" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_tickSpacing><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tickSpacing')" class=ISymbol>tickSpacing</a><div class=ISubIndex><a href="../files/plugins/jqplot-meterGaugeRenderer-js.html#$.jqplot.MeterGaugeRenderer.tickSpacing" target=_parent class=IParent>$.jqplot.<wbr>MeterGaugeRenderer</a><a href="../files/jqplot-core-js.html#Axis.tickSpacing" target=_parent class=IParent>Axis</a></div></div></div><div class=SRResult id=SR_title><div class=IEntry><a href="../files/jqplot-core-js.html#jqPlot.title" target=_parent class=ISymbol>title</a>, <span class=IParent>jqPlot</span></div></div><div class=SRResult id=SR_tooltipAxes><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipAxes" target=_parent class=ISymbol>tooltipAxes</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div><div class=SRResult id=SR_tooltipAxisGroups><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipAxisGroups" target=_parent class=ISymbol>tooltipAxisGroups</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div><div class=SRResult id=SR_tooltipFadeSpeed><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipFadeSpeed')" class=ISymbol>tooltipFadeSpeed</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFadeSpeed" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFadeSpeed" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipFormatString><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipFormatString')" class=ISymbol>tooltipFormatString</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipFormatString" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipLocation><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipLocation')" class=ISymbol>tooltipLocation</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipLocation" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_tooltipOffset><div class=IEntry><a href="javascript:searchResults.Toggle('SR_tooltipOffset')" class=ISymbol>tooltipOffset</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.tooltipOffset" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_transposedData><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.transposedData" target=_parent class=ISymbol>transposedData</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_type><div class=IEntry><a href="../files/plugins/jqplot-trendline-js.html#$.jqplot.Trendline.type" target=_parent class=ISymbol>type</a>, <span class=IParent>$.jqplot.<wbr>Trendline</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesU.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesU.html
deleted file mode 100644
index df97c192..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesU.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_upBodyColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.upBodyColor" target=_parent class=ISymbol>upBodyColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_useAxesFormatters><div class=IEntry><a href="javascript:searchResults.Toggle('SR_useAxesFormatters')" class=ISymbol>useAxesFormatters</a><div class=ISubIndex><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.useAxesFormatters" target=_parent class=IParent>$.jqplot.<wbr>Cursor</a><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.useAxesFormatters" target=_parent class=IParent>$.jqplot.<wbr>Highlighter</a></div></div></div><div class=SRResult id=SR_useNegativeColors><div class=IEntry><a href="../files/jqplot-core-js.html#Series.useNegativeColors" target=_parent class=ISymbol>useNegativeColors</a>, <span class=IParent>Series</span></div></div><div class=SRResult id=SR_useSeriesColor><div class=IEntry><a href="../files/jqplot-core-js.html#Axis.useSeriesColor" target=_parent class=ISymbol>useSeriesColor</a>, <span class=IParent>Axis</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesV.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesV.html
deleted file mode 100644
index ebd8349e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesV.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_varyBarColor><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.varyBarColor" target=_parent class=ISymbol>varyBarColor</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_varyBlockColors><div class=IEntry><a href="../files/plugins/jqplot-blockRenderer-js.html#$.jqplot.BlockRenderer.varyBlockColors" target=_parent class=ISymbol>varyBlockColors</a>, <span class=IParent>$.jqplot.<wbr>BlockRenderer</span></div></div><div class=SRResult id=SR_varyBubbleColors><div class=IEntry><a href="../files/plugins/jqplot-bubbleRenderer-js.html#$.jqplot.BubbleRenderer.varyBubbleColors" target=_parent class=ISymbol>varyBubbleColors</a>, <span class=IParent>$.jqplot.<wbr>BubbleRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesW.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesW.html
deleted file mode 100644
index ce589762..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesW.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_waterfall><div class=IEntry><a href="../files/plugins/jqplot-barRenderer-js.html#$.jqplot.BarRenderer.waterfall" target=_parent class=ISymbol>waterfall</a>, <span class=IParent>$.jqplot.<wbr>BarRenderer</span></div></div><div class=SRResult id=SR_wickColor><div class=IEntry><a href="../files/plugins/jqplot-ohlcRenderer-js.html#$.jqplot.OHLCRenderer.wickColor" target=_parent class=ISymbol>wickColor</a>, <span class=IParent>$.jqplot.<wbr>OHLCRenderer</span></div></div><div class=SRResult id=SR_widthRatio><div class=IEntry><a href="../files/plugins/jqplot-funnelRenderer-js.html#$.jqplot.FunnelRenderer.widthRatio" target=_parent class=ISymbol>widthRatio</a>, <span class=IParent>$.jqplot.<wbr>FunnelRenderer</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesX.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesX.html
deleted file mode 100644
index 443e98c4..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesX.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_xaxis><div class=IEntry><a href="javascript:searchResults.Toggle('SR_xaxis')" class=ISymbol>xaxis</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.xaxis" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.xaxis" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_xmax><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmax" target=_parent class=ISymbol>xmax</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_xmin><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.xmin" target=_parent class=ISymbol>xmin</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_xoffset><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.xoffset" target=_parent class=ISymbol>xoffset</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_xpadding><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.xpadding" target=_parent class=ISymbol>xpadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesY.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesY.html
deleted file mode 100644
index 8f6ea7a6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesY.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_y><div class=IEntry><a href="../files/plugins/jqplot-canvasOverlay-js.html#HorizontalLine.y" target=_parent class=ISymbol>y</a>, <span class=IParent>HorizontalLine</span></div></div><div class=SRResult id=SR_yaxis><div class=IEntry><a href="javascript:searchResults.Toggle('SR_yaxis')" class=ISymbol>yaxis</a><div class=ISubIndex><a href="../files/plugins/jqplot-canvasOverlay-js.html#$.jqplot.CanvasOverlay.yaxis" target=_parent class=IParent>$.jqplot.<wbr>CanvasOverlay</a><a href="../files/jqplot-core-js.html#Series.yaxis" target=_parent class=IParent>Series</a></div></div></div><div class=SRResult id=SR_yoffset><div class=IEntry><a href="../files/jqplot-core-js.html#Legend.yoffset" target=_parent class=ISymbol>yoffset</a>, <span class=IParent>Legend</span></div></div><div class=SRResult id=SR_ypadding><div class=IEntry><a href="../files/plugins/jqplot-pointLabels-js.html#$.jqplot.PointLabels.ypadding" target=_parent class=ISymbol>ypadding</a>, <span class=IParent>$.jqplot.<wbr>PointLabels</span></div></div><div class=SRResult id=SR_yvalues><div class=IEntry><a href="../files/plugins/jqplot-highlighter-js.html#$.jqplot.Highlighter.yvalues" target=_parent class=ISymbol>yvalues</a>, <span class=IParent>$.jqplot.<wbr>Highlighter</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesZ.html b/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesZ.html
deleted file mode 100644
index 9da6ccfc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/search/PropertiesZ.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-
-<html><head><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script></head><body class="PopupSearchResultsPage" onLoad="NDOnLoad()"><script language=JavaScript><!--
-if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>
-
-<!-- Generated by Natural Docs, version 1.4 -->
-<!-- http://www.naturaldocs.org -->
-
-<!-- saved from url=(0026)http://www.naturaldocs.org -->
-
-
-
-
-<div id="IPageLogo"><div class="nav"><a class="nav" href="../../index.php"><span>&gt;</span>Home</a><a class="nav" href="../../tests/"><span>&gt;</span>Examples</a><a class="nav" href="../../docs/"><span>&gt;</span>Docs</a><a class="nav" href="http://bitbucket.org/cleonello/jqplot/downloads/"><span>&gt;</span>Download</a><a class="nav" href="../../info.php"><span>&gt;</span>Info</a><a class="nav" href="../../donate.php"><span>&gt;</span>Donate</a></div></div><div id=Index><div class=SRStatus id=Loading>Loading...</div><table border=0 cellspacing=0 cellpadding=0><div class=SRResult id=SR_zoom><div class=IEntry><a href="../files/plugins/jqplot-cursor-js.html#$.jqplot.Cursor.zoom" target=_parent class=ISymbol>zoom</a>, <span class=IParent>$.jqplot.<wbr>Cursor</span></div></div></table><div class=SRStatus id=Searching>Searching...</div><div class=SRStatus id=NoMatches>No Matches</div><script type="text/javascript"><!--
-document.getElementById("Loading").style.display="none";
-document.getElementById("NoMatches").style.display="none";
-var searchResults = new SearchResults("searchResults", "HTML");
-searchResults.Search();
---></script></div><script language=JavaScript><!--
-if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html> \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/styles/1.css b/wqflask/wqflask/static/packages/jqplot/docs/styles/1.css
deleted file mode 100644
index 17e9cbc3..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/styles/1.css
+++ /dev/null
@@ -1,767 +0,0 @@
-/*
- IMPORTANT: If you're editing this file in the output directory of one of
- your projects, your changes will be overwritten the next time you run
- Natural Docs. Instead, copy this file to your project directory, make your
- changes, and you can use it with -s. Even better would be to make a CSS
- file in your project directory with only your changes, which you can then
- use with -s [original style] [your changes].
-
- On the other hand, if you're editing this file in the Natural Docs styles
- directory, the changes will automatically be applied to all your projects
- that use this style the next time Natural Docs is run on them.
-
- This file is part of Natural Docs, which is Copyright (C) 2003-2008 Greg Valure
- Natural Docs is licensed under the GPL
-*/
-
-body {
- font: 10pt Verdana, Arial, sans-serif;
- color: #000000;
- margin: 0; padding: 0;
- }
-
-.ContentPage,
-.IndexPage,
-.FramedMenuPage {
- background-color: #E8E8E8;
- }
-.FramedContentPage,
-.FramedIndexPage,
-.FramedSearchResultsPage,
-.PopupSearchResultsPage {
- background-color: #FFFFFF;
- }
-
-
-a:link,
-a:visited { color: #900000; text-decoration: none }
-a:hover { color: #900000; text-decoration: underline }
-a:active { color: #FF0000; text-decoration: underline }
-
-td {
- vertical-align: top }
-
-img { border: 0; }
-
-
-/*
- Comment out this line to use web-style paragraphs (blank line between
- paragraphs, no indent) instead of print-style paragraphs (no blank line,
- indented.)
-*/
-p {
- text-indent: 5ex; margin: 0 }
-
-
-/* Opera doesn't break with just wbr, but will if you add this. */
-.Opera wbr:after {
- content: "\00200B";
- }
-
-
-/* Blockquotes are used as containers for things that may need to scroll. */
-blockquote {
- padding: 0;
- margin: 0;
- overflow: auto;
- }
-
-
-.Firefox1 blockquote {
- padding-bottom: .5em;
- }
-
-/* Turn off scrolling when printing. */
-@media print {
- blockquote {
- overflow: visible;
- }
- .IE blockquote {
- width: auto;
- }
- }
-
-
-
-#Menu {
- font-size: 9pt;
- padding: 10px 0 0 0;
- }
-.ContentPage #Menu,
-.IndexPage #Menu {
- position: absolute;
- top: 0;
- left: 0;
- width: 31ex;
- overflow: hidden;
- }
-.ContentPage .Firefox #Menu,
-.IndexPage .Firefox #Menu {
- width: 27ex;
- }
-
-
- .MTitle {
- font-size: 16pt; font-weight: bold; font-variant: small-caps;
- text-align: center;
- padding: 5px 10px 15px 10px;
- border-bottom: 1px dotted #000000;
- margin-bottom: 15px }
-
- .MSubTitle {
- font-size: 9pt; font-weight: normal; font-variant: normal;
- margin-top: 1ex; margin-bottom: 5px }
-
-
- .MEntry a:link,
- .MEntry a:hover,
- .MEntry a:visited { color: #606060; margin-right: 0 }
- .MEntry a:active { color: #A00000; margin-right: 0 }
-
-
- .MGroup {
- font-variant: small-caps; font-weight: bold;
- margin: 1em 0 1em 10px;
- }
-
- .MGroupContent {
- font-variant: normal; font-weight: normal }
-
- .MGroup a:link,
- .MGroup a:hover,
- .MGroup a:visited { color: #545454; margin-right: 10px }
- .MGroup a:active { color: #A00000; margin-right: 10px }
-
-
- .MFile,
- .MText,
- .MLink,
- .MIndex {
- padding: 1px 17px 2px 10px;
- margin: .25em 0 .25em 0;
- }
-
- .MText {
- font-size: 8pt; font-style: italic }
-
- .MLink {
- font-style: italic }
-
- #MSelected {
- color: #000000; background-color: #FFFFFF;
- /* Replace padding with border. */
- padding: 0 10px 0 10px;
- border-width: 1px 2px 2px 0; border-style: solid; border-color: #000000;
- margin-right: 5px;
- }
-
- /* Close off the left side when its in a group. */
- .MGroup #MSelected {
- padding-left: 9px; border-left-width: 1px }
-
- /* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */
- .Firefox #MSelected {
- -moz-border-radius-topright: 10px;
- -moz-border-radius-bottomright: 10px }
- .Firefox .MGroup #MSelected {
- -moz-border-radius-topleft: 10px;
- -moz-border-radius-bottomleft: 10px }
-
-
- #MSearchPanel {
- padding: 0px 6px;
- margin: .25em 0;
- }
-
-
- #MSearchField {
- font: italic 9pt Verdana, sans-serif;
- color: #606060;
- background-color: #E8E8E8;
- border: none;
- padding: 2px 4px;
- width: 100%;
- }
- /* Only Opera gets it right. */
- .Firefox #MSearchField,
- .IE #MSearchField,
- .Safari #MSearchField {
- width: 94%;
- }
- .Opera9 #MSearchField,
- .Konqueror #MSearchField {
- width: 97%;
- }
- .FramedMenuPage .Firefox #MSearchField,
- .FramedMenuPage .Safari #MSearchField,
- .FramedMenuPage .Konqueror #MSearchField {
- width: 98%;
- }
-
- /* Firefox doesn't do this right in frames without #MSearchPanel added on.
- It's presence doesn't hurt anything other browsers. */
- #MSearchPanel.MSearchPanelInactive:hover #MSearchField {
- background-color: #FFFFFF;
- border: 1px solid #C0C0C0;
- padding: 1px 3px;
- }
- .MSearchPanelActive #MSearchField {
- background-color: #FFFFFF;
- border: 1px solid #C0C0C0;
- font-style: normal;
- padding: 1px 3px;
- }
-
- #MSearchType {
- visibility: hidden;
- font: 8pt Verdana, sans-serif;
- width: 98%;
- padding: 0;
- border: 1px solid #C0C0C0;
- }
- .MSearchPanelActive #MSearchType,
- /* As mentioned above, Firefox doesn't do this right in frames without #MSearchPanel added on. */
- #MSearchPanel.MSearchPanelInactive:hover #MSearchType,
- #MSearchType:focus {
- visibility: visible;
- color: #606060;
- }
- #MSearchType option#MSearchEverything {
- font-weight: bold;
- }
-
- .Opera8 .MSearchPanelInactive:hover,
- .Opera8 .MSearchPanelActive {
- margin-left: -1px;
- }
-
-
- iframe#MSearchResults {
- width: 60ex;
- height: 15em;
- }
- #MSearchResultsWindow {
- display: none;
- position: absolute;
- left: 0; top: 0;
- border: 1px solid #000000;
- background-color: #E8E8E8;
- }
- #MSearchResultsWindowClose {
- font-weight: bold;
- font-size: 8pt;
- display: block;
- padding: 2px 5px;
- }
- #MSearchResultsWindowClose:link,
- #MSearchResultsWindowClose:visited {
- color: #000000;
- text-decoration: none;
- }
- #MSearchResultsWindowClose:active,
- #MSearchResultsWindowClose:hover {
- color: #800000;
- text-decoration: none;
- background-color: #F4F4F4;
- }
-
-
-
-
-#Content {
- padding-bottom: 15px;
- }
-
-.ContentPage #Content {
- border-width: 0 0 1px 1px;
- border-style: solid;
- border-color: #000000;
- background-color: #FFFFFF;
- font-size: 9pt; /* To make 31ex match the menu's 31ex. */
- margin-left: 31ex;
- }
-.ContentPage .Firefox #Content {
- margin-left: 27ex;
- }
-
-
-
- .CTopic {
- font-size: 10pt;
- margin-bottom: 3em;
- }
-
-
- .CTitle {
- font-size: 12pt; font-weight: bold;
- border-width: 0 0 1px 0; border-style: solid; border-color: #A0A0A0;
- margin: 0 15px .5em 15px }
-
- .CGroup .CTitle {
- font-size: 16pt; font-variant: small-caps;
- padding-left: 15px; padding-right: 15px;
- border-width: 0 0 2px 0; border-color: #000000;
- margin-left: 0; margin-right: 0 }
-
- .CClass .CTitle,
- .CInterface .CTitle,
- .CDatabase .CTitle,
- .CDatabaseTable .CTitle,
- .CSection .CTitle {
- font-size: 18pt;
- color: #FFFFFF; background-color: #A0A0A0;
- padding: 10px 15px 10px 15px;
- border-width: 2px 0; border-color: #000000;
- margin-left: 0; margin-right: 0 }
-
- #MainTopic .CTitle {
- font-size: 20pt;
- color: #FFFFFF; background-color: #7070C0;
- padding: 10px 15px 10px 15px;
- border-width: 0 0 3px 0; border-color: #000000;
- margin-left: 0; margin-right: 0 }
-
- .CBody {
- margin-left: 15px; margin-right: 15px }
-
-
- .CToolTip {
- position: absolute; visibility: hidden;
- left: 0; top: 0;
- background-color: #FFFFE0;
- padding: 5px;
- border-width: 1px 2px 2px 1px; border-style: solid; border-color: #000000;
- font-size: 8pt;
- }
-
- .Opera .CToolTip {
- max-width: 98%;
- }
-
- /* Scrollbars would be useless. */
- .CToolTip blockquote {
- overflow: hidden;
- }
- .IE6 .CToolTip blockquote {
- overflow: visible;
- }
-
- .CHeading {
- font-weight: bold; font-size: 10pt;
- margin: 1.5em 0 .5em 0;
- }
-
- .CBody pre {
- font: 10pt "Courier New", Courier, monospace;
- margin: 1em 0;
- }
-
- .CBody ul {
- /* I don't know why CBody's margin doesn't apply, but it's consistent across browsers so whatever.
- Reapply it here as padding. */
- padding-left: 15px; padding-right: 15px;
- margin: .5em 5ex .5em 5ex;
- }
-
- .CDescriptionList {
- margin: .5em 5ex 0 5ex }
-
- .CDLEntry {
- font: 10pt "Courier New", Courier, monospace; color: #808080;
- padding-bottom: .25em;
- white-space: nowrap }
-
- .CDLDescription {
- font-size: 10pt; /* For browsers that don't inherit correctly, like Opera 5. */
- padding-bottom: .5em; padding-left: 5ex }
-
-
- .CTopic img {
- text-align: center;
- display: block;
- margin: 1em auto;
- }
- .CImageCaption {
- font-variant: small-caps;
- font-size: 8pt;
- color: #808080;
- text-align: center;
- position: relative;
- top: 1em;
- }
-
- .CImageLink {
- color: #808080;
- font-style: italic;
- }
- a.CImageLink:link,
- a.CImageLink:visited,
- a.CImageLink:hover { color: #808080 }
-
-
-
-
-
-.Prototype {
- font: 10pt "Courier New", Courier, monospace;
- padding: 5px 3ex;
- border-width: 1px; border-style: solid;
- margin: 0 5ex 1.5em 5ex;
- }
-
- .Prototype td {
- font-size: 10pt;
- }
-
- .PDefaultValue,
- .PDefaultValuePrefix,
- .PTypePrefix {
- color: #8F8F8F;
- }
- .PTypePrefix {
- text-align: right;
- }
- .PAfterParameters {
- vertical-align: bottom;
- }
-
- .IE .Prototype table {
- padding: 0;
- }
-
- .CFunction .Prototype {
- background-color: #F4F4F4; border-color: #D0D0D0 }
- .CProperty .Prototype {
- background-color: #F4F4FF; border-color: #C0C0E8 }
- .CVariable .Prototype {
- background-color: #FFFFF0; border-color: #E0E0A0 }
-
- .CClass .Prototype {
- border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
- background-color: #F4F4F4;
- }
- .CInterface .Prototype {
- border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0D0;
- background-color: #F4F4FF;
- }
-
- .CDatabaseIndex .Prototype,
- .CConstant .Prototype {
- background-color: #D0D0D0; border-color: #000000 }
- .CType .Prototype,
- .CEnumeration .Prototype {
- background-color: #FAF0F0; border-color: #E0B0B0;
- }
- .CDatabaseTrigger .Prototype,
- .CEvent .Prototype,
- .CDelegate .Prototype {
- background-color: #F0FCF0; border-color: #B8E4B8 }
-
- .CToolTip .Prototype {
- margin: 0 0 .5em 0;
- white-space: nowrap;
- }
-
-
-
-
-
-.Summary {
- margin: 1.5em 5ex 0 5ex }
-
- .STitle {
- font-size: 12pt; font-weight: bold;
- margin-bottom: .5em }
-
-
- .SBorder {
- background-color: #FFFFF0;
- padding: 15px;
- border: 1px solid #C0C060 }
-
- /* In a frame IE 6 will make them too long unless you set the width to 100%. Without frames it will be correct without a width
- or slightly too long (but not enough to scroll) with a width. This arbitrary weirdness simply astounds me. IE 7 has the same
- problem with frames, haven't tested it without. */
- .FramedContentPage .IE .SBorder {
- width: 100% }
-
- /* A treat for Mozilla users. Blatantly non-standard. Will be replaced with CSS 3 attributes when finalized/supported. */
- .Firefox .SBorder {
- -moz-border-radius: 20px }
-
-
- .STable {
- font-size: 9pt; width: 100% }
-
- .SEntry {
- width: 30% }
- .SDescription {
- width: 70% }
-
-
- .SMarked {
- background-color: #F8F8D8 }
-
- .SDescription { padding-left: 2ex }
- .SIndent1 .SEntry { padding-left: 1.5ex } .SIndent1 .SDescription { padding-left: 3.5ex }
- .SIndent2 .SEntry { padding-left: 3.0ex } .SIndent2 .SDescription { padding-left: 5.0ex }
- .SIndent3 .SEntry { padding-left: 4.5ex } .SIndent3 .SDescription { padding-left: 6.5ex }
- .SIndent4 .SEntry { padding-left: 6.0ex } .SIndent4 .SDescription { padding-left: 8.0ex }
- .SIndent5 .SEntry { padding-left: 7.5ex } .SIndent5 .SDescription { padding-left: 9.5ex }
-
- .SDescription a { color: #800000}
- .SDescription a:active { color: #A00000 }
-
- .SGroup td {
- padding-top: .5em; padding-bottom: .25em }
-
- .SGroup .SEntry {
- font-weight: bold; font-variant: small-caps }
-
- .SGroup .SEntry a { color: #800000 }
- .SGroup .SEntry a:active { color: #F00000 }
-
-
- .SMain td,
- .SClass td,
- .SDatabase td,
- .SDatabaseTable td,
- .SSection td {
- font-size: 10pt;
- padding-bottom: .25em }
-
- .SClass td,
- .SDatabase td,
- .SDatabaseTable td,
- .SSection td {
- padding-top: 1em }
-
- .SMain .SEntry,
- .SClass .SEntry,
- .SDatabase .SEntry,
- .SDatabaseTable .SEntry,
- .SSection .SEntry {
- font-weight: bold;
- }
-
- .SMain .SEntry a,
- .SClass .SEntry a,
- .SDatabase .SEntry a,
- .SDatabaseTable .SEntry a,
- .SSection .SEntry a { color: #000000 }
-
- .SMain .SEntry a:active,
- .SClass .SEntry a:active,
- .SDatabase .SEntry a:active,
- .SDatabaseTable .SEntry a:active,
- .SSection .SEntry a:active { color: #A00000 }
-
-
-
-
-
-.ClassHierarchy {
- margin: 0 15px 1em 15px }
-
- .CHEntry {
- border-width: 1px 2px 2px 1px; border-style: solid; border-color: #A0A0A0;
- margin-bottom: 3px;
- padding: 2px 2ex;
- font-size: 10pt;
- background-color: #F4F4F4; color: #606060;
- }
-
- .Firefox .CHEntry {
- -moz-border-radius: 4px;
- }
-
- .CHCurrent .CHEntry {
- font-weight: bold;
- border-color: #000000;
- color: #000000;
- }
-
- .CHChildNote .CHEntry {
- font-style: italic;
- font-size: 8pt;
- }
-
- .CHIndent {
- margin-left: 3ex;
- }
-
- .CHEntry a:link,
- .CHEntry a:visited,
- .CHEntry a:hover {
- color: #606060;
- }
- .CHEntry a:active {
- color: #800000;
- }
-
-
-
-
-
-#Index {
- background-color: #FFFFFF;
- }
-
-/* As opposed to .PopupSearchResultsPage #Index */
-.IndexPage #Index,
-.FramedIndexPage #Index,
-.FramedSearchResultsPage #Index {
- padding: 15px;
- }
-
-.IndexPage #Index {
- border-width: 0 0 1px 1px;
- border-style: solid;
- border-color: #000000;
- font-size: 9pt; /* To make 27ex match the menu's 27ex. */
- margin-left: 27ex;
- }
-
-
- .IPageTitle {
- font-size: 20pt; font-weight: bold;
- color: #FFFFFF; background-color: #7070C0;
- padding: 10px 15px 10px 15px;
- border-width: 0 0 3px 0; border-color: #000000; border-style: solid;
- margin: -15px -15px 0 -15px }
-
- .FramedSearchResultsPage .IPageTitle {
- margin-bottom: 15px;
- }
-
- .INavigationBar {
- font-size: 10pt;
- text-align: center;
- background-color: #FFFFF0;
- padding: 5px;
- border-bottom: solid 1px black;
- margin: 0 -15px 15px -15px;
- }
-
- .INavigationBar a {
- font-weight: bold }
-
- .IHeading {
- font-size: 16pt; font-weight: bold;
- padding: 2.5em 0 .5em 0;
- text-align: center;
- width: 3.5ex;
- }
- #IFirstHeading {
- padding-top: 0;
- }
-
- .IEntry {
- font-size: 10pt;
- padding-left: 1ex;
- }
- .PopupSearchResultsPage .IEntry {
- font-size: 8pt;
- padding: 1px 5px;
- }
- .PopupSearchResultsPage .Opera9 .IEntry,
- .FramedSearchResultsPage .Opera9 .IEntry {
- text-align: left;
- }
- .FramedSearchResultsPage .IEntry {
- padding: 0;
- }
-
- .ISubIndex {
- padding-left: 3ex; padding-bottom: .5em }
- .PopupSearchResultsPage .ISubIndex {
- display: none;
- }
-
- /* While it may cause some entries to look like links when they aren't, I found it's much easier to read the
- index if everything's the same color. */
- .ISymbol {
- font-weight: bold; color: #900000 }
-
- .IndexPage .ISymbolPrefix,
- .FramedIndexPage .ISymbolPrefix {
- font-size: 10pt;
- text-align: right;
- color: #C47C7C;
- background-color: #F8F8F8;
- border-right: 3px solid #E0E0E0;
- border-left: 1px solid #E0E0E0;
- padding: 0 1px 0 2px;
- }
- .PopupSearchResultsPage .ISymbolPrefix,
- .FramedSearchResultsPage .ISymbolPrefix {
- color: #900000;
- }
- .PopupSearchResultsPage .ISymbolPrefix {
- font-size: 8pt;
- }
-
- .IndexPage #IFirstSymbolPrefix,
- .FramedIndexPage #IFirstSymbolPrefix {
- border-top: 1px solid #E0E0E0;
- }
- .IndexPage #ILastSymbolPrefix,
- .FramedIndexPage #ILastSymbolPrefix {
- border-bottom: 1px solid #E0E0E0;
- }
- .IndexPage #IOnlySymbolPrefix,
- .FramedIndexPage #IOnlySymbolPrefix {
- border-top: 1px solid #E0E0E0;
- border-bottom: 1px solid #E0E0E0;
- }
-
- a.IParent,
- a.IFile {
- display: block;
- }
-
- .PopupSearchResultsPage .SRStatus {
- padding: 2px 5px;
- font-size: 8pt;
- font-style: italic;
- }
- .FramedSearchResultsPage .SRStatus {
- font-size: 10pt;
- font-style: italic;
- }
-
- .SRResult {
- display: none;
- }
-
-
-
-#Footer {
- font-size: 8pt;
- color: #989898;
- text-align: right;
- }
-
-#Footer p {
- text-indent: 0;
- margin-bottom: .5em;
- }
-
-.ContentPage #Footer,
-.IndexPage #Footer {
- text-align: right;
- margin: 2px;
- }
-
-.FramedMenuPage #Footer {
- text-align: center;
- margin: 5em 10px 10px 10px;
- padding-top: 1em;
- border-top: 1px solid #C8C8C8;
- }
-
- #Footer a:link,
- #Footer a:hover,
- #Footer a:visited { color: #989898 }
- #Footer a:active { color: #A00000 }
-
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/styles/2.css b/wqflask/wqflask/static/packages/jqplot/docs/styles/2.css
deleted file mode 100644
index 12117d4e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/styles/2.css
+++ /dev/null
@@ -1,174 +0,0 @@
-html, body {
- height: 100%;
-}
-
-/*
-div.Firefox {
- height: 100%;
-}
-*/
-
-.MTitle {
- font-variant: normal;
-}
-
-.MLink {
- font-style: normal;
-}
-
-.CBody {
-margin-left: 30px;
-margin-right: 30px;
-}
-
-p {
- text-indent: 0;
- margin-bottom: 1em;
- }
-
-.CBody p {
-/*
- padding-top: 4px;
- padding-bottom: 4px;
-*/
-}
-
-#Menu {
- margin-top: 94px;
- border: 0px;
-}
-
-body.ContentPage {
- background-image: url('../../images/background.jpg');
- background-color: #818181;
- background-position: left top;
- background-repeat: repeat-x;
-}
-
-.MGroup a:link,
-.MGroup a:hover,
-.MGroup a:visited { color: #bfbfbf; margin-right: 10px }
-.MGroup a:active { color: #f58f07; margin-right: 10px }
-
-
-.MEntry a:link,
-.MEntry a:hover,
-.MEntry a:visited { color: #bfbfbf; margin-right: 0 }
-.MEntry a:active { color: #f58f07; margin-right: 0 }
-
-#Footer {
- color: #bfbfbf;
-}
-
-#Footer a:link, #Footer a:hover, #Footer a:visited {
- color: #5c93f0;
-}
-
-#MainTopic div.CTitle.logo {
- color: #292929;
- font-size: 0px;
- font-style: normal;
- font-weight: normal;
- border-width: 0px;
- padding: 0px;
- margin: 0px;
- background-position: left top;
- background-repeat: no-repeat;
- background-image: url('../../images/logo.jpg');
- background-color: #292929;
- height: 94px;
- position: relative;
-
-}
-
-#MainTopic h1.CTitle a {
- display: none;
-}
-
-
-#MainTopic div.CBody p:first-child {
- margin-top: 24px;
-}
-
-.ContentPage #Content {
- border: 0px;
-/* height: 100%; */
-}
-
-#IPageLogo {
- width: 780px;
- color: #292929;
- font-style: normal;
- font-weight: normal;
- border-width: 0px;
- padding: 0px;
- margin: 0px;
- background-position: left top;
- background-repeat: no-repeat;
- background-image: url('../../images/logo.jpg');
- background-color: #292929;
- height: 94px;
- position: relative;
- left: 27ex;
-}
-
-#Menu, #IPageLogo {
- font-size: 9pt;
-}
-
-body.IndexPage {
- background-image: url('../../images/background.jpg');
-}
-
-/*#IPageLogo:hover {
- cursor: pointer;
-}*/
-
-.IPageTitle {
- background-color:#FFFFF0;
- color: #333333;
- border: 0px;
-}
-
-
-
-div.nav {
- position:relative;
- top: 70px;
- text-align: right;
-}
-
-a.nav span {
- font-size: 11px;
- position: relative;
- bottom: 2px;
-}
-
-a.nav:visited {
- text-decoration: none;
- border: 0px;
- color: #aaaaaa;
-}
-
-a.nav, a.nav:link {
- border: 0px;
- text-decoration: none;
- font-family: Tahoma, "Helvetica Neue", "Trebuchet MS", Verdana, Arial, sans-serif;
- font-size: 16px;
- color: #aaaaaa;
- margin-right: 11px;
-}
-
-a.nav:hover {
- text-decoration: none;
- border: 0px;
- color: #E0771C;
-}
-
-a.nav:active {
- text-decoration: none;
- border: 0px;
- color: #E0771C;
-}
-
-
diff --git a/wqflask/wqflask/static/packages/jqplot/docs/styles/main.css b/wqflask/wqflask/static/packages/jqplot/docs/styles/main.css
deleted file mode 100644
index a672a949..00000000
--- a/wqflask/wqflask/static/packages/jqplot/docs/styles/main.css
+++ /dev/null
@@ -1,2 +0,0 @@
-@import URL("1.css");
-@import URL("2.css");
diff --git a/wqflask/wqflask/static/packages/jqplot/excanvas.js b/wqflask/wqflask/static/packages/jqplot/excanvas.js
deleted file mode 100644
index 75b2f65f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/excanvas.js
+++ /dev/null
@@ -1,1438 +0,0 @@
-// Memory Leaks patch from http://explorercanvas.googlecode.com/svn/trunk/
-// svn : r73
-// ------------------------------------------------------------------
-// Copyright 2006 Google Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-
-// Known Issues:
-//
-// * Patterns only support repeat.
-// * Radial gradient are not implemented. The VML version of these look very
-// different from the canvas one.
-// * Clipping paths are not implemented.
-// * Coordsize. The width and height attribute have higher priority than the
-// width and height style values which isn't correct.
-// * Painting mode isn't implemented.
-// * Canvas width/height should is using content-box by default. IE in
-// Quirks mode will draw the canvas using border-box. Either change your
-// doctype to HTML5
-// (http://www.whatwg.org/specs/web-apps/current-work/#the-doctype)
-// or use Box Sizing Behavior from WebFX
-// (http://webfx.eae.net/dhtml/boxsizing/boxsizing.html)
-// * Non uniform scaling does not correctly scale strokes.
-// * Optimize. There is always room for speed improvements.
-
-// Only add this code if we do not already have a canvas implementation
-if (!document.createElement('canvas').getContext) {
-
-(function() {
-
- // alias some functions to make (compiled) code shorter
- var m = Math;
- var mr = m.round;
- var ms = m.sin;
- var mc = m.cos;
- var abs = m.abs;
- var sqrt = m.sqrt;
-
- // this is used for sub pixel precision
- var Z = 10;
- var Z2 = Z / 2;
-
- var IE_VERSION = +navigator.userAgent.match(/MSIE ([\d.]+)?/)[1];
-
- /**
- * This funtion is assigned to the <canvas> elements as element.getContext().
- * @this {HTMLElement}
- * @return {CanvasRenderingContext2D_}
- */
- function getContext() {
- return this.context_ ||
- (this.context_ = new CanvasRenderingContext2D_(this));
- }
-
- var slice = Array.prototype.slice;
-
- /**
- * Binds a function to an object. The returned function will always use the
- * passed in {@code obj} as {@code this}.
- *
- * Example:
- *
- * g = bind(f, obj, a, b)
- * g(c, d) // will do f.call(obj, a, b, c, d)
- *
- * @param {Function} f The function to bind the object to
- * @param {Object} obj The object that should act as this when the function
- * is called
- * @param {*} var_args Rest arguments that will be used as the initial
- * arguments when the function is called
- * @return {Function} A new function that has bound this
- */
- function bind(f, obj, var_args) {
- var a = slice.call(arguments, 2);
- return function() {
- return f.apply(obj, a.concat(slice.call(arguments)));
- };
- }
-
- function encodeHtmlAttribute(s) {
- return String(s).replace(/&/g, '&amp;').replace(/"/g, '&quot;');
- }
-
- function addNamespace(doc, prefix, urn) {
- if (!doc.namespaces[prefix]) {
- doc.namespaces.add(prefix, urn, '#default#VML');
- }
- }
-
- function addNamespacesAndStylesheet(doc) {
- addNamespace(doc, 'g_vml_', 'urn:schemas-microsoft-com:vml');
- addNamespace(doc, 'g_o_', 'urn:schemas-microsoft-com:office:office');
-
- // Setup default CSS. Only add one style sheet per document
- if (!doc.styleSheets['ex_canvas_']) {
- var ss = doc.createStyleSheet();
- ss.owningElement.id = 'ex_canvas_';
- ss.cssText = 'canvas{display:inline-block;overflow:hidden;' +
- // default size is 300x150 in Gecko and Opera
- 'text-align:left;width:300px;height:150px}';
- }
- }
-
- // Add namespaces and stylesheet at startup.
- addNamespacesAndStylesheet(document);
-
- var G_vmlCanvasManager_ = {
- init: function(opt_doc) {
- var doc = opt_doc || document;
- // Create a dummy element so that IE will allow canvas elements to be
- // recognized.
- doc.createElement('canvas');
- doc.attachEvent('onreadystatechange', bind(this.init_, this, doc));
- },
-
- init_: function(doc) {
- // find all canvas elements
- var els = doc.getElementsByTagName('canvas');
- for (var i = 0; i < els.length; i++) {
- this.initElement(els[i]);
- }
- },
-
- /**
- * Public initializes a canvas element so that it can be used as canvas
- * element from now on. This is called automatically before the page is
- * loaded but if you are creating elements using createElement you need to
- * make sure this is called on the element.
- * @param {HTMLElement} el The canvas element to initialize.
- * @return {HTMLElement} the element that was created.
- */
- initElement: function(el) {
- if (!el.getContext) {
- el.getContext = getContext;
-
- // Add namespaces and stylesheet to document of the element.
- addNamespacesAndStylesheet(el.ownerDocument);
-
- // Remove fallback content. There is no way to hide text nodes so we
- // just remove all childNodes. We could hide all elements and remove
- // text nodes but who really cares about the fallback content.
- el.innerHTML = '';
-
- // do not use inline function because that will leak memory
- el.attachEvent('onpropertychange', onPropertyChange);
- el.attachEvent('onresize', onResize);
-
- var attrs = el.attributes;
- if (attrs.width && attrs.width.specified) {
- // TODO: use runtimeStyle and coordsize
- // el.getContext().setWidth_(attrs.width.nodeValue);
- el.style.width = attrs.width.nodeValue + 'px';
- } else {
- el.width = el.clientWidth;
- }
- if (attrs.height && attrs.height.specified) {
- // TODO: use runtimeStyle and coordsize
- // el.getContext().setHeight_(attrs.height.nodeValue);
- el.style.height = attrs.height.nodeValue + 'px';
- } else {
- el.height = el.clientHeight;
- }
- //el.getContext().setCoordsize_()
- }
- return el;
- },
-
- // Memory Leaks patch : see http://code.google.com/p/explorercanvas/issues/detail?id=82
- uninitElement: function(el){
- if (el.getContext) {
- var ctx = el.getContext();
- delete ctx.element_;
- delete ctx.canvas;
- el.innerHTML = "";
- //el.outerHTML = "";
- el.context_ = null;
- el.getContext = null;
- el.detachEvent("onpropertychange", onPropertyChange);
- el.detachEvent("onresize", onResize);
- }
- }
- };
-
- function onPropertyChange(e) {
- var el = e.srcElement;
-
- switch (e.propertyName) {
- case 'width':
- el.getContext().clearRect();
- el.style.width = el.attributes.width.nodeValue + 'px';
- // In IE8 this does not trigger onresize.
- el.firstChild.style.width = el.clientWidth + 'px';
- break;
- case 'height':
- el.getContext().clearRect();
- el.style.height = el.attributes.height.nodeValue + 'px';
- el.firstChild.style.height = el.clientHeight + 'px';
- break;
- }
- }
-
- function onResize(e) {
- var el = e.srcElement;
- if (el.firstChild) {
- el.firstChild.style.width = el.clientWidth + 'px';
- el.firstChild.style.height = el.clientHeight + 'px';
- }
- }
-
- G_vmlCanvasManager_.init();
-
- // precompute "00" to "FF"
- var decToHex = [];
- for (var i = 0; i < 16; i++) {
- for (var j = 0; j < 16; j++) {
- decToHex[i * 16 + j] = i.toString(16) + j.toString(16);
- }
- }
-
- function createMatrixIdentity() {
- return [
- [1, 0, 0],
- [0, 1, 0],
- [0, 0, 1]
- ];
- }
-
- function matrixMultiply(m1, m2) {
- var result = createMatrixIdentity();
-
- for (var x = 0; x < 3; x++) {
- for (var y = 0; y < 3; y++) {
- var sum = 0;
-
- for (var z = 0; z < 3; z++) {
- sum += m1[x][z] * m2[z][y];
- }
-
- result[x][y] = sum;
- }
- }
- return result;
- }
-
- function copyState(o1, o2) {
- o2.fillStyle = o1.fillStyle;
- o2.lineCap = o1.lineCap;
- o2.lineJoin = o1.lineJoin;
- o2.lineWidth = o1.lineWidth;
- o2.miterLimit = o1.miterLimit;
- o2.shadowBlur = o1.shadowBlur;
- o2.shadowColor = o1.shadowColor;
- o2.shadowOffsetX = o1.shadowOffsetX;
- o2.shadowOffsetY = o1.shadowOffsetY;
- o2.strokeStyle = o1.strokeStyle;
- o2.globalAlpha = o1.globalAlpha;
- o2.font = o1.font;
- o2.textAlign = o1.textAlign;
- o2.textBaseline = o1.textBaseline;
- o2.arcScaleX_ = o1.arcScaleX_;
- o2.arcScaleY_ = o1.arcScaleY_;
- o2.lineScale_ = o1.lineScale_;
- }
-
- var colorData = {
- aliceblue: '#F0F8FF',
- antiquewhite: '#FAEBD7',
- aquamarine: '#7FFFD4',
- azure: '#F0FFFF',
- beige: '#F5F5DC',
- bisque: '#FFE4C4',
- black: '#000000',
- blanchedalmond: '#FFEBCD',
- blueviolet: '#8A2BE2',
- brown: '#A52A2A',
- burlywood: '#DEB887',
- cadetblue: '#5F9EA0',
- chartreuse: '#7FFF00',
- chocolate: '#D2691E',
- coral: '#FF7F50',
- cornflowerblue: '#6495ED',
- cornsilk: '#FFF8DC',
- crimson: '#DC143C',
- cyan: '#00FFFF',
- darkblue: '#00008B',
- darkcyan: '#008B8B',
- darkgoldenrod: '#B8860B',
- darkgray: '#A9A9A9',
- darkgreen: '#006400',
- darkgrey: '#A9A9A9',
- darkkhaki: '#BDB76B',
- darkmagenta: '#8B008B',
- darkolivegreen: '#556B2F',
- darkorange: '#FF8C00',
- darkorchid: '#9932CC',
- darkred: '#8B0000',
- darksalmon: '#E9967A',
- darkseagreen: '#8FBC8F',
- darkslateblue: '#483D8B',
- darkslategray: '#2F4F4F',
- darkslategrey: '#2F4F4F',
- darkturquoise: '#00CED1',
- darkviolet: '#9400D3',
- deeppink: '#FF1493',
- deepskyblue: '#00BFFF',
- dimgray: '#696969',
- dimgrey: '#696969',
- dodgerblue: '#1E90FF',
- firebrick: '#B22222',
- floralwhite: '#FFFAF0',
- forestgreen: '#228B22',
- gainsboro: '#DCDCDC',
- ghostwhite: '#F8F8FF',
- gold: '#FFD700',
- goldenrod: '#DAA520',
- grey: '#808080',
- greenyellow: '#ADFF2F',
- honeydew: '#F0FFF0',
- hotpink: '#FF69B4',
- indianred: '#CD5C5C',
- indigo: '#4B0082',
- ivory: '#FFFFF0',
- khaki: '#F0E68C',
- lavender: '#E6E6FA',
- lavenderblush: '#FFF0F5',
- lawngreen: '#7CFC00',
- lemonchiffon: '#FFFACD',
- lightblue: '#ADD8E6',
- lightcoral: '#F08080',
- lightcyan: '#E0FFFF',
- lightgoldenrodyellow: '#FAFAD2',
- lightgreen: '#90EE90',
- lightgrey: '#D3D3D3',
- lightpink: '#FFB6C1',
- lightsalmon: '#FFA07A',
- lightseagreen: '#20B2AA',
- lightskyblue: '#87CEFA',
- lightslategray: '#778899',
- lightslategrey: '#778899',
- lightsteelblue: '#B0C4DE',
- lightyellow: '#FFFFE0',
- limegreen: '#32CD32',
- linen: '#FAF0E6',
- magenta: '#FF00FF',
- mediumaquamarine: '#66CDAA',
- mediumblue: '#0000CD',
- mediumorchid: '#BA55D3',
- mediumpurple: '#9370DB',
- mediumseagreen: '#3CB371',
- mediumslateblue: '#7B68EE',
- mediumspringgreen: '#00FA9A',
- mediumturquoise: '#48D1CC',
- mediumvioletred: '#C71585',
- midnightblue: '#191970',
- mintcream: '#F5FFFA',
- mistyrose: '#FFE4E1',
- moccasin: '#FFE4B5',
- navajowhite: '#FFDEAD',
- oldlace: '#FDF5E6',
- olivedrab: '#6B8E23',
- orange: '#FFA500',
- orangered: '#FF4500',
- orchid: '#DA70D6',
- palegoldenrod: '#EEE8AA',
- palegreen: '#98FB98',
- paleturquoise: '#AFEEEE',
- palevioletred: '#DB7093',
- papayawhip: '#FFEFD5',
- peachpuff: '#FFDAB9',
- peru: '#CD853F',
- pink: '#FFC0CB',
- plum: '#DDA0DD',
- powderblue: '#B0E0E6',
- rosybrown: '#BC8F8F',
- royalblue: '#4169E1',
- saddlebrown: '#8B4513',
- salmon: '#FA8072',
- sandybrown: '#F4A460',
- seagreen: '#2E8B57',
- seashell: '#FFF5EE',
- sienna: '#A0522D',
- skyblue: '#87CEEB',
- slateblue: '#6A5ACD',
- slategray: '#708090',
- slategrey: '#708090',
- snow: '#FFFAFA',
- springgreen: '#00FF7F',
- steelblue: '#4682B4',
- tan: '#D2B48C',
- thistle: '#D8BFD8',
- tomato: '#FF6347',
- turquoise: '#40E0D0',
- violet: '#EE82EE',
- wheat: '#F5DEB3',
- whitesmoke: '#F5F5F5',
- yellowgreen: '#9ACD32'
- };
-
-
- function getRgbHslContent(styleString) {
- var start = styleString.indexOf('(', 3);
- var end = styleString.indexOf(')', start + 1);
- var parts = styleString.substring(start + 1, end).split(',');
- // add alpha if needed
- if (parts.length != 4 || styleString.charAt(3) != 'a') {
- parts[3] = 1;
- }
- return parts;
- }
-
- function percent(s) {
- return parseFloat(s) / 100;
- }
-
- function clamp(v, min, max) {
- return Math.min(max, Math.max(min, v));
- }
-
- function hslToRgb(parts){
- var r, g, b, h, s, l;
- h = parseFloat(parts[0]) / 360 % 360;
- if (h < 0)
- h++;
- s = clamp(percent(parts[1]), 0, 1);
- l = clamp(percent(parts[2]), 0, 1);
- if (s == 0) {
- r = g = b = l; // achromatic
- } else {
- var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
- var p = 2 * l - q;
- r = hueToRgb(p, q, h + 1 / 3);
- g = hueToRgb(p, q, h);
- b = hueToRgb(p, q, h - 1 / 3);
- }
-
- return '#' + decToHex[Math.floor(r * 255)] +
- decToHex[Math.floor(g * 255)] +
- decToHex[Math.floor(b * 255)];
- }
-
- function hueToRgb(m1, m2, h) {
- if (h < 0)
- h++;
- if (h > 1)
- h--;
-
- if (6 * h < 1)
- return m1 + (m2 - m1) * 6 * h;
- else if (2 * h < 1)
- return m2;
- else if (3 * h < 2)
- return m1 + (m2 - m1) * (2 / 3 - h) * 6;
- else
- return m1;
- }
-
- var processStyleCache = {};
-
- function processStyle(styleString) {
- if (styleString in processStyleCache) {
- return processStyleCache[styleString];
- }
-
- var str, alpha = 1;
-
- styleString = String(styleString);
- if (styleString.charAt(0) == '#') {
- str = styleString;
- } else if (/^rgb/.test(styleString)) {
- var parts = getRgbHslContent(styleString);
- var str = '#', n;
- for (var i = 0; i < 3; i++) {
- if (parts[i].indexOf('%') != -1) {
- n = Math.floor(percent(parts[i]) * 255);
- } else {
- n = +parts[i];
- }
- str += decToHex[clamp(n, 0, 255)];
- }
- alpha = +parts[3];
- } else if (/^hsl/.test(styleString)) {
- var parts = getRgbHslContent(styleString);
- str = hslToRgb(parts);
- alpha = parts[3];
- } else {
- str = colorData[styleString] || styleString;
- }
- return processStyleCache[styleString] = {color: str, alpha: alpha};
- }
-
- var DEFAULT_STYLE = {
- style: 'normal',
- variant: 'normal',
- weight: 'normal',
- size: 10,
- family: 'sans-serif'
- };
-
- // Internal text style cache
- var fontStyleCache = {};
-
- function processFontStyle(styleString) {
- if (fontStyleCache[styleString]) {
- return fontStyleCache[styleString];
- }
-
- var el = document.createElement('div');
- var style = el.style;
- try {
- style.font = styleString;
- } catch (ex) {
- // Ignore failures to set to invalid font.
- }
-
- return fontStyleCache[styleString] = {
- style: style.fontStyle || DEFAULT_STYLE.style,
- variant: style.fontVariant || DEFAULT_STYLE.variant,
- weight: style.fontWeight || DEFAULT_STYLE.weight,
- size: style.fontSize || DEFAULT_STYLE.size,
- family: style.fontFamily || DEFAULT_STYLE.family
- };
- }
-
- function getComputedStyle(style, element) {
- var computedStyle = {};
-
- for (var p in style) {
- computedStyle[p] = style[p];
- }
-
- // Compute the size
- var canvasFontSize = parseFloat(element.currentStyle.fontSize),
- fontSize = parseFloat(style.size);
-
- if (typeof style.size == 'number') {
- computedStyle.size = style.size;
- } else if (style.size.indexOf('px') != -1) {
- computedStyle.size = fontSize;
- } else if (style.size.indexOf('em') != -1) {
- computedStyle.size = canvasFontSize * fontSize;
- } else if(style.size.indexOf('%') != -1) {
- computedStyle.size = (canvasFontSize / 100) * fontSize;
- } else if (style.size.indexOf('pt') != -1) {
- computedStyle.size = fontSize / .75;
- } else {
- computedStyle.size = canvasFontSize;
- }
-
- // Different scaling between normal text and VML text. This was found using
- // trial and error to get the same size as non VML text.
- computedStyle.size *= 0.981;
-
- // Fix for VML handling of bare font family names. Add a '' around font family names.
- computedStyle.family = "'" + computedStyle.family.replace(/(\'|\")/g,'').replace(/\s*,\s*/g, "', '") + "'";
-
- return computedStyle;
- }
-
- function buildStyle(style) {
- return style.style + ' ' + style.variant + ' ' + style.weight + ' ' +
- style.size + 'px ' + style.family;
- }
-
- var lineCapMap = {
- 'butt': 'flat',
- 'round': 'round'
- };
-
- function processLineCap(lineCap) {
- return lineCapMap[lineCap] || 'square';
- }
-
- /**
- * This class implements CanvasRenderingContext2D interface as described by
- * the WHATWG.
- * @param {HTMLElement} canvasElement The element that the 2D context should
- * be associated with
- */
- function CanvasRenderingContext2D_(canvasElement) {
- this.m_ = createMatrixIdentity();
-
- this.mStack_ = [];
- this.aStack_ = [];
- this.currentPath_ = [];
-
- // Canvas context properties
- this.strokeStyle = '#000';
- this.fillStyle = '#000';
-
- this.lineWidth = 1;
- this.lineJoin = 'miter';
- this.lineCap = 'butt';
- this.miterLimit = Z * 1;
- this.globalAlpha = 1;
- this.font = '10px sans-serif';
- this.textAlign = 'left';
- this.textBaseline = 'alphabetic';
- this.canvas = canvasElement;
-
- var cssText = 'width:' + canvasElement.clientWidth + 'px;height:' +
- canvasElement.clientHeight + 'px;overflow:hidden;position:absolute';
- var el = canvasElement.ownerDocument.createElement('div');
- el.style.cssText = cssText;
- canvasElement.appendChild(el);
-
- var overlayEl = el.cloneNode(false);
- // Use a non transparent background.
- overlayEl.style.backgroundColor = 'red';
- overlayEl.style.filter = 'alpha(opacity=0)';
- canvasElement.appendChild(overlayEl);
-
- this.element_ = el;
- this.arcScaleX_ = 1;
- this.arcScaleY_ = 1;
- this.lineScale_ = 1;
- }
-
- var contextPrototype = CanvasRenderingContext2D_.prototype;
- contextPrototype.clearRect = function() {
- if (this.textMeasureEl_) {
- this.textMeasureEl_.removeNode(true);
- this.textMeasureEl_ = null;
- }
- this.element_.innerHTML = '';
- };
-
- contextPrototype.beginPath = function() {
- // TODO: Branch current matrix so that save/restore has no effect
- // as per safari docs.
- this.currentPath_ = [];
- };
-
- contextPrototype.moveTo = function(aX, aY) {
- var p = getCoords(this, aX, aY);
- this.currentPath_.push({type: 'moveTo', x: p.x, y: p.y});
- this.currentX_ = p.x;
- this.currentY_ = p.y;
- };
-
- contextPrototype.lineTo = function(aX, aY) {
- var p = getCoords(this, aX, aY);
- this.currentPath_.push({type: 'lineTo', x: p.x, y: p.y});
-
- this.currentX_ = p.x;
- this.currentY_ = p.y;
- };
-
- contextPrototype.bezierCurveTo = function(aCP1x, aCP1y,
- aCP2x, aCP2y,
- aX, aY) {
- var p = getCoords(this, aX, aY);
- var cp1 = getCoords(this, aCP1x, aCP1y);
- var cp2 = getCoords(this, aCP2x, aCP2y);
- bezierCurveTo(this, cp1, cp2, p);
- };
-
- // Helper function that takes the already fixed cordinates.
- function bezierCurveTo(self, cp1, cp2, p) {
- self.currentPath_.push({
- type: 'bezierCurveTo',
- cp1x: cp1.x,
- cp1y: cp1.y,
- cp2x: cp2.x,
- cp2y: cp2.y,
- x: p.x,
- y: p.y
- });
- self.currentX_ = p.x;
- self.currentY_ = p.y;
- }
-
- contextPrototype.quadraticCurveTo = function(aCPx, aCPy, aX, aY) {
- // the following is lifted almost directly from
- // http://developer.mozilla.org/en/docs/Canvas_tutorial:Drawing_shapes
-
- var cp = getCoords(this, aCPx, aCPy);
- var p = getCoords(this, aX, aY);
-
- var cp1 = {
- x: this.currentX_ + 2.0 / 3.0 * (cp.x - this.currentX_),
- y: this.currentY_ + 2.0 / 3.0 * (cp.y - this.currentY_)
- };
- var cp2 = {
- x: cp1.x + (p.x - this.currentX_) / 3.0,
- y: cp1.y + (p.y - this.currentY_) / 3.0
- };
-
- bezierCurveTo(this, cp1, cp2, p);
- };
-
- contextPrototype.arc = function(aX, aY, aRadius,
- aStartAngle, aEndAngle, aClockwise) {
- aRadius *= Z;
- var arcType = aClockwise ? 'at' : 'wa';
-
- var xStart = aX + mc(aStartAngle) * aRadius - Z2;
- var yStart = aY + ms(aStartAngle) * aRadius - Z2;
-
- var xEnd = aX + mc(aEndAngle) * aRadius - Z2;
- var yEnd = aY + ms(aEndAngle) * aRadius - Z2;
-
- // IE won't render arches drawn counter clockwise if xStart == xEnd.
- if (xStart == xEnd && !aClockwise) {
- xStart += 0.125; // Offset xStart by 1/80 of a pixel. Use something
- // that can be represented in binary
- }
-
- var p = getCoords(this, aX, aY);
- var pStart = getCoords(this, xStart, yStart);
- var pEnd = getCoords(this, xEnd, yEnd);
-
- this.currentPath_.push({type: arcType,
- x: p.x,
- y: p.y,
- radius: aRadius,
- xStart: pStart.x,
- yStart: pStart.y,
- xEnd: pEnd.x,
- yEnd: pEnd.y});
-
- };
-
- contextPrototype.rect = function(aX, aY, aWidth, aHeight) {
- this.moveTo(aX, aY);
- this.lineTo(aX + aWidth, aY);
- this.lineTo(aX + aWidth, aY + aHeight);
- this.lineTo(aX, aY + aHeight);
- this.closePath();
- };
-
- contextPrototype.strokeRect = function(aX, aY, aWidth, aHeight) {
- var oldPath = this.currentPath_;
- this.beginPath();
-
- this.moveTo(aX, aY);
- this.lineTo(aX + aWidth, aY);
- this.lineTo(aX + aWidth, aY + aHeight);
- this.lineTo(aX, aY + aHeight);
- this.closePath();
- this.stroke();
-
- this.currentPath_ = oldPath;
- };
-
- contextPrototype.fillRect = function(aX, aY, aWidth, aHeight) {
- var oldPath = this.currentPath_;
- this.beginPath();
-
- this.moveTo(aX, aY);
- this.lineTo(aX + aWidth, aY);
- this.lineTo(aX + aWidth, aY + aHeight);
- this.lineTo(aX, aY + aHeight);
- this.closePath();
- this.fill();
-
- this.currentPath_ = oldPath;
- };
-
- contextPrototype.createLinearGradient = function(aX0, aY0, aX1, aY1) {
- var gradient = new CanvasGradient_('gradient');
- gradient.x0_ = aX0;
- gradient.y0_ = aY0;
- gradient.x1_ = aX1;
- gradient.y1_ = aY1;
- return gradient;
- };
-
- contextPrototype.createRadialGradient = function(aX0, aY0, aR0,
- aX1, aY1, aR1) {
- var gradient = new CanvasGradient_('gradientradial');
- gradient.x0_ = aX0;
- gradient.y0_ = aY0;
- gradient.r0_ = aR0;
- gradient.x1_ = aX1;
- gradient.y1_ = aY1;
- gradient.r1_ = aR1;
- return gradient;
- };
-
- contextPrototype.drawImage = function(image, var_args) {
- var dx, dy, dw, dh, sx, sy, sw, sh;
-
- // to find the original width we overide the width and height
- var oldRuntimeWidth = image.runtimeStyle.width;
- var oldRuntimeHeight = image.runtimeStyle.height;
- image.runtimeStyle.width = 'auto';
- image.runtimeStyle.height = 'auto';
-
- // get the original size
- var w = image.width;
- var h = image.height;
-
- // and remove overides
- image.runtimeStyle.width = oldRuntimeWidth;
- image.runtimeStyle.height = oldRuntimeHeight;
-
- if (arguments.length == 3) {
- dx = arguments[1];
- dy = arguments[2];
- sx = sy = 0;
- sw = dw = w;
- sh = dh = h;
- } else if (arguments.length == 5) {
- dx = arguments[1];
- dy = arguments[2];
- dw = arguments[3];
- dh = arguments[4];
- sx = sy = 0;
- sw = w;
- sh = h;
- } else if (arguments.length == 9) {
- sx = arguments[1];
- sy = arguments[2];
- sw = arguments[3];
- sh = arguments[4];
- dx = arguments[5];
- dy = arguments[6];
- dw = arguments[7];
- dh = arguments[8];
- } else {
- throw Error('Invalid number of arguments');
- }
-
- var d = getCoords(this, dx, dy);
-
- var w2 = sw / 2;
- var h2 = sh / 2;
-
- var vmlStr = [];
-
- var W = 10;
- var H = 10;
-
- // For some reason that I've now forgotten, using divs didn't work
- vmlStr.push(' <g_vml_:group',
- ' coordsize="', Z * W, ',', Z * H, '"',
- ' coordorigin="0,0"' ,
- ' style="width:', W, 'px;height:', H, 'px;position:absolute;');
-
- // If filters are necessary (rotation exists), create them
- // filters are bog-slow, so only create them if abbsolutely necessary
- // The following check doesn't account for skews (which don't exist
- // in the canvas spec (yet) anyway.
-
- if (this.m_[0][0] != 1 || this.m_[0][1] ||
- this.m_[1][1] != 1 || this.m_[1][0]) {
- var filter = [];
-
- // Note the 12/21 reversal
- filter.push('M11=', this.m_[0][0], ',',
- 'M12=', this.m_[1][0], ',',
- 'M21=', this.m_[0][1], ',',
- 'M22=', this.m_[1][1], ',',
- 'Dx=', mr(d.x / Z), ',',
- 'Dy=', mr(d.y / Z), '');
-
- // Bounding box calculation (need to minimize displayed area so that
- // filters don't waste time on unused pixels.
- var max = d;
- var c2 = getCoords(this, dx + dw, dy);
- var c3 = getCoords(this, dx, dy + dh);
- var c4 = getCoords(this, dx + dw, dy + dh);
-
- max.x = m.max(max.x, c2.x, c3.x, c4.x);
- max.y = m.max(max.y, c2.y, c3.y, c4.y);
-
- vmlStr.push('padding:0 ', mr(max.x / Z), 'px ', mr(max.y / Z),
- 'px 0;filter:progid:DXImageTransform.Microsoft.Matrix(',
- filter.join(''), ", sizingmethod='clip');");
-
- } else {
- vmlStr.push('top:', mr(d.y / Z), 'px;left:', mr(d.x / Z), 'px;');
- }
-
- vmlStr.push(' ">' ,
- '<g_vml_:image src="', image.src, '"',
- ' style="width:', Z * dw, 'px;',
- ' height:', Z * dh, 'px"',
- ' cropleft="', sx / w, '"',
- ' croptop="', sy / h, '"',
- ' cropright="', (w - sx - sw) / w, '"',
- ' cropbottom="', (h - sy - sh) / h, '"',
- ' />',
- '</g_vml_:group>');
-
- this.element_.insertAdjacentHTML('BeforeEnd', vmlStr.join(''));
- };
-
- contextPrototype.stroke = function(aFill) {
- var lineStr = [];
- var lineOpen = false;
-
- var W = 10;
- var H = 10;
-
- lineStr.push('<g_vml_:shape',
- ' filled="', !!aFill, '"',
- ' style="position:absolute;width:', W, 'px;height:', H, 'px;"',
- ' coordorigin="0,0"',
- ' coordsize="', Z * W, ',', Z * H, '"',
- ' stroked="', !aFill, '"',
- ' path="');
-
- var newSeq = false;
- var min = {x: null, y: null};
- var max = {x: null, y: null};
-
- for (var i = 0; i < this.currentPath_.length; i++) {
- var p = this.currentPath_[i];
- var c;
-
- switch (p.type) {
- case 'moveTo':
- c = p;
- lineStr.push(' m ', mr(p.x), ',', mr(p.y));
- break;
- case 'lineTo':
- lineStr.push(' l ', mr(p.x), ',', mr(p.y));
- break;
- case 'close':
- lineStr.push(' x ');
- p = null;
- break;
- case 'bezierCurveTo':
- lineStr.push(' c ',
- mr(p.cp1x), ',', mr(p.cp1y), ',',
- mr(p.cp2x), ',', mr(p.cp2y), ',',
- mr(p.x), ',', mr(p.y));
- break;
- case 'at':
- case 'wa':
- lineStr.push(' ', p.type, ' ',
- mr(p.x - this.arcScaleX_ * p.radius), ',',
- mr(p.y - this.arcScaleY_ * p.radius), ' ',
- mr(p.x + this.arcScaleX_ * p.radius), ',',
- mr(p.y + this.arcScaleY_ * p.radius), ' ',
- mr(p.xStart), ',', mr(p.yStart), ' ',
- mr(p.xEnd), ',', mr(p.yEnd));
- break;
- }
-
-
- // TODO: Following is broken for curves due to
- // move to proper paths.
-
- // Figure out dimensions so we can do gradient fills
- // properly
- if (p) {
- if (min.x == null || p.x < min.x) {
- min.x = p.x;
- }
- if (max.x == null || p.x > max.x) {
- max.x = p.x;
- }
- if (min.y == null || p.y < min.y) {
- min.y = p.y;
- }
- if (max.y == null || p.y > max.y) {
- max.y = p.y;
- }
- }
- }
- lineStr.push(' ">');
-
- if (!aFill) {
- appendStroke(this, lineStr);
- } else {
- appendFill(this, lineStr, min, max);
- }
-
- lineStr.push('</g_vml_:shape>');
-
- this.element_.insertAdjacentHTML('beforeEnd', lineStr.join(''));
- };
-
- function appendStroke(ctx, lineStr) {
- var a = processStyle(ctx.strokeStyle);
- var color = a.color;
- var opacity = a.alpha * ctx.globalAlpha;
- var lineWidth = ctx.lineScale_ * ctx.lineWidth;
-
- // VML cannot correctly render a line if the width is less than 1px.
- // In that case, we dilute the color to make the line look thinner.
- if (lineWidth < 1) {
- opacity *= lineWidth;
- }
-
- lineStr.push(
- '<g_vml_:stroke',
- ' opacity="', opacity, '"',
- ' joinstyle="', ctx.lineJoin, '"',
- ' miterlimit="', ctx.miterLimit, '"',
- ' endcap="', processLineCap(ctx.lineCap), '"',
- ' weight="', lineWidth, 'px"',
- ' color="', color, '" />'
- );
- }
-
- function appendFill(ctx, lineStr, min, max) {
- var fillStyle = ctx.fillStyle;
- var arcScaleX = ctx.arcScaleX_;
- var arcScaleY = ctx.arcScaleY_;
- var width = max.x - min.x;
- var height = max.y - min.y;
- if (fillStyle instanceof CanvasGradient_) {
- // TODO: Gradients transformed with the transformation matrix.
- var angle = 0;
- var focus = {x: 0, y: 0};
-
- // additional offset
- var shift = 0;
- // scale factor for offset
- var expansion = 1;
-
- if (fillStyle.type_ == 'gradient') {
- var x0 = fillStyle.x0_ / arcScaleX;
- var y0 = fillStyle.y0_ / arcScaleY;
- var x1 = fillStyle.x1_ / arcScaleX;
- var y1 = fillStyle.y1_ / arcScaleY;
- var p0 = getCoords(ctx, x0, y0);
- var p1 = getCoords(ctx, x1, y1);
- var dx = p1.x - p0.x;
- var dy = p1.y - p0.y;
- angle = Math.atan2(dx, dy) * 180 / Math.PI;
-
- // The angle should be a non-negative number.
- if (angle < 0) {
- angle += 360;
- }
-
- // Very small angles produce an unexpected result because they are
- // converted to a scientific notation string.
- if (angle < 1e-6) {
- angle = 0;
- }
- } else {
- var p0 = getCoords(ctx, fillStyle.x0_, fillStyle.y0_);
- focus = {
- x: (p0.x - min.x) / width,
- y: (p0.y - min.y) / height
- };
-
- width /= arcScaleX * Z;
- height /= arcScaleY * Z;
- var dimension = m.max(width, height);
- shift = 2 * fillStyle.r0_ / dimension;
- expansion = 2 * fillStyle.r1_ / dimension - shift;
- }
-
- // We need to sort the color stops in ascending order by offset,
- // otherwise IE won't interpret it correctly.
- var stops = fillStyle.colors_;
- stops.sort(function(cs1, cs2) {
- return cs1.offset - cs2.offset;
- });
-
- var length = stops.length;
- var color1 = stops[0].color;
- var color2 = stops[length - 1].color;
- var opacity1 = stops[0].alpha * ctx.globalAlpha;
- var opacity2 = stops[length - 1].alpha * ctx.globalAlpha;
-
- var colors = [];
- for (var i = 0; i < length; i++) {
- var stop = stops[i];
- colors.push(stop.offset * expansion + shift + ' ' + stop.color);
- }
-
- // When colors attribute is used, the meanings of opacity and o:opacity2
- // are reversed.
- lineStr.push('<g_vml_:fill type="', fillStyle.type_, '"',
- ' method="none" focus="100%"',
- ' color="', color1, '"',
- ' color2="', color2, '"',
- ' colors="', colors.join(','), '"',
- ' opacity="', opacity2, '"',
- ' g_o_:opacity2="', opacity1, '"',
- ' angle="', angle, '"',
- ' focusposition="', focus.x, ',', focus.y, '" />');
- } else if (fillStyle instanceof CanvasPattern_) {
- if (width && height) {
- var deltaLeft = -min.x;
- var deltaTop = -min.y;
- lineStr.push('<g_vml_:fill',
- ' position="',
- deltaLeft / width * arcScaleX * arcScaleX, ',',
- deltaTop / height * arcScaleY * arcScaleY, '"',
- ' type="tile"',
- // TODO: Figure out the correct size to fit the scale.
- //' size="', w, 'px ', h, 'px"',
- ' src="', fillStyle.src_, '" />');
- }
- } else {
- var a = processStyle(ctx.fillStyle);
- var color = a.color;
- var opacity = a.alpha * ctx.globalAlpha;
- lineStr.push('<g_vml_:fill color="', color, '" opacity="', opacity,
- '" />');
- }
- }
-
- contextPrototype.fill = function() {
- this.stroke(true);
- };
-
- contextPrototype.closePath = function() {
- this.currentPath_.push({type: 'close'});
- };
-
- function getCoords(ctx, aX, aY) {
- var m = ctx.m_;
- return {
- x: Z * (aX * m[0][0] + aY * m[1][0] + m[2][0]) - Z2,
- y: Z * (aX * m[0][1] + aY * m[1][1] + m[2][1]) - Z2
- };
- };
-
- contextPrototype.save = function() {
- var o = {};
- copyState(this, o);
- this.aStack_.push(o);
- this.mStack_.push(this.m_);
- this.m_ = matrixMultiply(createMatrixIdentity(), this.m_);
- };
-
- contextPrototype.restore = function() {
- if (this.aStack_.length) {
- copyState(this.aStack_.pop(), this);
- this.m_ = this.mStack_.pop();
- }
- };
-
- function matrixIsFinite(m) {
- return isFinite(m[0][0]) && isFinite(m[0][1]) &&
- isFinite(m[1][0]) && isFinite(m[1][1]) &&
- isFinite(m[2][0]) && isFinite(m[2][1]);
- }
-
- function setM(ctx, m, updateLineScale) {
- if (!matrixIsFinite(m)) {
- return;
- }
- ctx.m_ = m;
-
- if (updateLineScale) {
- // Get the line scale.
- // Determinant of this.m_ means how much the area is enlarged by the
- // transformation. So its square root can be used as a scale factor
- // for width.
- var det = m[0][0] * m[1][1] - m[0][1] * m[1][0];
- ctx.lineScale_ = sqrt(abs(det));
- }
- }
-
- contextPrototype.translate = function(aX, aY) {
- var m1 = [
- [1, 0, 0],
- [0, 1, 0],
- [aX, aY, 1]
- ];
-
- setM(this, matrixMultiply(m1, this.m_), false);
- };
-
- contextPrototype.rotate = function(aRot) {
- var c = mc(aRot);
- var s = ms(aRot);
-
- var m1 = [
- [c, s, 0],
- [-s, c, 0],
- [0, 0, 1]
- ];
-
- setM(this, matrixMultiply(m1, this.m_), false);
- };
-
- contextPrototype.scale = function(aX, aY) {
- this.arcScaleX_ *= aX;
- this.arcScaleY_ *= aY;
- var m1 = [
- [aX, 0, 0],
- [0, aY, 0],
- [0, 0, 1]
- ];
-
- setM(this, matrixMultiply(m1, this.m_), true);
- };
-
- contextPrototype.transform = function(m11, m12, m21, m22, dx, dy) {
- var m1 = [
- [m11, m12, 0],
- [m21, m22, 0],
- [dx, dy, 1]
- ];
-
- setM(this, matrixMultiply(m1, this.m_), true);
- };
-
- contextPrototype.setTransform = function(m11, m12, m21, m22, dx, dy) {
- var m = [
- [m11, m12, 0],
- [m21, m22, 0],
- [dx, dy, 1]
- ];
-
- setM(this, m, true);
- };
-
- /**
- * The text drawing function.
- * The maxWidth argument isn't taken in account, since no browser supports
- * it yet.
- */
- contextPrototype.drawText_ = function(text, x, y, maxWidth, stroke) {
- var m = this.m_,
- delta = 1000,
- left = 0,
- right = delta,
- offset = {x: 0, y: 0},
- lineStr = [];
-
- var fontStyle = getComputedStyle(processFontStyle(this.font), this.element_);
-
- var fontStyleString = buildStyle(fontStyle);
-
- var elementStyle = this.element_.currentStyle;
- var textAlign = this.textAlign.toLowerCase();
- switch (textAlign) {
- case 'left':
- case 'center':
- case 'right':
- break;
- case 'end':
- textAlign = elementStyle.direction == 'ltr' ? 'right' : 'left';
- break;
- case 'start':
- textAlign = elementStyle.direction == 'rtl' ? 'right' : 'left';
- break;
- default:
- textAlign = 'left';
- }
-
- // 1.75 is an arbitrary number, as there is no info about the text baseline
- switch (this.textBaseline) {
- case 'hanging':
- case 'top':
- offset.y = fontStyle.size / 1.75;
- break;
- case 'middle':
- break;
- default:
- case null:
- case 'alphabetic':
- case 'ideographic':
- case 'bottom':
- offset.y = -fontStyle.size / 2.25;
- break;
- }
-
- switch(textAlign) {
- case 'right':
- left = delta;
- right = 0.05;
- break;
- case 'center':
- left = right = delta / 2;
- break;
- }
-
- var d = getCoords(this, x + offset.x, y + offset.y);
-
- lineStr.push('<g_vml_:line from="', -left ,' 0" to="', right ,' 0.05" ',
- ' coordsize="100 100" coordorigin="0 0"',
- ' filled="', !stroke, '" stroked="', !!stroke,
- '" style="position:absolute;width:1px;height:1px;">');
-
- if (stroke) {
- appendStroke(this, lineStr);
- } else {
- // TODO: Fix the min and max params.
- appendFill(this, lineStr, {x: -left, y: 0},
- {x: right, y: fontStyle.size});
- }
-
- var skewM = m[0][0].toFixed(3) + ',' + m[1][0].toFixed(3) + ',' +
- m[0][1].toFixed(3) + ',' + m[1][1].toFixed(3) + ',0,0';
-
- var skewOffset = mr(d.x / Z + 1 - m[0][0]) + ',' + mr(d.y / Z - 2 * m[1][0]);
-
-
- lineStr.push('<g_vml_:skew on="t" matrix="', skewM ,'" ',
- ' offset="', skewOffset, '" origin="', left ,' 0" />',
- '<g_vml_:path textpathok="true" />',
- '<g_vml_:textpath on="true" string="',
- encodeHtmlAttribute(text),
- '" style="v-text-align:', textAlign,
- ';font:', encodeHtmlAttribute(fontStyleString),
- '" /></g_vml_:line>');
-
- this.element_.insertAdjacentHTML('beforeEnd', lineStr.join(''));
- };
-
- contextPrototype.fillText = function(text, x, y, maxWidth) {
- this.drawText_(text, x, y, maxWidth, false);
- };
-
- contextPrototype.strokeText = function(text, x, y, maxWidth) {
- this.drawText_(text, x, y, maxWidth, true);
- };
-
- contextPrototype.measureText = function(text) {
- if (!this.textMeasureEl_) {
- var s = '<span style="position:absolute;' +
- 'top:-20000px;left:0;padding:0;margin:0;border:none;' +
- 'white-space:pre;"></span>';
- this.element_.insertAdjacentHTML('beforeEnd', s);
- this.textMeasureEl_ = this.element_.lastChild;
- }
- var doc = this.element_.ownerDocument;
- this.textMeasureEl_.innerHTML = '';
- this.textMeasureEl_.style.font = this.font;
- // Don't use innerHTML or innerText because they allow markup/whitespace.
- this.textMeasureEl_.appendChild(doc.createTextNode(text));
- return {width: this.textMeasureEl_.offsetWidth};
- };
-
- /******** STUBS ********/
- contextPrototype.clip = function() {
- // TODO: Implement
- };
-
- contextPrototype.arcTo = function() {
- // TODO: Implement
- };
-
- contextPrototype.createPattern = function(image, repetition) {
- return new CanvasPattern_(image, repetition);
- };
-
- // Gradient / Pattern Stubs
- function CanvasGradient_(aType) {
- this.type_ = aType;
- this.x0_ = 0;
- this.y0_ = 0;
- this.r0_ = 0;
- this.x1_ = 0;
- this.y1_ = 0;
- this.r1_ = 0;
- this.colors_ = [];
- }
-
- CanvasGradient_.prototype.addColorStop = function(aOffset, aColor) {
- aColor = processStyle(aColor);
- this.colors_.push({offset: aOffset,
- color: aColor.color,
- alpha: aColor.alpha});
- };
-
- function CanvasPattern_(image, repetition) {
- assertImageIsValid(image);
- switch (repetition) {
- case 'repeat':
- case null:
- case '':
- this.repetition_ = 'repeat';
- break;
- case 'repeat-x':
- case 'repeat-y':
- case 'no-repeat':
- this.repetition_ = repetition;
- break;
- default:
- throwException('SYNTAX_ERR');
- }
-
- this.src_ = image.src;
- this.width_ = image.width;
- this.height_ = image.height;
- }
-
- function throwException(s) {
- throw new DOMException_(s);
- }
-
- function assertImageIsValid(img) {
- if (!img || img.nodeType != 1 || img.tagName != 'IMG') {
- throwException('TYPE_MISMATCH_ERR');
- }
- if (img.readyState != 'complete') {
- throwException('INVALID_STATE_ERR');
- }
- }
-
- function DOMException_(s) {
- this.code = this[s];
- this.message = s +': DOM Exception ' + this.code;
- }
- var p = DOMException_.prototype = new Error;
- p.INDEX_SIZE_ERR = 1;
- p.DOMSTRING_SIZE_ERR = 2;
- p.HIERARCHY_REQUEST_ERR = 3;
- p.WRONG_DOCUMENT_ERR = 4;
- p.INVALID_CHARACTER_ERR = 5;
- p.NO_DATA_ALLOWED_ERR = 6;
- p.NO_MODIFICATION_ALLOWED_ERR = 7;
- p.NOT_FOUND_ERR = 8;
- p.NOT_SUPPORTED_ERR = 9;
- p.INUSE_ATTRIBUTE_ERR = 10;
- p.INVALID_STATE_ERR = 11;
- p.SYNTAX_ERR = 12;
- p.INVALID_MODIFICATION_ERR = 13;
- p.NAMESPACE_ERR = 14;
- p.INVALID_ACCESS_ERR = 15;
- p.VALIDATION_ERR = 16;
- p.TYPE_MISMATCH_ERR = 17;
-
- // set up externs
- G_vmlCanvasManager = G_vmlCanvasManager_;
- CanvasRenderingContext2D = CanvasRenderingContext2D_;
- CanvasGradient = CanvasGradient_;
- CanvasPattern = CanvasPattern_;
- DOMException = DOMException_;
- G_vmlCanvasManager._version = 888;
-})();
-
-} // if
diff --git a/wqflask/wqflask/static/packages/jqplot/excanvas.min.js b/wqflask/wqflask/static/packages/jqplot/excanvas.min.js
deleted file mode 100644
index a2b2c22e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/excanvas.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: @VERSION
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-if(!document.createElement("canvas").getContext){(function(){var ab=Math;var n=ab.round;var l=ab.sin;var A=ab.cos;var H=ab.abs;var N=ab.sqrt;var d=10;var f=d/2;var z=+navigator.userAgent.match(/MSIE ([\d.]+)?/)[1];function y(){return this.context_||(this.context_=new D(this))}var t=Array.prototype.slice;function g(j,m,p){var i=t.call(arguments,2);return function(){return j.apply(m,i.concat(t.call(arguments)))}}function af(i){return String(i).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}function Y(m,j,i){if(!m.namespaces[j]){m.namespaces.add(j,i,"#default#VML")}}function R(j){Y(j,"g_vml_","urn:schemas-microsoft-com:vml");Y(j,"g_o_","urn:schemas-microsoft-com:office:office");if(!j.styleSheets.ex_canvas_){var i=j.createStyleSheet();i.owningElement.id="ex_canvas_";i.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}R(document);var e={init:function(i){var j=i||document;j.createElement("canvas");j.attachEvent("onreadystatechange",g(this.init_,this,j))},init_:function(p){var m=p.getElementsByTagName("canvas");for(var j=0;j<m.length;j++){this.initElement(m[j])}},initElement:function(j){if(!j.getContext){j.getContext=y;R(j.ownerDocument);j.innerHTML="";j.attachEvent("onpropertychange",x);j.attachEvent("onresize",W);var i=j.attributes;if(i.width&&i.width.specified){j.style.width=i.width.nodeValue+"px"}else{j.width=j.clientWidth}if(i.height&&i.height.specified){j.style.height=i.height.nodeValue+"px"}else{j.height=j.clientHeight}}return j},uninitElement:function(j){if(j.getContext){var i=j.getContext();delete i.element_;delete i.canvas;j.innerHTML="";j.context_=null;j.getContext=null;j.detachEvent("onpropertychange",x);j.detachEvent("onresize",W)}}};function x(j){var i=j.srcElement;switch(j.propertyName){case"width":i.getContext().clearRect();i.style.width=i.attributes.width.nodeValue+"px";i.firstChild.style.width=i.clientWidth+"px";break;case"height":i.getContext().clearRect();i.style.height=i.attributes.height.nodeValue+"px";i.firstChild.style.height=i.clientHeight+"px";break}}function W(j){var i=j.srcElement;if(i.firstChild){i.firstChild.style.width=i.clientWidth+"px";i.firstChild.style.height=i.clientHeight+"px"}}e.init();var k=[];for(var ae=0;ae<16;ae++){for(var ad=0;ad<16;ad++){k[ae*16+ad]=ae.toString(16)+ad.toString(16)}}function B(){return[[1,0,0],[0,1,0],[0,0,1]]}function J(p,m){var j=B();for(var i=0;i<3;i++){for(var ah=0;ah<3;ah++){var Z=0;for(var ag=0;ag<3;ag++){Z+=p[i][ag]*m[ag][ah]}j[i][ah]=Z}}return j}function v(j,i){i.fillStyle=j.fillStyle;i.lineCap=j.lineCap;i.lineJoin=j.lineJoin;i.lineWidth=j.lineWidth;i.miterLimit=j.miterLimit;i.shadowBlur=j.shadowBlur;i.shadowColor=j.shadowColor;i.shadowOffsetX=j.shadowOffsetX;i.shadowOffsetY=j.shadowOffsetY;i.strokeStyle=j.strokeStyle;i.globalAlpha=j.globalAlpha;i.font=j.font;i.textAlign=j.textAlign;i.textBaseline=j.textBaseline;i.arcScaleX_=j.arcScaleX_;i.arcScaleY_=j.arcScaleY_;i.lineScale_=j.lineScale_}var b={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"};function M(j){var p=j.indexOf("(",3);var i=j.indexOf(")",p+1);var m=j.substring(p+1,i).split(",");if(m.length!=4||j.charAt(3)!="a"){m[3]=1}return m}function c(i){return parseFloat(i)/100}function r(j,m,i){return Math.min(i,Math.max(m,j))}function I(ag){var i,ai,aj,ah,ak,Z;ah=parseFloat(ag[0])/360%360;if(ah<0){ah++}ak=r(c(ag[1]),0,1);Z=r(c(ag[2]),0,1);if(ak==0){i=ai=aj=Z}else{var j=Z<0.5?Z*(1+ak):Z+ak-Z*ak;var m=2*Z-j;i=a(m,j,ah+1/3);ai=a(m,j,ah);aj=a(m,j,ah-1/3)}return"#"+k[Math.floor(i*255)]+k[Math.floor(ai*255)]+k[Math.floor(aj*255)]}function a(j,i,m){if(m<0){m++}if(m>1){m--}if(6*m<1){return j+(i-j)*6*m}else{if(2*m<1){return i}else{if(3*m<2){return j+(i-j)*(2/3-m)*6}else{return j}}}}var C={};function F(j){if(j in C){return C[j]}var ag,Z=1;j=String(j);if(j.charAt(0)=="#"){ag=j}else{if(/^rgb/.test(j)){var p=M(j);var ag="#",ah;for(var m=0;m<3;m++){if(p[m].indexOf("%")!=-1){ah=Math.floor(c(p[m])*255)}else{ah=+p[m]}ag+=k[r(ah,0,255)]}Z=+p[3]}else{if(/^hsl/.test(j)){var p=M(j);ag=I(p);Z=p[3]}else{ag=b[j]||j}}}return C[j]={color:ag,alpha:Z}}var o={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var L={};function E(i){if(L[i]){return L[i]}var p=document.createElement("div");var m=p.style;try{m.font=i}catch(j){}return L[i]={style:m.fontStyle||o.style,variant:m.fontVariant||o.variant,weight:m.fontWeight||o.weight,size:m.fontSize||o.size,family:m.fontFamily||o.family}}function u(m,j){var i={};for(var ah in m){i[ah]=m[ah]}var ag=parseFloat(j.currentStyle.fontSize),Z=parseFloat(m.size);if(typeof m.size=="number"){i.size=m.size}else{if(m.size.indexOf("px")!=-1){i.size=Z}else{if(m.size.indexOf("em")!=-1){i.size=ag*Z}else{if(m.size.indexOf("%")!=-1){i.size=(ag/100)*Z}else{if(m.size.indexOf("pt")!=-1){i.size=Z/0.75}else{i.size=ag}}}}}i.size*=0.981;i.family="'"+i.family.replace(/(\'|\")/g,"").replace(/\s*,\s*/g,"', '")+"'";return i}function ac(i){return i.style+" "+i.variant+" "+i.weight+" "+i.size+"px "+i.family}var s={butt:"flat",round:"round"};function S(i){return s[i]||"square"}function D(i){this.m_=B();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=d*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=i;var m="width:"+i.clientWidth+"px;height:"+i.clientHeight+"px;overflow:hidden;position:absolute";var j=i.ownerDocument.createElement("div");j.style.cssText=m;i.appendChild(j);var p=j.cloneNode(false);p.style.backgroundColor="red";p.style.filter="alpha(opacity=0)";i.appendChild(p);this.element_=j;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var q=D.prototype;q.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};q.beginPath=function(){this.currentPath_=[]};q.moveTo=function(j,i){var m=V(this,j,i);this.currentPath_.push({type:"moveTo",x:m.x,y:m.y});this.currentX_=m.x;this.currentY_=m.y};q.lineTo=function(j,i){var m=V(this,j,i);this.currentPath_.push({type:"lineTo",x:m.x,y:m.y});this.currentX_=m.x;this.currentY_=m.y};q.bezierCurveTo=function(m,j,ak,aj,ai,ag){var i=V(this,ai,ag);var ah=V(this,m,j);var Z=V(this,ak,aj);K(this,ah,Z,i)};function K(i,Z,m,j){i.currentPath_.push({type:"bezierCurveTo",cp1x:Z.x,cp1y:Z.y,cp2x:m.x,cp2y:m.y,x:j.x,y:j.y});i.currentX_=j.x;i.currentY_=j.y}q.quadraticCurveTo=function(ai,m,j,i){var ah=V(this,ai,m);var ag=V(this,j,i);var aj={x:this.currentX_+2/3*(ah.x-this.currentX_),y:this.currentY_+2/3*(ah.y-this.currentY_)};var Z={x:aj.x+(ag.x-this.currentX_)/3,y:aj.y+(ag.y-this.currentY_)/3};K(this,aj,Z,ag)};q.arc=function(al,aj,ak,ag,j,m){ak*=d;var ap=m?"at":"wa";var am=al+A(ag)*ak-f;var ao=aj+l(ag)*ak-f;var i=al+A(j)*ak-f;var an=aj+l(j)*ak-f;if(am==i&&!m){am+=0.125}var Z=V(this,al,aj);var ai=V(this,am,ao);var ah=V(this,i,an);this.currentPath_.push({type:ap,x:Z.x,y:Z.y,radius:ak,xStart:ai.x,yStart:ai.y,xEnd:ah.x,yEnd:ah.y})};q.rect=function(m,j,i,p){this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath()};q.strokeRect=function(m,j,i,p){var Z=this.currentPath_;this.beginPath();this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath();this.stroke();this.currentPath_=Z};q.fillRect=function(m,j,i,p){var Z=this.currentPath_;this.beginPath();this.moveTo(m,j);this.lineTo(m+i,j);this.lineTo(m+i,j+p);this.lineTo(m,j+p);this.closePath();this.fill();this.currentPath_=Z};q.createLinearGradient=function(j,p,i,m){var Z=new U("gradient");Z.x0_=j;Z.y0_=p;Z.x1_=i;Z.y1_=m;return Z};q.createRadialGradient=function(p,ag,m,j,Z,i){var ah=new U("gradientradial");ah.x0_=p;ah.y0_=ag;ah.r0_=m;ah.x1_=j;ah.y1_=Z;ah.r1_=i;return ah};q.drawImage=function(aq,m){var aj,ah,al,ay,ao,am,at,aA;var ak=aq.runtimeStyle.width;var ap=aq.runtimeStyle.height;aq.runtimeStyle.width="auto";aq.runtimeStyle.height="auto";var ai=aq.width;var aw=aq.height;aq.runtimeStyle.width=ak;aq.runtimeStyle.height=ap;if(arguments.length==3){aj=arguments[1];ah=arguments[2];ao=am=0;at=al=ai;aA=ay=aw}else{if(arguments.length==5){aj=arguments[1];ah=arguments[2];al=arguments[3];ay=arguments[4];ao=am=0;at=ai;aA=aw}else{if(arguments.length==9){ao=arguments[1];am=arguments[2];at=arguments[3];aA=arguments[4];aj=arguments[5];ah=arguments[6];al=arguments[7];ay=arguments[8]}else{throw Error("Invalid number of arguments")}}}var az=V(this,aj,ah);var p=at/2;var j=aA/2;var ax=[];var i=10;var ag=10;ax.push(" <g_vml_:group",' coordsize="',d*i,",",d*ag,'"',' coordorigin="0,0"',' style="width:',i,"px;height:",ag,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]||this.m_[1][1]!=1||this.m_[1][0]){var Z=[];Z.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",n(az.x/d),",","Dy=",n(az.y/d),"");var av=az;var au=V(this,aj+al,ah);var ar=V(this,aj,ah+ay);var an=V(this,aj+al,ah+ay);av.x=ab.max(av.x,au.x,ar.x,an.x);av.y=ab.max(av.y,au.y,ar.y,an.y);ax.push("padding:0 ",n(av.x/d),"px ",n(av.y/d),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",Z.join(""),", sizingmethod='clip');")}else{ax.push("top:",n(az.y/d),"px;left:",n(az.x/d),"px;")}ax.push(' ">','<g_vml_:image src="',aq.src,'"',' style="width:',d*al,"px;"," height:",d*ay,'px"',' cropleft="',ao/ai,'"',' croptop="',am/aw,'"',' cropright="',(ai-ao-at)/ai,'"',' cropbottom="',(aw-am-aA)/aw,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",ax.join(""))};q.stroke=function(al){var aj=[];var Z=false;var m=10;var am=10;aj.push("<g_vml_:shape",' filled="',!!al,'"',' style="position:absolute;width:',m,"px;height:",am,'px;"',' coordorigin="0,0"',' coordsize="',d*m,",",d*am,'"',' stroked="',!al,'"',' path="');var an=false;var ag={x:null,y:null};var ak={x:null,y:null};for(var ah=0;ah<this.currentPath_.length;ah++){var j=this.currentPath_[ah];var ai;switch(j.type){case"moveTo":ai=j;aj.push(" m ",n(j.x),",",n(j.y));break;case"lineTo":aj.push(" l ",n(j.x),",",n(j.y));break;case"close":aj.push(" x ");j=null;break;case"bezierCurveTo":aj.push(" c ",n(j.cp1x),",",n(j.cp1y),",",n(j.cp2x),",",n(j.cp2y),",",n(j.x),",",n(j.y));break;case"at":case"wa":aj.push(" ",j.type," ",n(j.x-this.arcScaleX_*j.radius),",",n(j.y-this.arcScaleY_*j.radius)," ",n(j.x+this.arcScaleX_*j.radius),",",n(j.y+this.arcScaleY_*j.radius)," ",n(j.xStart),",",n(j.yStart)," ",n(j.xEnd),",",n(j.yEnd));break}if(j){if(ag.x==null||j.x<ag.x){ag.x=j.x}if(ak.x==null||j.x>ak.x){ak.x=j.x}if(ag.y==null||j.y<ag.y){ag.y=j.y}if(ak.y==null||j.y>ak.y){ak.y=j.y}}}aj.push(' ">');if(!al){w(this,aj)}else{G(this,aj,ag,ak)}aj.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",aj.join(""))};function w(m,ag){var j=F(m.strokeStyle);var p=j.color;var Z=j.alpha*m.globalAlpha;var i=m.lineScale_*m.lineWidth;if(i<1){Z*=i}ag.push("<g_vml_:stroke",' opacity="',Z,'"',' joinstyle="',m.lineJoin,'"',' miterlimit="',m.miterLimit,'"',' endcap="',S(m.lineCap),'"',' weight="',i,'px"',' color="',p,'" />')}function G(aq,ai,aK,ar){var aj=aq.fillStyle;var aB=aq.arcScaleX_;var aA=aq.arcScaleY_;var j=ar.x-aK.x;var p=ar.y-aK.y;if(aj instanceof U){var an=0;var aF={x:0,y:0};var ax=0;var am=1;if(aj.type_=="gradient"){var al=aj.x0_/aB;var m=aj.y0_/aA;var ak=aj.x1_/aB;var aM=aj.y1_/aA;var aJ=V(aq,al,m);var aI=V(aq,ak,aM);var ag=aI.x-aJ.x;var Z=aI.y-aJ.y;an=Math.atan2(ag,Z)*180/Math.PI;if(an<0){an+=360}if(an<0.000001){an=0}}else{var aJ=V(aq,aj.x0_,aj.y0_);aF={x:(aJ.x-aK.x)/j,y:(aJ.y-aK.y)/p};j/=aB*d;p/=aA*d;var aD=ab.max(j,p);ax=2*aj.r0_/aD;am=2*aj.r1_/aD-ax}var av=aj.colors_;av.sort(function(aN,i){return aN.offset-i.offset});var ap=av.length;var au=av[0].color;var at=av[ap-1].color;var az=av[0].alpha*aq.globalAlpha;var ay=av[ap-1].alpha*aq.globalAlpha;var aE=[];for(var aH=0;aH<ap;aH++){var ao=av[aH];aE.push(ao.offset*am+ax+" "+ao.color)}ai.push('<g_vml_:fill type="',aj.type_,'"',' method="none" focus="100%"',' color="',au,'"',' color2="',at,'"',' colors="',aE.join(","),'"',' opacity="',ay,'"',' g_o_:opacity2="',az,'"',' angle="',an,'"',' focusposition="',aF.x,",",aF.y,'" />')}else{if(aj instanceof T){if(j&&p){var ah=-aK.x;var aC=-aK.y;ai.push("<g_vml_:fill",' position="',ah/j*aB*aB,",",aC/p*aA*aA,'"',' type="tile"',' src="',aj.src_,'" />')}}else{var aL=F(aq.fillStyle);var aw=aL.color;var aG=aL.alpha*aq.globalAlpha;ai.push('<g_vml_:fill color="',aw,'" opacity="',aG,'" />')}}}q.fill=function(){this.stroke(true)};q.closePath=function(){this.currentPath_.push({type:"close"})};function V(j,Z,p){var i=j.m_;return{x:d*(Z*i[0][0]+p*i[1][0]+i[2][0])-f,y:d*(Z*i[0][1]+p*i[1][1]+i[2][1])-f}}q.save=function(){var i={};v(this,i);this.aStack_.push(i);this.mStack_.push(this.m_);this.m_=J(B(),this.m_)};q.restore=function(){if(this.aStack_.length){v(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function h(i){return isFinite(i[0][0])&&isFinite(i[0][1])&&isFinite(i[1][0])&&isFinite(i[1][1])&&isFinite(i[2][0])&&isFinite(i[2][1])}function aa(j,i,p){if(!h(i)){return}j.m_=i;if(p){var Z=i[0][0]*i[1][1]-i[0][1]*i[1][0];j.lineScale_=N(H(Z))}}q.translate=function(m,j){var i=[[1,0,0],[0,1,0],[m,j,1]];aa(this,J(i,this.m_),false)};q.rotate=function(j){var p=A(j);var m=l(j);var i=[[p,m,0],[-m,p,0],[0,0,1]];aa(this,J(i,this.m_),false)};q.scale=function(m,j){this.arcScaleX_*=m;this.arcScaleY_*=j;var i=[[m,0,0],[0,j,0],[0,0,1]];aa(this,J(i,this.m_),true)};q.transform=function(Z,p,ah,ag,j,i){var m=[[Z,p,0],[ah,ag,0],[j,i,1]];aa(this,J(m,this.m_),true)};q.setTransform=function(ag,Z,ai,ah,p,j){var i=[[ag,Z,0],[ai,ah,0],[p,j,1]];aa(this,i,true)};q.drawText_=function(am,ak,aj,ap,ai){var ao=this.m_,at=1000,j=0,ar=at,ah={x:0,y:0},ag=[];var i=u(E(this.font),this.element_);var p=ac(i);var au=this.element_.currentStyle;var Z=this.textAlign.toLowerCase();switch(Z){case"left":case"center":case"right":break;case"end":Z=au.direction=="ltr"?"right":"left";break;case"start":Z=au.direction=="rtl"?"right":"left";break;default:Z="left"}switch(this.textBaseline){case"hanging":case"top":ah.y=i.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":ah.y=-i.size/2.25;break}switch(Z){case"right":j=at;ar=0.05;break;case"center":j=ar=at/2;break}var aq=V(this,ak+ah.x,aj+ah.y);ag.push('<g_vml_:line from="',-j,' 0" to="',ar,' 0.05" ',' coordsize="100 100" coordorigin="0 0"',' filled="',!ai,'" stroked="',!!ai,'" style="position:absolute;width:1px;height:1px;">');if(ai){w(this,ag)}else{G(this,ag,{x:-j,y:0},{x:ar,y:i.size})}var an=ao[0][0].toFixed(3)+","+ao[1][0].toFixed(3)+","+ao[0][1].toFixed(3)+","+ao[1][1].toFixed(3)+",0,0";var al=n(aq.x/d+1-ao[0][0])+","+n(aq.y/d-2*ao[1][0]);ag.push('<g_vml_:skew on="t" matrix="',an,'" ',' offset="',al,'" origin="',j,' 0" />','<g_vml_:path textpathok="true" />','<g_vml_:textpath on="true" string="',af(am),'" style="v-text-align:',Z,";font:",af(p),'" /></g_vml_:line>');this.element_.insertAdjacentHTML("beforeEnd",ag.join(""))};q.fillText=function(m,i,p,j){this.drawText_(m,i,p,j,false)};q.strokeText=function(m,i,p,j){this.drawText_(m,i,p,j,true)};q.measureText=function(m){if(!this.textMeasureEl_){var i='<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>';this.element_.insertAdjacentHTML("beforeEnd",i);this.textMeasureEl_=this.element_.lastChild}var j=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(j.createTextNode(m));return{width:this.textMeasureEl_.offsetWidth}};q.clip=function(){};q.arcTo=function(){};q.createPattern=function(j,i){return new T(j,i)};function U(i){this.type_=i;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}U.prototype.addColorStop=function(j,i){i=F(i);this.colors_.push({offset:j,color:i.color,alpha:i.alpha})};function T(j,i){Q(j);switch(i){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=i;break;default:O("SYNTAX_ERR")}this.src_=j.src;this.width_=j.width;this.height_=j.height}function O(i){throw new P(i)}function Q(i){if(!i||i.nodeType!=1||i.tagName!="IMG"){O("TYPE_MISMATCH_ERR")}if(i.readyState!="complete"){O("INVALID_STATE_ERR")}}function P(i){this.code=this[i];this.message=i+": DOM Exception "+this.code}var X=P.prototype=new Error;X.INDEX_SIZE_ERR=1;X.DOMSTRING_SIZE_ERR=2;X.HIERARCHY_REQUEST_ERR=3;X.WRONG_DOCUMENT_ERR=4;X.INVALID_CHARACTER_ERR=5;X.NO_DATA_ALLOWED_ERR=6;X.NO_MODIFICATION_ALLOWED_ERR=7;X.NOT_FOUND_ERR=8;X.NOT_SUPPORTED_ERR=9;X.INUSE_ATTRIBUTE_ERR=10;X.INVALID_STATE_ERR=11;X.SYNTAX_ERR=12;X.INVALID_MODIFICATION_ERR=13;X.NAMESPACE_ERR=14;X.INVALID_ACCESS_ERR=15;X.VALIDATION_ERR=16;X.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=e;CanvasRenderingContext2D=D;CanvasGradient=U;CanvasPattern=T;DOMException=P;G_vmlCanvasManager._version=888})()}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/gpl-2.0.txt b/wqflask/wqflask/static/packages/jqplot/gpl-2.0.txt
deleted file mode 100644
index 864c6b8b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/gpl-2.0.txt
+++ /dev/null
@@ -1,280 +0,0 @@
-Title: GPL Version 2
-
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES. \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jqPlotCssStyling.txt b/wqflask/wqflask/static/packages/jqplot/jqPlotCssStyling.txt
deleted file mode 100644
index 041035d2..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jqPlotCssStyling.txt
+++ /dev/null
@@ -1,53 +0,0 @@
-Title: jqPlot CSS Customization
-
-Much of the styling of jqPlot is done by css. The jqPlot css file is, unremarkably,
-jquery.jqplot.css and resides in the same directory as jqPlot itself.
-
-There exist some styling related javascript properties on the plot objects themselves
-(like fontStyle, fontSize, etc.). These can be set with the options object at plot creation.
-Generally, setting these options is *NOT* the preferred way to customize the look of the
-plot. Use the css file instead. *These options are deprecated and may disappear*. The
-exceptions are certain background and color options which control attributes of something
-renderered on a canvas. This would be line color, grid background, etc. These must
-be set by the options object. For a list of available options, see <jqPlot Options>.
-
-Objects in the plot that can be customized by css are given a css class like ".jqplot-*".
-For example, the plot title will have a ".jqplot-title" class, the axes ".jqplot-axis", etc.
-
-Currently assigned classes in jqPlot
-are as follows:
-
-.jqplot-target - Styles for the plot target div. These will be cascaded down
-to all plot elements according to css rules.
-
-.jqplot-axis - Styles for all axes
-
-.jqplot-xaxis - Styles applied to the primary x axis only.
-
-.jqplot-yaxis - Styles applied to the primary y axis only.
-
-.jqplot-x2axis, .jqplot-x3axis, ... - Styles applied to the 2nd, 3rd, etc. x axis only.
-
-.jqplot-y2axis, .jqplot-y3axis, ... - Styles applied to the 2nd, 3rd, etc.y axis only.
-
-.jqplot-axis-tick - Styles applied to all axis ticks
-
-.jqplot-xaxis-tick - Styles applied to primary x axis ticks only.
-
-.jqplot-x2axis-tick - Styles applied to secondary x axis ticks only.
-
-.jqplot-yaxis-tick - Styles applied to primary y axis ticks only.
-
-.jqplot-y2axis-tick - Styles applied to secondary y axis ticks only.
-
-table.jqplot-table-legend - Styles applied to the legend box table.
-
-.jqplot-title - Styles applied to the title.
-
-.jqplot-cursor-tooltip - Styles applied to the cursor tooltip
-
-.jqplot-highlighter-tooltip - Styles applied to the highlighter tooltip.
-
-div.jqplot-table-legend-swatch - the div element used for the colored swatch on the legend.
-
-Note that axes will be assigned 2 classes like: class=".jqplot-axis .jqplot-xaxis". \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jqPlotOptions.txt b/wqflask/wqflask/static/packages/jqplot/jqPlotOptions.txt
deleted file mode 100644
index d2d1e68c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jqPlotOptions.txt
+++ /dev/null
@@ -1,276 +0,0 @@
-Title: jqPlot Options
-
-**This document is out of date. While the options described here should still be
-relavent and valid, it has not been updated for many new options. Sorry for
-this inconvenience.**
-
-This document describes the options available to jqPlot. These are set with the
-third argument to the $.jqplot('target', data, options) function. Options are
-using the following convention:
-
-{{{
-property: default, // notes
-}}}
-
-This document is not complete! Not all options are shown! Also, Options marked
-with ** in the notes are post 0.7.1 additions. They will be available in the next
-release. Further information about the options can be found in the online API
-documentation. For details on how the options relate to the API documentation,
-see the <Options Tutorial> in the optionsTutorial.txt file.
-
-{{{
-options =
-{
- seriesColors: [ "#4bb2c5", "#c5b47f", "#EAA228", "#579575", "#839557", "#958c12",
- "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc"], // colors that will
- // be assigned to the series. If there are more series than colors, colors
- // will wrap around and start at the beginning again.
-
- stackSeries: false, // if true, will create a stack plot.
- // Currently supported by line and bar graphs.
-
- title: '', // Title for the plot. Can also be specified as an object like:
-
- title: {
- text: '', // title for the plot,
- show: true,
- },
-
- axesDefaults: {
- show: false, // wether or not to renderer the axis. Determined automatically.
- min: null, // minimum numerical value of the axis. Determined automatically.
- max: null, // maximum numverical value of the axis. Determined automatically.
- pad: 1.2, // a factor multiplied by the data range on the axis to give the
- // axis range so that data points don't fall on the edges of the axis.
- ticks: [], // a 1D [val1, val2, ...], or 2D [[val, label], [val, label], ...]
- // array of ticks to use. Computed automatically.
- numberTicks: undefined,
- renderer: $.jqplot.LinearAxisRenderer, // renderer to use to draw the axis,
- rendererOptions: {}, // options to pass to the renderer. LinearAxisRenderer
- // has no options,
- tickOptions: {
- mark: 'outside', // Where to put the tick mark on the axis
- // 'outside', 'inside' or 'cross',
- showMark: true,
- showGridline: true, // wether to draw a gridline (across the whole grid) at this tick,
- markSize: 4, // length the tick will extend beyond the grid in pixels. For
- // 'cross', length will be added above and below the grid boundary,
- show: true, // wether to show the tick (mark and label),
- showLabel: true, // wether to show the text label at the tick,
- formatString: '', // format string to use with the axis tick formatter
- }
- showTicks: true, // wether or not to show the tick labels,
- showTickMarks: true, // wether or not to show the tick marks
- },
-
- axes: {
- xaxis: {
- // same options as axesDefaults
- },
- yaxis: {
- // same options as axesDefaults
- },
- x2axis: {
- // same options as axesDefaults
- },
- y2axis: {
- // same options as axesDefaults
- }
- },
-
- seriesDefaults: {
- show: true, // wether to render the series.
- xaxis: 'xaxis', // either 'xaxis' or 'x2axis'.
- yaxis: 'yaxis', // either 'yaxis' or 'y2axis'.
- label: '', // label to use in the legend for this line.
- color: '', // CSS color spec to use for the line. Determined automatically.
- lineWidth: 2.5, // Width of the line in pixels.
- shadow: true, // show shadow or not.
- shadowAngle: 45, // angle (degrees) of the shadow, clockwise from x axis.
- shadowOffset: 1.25, // offset from the line of the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow. Each
- // stroke offset by shadowOffset from the last.
- shadowAlpha: 0.1, // Opacity of the shadow.
- showLine: true, // whether to render the line segments or not.
- showMarker: true, // render the data point markers or not.
- fill: false, // fill under the line,
- fillAndStroke: false, // **stroke a line at top of fill area.
- fillColor: undefined, // **custom fill color for filled lines (default is line color).
- fillAlpha: undefined, // **custom alpha to apply to fillColor.
- renderer: $.jqplot.LineRenderer], // renderer used to draw the series.
- rendererOptions: {}, // options passed to the renderer. LineRenderer has no options.
- markerRenderer: $.jqplot.MarkerRenderer, // renderer to use to draw the data
- // point markers.
- markerOptions: {
- show: true, // wether to show data point markers.
- style: 'filledCircle', // circle, diamond, square, filledCircle.
- // filledDiamond or filledSquare.
- lineWidth: 2, // width of the stroke drawing the marker.
- size: 9, // size (diameter, edge length, etc.) of the marker.
- color: '#666666' // color of marker, set to color of line by default.
- shadow: true, // wether to draw shadow on marker or not.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1, // offset from the line of the shadow,
- shadowDepth: 3, // Number of strokes to make when drawing shadow. Each stroke
- // offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- },
-
- series:[
- {Each series has same options as seriesDefaults},
- {You can override each series individually here}
- ],
-
- legend: {
- show: false,
- location: 'ne', // compass direction, nw, n, ne, e, se, s, sw, w.
- xoffset: 12, // pixel offset of the legend box from the x (or x2) axis.
- yoffset: 12, // pixel offset of the legend box from the y (or y2) axis.
- },
-
- grid: {
- drawGridLines: true, // wether to draw lines across the grid or not.
- gridLineColor: '#cccccc' // **Color of the grid lines.
- background: '#fffdf6', // CSS color spec for background color of grid.
- borderColor: '#999999', // CSS color spec for border around grid.
- borderWidth: 2.0, // pixel width of border around grid.
- shadow: true, // draw a shadow for grid.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1.5, // offset from the line of the shadow.
- shadowWidth: 3, // width of the stroke for the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow.
- // Each stroke offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- renderer: $.jqplot.CanvasGridRenderer, // renderer to use to draw the grid.
- rendererOptions: {} // options to pass to the renderer. Note, the default
- // CanvasGridRenderer takes no additional options.
- },
-
- // Plugin and renderer options.
-
- // BarRenderer.
- // With BarRenderer, you can specify additional options in the rendererOptions object
- // on the series or on the seriesDefaults object. Note, some options are respecified
- // (like shadowDepth) to override lineRenderer defaults from which BarRenderer inherits.
-
- seriesDefaults: {
- rendererOptions: {
- barPadding: 8, // number of pixels between adjacent bars in the same
- // group (same category or bin).
- barMargin: 10, // number of pixels between adjacent groups of bars.
- barDirection: 'vertical', // vertical or horizontal.
- barWidth: null, // width of the bars. null to calculate automatically.
- shadowOffset: 2, // offset from the bar edge to stroke the shadow.
- shadowDepth: 5, // nuber of strokes to make for the shadow.
- shadowAlpha: 0.8, // transparency of the shadow.
- }
- },
-
- // Cursor
- // Options are passed to the cursor plugin through the "cursor" object at the top
- // level of the options object.
-
- cursor: {
- style: 'crosshair', // A CSS spec for the cursor type to change the
- // cursor to when over plot.
- show: true,
- showTooltip: true, // show a tooltip showing cursor position.
- followMouse: false, // wether tooltip should follow the mouse or be stationary.
- tooltipLocation: 'se', // location of the tooltip either relative to the mouse
- // (followMouse=true) or relative to the plot. One of
- // the compass directions, n, ne, e, se, etc.
- tooltipOffset: 6, // pixel offset of the tooltip from the mouse or the axes.
- showTooltipGridPosition: false, // show the grid pixel coordinates of the mouse
- // in the tooltip.
- showTooltipUnitPosition: true, // show the coordinates in data units of the mouse
- // in the tooltip.
- tooltipFormatString: '%.4P', // sprintf style format string for tooltip values.
- useAxesFormatters: true, // wether to use the same formatter and formatStrings
- // as used by the axes, or to use the formatString
- // specified on the cursor with sprintf.
- tooltipAxesGroups: [], // show only specified axes groups in tooltip. Would specify like:
- // [['xaxis', 'yaxis'], ['xaxis', 'y2axis']]. By default, all axes
- // combinations with for the series in the plot are shown.
-
- },
-
- // Dragable
- // Dragable options are specified with the "dragable" object at the top level
- // of the options object.
-
- dragable: {
- color: undefined, // custom color to use for the dragged point and dragged line
- // section. default will use a transparent variant of the line color.
- constrainTo: 'none', // Constrain dragging motion to an axis: 'x', 'y', or 'none'.
- },
-
- // Highlighter
- // Highlighter options are specified with the "highlighter" object at the top level
- // of the options object.
-
- highlighter: {
- lineWidthAdjust: 2.5, // pixels to add to the size line stroking the data point marker
- // when showing highlight. Only affects non filled data point markers.
- sizeAdjust: 5, // pixels to add to the size of filled markers when drawing highlight.
- showTooltip: true, // show a tooltip with data point values.
- tooltipLocation: 'nw', // location of tooltip: n, ne, e, se, s, sw, w, nw.
- fadeTooltip: true, // use fade effect to show/hide tooltip.
- tooltipFadeSpeed: "fast"// slow, def, fast, or a number of milliseconds.
- tooltipOffset: 2, // pixel offset of tooltip from the highlight.
- tooltipAxes: 'both', // which axis values to display in the tooltip, x, y or both.
- tooltipSeparator: ', ' // separator between values in the tooltip.
- useAxesFormatters: true // use the same format string and formatters as used in the axes to
- // display values in the tooltip.
- tooltipFormatString: '%.5P' // sprintf format string for the tooltip. only used if
- // useAxesFormatters is false. Will use sprintf formatter with
- // this string, not the axes formatters.
- },
-
- // LogAxisRenderer
- // LogAxisRenderer add 2 options to the axes object. These options are specified directly on
- // the axes or axesDefaults object.
-
- axesDefaults: {
- base: 10, // the logarithmic base.
- tickDistribution: 'even', // 'even' or 'power'. 'even' will produce with even visiual (pixel)
- // spacing on the axis. 'power' will produce ticks spaced by
- // increasing powers of the log base.
- },
-
- // PieRenderer
- // PieRenderer accepts options from the rendererOptions object of the series or seriesDefaults object.
-
- seriesDefaults: {
- rendererOptions: {
- diameter: undefined, // diameter of pie, auto computed by default.
- padding: 20, // padding between pie and neighboring legend or plot margin.
- sliceMargin: 0, // gap between slices.
- fill: true, // render solid (filled) slices.
- shadowOffset: 2, // offset of the shadow from the chart.
- shadowDepth: 5, // Number of strokes to make when drawing shadow. Each stroke
- // offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- },
-
- // Trendline
- // Trendline takes options on the trendline object of the series or seriesDefaults object.
-
- seriesDefaults: {
- trendline: {
- show: true, // show the trend line
- color: '#666666', // CSS color spec for the trend line.
- label: '', // label for the trend line.
- type: 'linear', // 'linear', 'exponential' or 'exp'
- shadow: true, // show the trend line shadow.
- lineWidth: 1.5, // width of the trend line.
- shadowAngle: 45, // angle of the shadow. Clockwise from x axis.
- shadowOffset: 1.5, // offset from the line of the shadow.
- shadowDepth: 3, // Number of strokes to make when drawing shadow.
- // Each stroke offset by shadowOffset from the last.
- shadowAlpha: 0.07 // Opacity of the shadow
- }
- }
-}
-}}} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.css b/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.css
deleted file mode 100644
index d30bafb1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.css
+++ /dev/null
@@ -1,259 +0,0 @@
-/*rules for the plot target div. These will be cascaded down to all plot elements according to css rules*/
-.jqplot-target {
- position: relative;
- color: #666666;
- font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
- font-size: 1em;
-/* height: 300px;
- width: 400px;*/
-}
-
-/*rules applied to all axes*/
-.jqplot-axis {
- font-size: 0.75em;
-}
-
-.jqplot-xaxis {
- margin-top: 10px;
-}
-
-.jqplot-x2axis {
- margin-bottom: 10px;
-}
-
-.jqplot-yaxis {
- margin-right: 10px;
-}
-
-.jqplot-y2axis, .jqplot-y3axis, .jqplot-y4axis, .jqplot-y5axis, .jqplot-y6axis, .jqplot-y7axis, .jqplot-y8axis, .jqplot-y9axis, .jqplot-yMidAxis {
- margin-left: 10px;
- margin-right: 10px;
-}
-
-/*rules applied to all axis tick divs*/
-.jqplot-axis-tick, .jqplot-xaxis-tick, .jqplot-yaxis-tick, .jqplot-x2axis-tick, .jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick, .jqplot-yMidAxis-tick {
- position: absolute;
- white-space: pre;
-}
-
-
-.jqplot-xaxis-tick {
- top: 0px;
- /* initial position untill tick is drawn in proper place */
- left: 15px;
-/* padding-top: 10px;*/
- vertical-align: top;
-}
-
-.jqplot-x2axis-tick {
- bottom: 0px;
- /* initial position untill tick is drawn in proper place */
- left: 15px;
-/* padding-bottom: 10px;*/
- vertical-align: bottom;
-}
-
-.jqplot-yaxis-tick {
- right: 0px;
- /* initial position untill tick is drawn in proper place */
- top: 15px;
-/* padding-right: 10px;*/
- text-align: right;
-}
-
-.jqplot-yaxis-tick.jqplot-breakTick {
- right: -20px;
- margin-right: 0px;
- padding:1px 5px 1px 5px;
-/* background-color: white;*/
- z-index: 2;
- font-size: 1.5em;
-}
-
-.jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick {
- left: 0px;
- /* initial position untill tick is drawn in proper place */
- top: 15px;
-/* padding-left: 10px;*/
-/* padding-right: 15px;*/
- text-align: left;
-}
-
-.jqplot-yMidAxis-tick {
- text-align: center;
- white-space: nowrap;
-}
-
-.jqplot-xaxis-label {
- margin-top: 10px;
- font-size: 11pt;
- position: absolute;
-}
-
-.jqplot-x2axis-label {
- margin-bottom: 10px;
- font-size: 11pt;
- position: absolute;
-}
-
-.jqplot-yaxis-label {
- margin-right: 10px;
-/* text-align: center;*/
- font-size: 11pt;
- position: absolute;
-}
-
-.jqplot-yMidAxis-label {
- font-size: 11pt;
- position: absolute;
-}
-
-.jqplot-y2axis-label, .jqplot-y3axis-label, .jqplot-y4axis-label, .jqplot-y5axis-label, .jqplot-y6axis-label, .jqplot-y7axis-label, .jqplot-y8axis-label, .jqplot-y9axis-label {
-/* text-align: center;*/
- font-size: 11pt;
- margin-left: 10px;
- position: absolute;
-}
-
-.jqplot-meterGauge-tick {
- font-size: 0.75em;
- color: #999999;
-}
-
-.jqplot-meterGauge-label {
- font-size: 1em;
- color: #999999;
-}
-
-table.jqplot-table-legend {
- margin-top: 12px;
- margin-bottom: 12px;
- margin-left: 12px;
- margin-right: 12px;
-}
-
-table.jqplot-table-legend, table.jqplot-cursor-legend {
- background-color: rgba(255,255,255,0.6);
- border: 1px solid #cccccc;
- position: absolute;
- font-size: 0.75em;
-}
-
-td.jqplot-table-legend {
- vertical-align:middle;
-}
-
-/*
-These rules could be used instead of assigning
-element styles and relying on js object properties.
-*/
-
-/*
-td.jqplot-table-legend-swatch {
- padding-top: 0.5em;
- text-align: center;
-}
-
-tr.jqplot-table-legend:first td.jqplot-table-legend-swatch {
- padding-top: 0px;
-}
-*/
-
-td.jqplot-seriesToggle:hover, td.jqplot-seriesToggle:active {
- cursor: pointer;
-}
-
-.jqplot-table-legend .jqplot-series-hidden {
- text-decoration: line-through;
-}
-
-div.jqplot-table-legend-swatch-outline {
- border: 1px solid #cccccc;
- padding:1px;
-}
-
-div.jqplot-table-legend-swatch {
- width:0px;
- height:0px;
- border-top-width: 5px;
- border-bottom-width: 5px;
- border-left-width: 6px;
- border-right-width: 6px;
- border-top-style: solid;
- border-bottom-style: solid;
- border-left-style: solid;
- border-right-style: solid;
-}
-
-.jqplot-title {
- top: 0px;
- left: 0px;
- padding-bottom: 0.5em;
- font-size: 1.2em;
-}
-
-table.jqplot-cursor-tooltip {
- border: 1px solid #cccccc;
- font-size: 0.75em;
-}
-
-
-.jqplot-cursor-tooltip {
- border: 1px solid #cccccc;
- font-size: 0.75em;
- white-space: nowrap;
- background: rgba(208,208,208,0.5);
- padding: 1px;
-}
-
-.jqplot-highlighter-tooltip, .jqplot-canvasOverlay-tooltip {
- border: 1px solid #cccccc;
- font-size: 0.75em;
- white-space: nowrap;
- background: rgba(208,208,208,0.5);
- padding: 1px;
-}
-
-.jqplot-point-label {
- font-size: 0.75em;
- z-index: 2;
-}
-
-td.jqplot-cursor-legend-swatch {
- vertical-align: middle;
- text-align: center;
-}
-
-div.jqplot-cursor-legend-swatch {
- width: 1.2em;
- height: 0.7em;
-}
-
-.jqplot-error {
-/* Styles added to the plot target container when there is an error go here.*/
- text-align: center;
-}
-
-.jqplot-error-message {
-/* Styling of the custom error message div goes here.*/
- position: relative;
- top: 46%;
- display: inline-block;
-}
-
-div.jqplot-bubble-label {
- font-size: 0.8em;
-/* background: rgba(90%, 90%, 90%, 0.15);*/
- padding-left: 2px;
- padding-right: 2px;
- color: rgb(20%, 20%, 20%);
-}
-
-div.jqplot-bubble-label.jqplot-bubble-label-highlight {
- background: rgba(90%, 90%, 90%, 0.7);
-}
-
-div.jqplot-noData-container {
- text-align: center;
- background-color: rgba(96%, 96%, 96%, 0.3);
-}
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.js b/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.js
deleted file mode 100644
index c77c353d..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.js
+++ /dev/null
@@ -1,11381 +0,0 @@
-/**
- * Title: jqPlot Charts
- *
- * Pure JavaScript plotting plugin for jQuery.
- *
- * About: Version
- *
- * version: 1.0.4
- * revision: 1121
- *
- * About: Copyright & License
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * See <GPL Version 2> and <MIT License> contained within this distribution for further information.
- *
- * The author would appreciate an email letting him know of any substantial
- * use of jqPlot. You can reach the author at: chris at jqplot dot com
- * or see http://www.jqplot.com/info.php. This is, of course, not required.
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php.
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- *
- * About: Introduction
- *
- * jqPlot requires jQuery (1.4+ required for certain features). jQuery 1.4.2 is included in the distribution.
- * To use jqPlot include jQuery, the jqPlot jQuery plugin, the jqPlot css file and optionally
- * the excanvas script for IE support in your web page:
- *
- * > <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
- * > <script language="javascript" type="text/javascript" src="jquery-1.4.4.min.js"></script>
- * > <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script>
- * > <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
- *
- * jqPlot can be customized by overriding the defaults of any of the objects which make
- * up the plot. The general usage of jqplot is:
- *
- * > chart = $.jqplot('targetElemId', [dataArray,...], {optionsObject});
- *
- * The options available to jqplot are detailed in <jqPlot Options> in the jqPlotOptions.txt file.
- *
- * An actual call to $.jqplot() may look like the
- * examples below:
- *
- * > chart = $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);
- *
- * or
- *
- * > dataArray = [34,12,43,55,77];
- * > chart = $.jqplot('targetElemId', [dataArray, ...], {title:'My Plot', axes:{yaxis:{min:20, max:100}}});
- *
- * For more inforrmation, see <jqPlot Usage>.
- *
- * About: Usage
- *
- * See <jqPlot Usage>
- *
- * About: Available Options
- *
- * See <jqPlot Options> for a list of options available thorugh the options object (not complete yet!)
- *
- * About: Options Usage
- *
- * See <Options Tutorial>
- *
- * About: Changes
- *
- * See <Change Log>
- *
- */
-
-(function($) {
- // make sure undefined is undefined
- var undefined;
-
- $.fn.emptyForce = function() {
- for ( var i = 0, elem; (elem = $(this)[i]) != null; i++ ) {
- // Remove element nodes and prevent memory leaks
- if ( elem.nodeType === 1 ) {
- $.cleanData( elem.getElementsByTagName("*") );
- }
-
- // Remove any remaining nodes
- if ($.jqplot.use_excanvas) {
- elem.outerHTML = "";
- }
- else {
- while ( elem.firstChild ) {
- elem.removeChild( elem.firstChild );
- }
- }
-
- elem = null;
- }
-
- return $(this);
- };
-
- $.fn.removeChildForce = function(parent) {
- while ( parent.firstChild ) {
- this.removeChildForce( parent.firstChild );
- parent.removeChild( parent.firstChild );
- }
- };
-
- $.fn.jqplot = function() {
- var datas = [];
- var options = [];
- // see how many data arrays we have
- for (var i=0, l=arguments.length; i<l; i++) {
- if ($.isArray(arguments[i])) {
- datas.push(arguments[i]);
- }
- else if ($.isPlainObject(arguments[i])) {
- options.push(arguments[i]);
- }
- }
-
- return this.each(function(index) {
- var tid,
- plot,
- $this = $(this),
- dl = datas.length,
- ol = options.length,
- data,
- opts;
-
- if (index < dl) {
- data = datas[index];
- }
- else {
- data = dl ? datas[dl-1] : null;
- }
-
- if (index < ol) {
- opts = options[index];
- }
- else {
- opts = ol ? options[ol-1] : null;
- }
-
- // does el have an id?
- // if not assign it one.
- tid = $this.attr('id');
- if (tid === undefined) {
- tid = 'jqplot_target_' + $.jqplot.targetCounter++;
- $this.attr('id', tid);
- }
-
- plot = $.jqplot(tid, data, opts);
-
- $this.data('jqplot', plot);
- });
- };
-
-
- /**
- * Namespace: $.jqplot
- * jQuery function called by the user to create a plot.
- *
- * Parameters:
- * target - ID of target element to render the plot into.
- * data - an array of data series.
- * options - user defined options object. See the individual classes for available options.
- *
- * Properties:
- * config - object to hold configuration information for jqPlot plot object.
- *
- * attributes:
- * enablePlugins - False to disable plugins by default. Plugins must then be explicitly
- * enabled in the individual plot options. Default: false.
- * This property sets the "show" property of certain plugins to true or false.
- * Only plugins that can be immediately active upon loading are affected. This includes
- * non-renderer plugins like cursor, dragable, highlighter, and trendline.
- * defaultHeight - Default height for plots where no css height specification exists. This
- * is a jqplot wide default.
- * defaultWidth - Default height for plots where no css height specification exists. This
- * is a jqplot wide default.
- */
-
- $.jqplot = function(target, data, options) {
- var _data = null, _options = null;
-
- if (arguments.length === 3) {
- _data = data;
- _options = options;
- }
-
- else if (arguments.length === 2) {
- if ($.isArray(data)) {
- _data = data;
- }
-
- else if ($.isPlainObject(data)) {
- _options = data;
- }
- }
-
- if (_data === null && _options !== null && _options.data) {
- _data = _options.data;
- }
-
- var plot = new jqPlot();
- // remove any error class that may be stuck on target.
- $('#'+target).removeClass('jqplot-error');
-
- if ($.jqplot.config.catchErrors) {
- try {
- plot.init(target, _data, _options);
- plot.draw();
- plot.themeEngine.init.call(plot);
- return plot;
- }
- catch(e) {
- var msg = $.jqplot.config.errorMessage || e.message;
- $('#'+target).append('<div class="jqplot-error-message">'+msg+'</div>');
- $('#'+target).addClass('jqplot-error');
- document.getElementById(target).style.background = $.jqplot.config.errorBackground;
- document.getElementById(target).style.border = $.jqplot.config.errorBorder;
- document.getElementById(target).style.fontFamily = $.jqplot.config.errorFontFamily;
- document.getElementById(target).style.fontSize = $.jqplot.config.errorFontSize;
- document.getElementById(target).style.fontStyle = $.jqplot.config.errorFontStyle;
- document.getElementById(target).style.fontWeight = $.jqplot.config.errorFontWeight;
- }
- }
- else {
- plot.init(target, _data, _options);
- plot.draw();
- plot.themeEngine.init.call(plot);
- return plot;
- }
- };
-
- $.jqplot.version = "1.0.4";
- $.jqplot.revision = "1121";
-
- $.jqplot.targetCounter = 1;
-
- // canvas manager to reuse canvases on the plot.
- // Should help solve problem of canvases not being freed and
- // problem of waiting forever for firefox to decide to free memory.
- $.jqplot.CanvasManager = function() {
- // canvases are managed globally so that they can be reused
- // across plots after they have been freed
- if (typeof $.jqplot.CanvasManager.canvases == 'undefined') {
- $.jqplot.CanvasManager.canvases = [];
- $.jqplot.CanvasManager.free = [];
- }
-
- var myCanvases = [];
-
- this.getCanvas = function() {
- var canvas;
- var makeNew = true;
-
- if (!$.jqplot.use_excanvas) {
- for (var i = 0, l = $.jqplot.CanvasManager.canvases.length; i < l; i++) {
- if ($.jqplot.CanvasManager.free[i] === true) {
- makeNew = false;
- canvas = $.jqplot.CanvasManager.canvases[i];
- // $(canvas).removeClass('jqplot-canvasManager-free').addClass('jqplot-canvasManager-inuse');
- $.jqplot.CanvasManager.free[i] = false;
- myCanvases.push(i);
- break;
- }
- }
- }
-
- if (makeNew) {
- canvas = document.createElement('canvas');
- myCanvases.push($.jqplot.CanvasManager.canvases.length);
- $.jqplot.CanvasManager.canvases.push(canvas);
- $.jqplot.CanvasManager.free.push(false);
- }
-
- return canvas;
- };
-
- // this method has to be used after settings the dimesions
- // on the element returned by getCanvas()
- this.initCanvas = function(canvas) {
- if ($.jqplot.use_excanvas) {
- return window.G_vmlCanvasManager.initElement(canvas);
- }
- return canvas;
- };
-
- this.freeAllCanvases = function() {
- for (var i = 0, l=myCanvases.length; i < l; i++) {
- this.freeCanvas(myCanvases[i]);
- }
- myCanvases = [];
- };
-
- this.freeCanvas = function(idx) {
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- // excanvas can't be reused, but properly unset
- window.G_vmlCanvasManager.uninitElement($.jqplot.CanvasManager.canvases[idx]);
- $.jqplot.CanvasManager.canvases[idx] = null;
- }
- else {
- var canvas = $.jqplot.CanvasManager.canvases[idx];
- canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height);
- $(canvas).unbind().removeAttr('class').removeAttr('style');
- // Style attributes seemed to be still hanging around. wierd. Some ticks
- // still retained a left: 0px attribute after reusing a canvas.
- $(canvas).css({left: '', top: '', position: ''});
- // setting size to 0 may save memory of unused canvases?
- canvas.width = 0;
- canvas.height = 0;
- $.jqplot.CanvasManager.free[idx] = true;
- }
- };
-
- };
-
-
- // Convienence function that won't hang IE or FF without FireBug.
- $.jqplot.log = function() {
- if (window.console) {
- window.console.log.apply(window.console, arguments);
- }
- };
-
- $.jqplot.config = {
- addDomReference: false,
- enablePlugins:false,
- defaultHeight:300,
- defaultWidth:400,
- UTCAdjust:false,
- timezoneOffset: new Date(new Date().getTimezoneOffset() * 60000),
- errorMessage: '',
- errorBackground: '',
- errorBorder: '',
- errorFontFamily: '',
- errorFontSize: '',
- errorFontStyle: '',
- errorFontWeight: '',
- catchErrors: false,
- defaultTickFormatString: "%.1f",
- defaultColors: [ "#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"],
- defaultNegativeColors: [ "#498991", "#C08840", "#9F9274", "#546D61", "#646C4A", "#6F6621", "#6E3F5F", "#4F64B0", "#A89050", "#C45923", "#187399", "#945381", "#959E5C", "#C7AF7B", "#478396", "#907294"],
- dashLength: 4,
- gapLength: 4,
- dotGapLength: 2.5,
- srcLocation: 'jqplot/src/',
- pluginLocation: 'jqplot/src/plugins/'
- };
-
-
- $.jqplot.arrayMax = function( array ){
- return Math.max.apply( Math, array );
- };
-
- $.jqplot.arrayMin = function( array ){
- return Math.min.apply( Math, array );
- };
-
- $.jqplot.enablePlugins = $.jqplot.config.enablePlugins;
-
- // canvas related tests taken from modernizer:
- // Copyright (c) 2009 - 2010 Faruk Ates.
- // http://www.modernizr.com
-
- $.jqplot.support_canvas = function() {
- if (typeof $.jqplot.support_canvas.result == 'undefined') {
- $.jqplot.support_canvas.result = !!document.createElement('canvas').getContext;
- }
- return $.jqplot.support_canvas.result;
- };
-
- $.jqplot.support_canvas_text = function() {
- if (typeof $.jqplot.support_canvas_text.result == 'undefined') {
- if (window.G_vmlCanvasManager !== undefined && window.G_vmlCanvasManager._version > 887) {
- $.jqplot.support_canvas_text.result = true;
- }
- else {
- $.jqplot.support_canvas_text.result = !!(document.createElement('canvas').getContext && typeof document.createElement('canvas').getContext('2d').fillText == 'function');
- }
-
- }
- return $.jqplot.support_canvas_text.result;
- };
-
- $.jqplot.use_excanvas = ($.browser.msie && !$.jqplot.support_canvas()) ? true : false;
-
- /**
- *
- * Hooks: jqPlot Pugin Hooks
- *
- * $.jqplot.preInitHooks - called before initialization.
- * $.jqplot.postInitHooks - called after initialization.
- * $.jqplot.preParseOptionsHooks - called before user options are parsed.
- * $.jqplot.postParseOptionsHooks - called after user options are parsed.
- * $.jqplot.preDrawHooks - called before plot draw.
- * $.jqplot.postDrawHooks - called after plot draw.
- * $.jqplot.preDrawSeriesHooks - called before each series is drawn.
- * $.jqplot.postDrawSeriesHooks - called after each series is drawn.
- * $.jqplot.preDrawLegendHooks - called before the legend is drawn.
- * $.jqplot.addLegendRowHooks - called at the end of legend draw, so plugins
- * can add rows to the legend table.
- * $.jqplot.preSeriesInitHooks - called before series is initialized.
- * $.jqplot.postSeriesInitHooks - called after series is initialized.
- * $.jqplot.preParseSeriesOptionsHooks - called before series related options
- * are parsed.
- * $.jqplot.postParseSeriesOptionsHooks - called after series related options
- * are parsed.
- * $.jqplot.eventListenerHooks - called at the end of plot drawing, binds
- * listeners to the event canvas which lays on top of the grid area.
- * $.jqplot.preDrawSeriesShadowHooks - called before series shadows are drawn.
- * $.jqplot.postDrawSeriesShadowHooks - called after series shadows are drawn.
- *
- */
-
- $.jqplot.preInitHooks = [];
- $.jqplot.postInitHooks = [];
- $.jqplot.preParseOptionsHooks = [];
- $.jqplot.postParseOptionsHooks = [];
- $.jqplot.preDrawHooks = [];
- $.jqplot.postDrawHooks = [];
- $.jqplot.preDrawSeriesHooks = [];
- $.jqplot.postDrawSeriesHooks = [];
- $.jqplot.preDrawLegendHooks = [];
- $.jqplot.addLegendRowHooks = [];
- $.jqplot.preSeriesInitHooks = [];
- $.jqplot.postSeriesInitHooks = [];
- $.jqplot.preParseSeriesOptionsHooks = [];
- $.jqplot.postParseSeriesOptionsHooks = [];
- $.jqplot.eventListenerHooks = [];
- $.jqplot.preDrawSeriesShadowHooks = [];
- $.jqplot.postDrawSeriesShadowHooks = [];
-
- // A superclass holding some common properties and methods.
- $.jqplot.ElemContainer = function() {
- this._elem;
- this._plotWidth;
- this._plotHeight;
- this._plotDimensions = {height:null, width:null};
- };
-
- $.jqplot.ElemContainer.prototype.createElement = function(el, offsets, clss, cssopts, attrib) {
- this._offsets = offsets;
- var klass = clss || 'jqplot';
- var elem = document.createElement(el);
- this._elem = $(elem);
- this._elem.addClass(klass);
- this._elem.css(cssopts);
- this._elem.attr(attrib);
- // avoid memory leak;
- elem = null;
- return this._elem;
- };
-
- $.jqplot.ElemContainer.prototype.getWidth = function() {
- if (this._elem) {
- return this._elem.outerWidth(true);
- }
- else {
- return null;
- }
- };
-
- $.jqplot.ElemContainer.prototype.getHeight = function() {
- if (this._elem) {
- return this._elem.outerHeight(true);
- }
- else {
- return null;
- }
- };
-
- $.jqplot.ElemContainer.prototype.getPosition = function() {
- if (this._elem) {
- return this._elem.position();
- }
- else {
- return {top:null, left:null, bottom:null, right:null};
- }
- };
-
- $.jqplot.ElemContainer.prototype.getTop = function() {
- return this.getPosition().top;
- };
-
- $.jqplot.ElemContainer.prototype.getLeft = function() {
- return this.getPosition().left;
- };
-
- $.jqplot.ElemContainer.prototype.getBottom = function() {
- return this._elem.css('bottom');
- };
-
- $.jqplot.ElemContainer.prototype.getRight = function() {
- return this._elem.css('right');
- };
-
-
- /**
- * Class: Axis
- * An individual axis object. Cannot be instantiated directly, but created
- * by the Plot oject. Axis properties can be set or overriden by the
- * options passed in from the user.
- *
- */
- function Axis(name) {
- $.jqplot.ElemContainer.call(this);
- // Group: Properties
- //
- // Axes options are specified within an axes object at the top level of the
- // plot options like so:
- // > {
- // > axes: {
- // > xaxis: {min: 5},
- // > yaxis: {min: 2, max: 8, numberTicks:4},
- // > x2axis: {pad: 1.5},
- // > y2axis: {ticks:[22, 44, 66, 88]}
- // > }
- // > }
- // There are 2 x axes, 'xaxis' and 'x2axis', and
- // 9 yaxes, 'yaxis', 'y2axis'. 'y3axis', ... Any or all of which may be specified.
- this.name = name;
- this._series = [];
- // prop: show
- // Wether to display the axis on the graph.
- this.show = false;
- // prop: tickRenderer
- // A class of a rendering engine for creating the ticks labels displayed on the plot,
- // See <$.jqplot.AxisTickRenderer>.
- this.tickRenderer = $.jqplot.AxisTickRenderer;
- // prop: tickOptions
- // Options that will be passed to the tickRenderer, see <$.jqplot.AxisTickRenderer> options.
- this.tickOptions = {};
- // prop: labelRenderer
- // A class of a rendering engine for creating an axis label.
- this.labelRenderer = $.jqplot.AxisLabelRenderer;
- // prop: labelOptions
- // Options passed to the label renderer.
- this.labelOptions = {};
- // prop: label
- // Label for the axis
- this.label = null;
- // prop: showLabel
- // true to show the axis label.
- this.showLabel = true;
- // prop: min
- // minimum value of the axis (in data units, not pixels).
- this.min = null;
- // prop: max
- // maximum value of the axis (in data units, not pixels).
- this.max = null;
- // prop: autoscale
- // DEPRECATED
- // the default scaling algorithm produces superior results.
- this.autoscale = false;
- // prop: pad
- // Padding to extend the range above and below the data bounds.
- // The data range is multiplied by this factor to determine minimum and maximum axis bounds.
- // A value of 0 will be interpreted to mean no padding, and pad will be set to 1.0.
- this.pad = 1.2;
- // prop: padMax
- // Padding to extend the range above data bounds.
- // The top of the data range is multiplied by this factor to determine maximum axis bounds.
- // A value of 0 will be interpreted to mean no padding, and padMax will be set to 1.0.
- this.padMax = null;
- // prop: padMin
- // Padding to extend the range below data bounds.
- // The bottom of the data range is multiplied by this factor to determine minimum axis bounds.
- // A value of 0 will be interpreted to mean no padding, and padMin will be set to 1.0.
- this.padMin = null;
- // prop: ticks
- // 1D [val, val, ...] or 2D [[val, label], [val, label], ...] array of ticks for the axis.
- // If no label is specified, the value is formatted into an appropriate label.
- this.ticks = [];
- // prop: numberTicks
- // Desired number of ticks. Default is to compute automatically.
- this.numberTicks;
- // prop: tickInterval
- // number of units between ticks. Mutually exclusive with numberTicks.
- this.tickInterval;
- // prop: renderer
- // A class of a rendering engine that handles tick generation,
- // scaling input data to pixel grid units and drawing the axis element.
- this.renderer = $.jqplot.LinearAxisRenderer;
- // prop: rendererOptions
- // renderer specific options. See <$.jqplot.LinearAxisRenderer> for options.
- this.rendererOptions = {};
- // prop: showTicks
- // Wether to show the ticks (both marks and labels) or not.
- // Will not override showMark and showLabel options if specified on the ticks themselves.
- this.showTicks = true;
- // prop: showTickMarks
- // Wether to show the tick marks (line crossing grid) or not.
- // Overridden by showTicks and showMark option of tick itself.
- this.showTickMarks = true;
- // prop: showMinorTicks
- // Wether or not to show minor ticks. This is renderer dependent.
- this.showMinorTicks = true;
- // prop: drawMajorGridlines
- // True to draw gridlines for major axis ticks.
- this.drawMajorGridlines = true;
- // prop: drawMinorGridlines
- // True to draw gridlines for minor ticks.
- this.drawMinorGridlines = false;
- // prop: drawMajorTickMarks
- // True to draw tick marks for major axis ticks.
- this.drawMajorTickMarks = true;
- // prop: drawMinorTickMarks
- // True to draw tick marks for minor ticks. This is renderer dependent.
- this.drawMinorTickMarks = true;
- // prop: useSeriesColor
- // Use the color of the first series associated with this axis for the
- // tick marks and line bordering this axis.
- this.useSeriesColor = false;
- // prop: borderWidth
- // width of line stroked at the border of the axis. Defaults
- // to the width of the grid boarder.
- this.borderWidth = null;
- // prop: borderColor
- // color of the border adjacent to the axis. Defaults to grid border color.
- this.borderColor = null;
- // prop: scaleToHiddenSeries
- // True to include hidden series when computing axes bounds and scaling.
- this.scaleToHiddenSeries = false;
- // minimum and maximum values on the axis.
- this._dataBounds = {min:null, max:null};
- // statistics (min, max, mean) as well as actual data intervals for each series attached to axis.
- // holds collection of {intervals:[], min:, max:, mean: } objects for each series on axis.
- this._intervalStats = [];
- // pixel position from the top left of the min value and max value on the axis.
- this._offsets = {min:null, max:null};
- this._ticks=[];
- this._label = null;
- // prop: syncTicks
- // true to try and synchronize tick spacing across multiple axes so that ticks and
- // grid lines line up. This has an impact on autoscaling algorithm, however.
- // In general, autoscaling an individual axis will work better if it does not
- // have to sync ticks.
- this.syncTicks = null;
- // prop: tickSpacing
- // Approximate pixel spacing between ticks on graph. Used during autoscaling.
- // This number will be an upper bound, actual spacing will be less.
- this.tickSpacing = 75;
- // Properties to hold the original values for min, max, ticks, tickInterval and numberTicks
- // so they can be restored if altered by plugins.
- this._min = null;
- this._max = null;
- this._tickInterval = null;
- this._numberTicks = null;
- this.__ticks = null;
- // hold original user options.
- this._options = {};
- }
-
- Axis.prototype = new $.jqplot.ElemContainer();
- Axis.prototype.constructor = Axis;
-
- Axis.prototype.init = function() {
- if ($.isFunction(this.renderer)) {
- this.renderer = new this.renderer();
- }
- // set the axis name
- this.tickOptions.axis = this.name;
- // if showMark or showLabel tick options not specified, use value of axis option.
- // showTicks overrides showTickMarks.
- if (this.tickOptions.showMark == null) {
- this.tickOptions.showMark = this.showTicks;
- }
- if (this.tickOptions.showMark == null) {
- this.tickOptions.showMark = this.showTickMarks;
- }
- if (this.tickOptions.showLabel == null) {
- this.tickOptions.showLabel = this.showTicks;
- }
-
- if (this.label == null || this.label == '') {
- this.showLabel = false;
- }
- else {
- this.labelOptions.label = this.label;
- }
- if (this.showLabel == false) {
- this.labelOptions.show = false;
- }
- // set the default padMax, padMin if not specified
- // special check, if no padding desired, padding
- // should be set to 1.0
- if (this.pad == 0) {
- this.pad = 1.0;
- }
- if (this.padMax == 0) {
- this.padMax = 1.0;
- }
- if (this.padMin == 0) {
- this.padMin = 1.0;
- }
- if (this.padMax == null) {
- this.padMax = (this.pad-1)/2 + 1;
- }
- if (this.padMin == null) {
- this.padMin = (this.pad-1)/2 + 1;
- }
- // now that padMin and padMax are correctly set, reset pad in case user has supplied
- // padMin and/or padMax
- this.pad = this.padMax + this.padMin - 1;
- if (this.min != null || this.max != null) {
- this.autoscale = false;
- }
- // if not set, sync ticks for y axes but not x by default.
- if (this.syncTicks == null && this.name.indexOf('y') > -1) {
- this.syncTicks = true;
- }
- else if (this.syncTicks == null){
- this.syncTicks = false;
- }
- this.renderer.init.call(this, this.rendererOptions);
-
- };
-
- Axis.prototype.draw = function(ctx, plot) {
- // Memory Leaks patch
- if (this.__ticks) {
- this.__ticks = null;
- }
-
- return this.renderer.draw.call(this, ctx, plot);
-
- };
-
- Axis.prototype.set = function() {
- this.renderer.set.call(this);
- };
-
- Axis.prototype.pack = function(pos, offsets) {
- if (this.show) {
- this.renderer.pack.call(this, pos, offsets);
- }
- // these properties should all be available now.
- if (this._min == null) {
- this._min = this.min;
- this._max = this.max;
- this._tickInterval = this.tickInterval;
- this._numberTicks = this.numberTicks;
- this.__ticks = this._ticks;
- }
- };
-
- // reset the axis back to original values if it has been scaled, zoomed, etc.
- Axis.prototype.reset = function() {
- this.renderer.reset.call(this);
- };
-
- Axis.prototype.resetScale = function(opts) {
- $.extend(true, this, {min: null, max: null, numberTicks: null, tickInterval: null, _ticks: [], ticks: []}, opts);
- this.resetDataBounds();
- };
-
- Axis.prototype.resetDataBounds = function() {
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- var db = this._dataBounds;
- db.min = null;
- db.max = null;
- var l, s, d;
- // check for when to force min 0 on bar series plots.
- var doforce = (this.show) ? true : false;
- for (var i=0; i<this._series.length; i++) {
- s = this._series[i];
- if (s.show || this.scaleToHiddenSeries) {
- d = s._plotData;
- if (s._type === 'line' && s.renderer.bands.show && this.name.charAt(0) !== 'x') {
- d = [[0, s.renderer.bands._min], [1, s.renderer.bands._max]];
- }
-
- var minyidx = 1, maxyidx = 1;
-
- if (s._type != null && s._type == 'ohlc') {
- minyidx = 3;
- maxyidx = 2;
- }
-
- for (var j=0, l=d.length; j<l; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- if ((d[j][0] != null && d[j][0] < db.min) || db.min == null) {
- db.min = d[j][0];
- }
- if ((d[j][0] != null && d[j][0] > db.max) || db.max == null) {
- db.max = d[j][0];
- }
- }
- else {
- if ((d[j][minyidx] != null && d[j][minyidx] < db.min) || db.min == null) {
- db.min = d[j][minyidx];
- }
- if ((d[j][maxyidx] != null && d[j][maxyidx] > db.max) || db.max == null) {
- db.max = d[j][maxyidx];
- }
- }
- }
-
- // Hack to not pad out bottom of bar plots unless user has specified a padding.
- // every series will have a chance to set doforce to false. once it is set to
- // false, it cannot be reset to true.
- // If any series attached to axis is not a bar, wont force 0.
- if (doforce && s.renderer.constructor !== $.jqplot.BarRenderer) {
- doforce = false;
- }
-
- else if (doforce && this._options.hasOwnProperty('forceTickAt0') && this._options.forceTickAt0 == false) {
- doforce = false;
- }
-
- else if (doforce && s.renderer.constructor === $.jqplot.BarRenderer) {
- if (s.barDirection == 'vertical' && this.name != 'xaxis' && this.name != 'x2axis') {
- if (this._options.pad != null || this._options.padMin != null) {
- doforce = false;
- }
- }
-
- else if (s.barDirection == 'horizontal' && (this.name == 'xaxis' || this.name == 'x2axis')) {
- if (this._options.pad != null || this._options.padMin != null) {
- doforce = false;
- }
- }
-
- }
- }
- }
-
- if (doforce && this.renderer.constructor === $.jqplot.LinearAxisRenderer && db.min >= 0) {
- this.padMin = 1.0;
- this.forceTickAt0 = true;
- }
- };
-
- /**
- * Class: Legend
- * Legend object. Cannot be instantiated directly, but created
- * by the Plot oject. Legend properties can be set or overriden by the
- * options passed in from the user.
- */
- function Legend(options) {
- $.jqplot.ElemContainer.call(this);
- // Group: Properties
-
- // prop: show
- // Wether to display the legend on the graph.
- this.show = false;
- // prop: location
- // Placement of the legend. one of the compass directions: nw, n, ne, e, se, s, sw, w
- this.location = 'ne';
- // prop: labels
- // Array of labels to use. By default the renderer will look for labels on the series.
- // Labels specified in this array will override labels specified on the series.
- this.labels = [];
- // prop: showLabels
- // true to show the label text on the legend.
- this.showLabels = true;
- // prop: showSwatch
- // true to show the color swatches on the legend.
- this.showSwatches = true;
- // prop: placement
- // "insideGrid" places legend inside the grid area of the plot.
- // "outsideGrid" places the legend outside the grid but inside the plot container,
- // shrinking the grid to accomodate the legend.
- // "inside" synonym for "insideGrid",
- // "outside" places the legend ouside the grid area, but does not shrink the grid which
- // can cause the legend to overflow the plot container.
- this.placement = "insideGrid";
- // prop: xoffset
- // DEPRECATED. Set the margins on the legend using the marginTop, marginLeft, etc.
- // properties or via CSS margin styling of the .jqplot-table-legend class.
- this.xoffset = 0;
- // prop: yoffset
- // DEPRECATED. Set the margins on the legend using the marginTop, marginLeft, etc.
- // properties or via CSS margin styling of the .jqplot-table-legend class.
- this.yoffset = 0;
- // prop: border
- // css spec for the border around the legend box.
- this.border;
- // prop: background
- // css spec for the background of the legend box.
- this.background;
- // prop: textColor
- // css color spec for the legend text.
- this.textColor;
- // prop: fontFamily
- // css font-family spec for the legend text.
- this.fontFamily;
- // prop: fontSize
- // css font-size spec for the legend text.
- this.fontSize ;
- // prop: rowSpacing
- // css padding-top spec for the rows in the legend.
- this.rowSpacing = '0.5em';
- // renderer
- // A class that will create a DOM object for the legend,
- // see <$.jqplot.TableLegendRenderer>.
- this.renderer = $.jqplot.TableLegendRenderer;
- // prop: rendererOptions
- // renderer specific options passed to the renderer.
- this.rendererOptions = {};
- // prop: predraw
- // Wether to draw the legend before the series or not.
- // Used with series specific legend renderers for pie, donut, mekko charts, etc.
- this.preDraw = false;
- // prop: marginTop
- // CSS margin for the legend DOM element. This will set an element
- // CSS style for the margin which will override any style sheet setting.
- // The default will be taken from the stylesheet.
- this.marginTop = null;
- // prop: marginRight
- // CSS margin for the legend DOM element. This will set an element
- // CSS style for the margin which will override any style sheet setting.
- // The default will be taken from the stylesheet.
- this.marginRight = null;
- // prop: marginBottom
- // CSS margin for the legend DOM element. This will set an element
- // CSS style for the margin which will override any style sheet setting.
- // The default will be taken from the stylesheet.
- this.marginBottom = null;
- // prop: marginLeft
- // CSS margin for the legend DOM element. This will set an element
- // CSS style for the margin which will override any style sheet setting.
- // The default will be taken from the stylesheet.
- this.marginLeft = null;
- // prop: escapeHtml
- // True to escape special characters with their html entity equivalents
- // in legend text. "<" becomes &lt; and so on, so html tags are not rendered.
- this.escapeHtml = false;
- this._series = [];
-
- $.extend(true, this, options);
- }
-
- Legend.prototype = new $.jqplot.ElemContainer();
- Legend.prototype.constructor = Legend;
-
- Legend.prototype.setOptions = function(options) {
- $.extend(true, this, options);
-
- // Try to emulate deprecated behaviour
- // if user has specified xoffset or yoffset, copy these to
- // the margin properties.
-
- if (this.placement == 'inside') {
- this.placement = 'insideGrid';
- }
-
- if (this.xoffset >0) {
- if (this.placement == 'insideGrid') {
- switch (this.location) {
- case 'nw':
- case 'w':
- case 'sw':
- if (this.marginLeft == null) {
- this.marginLeft = this.xoffset + 'px';
- }
- this.marginRight = '0px';
- break;
- case 'ne':
- case 'e':
- case 'se':
- default:
- if (this.marginRight == null) {
- this.marginRight = this.xoffset + 'px';
- }
- this.marginLeft = '0px';
- break;
- }
- }
- else if (this.placement == 'outside') {
- switch (this.location) {
- case 'nw':
- case 'w':
- case 'sw':
- if (this.marginRight == null) {
- this.marginRight = this.xoffset + 'px';
- }
- this.marginLeft = '0px';
- break;
- case 'ne':
- case 'e':
- case 'se':
- default:
- if (this.marginLeft == null) {
- this.marginLeft = this.xoffset + 'px';
- }
- this.marginRight = '0px';
- break;
- }
- }
- this.xoffset = 0;
- }
-
- if (this.yoffset >0) {
- if (this.placement == 'outside') {
- switch (this.location) {
- case 'sw':
- case 's':
- case 'se':
- if (this.marginTop == null) {
- this.marginTop = this.yoffset + 'px';
- }
- this.marginBottom = '0px';
- break;
- case 'ne':
- case 'n':
- case 'nw':
- default:
- if (this.marginBottom == null) {
- this.marginBottom = this.yoffset + 'px';
- }
- this.marginTop = '0px';
- break;
- }
- }
- else if (this.placement == 'insideGrid') {
- switch (this.location) {
- case 'sw':
- case 's':
- case 'se':
- if (this.marginBottom == null) {
- this.marginBottom = this.yoffset + 'px';
- }
- this.marginTop = '0px';
- break;
- case 'ne':
- case 'n':
- case 'nw':
- default:
- if (this.marginTop == null) {
- this.marginTop = this.yoffset + 'px';
- }
- this.marginBottom = '0px';
- break;
- }
- }
- this.yoffset = 0;
- }
-
- // TO-DO:
- // Handle case where offsets are < 0.
- //
- };
-
- Legend.prototype.init = function() {
- if ($.isFunction(this.renderer)) {
- this.renderer = new this.renderer();
- }
- this.renderer.init.call(this, this.rendererOptions);
- };
-
- Legend.prototype.draw = function(offsets, plot) {
- for (var i=0; i<$.jqplot.preDrawLegendHooks.length; i++){
- $.jqplot.preDrawLegendHooks[i].call(this, offsets);
- }
- return this.renderer.draw.call(this, offsets, plot);
- };
-
- Legend.prototype.pack = function(offsets) {
- this.renderer.pack.call(this, offsets);
- };
-
- /**
- * Class: Title
- * Plot Title object. Cannot be instantiated directly, but created
- * by the Plot oject. Title properties can be set or overriden by the
- * options passed in from the user.
- *
- * Parameters:
- * text - text of the title.
- */
- function Title(text) {
- $.jqplot.ElemContainer.call(this);
- // Group: Properties
-
- // prop: text
- // text of the title;
- this.text = text;
- // prop: show
- // wether or not to show the title
- this.show = true;
- // prop: fontFamily
- // css font-family spec for the text.
- this.fontFamily;
- // prop: fontSize
- // css font-size spec for the text.
- this.fontSize ;
- // prop: textAlign
- // css text-align spec for the text.
- this.textAlign;
- // prop: textColor
- // css color spec for the text.
- this.textColor;
- // prop: renderer
- // A class for creating a DOM element for the title,
- // see <$.jqplot.DivTitleRenderer>.
- this.renderer = $.jqplot.DivTitleRenderer;
- // prop: rendererOptions
- // renderer specific options passed to the renderer.
- this.rendererOptions = {};
- // prop: escapeHtml
- // True to escape special characters with their html entity equivalents
- // in title text. "<" becomes &lt; and so on, so html tags are not rendered.
- this.escapeHtml = false;
- }
-
- Title.prototype = new $.jqplot.ElemContainer();
- Title.prototype.constructor = Title;
-
- Title.prototype.init = function() {
- if ($.isFunction(this.renderer)) {
- this.renderer = new this.renderer();
- }
- this.renderer.init.call(this, this.rendererOptions);
- };
-
- Title.prototype.draw = function(width) {
- return this.renderer.draw.call(this, width);
- };
-
- Title.prototype.pack = function() {
- this.renderer.pack.call(this);
- };
-
-
- /**
- * Class: Series
- * An individual data series object. Cannot be instantiated directly, but created
- * by the Plot oject. Series properties can be set or overriden by the
- * options passed in from the user.
- */
- function Series(options) {
- options = options || {};
- $.jqplot.ElemContainer.call(this);
- // Group: Properties
- // Properties will be assigned from a series array at the top level of the
- // options. If you had two series and wanted to change the color and line
- // width of the first and set the second to use the secondary y axis with
- // no shadow and supply custom labels for each:
- // > {
- // > series:[
- // > {color: '#ff4466', lineWidth: 5, label:'good line'},
- // > {yaxis: 'y2axis', shadow: false, label:'bad line'}
- // > ]
- // > }
-
- // prop: show
- // wether or not to draw the series.
- this.show = true;
- // prop: xaxis
- // which x axis to use with this series, either 'xaxis' or 'x2axis'.
- this.xaxis = 'xaxis';
- this._xaxis;
- // prop: yaxis
- // which y axis to use with this series, either 'yaxis' or 'y2axis'.
- this.yaxis = 'yaxis';
- this._yaxis;
- this.gridBorderWidth = 2.0;
- // prop: renderer
- // A class of a renderer which will draw the series,
- // see <$.jqplot.LineRenderer>.
- this.renderer = $.jqplot.LineRenderer;
- // prop: rendererOptions
- // Options to pass on to the renderer.
- this.rendererOptions = {};
- this.data = [];
- this.gridData = [];
- // prop: label
- // Line label to use in the legend.
- this.label = '';
- // prop: showLabel
- // true to show label for this series in the legend.
- this.showLabel = true;
- // prop: color
- // css color spec for the series
- this.color;
- // prop: negativeColor
- // css color spec used for filled (area) plots that are filled to zero and
- // the "useNegativeColors" option is true.
- this.negativeColor;
- // prop: lineWidth
- // width of the line in pixels. May have different meanings depending on renderer.
- this.lineWidth = 2.5;
- // prop: lineJoin
- // Canvas lineJoin style between segments of series.
- this.lineJoin = 'round';
- // prop: lineCap
- // Canvas lineCap style at ends of line.
- this.lineCap = 'round';
- // prop: linePattern
- // line pattern 'dashed', 'dotted', 'solid', some combination
- // of '-' and '.' characters such as '.-.' or a numerical array like
- // [draw, skip, draw, skip, ...] such as [1, 10] to draw a dotted line,
- // [1, 10, 20, 10] to draw a dot-dash line, and so on.
- this.linePattern = 'solid';
- this.shadow = true;
- // prop: shadowAngle
- // Shadow angle in degrees
- this.shadowAngle = 45;
- // prop: shadowOffset
- // Shadow offset from line in pixels
- this.shadowOffset = 1.25;
- // prop: shadowDepth
- // Number of times shadow is stroked, each stroke offset shadowOffset from the last.
- this.shadowDepth = 3;
- // prop: shadowAlpha
- // Alpha channel transparency of shadow. 0 = transparent.
- this.shadowAlpha = '0.1';
- // prop: breakOnNull
- // Wether line segments should be be broken at null value.
- // False will join point on either side of line.
- this.breakOnNull = false;
- // prop: markerRenderer
- // A class of a renderer which will draw marker (e.g. circle, square, ...) at the data points,
- // see <$.jqplot.MarkerRenderer>.
- this.markerRenderer = $.jqplot.MarkerRenderer;
- // prop: markerOptions
- // renderer specific options to pass to the markerRenderer,
- // see <$.jqplot.MarkerRenderer>.
- this.markerOptions = {};
- // prop: showLine
- // wether to actually draw the line or not. Series will still be renderered, even if no line is drawn.
- this.showLine = true;
- // prop: showMarker
- // wether or not to show the markers at the data points.
- this.showMarker = true;
- // prop: index
- // 0 based index of this series in the plot series array.
- this.index;
- // prop: fill
- // true or false, wether to fill under lines or in bars.
- // May not be implemented in all renderers.
- this.fill = false;
- // prop: fillColor
- // CSS color spec to use for fill under line. Defaults to line color.
- this.fillColor;
- // prop: fillAlpha
- // Alpha transparency to apply to the fill under the line.
- // Use this to adjust alpha separate from fill color.
- this.fillAlpha;
- // prop: fillAndStroke
- // If true will stroke the line (with color this.color) as well as fill under it.
- // Applies only when fill is true.
- this.fillAndStroke = false;
- // prop: disableStack
- // true to not stack this series with other series in the plot.
- // To render properly, non-stacked series must come after any stacked series
- // in the plot's data series array. So, the plot's data series array would look like:
- // > [stackedSeries1, stackedSeries2, ..., nonStackedSeries1, nonStackedSeries2, ...]
- // disableStack will put a gap in the stacking order of series, and subsequent
- // stacked series will not fill down through the non-stacked series and will
- // most likely not stack properly on top of the non-stacked series.
- this.disableStack = false;
- // _stack is set by the Plot if the plot is a stacked chart.
- // will stack lines or bars on top of one another to build a "mountain" style chart.
- // May not be implemented in all renderers.
- this._stack = false;
- // prop: neighborThreshold
- // how close or far (in pixels) the cursor must be from a point marker to detect the point.
- this.neighborThreshold = 4;
- // prop: fillToZero
- // true will force bar and filled series to fill toward zero on the fill Axis.
- this.fillToZero = false;
- // prop: fillToValue
- // fill a filled series to this value on the fill axis.
- // Works in conjunction with fillToZero, so that must be true.
- this.fillToValue = 0;
- // prop: fillAxis
- // Either 'x' or 'y'. Which axis to fill the line toward if fillToZero is true.
- // 'y' means fill up/down to 0 on the y axis for this series.
- this.fillAxis = 'y';
- // prop: useNegativeColors
- // true to color negative values differently in filled and bar charts.
- this.useNegativeColors = true;
- this._stackData = [];
- // _plotData accounts for stacking. If plots not stacked, _plotData and data are same. If
- // stacked, _plotData is accumulation of stacking data.
- this._plotData = [];
- // _plotValues hold the individual x and y values that will be plotted for this series.
- this._plotValues = {x:[], y:[]};
- // statistics about the intervals between data points. Used for auto scaling.
- this._intervals = {x:{}, y:{}};
- // data from the previous series, for stacked charts.
- this._prevPlotData = [];
- this._prevGridData = [];
- this._stackAxis = 'y';
- this._primaryAxis = '_xaxis';
- // give each series a canvas to draw on. This should allow for redrawing speedups.
- this.canvas = new $.jqplot.GenericCanvas();
- this.shadowCanvas = new $.jqplot.GenericCanvas();
- this.plugins = {};
- // sum of y values in this series.
- this._sumy = 0;
- this._sumx = 0;
- this._type = '';
- }
-
- Series.prototype = new $.jqplot.ElemContainer();
- Series.prototype.constructor = Series;
-
- Series.prototype.init = function(index, gridbw, plot) {
- // weed out any null values in the data.
- this.index = index;
- this.gridBorderWidth = gridbw;
- var d = this.data;
- var temp = [], i, l;
- for (i=0, l=d.length; i<l; i++) {
- if (! this.breakOnNull) {
- if (d[i] == null || d[i][0] == null || d[i][1] == null) {
- continue;
- }
- else {
- temp.push(d[i]);
- }
- }
- else {
- // TODO: figure out what to do with null values
- // probably involve keeping nulls in data array
- // and then updating renderers to break line
- // when it hits null value.
- // For now, just keep value.
- temp.push(d[i]);
- }
- }
- this.data = temp;
-
- // parse the renderer options and apply default colors if not provided
- // Set color even if not shown, so series don't change colors when other
- // series on plot shown/hidden.
- if (!this.color) {
- this.color = plot.colorGenerator.get(this.index);
- }
- if (!this.negativeColor) {
- this.negativeColor = plot.negativeColorGenerator.get(this.index);
- }
-
-
- if (!this.fillColor) {
- this.fillColor = this.color;
- }
- if (this.fillAlpha) {
- var comp = $.jqplot.normalize2rgb(this.fillColor);
- var comp = $.jqplot.getColorComponents(comp);
- this.fillColor = 'rgba('+comp[0]+','+comp[1]+','+comp[2]+','+this.fillAlpha+')';
- }
- if ($.isFunction(this.renderer)) {
- this.renderer = new this.renderer();
- }
- this.renderer.init.call(this, this.rendererOptions, plot);
- this.markerRenderer = new this.markerRenderer();
- if (!this.markerOptions.color) {
- this.markerOptions.color = this.color;
- }
- if (this.markerOptions.show == null) {
- this.markerOptions.show = this.showMarker;
- }
- this.showMarker = this.markerOptions.show;
- // the markerRenderer is called within it's own scaope, don't want to overwrite series options!!
- this.markerRenderer.init(this.markerOptions);
- };
-
- // data - optional data point array to draw using this series renderer
- // gridData - optional grid data point array to draw using this series renderer
- // stackData - array of cumulative data for stacked plots.
- Series.prototype.draw = function(sctx, opts, plot) {
- var options = (opts == undefined) ? {} : opts;
- sctx = (sctx == undefined) ? this.canvas._ctx : sctx;
-
- var j, data, gridData;
-
- // hooks get called even if series not shown
- // we don't clear canvas here, it would wipe out all other series as well.
- for (j=0; j<$.jqplot.preDrawSeriesHooks.length; j++) {
- $.jqplot.preDrawSeriesHooks[j].call(this, sctx, options);
- }
- if (this.show) {
- this.renderer.setGridData.call(this, plot);
- if (!options.preventJqPlotSeriesDrawTrigger) {
- $(sctx.canvas).trigger('jqplotSeriesDraw', [this.data, this.gridData]);
- }
- data = [];
- if (options.data) {
- data = options.data;
- }
- else if (!this._stack) {
- data = this.data;
- }
- else {
- data = this._plotData;
- }
- gridData = options.gridData || this.renderer.makeGridData.call(this, data, plot);
-
- if (this._type === 'line' && this.renderer.smooth && this.renderer._smoothedData.length) {
- gridData = this.renderer._smoothedData;
- }
-
- this.renderer.draw.call(this, sctx, gridData, options, plot);
- }
-
- for (j=0; j<$.jqplot.postDrawSeriesHooks.length; j++) {
- $.jqplot.postDrawSeriesHooks[j].call(this, sctx, options, plot);
- }
-
- sctx = opts = plot = j = data = gridData = null;
- };
-
- Series.prototype.drawShadow = function(sctx, opts, plot) {
- var options = (opts == undefined) ? {} : opts;
- sctx = (sctx == undefined) ? this.shadowCanvas._ctx : sctx;
-
- var j, data, gridData;
-
- // hooks get called even if series not shown
- // we don't clear canvas here, it would wipe out all other series as well.
- for (j=0; j<$.jqplot.preDrawSeriesShadowHooks.length; j++) {
- $.jqplot.preDrawSeriesShadowHooks[j].call(this, sctx, options);
- }
- if (this.shadow) {
- this.renderer.setGridData.call(this, plot);
-
- data = [];
- if (options.data) {
- data = options.data;
- }
- else if (!this._stack) {
- data = this.data;
- }
- else {
- data = this._plotData;
- }
- gridData = options.gridData || this.renderer.makeGridData.call(this, data, plot);
-
- this.renderer.drawShadow.call(this, sctx, gridData, options, plot);
- }
-
- for (j=0; j<$.jqplot.postDrawSeriesShadowHooks.length; j++) {
- $.jqplot.postDrawSeriesShadowHooks[j].call(this, sctx, options);
- }
-
- sctx = opts = plot = j = data = gridData = null;
-
- };
-
- // toggles series display on plot, e.g. show/hide series
- Series.prototype.toggleDisplay = function(ev, callback) {
- var s, speed;
- if (ev.data.series) {
- s = ev.data.series;
- }
- else {
- s = this;
- }
-
- if (ev.data.speed) {
- speed = ev.data.speed;
- }
- if (speed) {
- // this can be tricky because series may not have a canvas element if replotting.
- if (s.canvas._elem.is(':hidden') || !s.show) {
- s.show = true;
-
- s.canvas._elem.removeClass('jqplot-series-hidden');
- if (s.shadowCanvas._elem) {
- s.shadowCanvas._elem.fadeIn(speed);
- }
- s.canvas._elem.fadeIn(speed, callback);
- s.canvas._elem.nextAll('.jqplot-point-label.jqplot-series-'+s.index).fadeIn(speed);
- }
- else {
- s.show = false;
-
- s.canvas._elem.addClass('jqplot-series-hidden');
- if (s.shadowCanvas._elem) {
- s.shadowCanvas._elem.fadeOut(speed);
- }
- s.canvas._elem.fadeOut(speed, callback);
- s.canvas._elem.nextAll('.jqplot-point-label.jqplot-series-'+s.index).fadeOut(speed);
- }
- }
- else {
- // this can be tricky because series may not have a canvas element if replotting.
- if (s.canvas._elem.is(':hidden') || !s.show) {
- s.show = true;
-
- s.canvas._elem.removeClass('jqplot-series-hidden');
- if (s.shadowCanvas._elem) {
- s.shadowCanvas._elem.show();
- }
- s.canvas._elem.show(0, callback);
- s.canvas._elem.nextAll('.jqplot-point-label.jqplot-series-'+s.index).show();
- }
- else {
- s.show = false;
-
- s.canvas._elem.addClass('jqplot-series-hidden');
- if (s.shadowCanvas._elem) {
- s.shadowCanvas._elem.hide();
- }
- s.canvas._elem.hide(0, callback);
- s.canvas._elem.nextAll('.jqplot-point-label.jqplot-series-'+s.index).hide();
- }
- }
- };
-
-
-
- /**
- * Class: Grid
- *
- * Object representing the grid on which the plot is drawn. The grid in this
- * context is the area bounded by the axes, the area which will contain the series.
- * Note, the series are drawn on their own canvas.
- * The Grid object cannot be instantiated directly, but is created by the Plot oject.
- * Grid properties can be set or overriden by the options passed in from the user.
- */
- function Grid() {
- $.jqplot.ElemContainer.call(this);
- // Group: Properties
-
- // prop: drawGridlines
- // wether to draw the gridlines on the plot.
- this.drawGridlines = true;
- // prop: gridLineColor
- // color of the grid lines.
- this.gridLineColor = '#cccccc';
- // prop: gridLineWidth
- // width of the grid lines.
- this.gridLineWidth = 1.0;
- // prop: background
- // css spec for the background color.
- this.background = '#fffdf6';
- // prop: borderColor
- // css spec for the color of the grid border.
- this.borderColor = '#999999';
- // prop: borderWidth
- // width of the border in pixels.
- this.borderWidth = 2.0;
- // prop: drawBorder
- // True to draw border around grid.
- this.drawBorder = true;
- // prop: shadow
- // wether to show a shadow behind the grid.
- this.shadow = true;
- // prop: shadowAngle
- // shadow angle in degrees
- this.shadowAngle = 45;
- // prop: shadowOffset
- // Offset of each shadow stroke from the border in pixels
- this.shadowOffset = 1.5;
- // prop: shadowWidth
- // width of the stoke for the shadow
- this.shadowWidth = 3;
- // prop: shadowDepth
- // Number of times shadow is stroked, each stroke offset shadowOffset from the last.
- this.shadowDepth = 3;
- // prop: shadowColor
- // an optional css color spec for the shadow in 'rgba(n, n, n, n)' form
- this.shadowColor = null;
- // prop: shadowAlpha
- // Alpha channel transparency of shadow. 0 = transparent.
- this.shadowAlpha = '0.07';
- this._left;
- this._top;
- this._right;
- this._bottom;
- this._width;
- this._height;
- this._axes = [];
- // prop: renderer
- // Instance of a renderer which will actually render the grid,
- // see <$.jqplot.CanvasGridRenderer>.
- this.renderer = $.jqplot.CanvasGridRenderer;
- // prop: rendererOptions
- // Options to pass on to the renderer,
- // see <$.jqplot.CanvasGridRenderer>.
- this.rendererOptions = {};
- this._offsets = {top:null, bottom:null, left:null, right:null};
- }
-
- Grid.prototype = new $.jqplot.ElemContainer();
- Grid.prototype.constructor = Grid;
-
- Grid.prototype.init = function() {
- if ($.isFunction(this.renderer)) {
- this.renderer = new this.renderer();
- }
- this.renderer.init.call(this, this.rendererOptions);
- };
-
- Grid.prototype.createElement = function(offsets,plot) {
- this._offsets = offsets;
- return this.renderer.createElement.call(this, plot);
- };
-
- Grid.prototype.draw = function() {
- this.renderer.draw.call(this);
- };
-
- $.jqplot.GenericCanvas = function() {
- $.jqplot.ElemContainer.call(this);
- this._ctx;
- };
-
- $.jqplot.GenericCanvas.prototype = new $.jqplot.ElemContainer();
- $.jqplot.GenericCanvas.prototype.constructor = $.jqplot.GenericCanvas;
-
- $.jqplot.GenericCanvas.prototype.createElement = function(offsets, clss, plotDimensions, plot) {
- this._offsets = offsets;
- var klass = 'jqplot';
- if (clss != undefined) {
- klass = clss;
- }
- var elem;
-
- elem = plot.canvasManager.getCanvas();
-
- // if new plotDimensions supplied, use them.
- if (plotDimensions != null) {
- this._plotDimensions = plotDimensions;
- }
-
- elem.width = this._plotDimensions.width - this._offsets.left - this._offsets.right;
- elem.height = this._plotDimensions.height - this._offsets.top - this._offsets.bottom;
- this._elem = $(elem);
- this._elem.css({ position: 'absolute', left: this._offsets.left, top: this._offsets.top });
-
- this._elem.addClass(klass);
-
- elem = plot.canvasManager.initCanvas(elem);
-
- elem = null;
- return this._elem;
- };
-
- $.jqplot.GenericCanvas.prototype.setContext = function() {
- this._ctx = this._elem.get(0).getContext("2d");
- return this._ctx;
- };
-
- // Memory Leaks patch
- $.jqplot.GenericCanvas.prototype.resetCanvas = function() {
- if (this._elem) {
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- window.G_vmlCanvasManager.uninitElement(this._elem.get(0));
- }
-
- //this._elem.remove();
- this._elem.emptyForce();
- }
-
- this._ctx = null;
- };
-
- $.jqplot.HooksManager = function () {
- this.hooks =[];
- this.args = [];
- };
-
- $.jqplot.HooksManager.prototype.addOnce = function(fn, args) {
- args = args || [];
- var havehook = false;
- for (var i=0, l=this.hooks.length; i<l; i++) {
- if (this.hooks[i] == fn) {
- havehook = true;
- }
- }
- if (!havehook) {
- this.hooks.push(fn);
- this.args.push(args);
- }
- };
-
- $.jqplot.HooksManager.prototype.add = function(fn, args) {
- args = args || [];
- this.hooks.push(fn);
- this.args.push(args);
- };
-
- $.jqplot.EventListenerManager = function () {
- this.hooks =[];
- };
-
- $.jqplot.EventListenerManager.prototype.addOnce = function(ev, fn) {
- var havehook = false, h, i;
- for (var i=0, l=this.hooks.length; i<l; i++) {
- h = this.hooks[i];
- if (h[0] == ev && h[1] == fn) {
- havehook = true;
- }
- }
- if (!havehook) {
- this.hooks.push([ev, fn]);
- }
- };
-
- $.jqplot.EventListenerManager.prototype.add = function(ev, fn) {
- this.hooks.push([ev, fn]);
- };
-
-
- var _axisNames = ['yMidAxis', 'xaxis', 'yaxis', 'x2axis', 'y2axis', 'y3axis', 'y4axis', 'y5axis', 'y6axis', 'y7axis', 'y8axis', 'y9axis'];
-
- /**
- * Class: jqPlot
- * Plot object returned by call to $.jqplot. Handles parsing user options,
- * creating sub objects (Axes, legend, title, series) and rendering the plot.
- */
- function jqPlot() {
- // Group: Properties
- // These properties are specified at the top of the options object
- // like so:
- // > {
- // > axesDefaults:{min:0},
- // > series:[{color:'#6633dd'}],
- // > title: 'A Plot'
- // > }
- //
-
- // prop: animate
- // True to animate the series on initial plot draw (renderer dependent).
- // Actual animation functionality must be supported in the renderer.
- this.animate = false;
- // prop: animateReplot
- // True to animate series after a call to the replot() method.
- // Use with caution! Replots can happen very frequently under
- // certain circumstances (e.g. resizing, dragging points) and
- // animation in these situations can cause problems.
- this.animateReplot = false;
- // prop: axes
- // up to 4 axes are supported, each with it's own options,
- // See <Axis> for axis specific options.
- this.axes = {xaxis: new Axis('xaxis'), yaxis: new Axis('yaxis'), x2axis: new Axis('x2axis'), y2axis: new Axis('y2axis'), y3axis: new Axis('y3axis'), y4axis: new Axis('y4axis'), y5axis: new Axis('y5axis'), y6axis: new Axis('y6axis'), y7axis: new Axis('y7axis'), y8axis: new Axis('y8axis'), y9axis: new Axis('y9axis'), yMidAxis: new Axis('yMidAxis')};
- this.baseCanvas = new $.jqplot.GenericCanvas();
- // true to intercept right click events and fire a 'jqplotRightClick' event.
- // this will also block the context menu.
- this.captureRightClick = false;
- // prop: data
- // user's data. Data should *NOT* be specified in the options object,
- // but be passed in as the second argument to the $.jqplot() function.
- // The data property is described here soley for reference.
- // The data should be in the form of an array of 2D or 1D arrays like
- // > [ [[x1, y1], [x2, y2],...], [y1, y2, ...] ].
- this.data = [];
- // prop: dataRenderer
- // A callable which can be used to preprocess data passed into the plot.
- // Will be called with 2 arguments, the plot data and a reference to the plot.
- this.dataRenderer;
- // prop: dataRendererOptions
- // Options that will be passed to the dataRenderer.
- // Can be of any type.
- this.dataRendererOptions;
- this.defaults = {
- // prop: axesDefaults
- // default options that will be applied to all axes.
- // see <Axis> for axes options.
- axesDefaults: {},
- axes: {xaxis:{}, yaxis:{}, x2axis:{}, y2axis:{}, y3axis:{}, y4axis:{}, y5axis:{}, y6axis:{}, y7axis:{}, y8axis:{}, y9axis:{}, yMidAxis:{}},
- // prop: seriesDefaults
- // default options that will be applied to all series.
- // see <Series> for series options.
- seriesDefaults: {},
- series:[]
- };
- // prop: defaultAxisStart
- // 1-D data series are internally converted into 2-D [x,y] data point arrays
- // by jqPlot. This is the default starting value for the missing x or y value.
- // The added data will be a monotonically increasing series (e.g. [1, 2, 3, ...])
- // starting at this value.
- this.defaultAxisStart = 1;
- // this.doCustomEventBinding = true;
- // prop: drawIfHidden
- // True to execute the draw method even if the plot target is hidden.
- // Generally, this should be false. Most plot elements will not be sized/
- // positioned correclty if renderered into a hidden container. To render into
- // a hidden container, call the replot method when the container is shown.
- this.drawIfHidden = false;
- this.eventCanvas = new $.jqplot.GenericCanvas();
- // prop: fillBetween
- // Fill between 2 line series in a plot.
- // Options object:
- // {
- // series1: first index (0 based) of series in fill
- // series2: second index (0 based) of series in fill
- // color: color of fill [default fillColor of series1]
- // baseSeries: fill will be drawn below this series (0 based index)
- // fill: false to turn off fill [default true].
- // }
- this.fillBetween = {
- series1: null,
- series2: null,
- color: null,
- baseSeries: 0,
- fill: true
- };
- // prop; fontFamily
- // css spec for the font-family attribute. Default for the entire plot.
- this.fontFamily;
- // prop: fontSize
- // css spec for the font-size attribute. Default for the entire plot.
- this.fontSize;
- // prop: grid
- // See <Grid> for grid specific options.
- this.grid = new Grid();
- // prop: legend
- // see <$.jqplot.TableLegendRenderer>
- this.legend = new Legend();
- // prop: noDataIndicator
- // Options to set up a mock plot with a data loading indicator if no data is specified.
- this.negativeSeriesColors = $.jqplot.config.defaultNegativeColors;
- this.noDataIndicator = {
- show: false,
- indicator: 'Loading Data...',
- axes: {
- xaxis: {
- min: 0,
- max: 10,
- tickInterval: 2,
- show: true
- },
- yaxis: {
- min: 0,
- max: 12,
- tickInterval: 3,
- show: true
- }
- }
- };
- // container to hold all of the merged options. Convienence for plugins.
- this.options = {};
- this.previousSeriesStack = [];
- // Namespece to hold plugins. Generally non-renderer plugins add themselves to here.
- this.plugins = {};
- // prop: series
- // Array of series object options.
- // see <Series> for series specific options.
- this.series = [];
- // array of series indicies. Keep track of order
- // which series canvases are displayed, lowest
- // to highest, back to front.
- this.seriesStack = [];
- // prop: seriesColors
- // Ann array of CSS color specifications that will be applied, in order,
- // to the series in the plot. Colors will wrap around so, if their
- // are more series than colors, colors will be reused starting at the
- // beginning. For pie charts, this specifies the colors of the slices.
- this.seriesColors = $.jqplot.config.defaultColors;
- // prop: sortData
- // false to not sort the data passed in by the user.
- // Many bar, stakced and other graphs as well as many plugins depend on
- // having sorted data.
- this.sortData = true;
- // prop: stackSeries
- // true or false, creates a stack or "mountain" plot.
- // Not all series renderers may implement this option.
- this.stackSeries = false;
- // a shortcut for axis syncTicks options. Not implemented yet.
- this.syncXTicks = true;
- // a shortcut for axis syncTicks options. Not implemented yet.
- this.syncYTicks = true;
- // the jquery object for the dom target.
- this.target = null;
- // The id of the dom element to render the plot into
- this.targetId = null;
- // prop textColor
- // css spec for the css color attribute. Default for the entire plot.
- this.textColor;
- // prop: title
- // Title object. See <Title> for specific options. As a shortcut, you
- // can specify the title option as just a string like: title: 'My Plot'
- // and this will create a new title object with the specified text.
- this.title = new Title();
- // Count how many times the draw method has been called while the plot is visible.
- // Mostly used to test if plot has never been dran (=0), has been successfully drawn
- // into a visible container once (=1) or draw more than once into a visible container.
- // Can use this in tests to see if plot has been visibly drawn at least one time.
- // After plot has been visibly drawn once, it generally doesn't need redrawn if its
- // container is hidden and shown.
- this._drawCount = 0;
- // sum of y values for all series in plot.
- // used in mekko chart.
- this._sumy = 0;
- this._sumx = 0;
- // array to hold the cumulative stacked series data.
- // used to ajust the individual series data, which won't have access to other
- // series data.
- this._stackData = [];
- // array that holds the data to be plotted. This will be the series data
- // merged with the the appropriate data from _stackData according to the stackAxis.
- this._plotData = [];
- this._width = null;
- this._height = null;
- this._plotDimensions = {height:null, width:null};
- this._gridPadding = {top:null, right:null, bottom:null, left:null};
- this._defaultGridPadding = {top:10, right:10, bottom:23, left:10};
-
- this._addDomReference = $.jqplot.config.addDomReference;
-
- this.preInitHooks = new $.jqplot.HooksManager();
- this.postInitHooks = new $.jqplot.HooksManager();
- this.preParseOptionsHooks = new $.jqplot.HooksManager();
- this.postParseOptionsHooks = new $.jqplot.HooksManager();
- this.preDrawHooks = new $.jqplot.HooksManager();
- this.postDrawHooks = new $.jqplot.HooksManager();
- this.preDrawSeriesHooks = new $.jqplot.HooksManager();
- this.postDrawSeriesHooks = new $.jqplot.HooksManager();
- this.preDrawLegendHooks = new $.jqplot.HooksManager();
- this.addLegendRowHooks = new $.jqplot.HooksManager();
- this.preSeriesInitHooks = new $.jqplot.HooksManager();
- this.postSeriesInitHooks = new $.jqplot.HooksManager();
- this.preParseSeriesOptionsHooks = new $.jqplot.HooksManager();
- this.postParseSeriesOptionsHooks = new $.jqplot.HooksManager();
- this.eventListenerHooks = new $.jqplot.EventListenerManager();
- this.preDrawSeriesShadowHooks = new $.jqplot.HooksManager();
- this.postDrawSeriesShadowHooks = new $.jqplot.HooksManager();
-
- this.colorGenerator = new $.jqplot.ColorGenerator();
- this.negativeColorGenerator = new $.jqplot.ColorGenerator();
-
- this.canvasManager = new $.jqplot.CanvasManager();
-
- this.themeEngine = new $.jqplot.ThemeEngine();
-
- var seriesColorsIndex = 0;
-
- // Group: methods
- //
- // method: init
- // sets the plot target, checks data and applies user
- // options to plot.
- this.init = function(target, data, options) {
- options = options || {};
- for (var i=0; i<$.jqplot.preInitHooks.length; i++) {
- $.jqplot.preInitHooks[i].call(this, target, data, options);
- }
-
- for (var i=0; i<this.preInitHooks.hooks.length; i++) {
- this.preInitHooks.hooks[i].call(this, target, data, options);
- }
-
- this.targetId = '#'+target;
- this.target = $('#'+target);
-
- //////
- // Add a reference to plot
- //////
- if (this._addDomReference) {
- this.target.data('jqplot', this);
- }
- // remove any error class that may be stuck on target.
- this.target.removeClass('jqplot-error');
- if (!this.target.get(0)) {
- throw "No plot target specified";
- }
-
- // make sure the target is positioned by some means and set css
- if (this.target.css('position') == 'static') {
- this.target.css('position', 'relative');
- }
- if (!this.target.hasClass('jqplot-target')) {
- this.target.addClass('jqplot-target');
- }
-
- // if no height or width specified, use a default.
- if (!this.target.height()) {
- var h;
- if (options && options.height) {
- h = parseInt(options.height, 10);
- }
- else if (this.target.attr('data-height')) {
- h = parseInt(this.target.attr('data-height'), 10);
- }
- else {
- h = parseInt($.jqplot.config.defaultHeight, 10);
- }
- this._height = h;
- this.target.css('height', h+'px');
- }
- else {
- this._height = h = this.target.height();
- }
- if (!this.target.width()) {
- var w;
- if (options && options.width) {
- w = parseInt(options.width, 10);
- }
- else if (this.target.attr('data-width')) {
- w = parseInt(this.target.attr('data-width'), 10);
- }
- else {
- w = parseInt($.jqplot.config.defaultWidth, 10);
- }
- this._width = w;
- this.target.css('width', w+'px');
- }
- else {
- this._width = w = this.target.width();
- }
-
- for (var i=0, l=_axisNames.length; i<l; i++) {
- this.axes[_axisNames[i]] = new Axis(_axisNames[i]);
- }
-
- this._plotDimensions.height = this._height;
- this._plotDimensions.width = this._width;
- this.grid._plotDimensions = this._plotDimensions;
- this.title._plotDimensions = this._plotDimensions;
- this.baseCanvas._plotDimensions = this._plotDimensions;
- this.eventCanvas._plotDimensions = this._plotDimensions;
- this.legend._plotDimensions = this._plotDimensions;
- if (this._height <=0 || this._width <=0 || !this._height || !this._width) {
- throw "Canvas dimension not set";
- }
-
- if (options.dataRenderer && $.isFunction(options.dataRenderer)) {
- if (options.dataRendererOptions) {
- this.dataRendererOptions = options.dataRendererOptions;
- }
- this.dataRenderer = options.dataRenderer;
- data = this.dataRenderer(data, this, this.dataRendererOptions);
- }
-
- if (options.noDataIndicator && $.isPlainObject(options.noDataIndicator)) {
- $.extend(true, this.noDataIndicator, options.noDataIndicator);
- }
-
- if (data == null || $.isArray(data) == false || data.length == 0 || $.isArray(data[0]) == false || data[0].length == 0) {
-
- if (this.noDataIndicator.show == false) {
- throw "No Data";
- }
-
- else {
- // have to be descructive here in order for plot to not try and render series.
- // This means that $.jqplot() will have to be called again when there is data.
- //delete options.series;
-
- for (var ax in this.noDataIndicator.axes) {
- for (var prop in this.noDataIndicator.axes[ax]) {
- this.axes[ax][prop] = this.noDataIndicator.axes[ax][prop];
- }
- }
-
- this.postDrawHooks.add(function() {
- var eh = this.eventCanvas.getHeight();
- var ew = this.eventCanvas.getWidth();
- var temp = $('<div class="jqplot-noData-container" style="position:absolute;"></div>');
- this.target.append(temp);
- temp.height(eh);
- temp.width(ew);
- temp.css('top', this.eventCanvas._offsets.top);
- temp.css('left', this.eventCanvas._offsets.left);
-
- var temp2 = $('<div class="jqplot-noData-contents" style="text-align:center; position:relative; margin-left:auto; margin-right:auto;"></div>');
- temp.append(temp2);
- temp2.html(this.noDataIndicator.indicator);
- var th = temp2.height();
- var tw = temp2.width();
- temp2.height(th);
- temp2.width(tw);
- temp2.css('top', (eh - th)/2 + 'px');
- });
-
- }
- }
-
- // make a copy of the data
- this.data = $.extend(true, [], data);
-
- this.parseOptions(options);
-
- if (this.textColor) {
- this.target.css('color', this.textColor);
- }
- if (this.fontFamily) {
- this.target.css('font-family', this.fontFamily);
- }
- if (this.fontSize) {
- this.target.css('font-size', this.fontSize);
- }
-
- this.title.init();
- this.legend.init();
- this._sumy = 0;
- this._sumx = 0;
- this.computePlotData();
- for (var i=0; i<this.series.length; i++) {
- // set default stacking order for series canvases
- this.seriesStack.push(i);
- this.previousSeriesStack.push(i);
- this.series[i].shadowCanvas._plotDimensions = this._plotDimensions;
- this.series[i].canvas._plotDimensions = this._plotDimensions;
- for (var j=0; j<$.jqplot.preSeriesInitHooks.length; j++) {
- $.jqplot.preSeriesInitHooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- for (var j=0; j<this.preSeriesInitHooks.hooks.length; j++) {
- this.preSeriesInitHooks.hooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- // this.populatePlotData(this.series[i], i);
- this.series[i]._plotDimensions = this._plotDimensions;
- this.series[i].init(i, this.grid.borderWidth, this);
- for (var j=0; j<$.jqplot.postSeriesInitHooks.length; j++) {
- $.jqplot.postSeriesInitHooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- for (var j=0; j<this.postSeriesInitHooks.hooks.length; j++) {
- this.postSeriesInitHooks.hooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- this._sumy += this.series[i]._sumy;
- this._sumx += this.series[i]._sumx;
- }
-
- var name,
- axis;
- for (var i=0, l=_axisNames.length; i<l; i++) {
- name = _axisNames[i];
- axis = this.axes[name];
- axis._plotDimensions = this._plotDimensions;
- axis.init();
- if (this.axes[name].borderColor == null) {
- if (name.charAt(0) !== 'x' && axis.useSeriesColor === true && axis.show) {
- axis.borderColor = axis._series[0].color;
- }
- else {
- axis.borderColor = this.grid.borderColor;
- }
- }
- }
-
- if (this.sortData) {
- sortData(this.series);
- }
- this.grid.init();
- this.grid._axes = this.axes;
-
- this.legend._series = this.series;
-
- for (var i=0; i<$.jqplot.postInitHooks.length; i++) {
- $.jqplot.postInitHooks[i].call(this, target, this.data, options);
- }
-
- for (var i=0; i<this.postInitHooks.hooks.length; i++) {
- this.postInitHooks.hooks[i].call(this, target, this.data, options);
- }
- };
-
- // method: resetAxesScale
- // Reset the specified axes min, max, numberTicks and tickInterval properties to null
- // or reset these properties on all axes if no list of axes is provided.
- //
- // Parameters:
- // axes - Boolean to reset or not reset all axes or an array or object of axis names to reset.
- this.resetAxesScale = function(axes, options) {
- var opts = options || {};
- var ax = axes || this.axes;
- if (ax === true) {
- ax = this.axes;
- }
- if ($.isArray(ax)) {
- for (var i = 0; i < ax.length; i++) {
- this.axes[ax[i]].resetScale(opts[ax[i]]);
- }
- }
- else if (typeof(ax) === 'object') {
- for (var name in ax) {
- this.axes[name].resetScale(opts[name]);
- }
- }
- };
- // method: reInitialize
- // reinitialize plot for replotting.
- // not called directly.
- this.reInitialize = function (data, opts) {
- // Plot should be visible and have a height and width.
- // If plot doesn't have height and width for some
- // reason, set it by other means. Plot must not have
- // a display:none attribute, however.
-
- var options = $.extend(true, {}, this.options, opts);
-
- var target = this.targetId.substr(1);
- var tdata = (data == null) ? this.data : data;
-
- for (var i=0; i<$.jqplot.preInitHooks.length; i++) {
- $.jqplot.preInitHooks[i].call(this, target, tdata, options);
- }
-
- for (var i=0; i<this.preInitHooks.hooks.length; i++) {
- this.preInitHooks.hooks[i].call(this, target, tdata, options);
- }
-
- this._height = this.target.height();
- this._width = this.target.width();
-
- if (this._height <=0 || this._width <=0 || !this._height || !this._width) {
- throw "Target dimension not set";
- }
-
- this._plotDimensions.height = this._height;
- this._plotDimensions.width = this._width;
- this.grid._plotDimensions = this._plotDimensions;
- this.title._plotDimensions = this._plotDimensions;
- this.baseCanvas._plotDimensions = this._plotDimensions;
- this.eventCanvas._plotDimensions = this._plotDimensions;
- this.legend._plotDimensions = this._plotDimensions;
-
- var name,
- t,
- j,
- axis;
-
- for (var i=0, l=_axisNames.length; i<l; i++) {
- name = _axisNames[i];
- axis = this.axes[name];
-
- // Memory Leaks patch : clear ticks elements
- t = axis._ticks;
- for (var j = 0, tlen = t.length; j < tlen; j++) {
- var el = t[j]._elem;
- if (el) {
- // if canvas renderer
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- window.G_vmlCanvasManager.uninitElement(el.get(0));
- }
- el.emptyForce();
- el = null;
- t._elem = null;
- }
- }
- t = null;
-
- delete axis.ticks;
- delete axis._ticks;
- this.axes[name] = new Axis(name);
- this.axes[name]._plotWidth = this._width;
- this.axes[name]._plotHeight = this._height;
- }
-
- if (data) {
- if (options.dataRenderer && $.isFunction(options.dataRenderer)) {
- if (options.dataRendererOptions) {
- this.dataRendererOptions = options.dataRendererOptions;
- }
- this.dataRenderer = options.dataRenderer;
- data = this.dataRenderer(data, this, this.dataRendererOptions);
- }
-
- // make a copy of the data
- this.data = $.extend(true, [], data);
- }
-
- if (opts) {
- this.parseOptions(options);
- }
-
- this.title._plotWidth = this._width;
-
- if (this.textColor) {
- this.target.css('color', this.textColor);
- }
- if (this.fontFamily) {
- this.target.css('font-family', this.fontFamily);
- }
- if (this.fontSize) {
- this.target.css('font-size', this.fontSize);
- }
-
- this.title.init();
- this.legend.init();
- this._sumy = 0;
- this._sumx = 0;
-
- this.seriesStack = [];
- this.previousSeriesStack = [];
-
- this.computePlotData();
- for (var i=0, l=this.series.length; i<l; i++) {
- // set default stacking order for series canvases
- this.seriesStack.push(i);
- this.previousSeriesStack.push(i);
- this.series[i].shadowCanvas._plotDimensions = this._plotDimensions;
- this.series[i].canvas._plotDimensions = this._plotDimensions;
- for (var j=0; j<$.jqplot.preSeriesInitHooks.length; j++) {
- $.jqplot.preSeriesInitHooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- for (var j=0; j<this.preSeriesInitHooks.hooks.length; j++) {
- this.preSeriesInitHooks.hooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- // this.populatePlotData(this.series[i], i);
- this.series[i]._plotDimensions = this._plotDimensions;
- this.series[i].init(i, this.grid.borderWidth, this);
- for (var j=0; j<$.jqplot.postSeriesInitHooks.length; j++) {
- $.jqplot.postSeriesInitHooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- for (var j=0; j<this.postSeriesInitHooks.hooks.length; j++) {
- this.postSeriesInitHooks.hooks[j].call(this.series[i], target, this.data, this.options.seriesDefaults, this.options.series[i], this);
- }
- this._sumy += this.series[i]._sumy;
- this._sumx += this.series[i]._sumx;
- }
-
- for (var i=0, l=_axisNames.length; i<l; i++) {
- name = _axisNames[i];
- axis = this.axes[name];
-
- axis._plotDimensions = this._plotDimensions;
- axis.init();
- if (axis.borderColor == null) {
- if (name.charAt(0) !== 'x' && axis.useSeriesColor === true && axis.show) {
- axis.borderColor = axis._series[0].color;
- }
- else {
- axis.borderColor = this.grid.borderColor;
- }
- }
- }
-
- if (this.sortData) {
- sortData(this.series);
- }
- this.grid.init();
- this.grid._axes = this.axes;
-
- this.legend._series = this.series;
-
- for (var i=0, l=$.jqplot.postInitHooks.length; i<l; i++) {
- $.jqplot.postInitHooks[i].call(this, target, this.data, options);
- }
-
- for (var i=0, l=this.postInitHooks.hooks.length; i<l; i++) {
- this.postInitHooks.hooks[i].call(this, target, this.data, options);
- }
- };
-
-
-
- // method: quickInit
- //
- // Quick reinitialization plot for replotting.
- // Does not parse options ore recreate axes and series.
- // not called directly.
- this.quickInit = function () {
- // Plot should be visible and have a height and width.
- // If plot doesn't have height and width for some
- // reason, set it by other means. Plot must not have
- // a display:none attribute, however.
-
- this._height = this.target.height();
- this._width = this.target.width();
-
- if (this._height <=0 || this._width <=0 || !this._height || !this._width) {
- throw "Target dimension not set";
- }
-
- this._plotDimensions.height = this._height;
- this._plotDimensions.width = this._width;
- this.grid._plotDimensions = this._plotDimensions;
- this.title._plotDimensions = this._plotDimensions;
- this.baseCanvas._plotDimensions = this._plotDimensions;
- this.eventCanvas._plotDimensions = this._plotDimensions;
- this.legend._plotDimensions = this._plotDimensions;
-
- for (var n in this.axes) {
- this.axes[n]._plotWidth = this._width;
- this.axes[n]._plotHeight = this._height;
- }
-
- this.title._plotWidth = this._width;
-
- if (this.textColor) {
- this.target.css('color', this.textColor);
- }
- if (this.fontFamily) {
- this.target.css('font-family', this.fontFamily);
- }
- if (this.fontSize) {
- this.target.css('font-size', this.fontSize);
- }
-
- this._sumy = 0;
- this._sumx = 0;
- this.computePlotData();
- for (var i=0; i<this.series.length; i++) {
- // this.populatePlotData(this.series[i], i);
- if (this.series[i]._type === 'line' && this.series[i].renderer.bands.show) {
- this.series[i].renderer.initBands.call(this.series[i], this.series[i].renderer.options, this);
- }
- this.series[i]._plotDimensions = this._plotDimensions;
- this.series[i].canvas._plotDimensions = this._plotDimensions;
- //this.series[i].init(i, this.grid.borderWidth);
- this._sumy += this.series[i]._sumy;
- this._sumx += this.series[i]._sumx;
- }
-
- var name;
-
- for (var j=0; j<12; j++) {
- name = _axisNames[j];
- // Memory Leaks patch : clear ticks elements
- var t = this.axes[name]._ticks;
- for (var i = 0; i < t.length; i++) {
- var el = t[i]._elem;
- if (el) {
- // if canvas renderer
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- window.G_vmlCanvasManager.uninitElement(el.get(0));
- }
- el.emptyForce();
- el = null;
- t._elem = null;
- }
- }
- t = null;
-
- this.axes[name]._plotDimensions = this._plotDimensions;
- this.axes[name]._ticks = [];
- // this.axes[name].renderer.init.call(this.axes[name], {});
- }
-
- if (this.sortData) {
- sortData(this.series);
- }
-
- this.grid._axes = this.axes;
-
- this.legend._series = this.series;
- };
-
- // sort the series data in increasing order.
- function sortData(series) {
- var d, sd, pd, ppd, ret;
- for (var i=0; i<series.length; i++) {
- var check;
- var bat = [series[i].data, series[i]._stackData, series[i]._plotData, series[i]._prevPlotData];
- for (var n=0; n<4; n++) {
- check = true;
- d = bat[n];
- if (series[i]._stackAxis == 'x') {
- for (var j = 0; j < d.length; j++) {
- if (typeof(d[j][1]) != "number") {
- check = false;
- break;
- }
- }
- if (check) {
- d.sort(function(a,b) { return a[1] - b[1]; });
- }
- }
- else {
- for (var j = 0; j < d.length; j++) {
- if (typeof(d[j][0]) != "number") {
- check = false;
- break;
- }
- }
- if (check) {
- d.sort(function(a,b) { return a[0] - b[0]; });
- }
- }
- }
-
- }
- }
-
- this.computePlotData = function() {
- this._plotData = [];
- this._stackData = [];
- var series,
- index,
- l;
-
-
- for (index=0, l=this.series.length; index<l; index++) {
- series = this.series[index];
- this._plotData.push([]);
- this._stackData.push([]);
- var cd = series.data;
- this._plotData[index] = $.extend(true, [], cd);
- this._stackData[index] = $.extend(true, [], cd);
- series._plotData = this._plotData[index];
- series._stackData = this._stackData[index];
- var plotValues = {x:[], y:[]};
-
- if (this.stackSeries && !series.disableStack) {
- series._stack = true;
- ///////////////////////////
- // have to check for nulls
- ///////////////////////////
- var sidx = (series._stackAxis === 'x') ? 0 : 1;
-
- for (var k=0, cdl=cd.length; k<cdl; k++) {
- var temp = cd[k][sidx];
- if (temp == null) {
- temp = 0;
- }
- this._plotData[index][k][sidx] = temp;
- this._stackData[index][k][sidx] = temp;
-
- if (index > 0) {
- for (var j=index; j--;) {
- var prevval = this._plotData[j][k][sidx];
- // only need to sum up the stack axis column of data
- // and only sum if it is of same sign.
- // if previous series isn't same sign, keep looking
- // at earlier series untill we find one of same sign.
- if (temp * prevval >= 0) {
- this._plotData[index][k][sidx] += prevval;
- this._stackData[index][k][sidx] += prevval;
- break;
- }
- }
- }
- }
-
- }
- else {
- for (var i=0; i<series.data.length; i++) {
- plotValues.x.push(series.data[i][0]);
- plotValues.y.push(series.data[i][1]);
- }
- this._stackData.push(series.data);
- this.series[index]._stackData = series.data;
- this._plotData.push(series.data);
- series._plotData = series.data;
- series._plotValues = plotValues;
- }
- if (index>0) {
- series._prevPlotData = this.series[index-1]._plotData;
- }
- series._sumy = 0;
- series._sumx = 0;
- for (i=series.data.length-1; i>-1; i--) {
- series._sumy += series.data[i][1];
- series._sumx += series.data[i][0];
- }
- }
-
- };
-
- // populate the _stackData and _plotData arrays for the plot and the series.
- this.populatePlotData = function(series, index) {
- // if a stacked chart, compute the stacked data
- this._plotData = [];
- this._stackData = [];
- series._stackData = [];
- series._plotData = [];
- var plotValues = {x:[], y:[]};
- if (this.stackSeries && !series.disableStack) {
- series._stack = true;
- var sidx = (series._stackAxis === 'x') ? 0 : 1;
- // var idx = sidx ? 0 : 1;
- // push the current data into stackData
- //this._stackData.push(this.series[i].data);
- var temp = $.extend(true, [], series.data);
- // create the data that will be plotted for this series
- var plotdata = $.extend(true, [], series.data);
- var tempx, tempy, dval, stackval, comparator;
- // for first series, nothing to add to stackData.
- for (var j=0; j<index; j++) {
- var cd = this.series[j].data;
- for (var k=0; k<cd.length; k++) {
- dval = cd[k];
- tempx = (dval[0] != null) ? dval[0] : 0;
- tempy = (dval[1] != null) ? dval[1] : 0;
- temp[k][0] += tempx;
- temp[k][1] += tempy;
- stackval = (sidx) ? tempy : tempx;
- // only need to sum up the stack axis column of data
- // and only sum if it is of same sign.
- if (series.data[k][sidx] * stackval >= 0) {
- plotdata[k][sidx] += stackval;
- }
- }
- }
- for (var i=0; i<plotdata.length; i++) {
- plotValues.x.push(plotdata[i][0]);
- plotValues.y.push(plotdata[i][1]);
- }
- this._plotData.push(plotdata);
- this._stackData.push(temp);
- series._stackData = temp;
- series._plotData = plotdata;
- series._plotValues = plotValues;
- }
- else {
- for (var i=0; i<series.data.length; i++) {
- plotValues.x.push(series.data[i][0]);
- plotValues.y.push(series.data[i][1]);
- }
- this._stackData.push(series.data);
- this.series[index]._stackData = series.data;
- this._plotData.push(series.data);
- series._plotData = series.data;
- series._plotValues = plotValues;
- }
- if (index>0) {
- series._prevPlotData = this.series[index-1]._plotData;
- }
- series._sumy = 0;
- series._sumx = 0;
- for (i=series.data.length-1; i>-1; i--) {
- series._sumy += series.data[i][1];
- series._sumx += series.data[i][0];
- }
- };
-
- // function to safely return colors from the color array and wrap around at the end.
- this.getNextSeriesColor = (function(t) {
- var idx = 0;
- var sc = t.seriesColors;
-
- return function () {
- if (idx < sc.length) {
- return sc[idx++];
- }
- else {
- idx = 0;
- return sc[idx++];
- }
- };
- })(this);
-
- this.parseOptions = function(options){
- for (var i=0; i<this.preParseOptionsHooks.hooks.length; i++) {
- this.preParseOptionsHooks.hooks[i].call(this, options);
- }
- for (var i=0; i<$.jqplot.preParseOptionsHooks.length; i++) {
- $.jqplot.preParseOptionsHooks[i].call(this, options);
- }
- this.options = $.extend(true, {}, this.defaults, options);
- var opts = this.options;
- this.animate = opts.animate;
- this.animateReplot = opts.animateReplot;
- this.stackSeries = opts.stackSeries;
- if ($.isPlainObject(opts.fillBetween)) {
-
- var temp = ['series1', 'series2', 'color', 'baseSeries', 'fill'],
- tempi;
-
- for (var i=0, l=temp.length; i<l; i++) {
- tempi = temp[i];
- if (opts.fillBetween[tempi] != null) {
- this.fillBetween[tempi] = opts.fillBetween[tempi];
- }
- }
- }
-
- if (opts.seriesColors) {
- this.seriesColors = opts.seriesColors;
- }
- if (opts.negativeSeriesColors) {
- this.negativeSeriesColors = opts.negativeSeriesColors;
- }
- if (opts.captureRightClick) {
- this.captureRightClick = opts.captureRightClick;
- }
- this.defaultAxisStart = (options && options.defaultAxisStart != null) ? options.defaultAxisStart : this.defaultAxisStart;
- this.colorGenerator.setColors(this.seriesColors);
- this.negativeColorGenerator.setColors(this.negativeSeriesColors);
- // var cg = new this.colorGenerator(this.seriesColors);
- // var ncg = new this.colorGenerator(this.negativeSeriesColors);
- // this._gridPadding = this.options.gridPadding;
- $.extend(true, this._gridPadding, opts.gridPadding);
- this.sortData = (opts.sortData != null) ? opts.sortData : this.sortData;
- for (var i=0; i<12; i++) {
- var n = _axisNames[i];
- var axis = this.axes[n];
- axis._options = $.extend(true, {}, opts.axesDefaults, opts.axes[n]);
- $.extend(true, axis, opts.axesDefaults, opts.axes[n]);
- axis._plotWidth = this._width;
- axis._plotHeight = this._height;
- }
- // if (this.data.length == 0) {
- // this.data = [];
- // for (var i=0; i<this.options.series.length; i++) {
- // this.data.push(this.options.series.data);
- // }
- // }
-
- var normalizeData = function(data, dir, start) {
- // return data as an array of point arrays,
- // in form [[x1,y1...], [x2,y2...], ...]
- var temp = [];
- var i, l;
- dir = dir || 'vertical';
- if (!$.isArray(data[0])) {
- // we have a series of scalars. One line with just y values.
- // turn the scalar list of data into a data array of form:
- // [[1, data[0]], [2, data[1]], ...]
- for (i=0, l=data.length; i<l; i++) {
- if (dir == 'vertical') {
- temp.push([start + i, data[i]]);
- }
- else {
- temp.push([data[i], start+i]);
- }
- }
- }
- else {
- // we have a properly formatted data series, copy it.
- $.extend(true, temp, data);
- }
- return temp;
- };
-
- var colorIndex = 0;
- this.series = [];
- for (var i=0; i<this.data.length; i++) {
- var sopts = $.extend(true, {index: i}, {seriesColors:this.seriesColors, negativeSeriesColors:this.negativeSeriesColors}, this.options.seriesDefaults, this.options.series[i], {rendererOptions:{animation:{show: this.animate}}});
- // pass in options in case something needs set prior to initialization.
- var temp = new Series(sopts);
- for (var j=0; j<$.jqplot.preParseSeriesOptionsHooks.length; j++) {
- $.jqplot.preParseSeriesOptionsHooks[j].call(temp, this.options.seriesDefaults, this.options.series[i]);
- }
- for (var j=0; j<this.preParseSeriesOptionsHooks.hooks.length; j++) {
- this.preParseSeriesOptionsHooks.hooks[j].call(temp, this.options.seriesDefaults, this.options.series[i]);
- }
- // Now go back and apply the options to the series. Really should just do this during initializaiton, but don't want to
- // mess up preParseSeriesOptionsHooks at this point.
- $.extend(true, temp, sopts);
- var dir = 'vertical';
- if (temp.renderer === $.jqplot.BarRenderer && temp.rendererOptions && temp.rendererOptions.barDirection == 'horizontal') {
- dir = 'horizontal';
- temp._stackAxis = 'x';
- temp._primaryAxis = '_yaxis';
- }
- temp.data = normalizeData(this.data[i], dir, this.defaultAxisStart);
- switch (temp.xaxis) {
- case 'xaxis':
- temp._xaxis = this.axes.xaxis;
- break;
- case 'x2axis':
- temp._xaxis = this.axes.x2axis;
- break;
- default:
- break;
- }
- temp._yaxis = this.axes[temp.yaxis];
- temp._xaxis._series.push(temp);
- temp._yaxis._series.push(temp);
- if (temp.show) {
- temp._xaxis.show = true;
- temp._yaxis.show = true;
- }
- else {
- if (temp._xaxis.scaleToHiddenSeries) {
- temp._xaxis.show = true;
- }
- if (temp._yaxis.scaleToHiddenSeries) {
- temp._yaxis.show = true;
- }
- }
-
- // // parse the renderer options and apply default colors if not provided
- // if (!temp.color && temp.show != false) {
- // temp.color = cg.next();
- // colorIndex = cg.getIndex() - 1;;
- // }
- // if (!temp.negativeColor && temp.show != false) {
- // temp.negativeColor = ncg.get(colorIndex);
- // ncg.setIndex(colorIndex);
- // }
- if (!temp.label) {
- temp.label = 'Series '+ (i+1).toString();
- }
- // temp.rendererOptions.show = temp.show;
- // $.extend(true, temp.renderer, {color:this.seriesColors[i]}, this.rendererOptions);
- this.series.push(temp);
- for (var j=0; j<$.jqplot.postParseSeriesOptionsHooks.length; j++) {
- $.jqplot.postParseSeriesOptionsHooks[j].call(this.series[i], this.options.seriesDefaults, this.options.series[i]);
- }
- for (var j=0; j<this.postParseSeriesOptionsHooks.hooks.length; j++) {
- this.postParseSeriesOptionsHooks.hooks[j].call(this.series[i], this.options.seriesDefaults, this.options.series[i]);
- }
- }
-
- // copy the grid and title options into this object.
- $.extend(true, this.grid, this.options.grid);
- // if axis border properties aren't set, set default.
- for (var i=0, l=_axisNames.length; i<l; i++) {
- var n = _axisNames[i];
- var axis = this.axes[n];
- if (axis.borderWidth == null) {
- axis.borderWidth =this.grid.borderWidth;
- }
- }
-
- if (typeof this.options.title == 'string') {
- this.title.text = this.options.title;
- }
- else if (typeof this.options.title == 'object') {
- $.extend(true, this.title, this.options.title);
- }
- this.title._plotWidth = this._width;
- this.legend.setOptions(this.options.legend);
-
- for (var i=0; i<$.jqplot.postParseOptionsHooks.length; i++) {
- $.jqplot.postParseOptionsHooks[i].call(this, options);
- }
- for (var i=0; i<this.postParseOptionsHooks.hooks.length; i++) {
- this.postParseOptionsHooks.hooks[i].call(this, options);
- }
- };
-
- // method: destroy
- // Releases all resources occupied by the plot
- this.destroy = function() {
- this.canvasManager.freeAllCanvases();
- if (this.eventCanvas && this.eventCanvas._elem) {
- this.eventCanvas._elem.unbind();
- }
- // Couple of posts on Stack Overflow indicate that empty() doesn't
- // always cear up the dom and release memory. Sometimes setting
- // innerHTML property to null is needed. Particularly on IE, may
- // have to directly set it to null, bypassing $.
- this.target.empty();
-
- this.target[0].innerHTML = '';
- };
-
- // method: replot
- // Does a reinitialization of the plot followed by
- // a redraw. Method could be used to interactively
- // change plot characteristics and then replot.
- //
- // Parameters:
- // options - Options used for replotting.
- //
- // Properties:
- // clear - false to not clear (empty) the plot container before replotting (default: true).
- // resetAxes - true to reset all axes min, max, numberTicks and tickInterval setting so axes will rescale themselves.
- // optionally pass in list of axes to reset (e.g. ['xaxis', 'y2axis']) (default: false).
- this.replot = function(options) {
- var opts = options || {};
- var data = opts.data || null;
- var clear = (opts.clear === false) ? false : true;
- var resetAxes = opts.resetAxes || false;
- delete opts.data;
- delete opts.clear;
- delete opts.resetAxes;
-
- this.target.trigger('jqplotPreReplot');
-
- if (clear) {
- this.destroy();
- }
- // if have data or other options, full reinit.
- // otherwise, quickinit.
- if (data || !$.isEmptyObject(opts)) {
- this.reInitialize(data, opts);
- }
- else {
- this.quickInit();
- }
-
- if (resetAxes) {
- this.resetAxesScale(resetAxes, opts.axes);
- }
- this.draw();
- this.target.trigger('jqplotPostReplot');
- };
-
- // method: redraw
- // Empties the plot target div and redraws the plot.
- // This enables plot data and properties to be changed
- // and then to comletely clear the plot and redraw.
- // redraw *will not* reinitialize any plot elements.
- // That is, axes will not be autoscaled and defaults
- // will not be reapplied to any plot elements. redraw
- // is used primarily with zooming.
- //
- // Parameters:
- // clear - false to not clear (empty) the plot container before redrawing (default: true).
- this.redraw = function(clear) {
- clear = (clear != null) ? clear : true;
- this.target.trigger('jqplotPreRedraw');
- if (clear) {
- this.canvasManager.freeAllCanvases();
- this.eventCanvas._elem.unbind();
- // Dont think I bind any events to the target, this shouldn't be necessary.
- // It will remove user's events.
- // this.target.unbind();
- this.target.empty();
- }
- for (var ax in this.axes) {
- this.axes[ax]._ticks = [];
- }
- this.computePlotData();
- // for (var i=0; i<this.series.length; i++) {
- // this.populatePlotData(this.series[i], i);
- // }
- this._sumy = 0;
- this._sumx = 0;
- for (var i=0, tsl = this.series.length; i<tsl; i++) {
- this._sumy += this.series[i]._sumy;
- this._sumx += this.series[i]._sumx;
- }
- this.draw();
- this.target.trigger('jqplotPostRedraw');
- };
-
- // method: draw
- // Draws all elements of the plot into the container.
- // Does not clear the container before drawing.
- this.draw = function(){
- if (this.drawIfHidden || this.target.is(':visible')) {
- this.target.trigger('jqplotPreDraw');
- var i,
- j,
- l,
- tempseries;
- for (i=0, l=$.jqplot.preDrawHooks.length; i<l; i++) {
- $.jqplot.preDrawHooks[i].call(this);
- }
- for (i=0, l=this.preDrawHooks.length; i<l; i++) {
- this.preDrawHooks.hooks[i].apply(this, this.preDrawSeriesHooks.args[i]);
- }
- // create an underlying canvas to be used for special features.
- this.target.append(this.baseCanvas.createElement({left:0, right:0, top:0, bottom:0}, 'jqplot-base-canvas', null, this));
- this.baseCanvas.setContext();
- this.target.append(this.title.draw());
- this.title.pack({top:0, left:0});
-
- // make room for the legend between the grid and the edge.
- // pass a dummy offsets object and a reference to the plot.
- var legendElem = this.legend.draw({}, this);
-
- var gridPadding = {top:0, left:0, bottom:0, right:0};
-
- if (this.legend.placement == "outsideGrid") {
- // temporarily append the legend to get dimensions
- this.target.append(legendElem);
- switch (this.legend.location) {
- case 'n':
- gridPadding.top += this.legend.getHeight();
- break;
- case 's':
- gridPadding.bottom += this.legend.getHeight();
- break;
- case 'ne':
- case 'e':
- case 'se':
- gridPadding.right += this.legend.getWidth();
- break;
- case 'nw':
- case 'w':
- case 'sw':
- gridPadding.left += this.legend.getWidth();
- break;
- default: // same as 'ne'
- gridPadding.right += this.legend.getWidth();
- break;
- }
- legendElem = legendElem.detach();
- }
-
- var ax = this.axes;
- var name;
- // draw the yMidAxis first, so xaxis of pyramid chart can adjust itself if needed.
- for (i=0; i<12; i++) {
- name = _axisNames[i];
- this.target.append(ax[name].draw(this.baseCanvas._ctx, this));
- ax[name].set();
- }
- if (ax.yaxis.show) {
- gridPadding.left += ax.yaxis.getWidth();
- }
- var ra = ['y2axis', 'y3axis', 'y4axis', 'y5axis', 'y6axis', 'y7axis', 'y8axis', 'y9axis'];
- var rapad = [0, 0, 0, 0, 0, 0, 0, 0];
- var gpr = 0;
- var n;
- for (n=0; n<8; n++) {
- if (ax[ra[n]].show) {
- gpr += ax[ra[n]].getWidth();
- rapad[n] = gpr;
- }
- }
- gridPadding.right += gpr;
- if (ax.x2axis.show) {
- gridPadding.top += ax.x2axis.getHeight();
- }
- if (this.title.show) {
- gridPadding.top += this.title.getHeight();
- }
- if (ax.xaxis.show) {
- gridPadding.bottom += ax.xaxis.getHeight();
- }
-
- // end of gridPadding adjustments.
-
- // if user passed in gridDimensions option, check against calculated gridPadding
- if (this.options.gridDimensions && $.isPlainObject(this.options.gridDimensions)) {
- var gdw = parseInt(this.options.gridDimensions.width, 10) || 0;
- var gdh = parseInt(this.options.gridDimensions.height, 10) || 0;
- var widthAdj = (this._width - gridPadding.left - gridPadding.right - gdw)/2;
- var heightAdj = (this._height - gridPadding.top - gridPadding.bottom - gdh)/2;
-
- if (heightAdj >= 0 && widthAdj >= 0) {
- gridPadding.top += heightAdj;
- gridPadding.bottom += heightAdj;
- gridPadding.left += widthAdj;
- gridPadding.right += widthAdj;
- }
- }
- var arr = ['top', 'bottom', 'left', 'right'];
- for (var n in arr) {
- if (this._gridPadding[arr[n]] == null && gridPadding[arr[n]] > 0) {
- this._gridPadding[arr[n]] = gridPadding[arr[n]];
- }
- else if (this._gridPadding[arr[n]] == null) {
- this._gridPadding[arr[n]] = this._defaultGridPadding[arr[n]];
- }
- }
-
- var legendPadding = this._gridPadding;
-
- if (this.legend.placement === 'outsideGrid') {
- legendPadding = {top:this.title.getHeight(), left: 0, right: 0, bottom: 0};
- if (this.legend.location === 's') {
- legendPadding.left = this._gridPadding.left;
- legendPadding.right = this._gridPadding.right;
- }
- }
-
- ax.xaxis.pack({position:'absolute', bottom:this._gridPadding.bottom - ax.xaxis.getHeight(), left:0, width:this._width}, {min:this._gridPadding.left, max:this._width - this._gridPadding.right});
- ax.yaxis.pack({position:'absolute', top:0, left:this._gridPadding.left - ax.yaxis.getWidth(), height:this._height}, {min:this._height - this._gridPadding.bottom, max: this._gridPadding.top});
- ax.x2axis.pack({position:'absolute', top:this._gridPadding.top - ax.x2axis.getHeight(), left:0, width:this._width}, {min:this._gridPadding.left, max:this._width - this._gridPadding.right});
- for (i=8; i>0; i--) {
- ax[ra[i-1]].pack({position:'absolute', top:0, right:this._gridPadding.right - rapad[i-1]}, {min:this._height - this._gridPadding.bottom, max: this._gridPadding.top});
- }
- var ltemp = (this._width - this._gridPadding.left - this._gridPadding.right)/2.0 + this._gridPadding.left - ax.yMidAxis.getWidth()/2.0;
- ax.yMidAxis.pack({position:'absolute', top:0, left:ltemp, zIndex:9, textAlign: 'center'}, {min:this._height - this._gridPadding.bottom, max: this._gridPadding.top});
-
- this.target.append(this.grid.createElement(this._gridPadding, this));
- this.grid.draw();
-
- var series = this.series;
- var seriesLength = series.length;
- // put the shadow canvases behind the series canvases so shadows don't overlap on stacked bars.
- for (i=0, l=seriesLength; i<l; i++) {
- // draw series in order of stacking. This affects only
- // order in which canvases are added to dom.
- j = this.seriesStack[i];
- this.target.append(series[j].shadowCanvas.createElement(this._gridPadding, 'jqplot-series-shadowCanvas', null, this));
- series[j].shadowCanvas.setContext();
- series[j].shadowCanvas._elem.data('seriesIndex', j);
- }
-
- for (i=0, l=seriesLength; i<l; i++) {
- // draw series in order of stacking. This affects only
- // order in which canvases are added to dom.
- j = this.seriesStack[i];
- this.target.append(series[j].canvas.createElement(this._gridPadding, 'jqplot-series-canvas', null, this));
- series[j].canvas.setContext();
- series[j].canvas._elem.data('seriesIndex', j);
- }
- // Need to use filled canvas to capture events in IE.
- // Also, canvas seems to block selection of other elements in document on FF.
- this.target.append(this.eventCanvas.createElement(this._gridPadding, 'jqplot-event-canvas', null, this));
- this.eventCanvas.setContext();
- this.eventCanvas._ctx.fillStyle = 'rgba(0,0,0,0)';
- this.eventCanvas._ctx.fillRect(0,0,this.eventCanvas._ctx.canvas.width, this.eventCanvas._ctx.canvas.height);
-
- // bind custom event handlers to regular events.
- this.bindCustomEvents();
-
- // draw legend before series if the series needs to know the legend dimensions.
- if (this.legend.preDraw) {
- this.eventCanvas._elem.before(legendElem);
- this.legend.pack(legendPadding);
- if (this.legend._elem) {
- this.drawSeries({legendInfo:{location:this.legend.location, placement:this.legend.placement, width:this.legend.getWidth(), height:this.legend.getHeight(), xoffset:this.legend.xoffset, yoffset:this.legend.yoffset}});
- }
- else {
- this.drawSeries();
- }
- }
- else { // draw series before legend
- this.drawSeries();
- if (seriesLength) {
- $(series[seriesLength-1].canvas._elem).after(legendElem);
- }
- this.legend.pack(legendPadding);
- }
-
- // register event listeners on the overlay canvas
- for (var i=0, l=$.jqplot.eventListenerHooks.length; i<l; i++) {
- // in the handler, this will refer to the eventCanvas dom element.
- // make sure there are references back into plot objects.
- this.eventCanvas._elem.bind($.jqplot.eventListenerHooks[i][0], {plot:this}, $.jqplot.eventListenerHooks[i][1]);
- }
-
- // register event listeners on the overlay canvas
- for (var i=0, l=this.eventListenerHooks.hooks.length; i<l; i++) {
- // in the handler, this will refer to the eventCanvas dom element.
- // make sure there are references back into plot objects.
- this.eventCanvas._elem.bind(this.eventListenerHooks.hooks[i][0], {plot:this}, this.eventListenerHooks.hooks[i][1]);
- }
-
- var fb = this.fillBetween;
- if (fb.fill && fb.series1 !== fb.series2 && fb.series1 < seriesLength && fb.series2 < seriesLength && series[fb.series1]._type === 'line' && series[fb.series2]._type === 'line') {
- this.doFillBetweenLines();
- }
-
- for (var i=0, l=$.jqplot.postDrawHooks.length; i<l; i++) {
- $.jqplot.postDrawHooks[i].call(this);
- }
-
- for (var i=0, l=this.postDrawHooks.hooks.length; i<l; i++) {
- this.postDrawHooks.hooks[i].apply(this, this.postDrawHooks.args[i]);
- }
-
- if (this.target.is(':visible')) {
- this._drawCount += 1;
- }
-
- var temps,
- tempr,
- sel,
- _els;
- // ughh. ideally would hide all series then show them.
- for (i=0, l=seriesLength; i<l; i++) {
- temps = series[i];
- tempr = temps.renderer;
- sel = '.jqplot-point-label.jqplot-series-'+i;
- if (tempr.animation && tempr.animation._supported && tempr.animation.show && (this._drawCount < 2 || this.animateReplot)) {
- _els = this.target.find(sel);
- _els.stop(true, true).hide();
- temps.canvas._elem.stop(true, true).hide();
- temps.shadowCanvas._elem.stop(true, true).hide();
- temps.canvas._elem.jqplotEffect('blind', {mode: 'show', direction: tempr.animation.direction}, tempr.animation.speed);
- temps.shadowCanvas._elem.jqplotEffect('blind', {mode: 'show', direction: tempr.animation.direction}, tempr.animation.speed);
- _els.fadeIn(tempr.animation.speed*0.8);
- }
- }
- _els = null;
-
- this.target.trigger('jqplotPostDraw', [this]);
- }
- };
-
- jqPlot.prototype.doFillBetweenLines = function () {
- var fb = this.fillBetween;
- var sid1 = fb.series1;
- var sid2 = fb.series2;
- // first series should always be lowest index
- var id1 = (sid1 < sid2) ? sid1 : sid2;
- var id2 = (sid2 > sid1) ? sid2 : sid1;
-
- var series1 = this.series[id1];
- var series2 = this.series[id2];
-
- if (series2.renderer.smooth) {
- var tempgd = series2.renderer._smoothedData.slice(0).reverse();
- }
- else {
- var tempgd = series2.gridData.slice(0).reverse();
- }
-
- if (series1.renderer.smooth) {
- var gd = series1.renderer._smoothedData.concat(tempgd);
- }
- else {
- var gd = series1.gridData.concat(tempgd);
- }
-
- var color = (fb.color !== null) ? fb.color : this.series[sid1].fillColor;
- var baseSeries = (fb.baseSeries !== null) ? fb.baseSeries : id1;
-
- // now apply a fill to the shape on the lower series shadow canvas,
- // so it is behind both series.
- var sr = this.series[baseSeries].renderer.shapeRenderer;
- var opts = {fillStyle: color, fill: true, closePath: true};
- sr.draw(series1.shadowCanvas._ctx, gd, opts);
- };
-
- this.bindCustomEvents = function() {
- this.eventCanvas._elem.bind('click', {plot:this}, this.onClick);
- this.eventCanvas._elem.bind('dblclick', {plot:this}, this.onDblClick);
- this.eventCanvas._elem.bind('mousedown', {plot:this}, this.onMouseDown);
- this.eventCanvas._elem.bind('mousemove', {plot:this}, this.onMouseMove);
- this.eventCanvas._elem.bind('mouseenter', {plot:this}, this.onMouseEnter);
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, this.onMouseLeave);
- if (this.captureRightClick) {
- this.eventCanvas._elem.bind('mouseup', {plot:this}, this.onRightClick);
- this.eventCanvas._elem.get(0).oncontextmenu = function() {
- return false;
- };
- }
- else {
- this.eventCanvas._elem.bind('mouseup', {plot:this}, this.onMouseUp);
- }
- };
-
- function getEventPosition(ev) {
- var plot = ev.data.plot;
- var go = plot.eventCanvas._elem.offset();
- var gridPos = {x:ev.pageX - go.left, y:ev.pageY - go.top};
- var dataPos = {xaxis:null, yaxis:null, x2axis:null, y2axis:null, y3axis:null, y4axis:null, y5axis:null, y6axis:null, y7axis:null, y8axis:null, y9axis:null, yMidAxis:null};
- var an = ['xaxis', 'yaxis', 'x2axis', 'y2axis', 'y3axis', 'y4axis', 'y5axis', 'y6axis', 'y7axis', 'y8axis', 'y9axis', 'yMidAxis'];
- var ax = plot.axes;
- var n, axis;
- for (n=11; n>0; n--) {
- axis = an[n-1];
- if (ax[axis].show) {
- dataPos[axis] = ax[axis].series_p2u(gridPos[axis.charAt(0)]);
- }
- }
-
- return {offsets:go, gridPos:gridPos, dataPos:dataPos};
- }
-
-
- // function to check if event location is over a area area
- function checkIntersection(gridpos, plot) {
- var series = plot.series;
- var i, j, k, s, r, x, y, theta, sm, sa, minang, maxang;
- var d0, d, p, pp, points, bw, hp;
- var threshold, t;
- for (k=plot.seriesStack.length-1; k>=0; k--) {
- i = plot.seriesStack[k];
- s = series[i];
- hp = s._highlightThreshold;
- switch (s.renderer.constructor) {
- case $.jqplot.BarRenderer:
- x = gridpos.x;
- y = gridpos.y;
- for (j=0; j<s._barPoints.length; j++) {
- points = s._barPoints[j];
- p = s.gridData[j];
- if (x>points[0][0] && x<points[2][0] && y>points[2][1] && y<points[0][1]) {
- return {seriesIndex:s.index, pointIndex:j, gridData:p, data:s.data[j], points:s._barPoints[j]};
- }
- }
- break;
- case $.jqplot.PyramidRenderer:
- x = gridpos.x;
- y = gridpos.y;
- for (j=0; j<s._barPoints.length; j++) {
- points = s._barPoints[j];
- p = s.gridData[j];
- if (x > points[0][0] + hp[0][0] && x < points[2][0] + hp[2][0] && y > points[2][1] && y < points[0][1]) {
- return {seriesIndex:s.index, pointIndex:j, gridData:p, data:s.data[j], points:s._barPoints[j]};
- }
- }
- break;
-
- case $.jqplot.DonutRenderer:
- sa = s.startAngle/180*Math.PI;
- x = gridpos.x - s._center[0];
- y = gridpos.y - s._center[1];
- r = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
- if (x > 0 && -y >= 0) {
- theta = 2*Math.PI - Math.atan(-y/x);
- }
- else if (x > 0 && -y < 0) {
- theta = -Math.atan(-y/x);
- }
- else if (x < 0) {
- theta = Math.PI - Math.atan(-y/x);
- }
- else if (x == 0 && -y > 0) {
- theta = 3*Math.PI/2;
- }
- else if (x == 0 && -y < 0) {
- theta = Math.PI/2;
- }
- else if (x == 0 && y == 0) {
- theta = 0;
- }
- if (sa) {
- theta -= sa;
- if (theta < 0) {
- theta += 2*Math.PI;
- }
- else if (theta > 2*Math.PI) {
- theta -= 2*Math.PI;
- }
- }
-
- sm = s.sliceMargin/180*Math.PI;
- if (r < s._radius && r > s._innerRadius) {
- for (j=0; j<s.gridData.length; j++) {
- minang = (j>0) ? s.gridData[j-1][1]+sm : sm;
- maxang = s.gridData[j][1];
- if (theta > minang && theta < maxang) {
- return {seriesIndex:s.index, pointIndex:j, gridData:s.gridData[j], data:s.data[j]};
- }
- }
- }
- break;
-
- case $.jqplot.PieRenderer:
- sa = s.startAngle/180*Math.PI;
- x = gridpos.x - s._center[0];
- y = gridpos.y - s._center[1];
- r = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
- if (x > 0 && -y >= 0) {
- theta = 2*Math.PI - Math.atan(-y/x);
- }
- else if (x > 0 && -y < 0) {
- theta = -Math.atan(-y/x);
- }
- else if (x < 0) {
- theta = Math.PI - Math.atan(-y/x);
- }
- else if (x == 0 && -y > 0) {
- theta = 3*Math.PI/2;
- }
- else if (x == 0 && -y < 0) {
- theta = Math.PI/2;
- }
- else if (x == 0 && y == 0) {
- theta = 0;
- }
- if (sa) {
- theta -= sa;
- if (theta < 0) {
- theta += 2*Math.PI;
- }
- else if (theta > 2*Math.PI) {
- theta -= 2*Math.PI;
- }
- }
-
- sm = s.sliceMargin/180*Math.PI;
- if (r < s._radius) {
- for (j=0; j<s.gridData.length; j++) {
- minang = (j>0) ? s.gridData[j-1][1]+sm : sm;
- maxang = s.gridData[j][1];
- if (theta > minang && theta < maxang) {
- return {seriesIndex:s.index, pointIndex:j, gridData:s.gridData[j], data:s.data[j]};
- }
- }
- }
- break;
-
- case $.jqplot.BubbleRenderer:
- x = gridpos.x;
- y = gridpos.y;
- var ret = null;
-
- if (s.show) {
- for (var j=0; j<s.gridData.length; j++) {
- p = s.gridData[j];
- d = Math.sqrt( (x-p[0]) * (x-p[0]) + (y-p[1]) * (y-p[1]) );
- if (d <= p[2] && (d <= d0 || d0 == null)) {
- d0 = d;
- ret = {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- if (ret != null) {
- return ret;
- }
- }
- break;
-
- case $.jqplot.FunnelRenderer:
- x = gridpos.x;
- y = gridpos.y;
- var v = s._vertices,
- vfirst = v[0],
- vlast = v[v.length-1],
- lex,
- rex,
- cv;
-
- // equations of right and left sides, returns x, y values given height of section (y value and 2 points)
-
- function findedge (l, p1 , p2) {
- var m = (p1[1] - p2[1])/(p1[0] - p2[0]);
- var b = p1[1] - m*p1[0];
- var y = l + p1[1];
-
- return [(y - b)/m, y];
- }
-
- // check each section
- lex = findedge(y, vfirst[0], vlast[3]);
- rex = findedge(y, vfirst[1], vlast[2]);
- for (j=0; j<v.length; j++) {
- cv = v[j];
- if (y >= cv[0][1] && y <= cv[3][1] && x >= lex[0] && x <= rex[0]) {
- return {seriesIndex:s.index, pointIndex:j, gridData:null, data:s.data[j]};
- }
- }
- break;
-
- case $.jqplot.LineRenderer:
- x = gridpos.x;
- y = gridpos.y;
- r = s.renderer;
- if (s.show) {
- if ((s.fill || (s.renderer.bands.show && s.renderer.bands.fill)) && (!plot.plugins.highlighter || !plot.plugins.highlighter.show)) {
- // first check if it is in bounding box
- var inside = false;
- if (x>s._boundingBox[0][0] && x<s._boundingBox[1][0] && y>s._boundingBox[1][1] && y<s._boundingBox[0][1]) {
- // now check the crossing number
-
- var numPoints = s._areaPoints.length;
- var ii;
- var j = numPoints-1;
-
- for(var ii=0; ii < numPoints; ii++) {
- var vertex1 = [s._areaPoints[ii][0], s._areaPoints[ii][1]];
- var vertex2 = [s._areaPoints[j][0], s._areaPoints[j][1]];
-
- if (vertex1[1] < y && vertex2[1] >= y || vertex2[1] < y && vertex1[1] >= y) {
- if (vertex1[0] + (y - vertex1[1]) / (vertex2[1] - vertex1[1]) * (vertex2[0] - vertex1[0]) < x) {
- inside = !inside;
- }
- }
-
- j = ii;
- }
- }
- if (inside) {
- return {seriesIndex:i, pointIndex:null, gridData:s.gridData, data:s.data, points:s._areaPoints};
- }
- break;
-
- }
-
- else {
- t = s.markerRenderer.size/2+s.neighborThreshold;
- threshold = (t > 0) ? t : 0;
- for (var j=0; j<s.gridData.length; j++) {
- p = s.gridData[j];
- // neighbor looks different to OHLC chart.
- if (r.constructor == $.jqplot.OHLCRenderer) {
- if (r.candleStick) {
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._bodyWidth/2 && x <= p[0]+r._bodyWidth/2 && y >= yp(s.data[j][2]) && y <= yp(s.data[j][3])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- // if an open hi low close chart
- else if (!r.hlc){
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._tickLength && x <= p[0]+r._tickLength && y >= yp(s.data[j][2]) && y <= yp(s.data[j][3])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- // a hi low close chart
- else {
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._tickLength && x <= p[0]+r._tickLength && y >= yp(s.data[j][1]) && y <= yp(s.data[j][2])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
-
- }
- else if (p[0] != null && p[1] != null){
- d = Math.sqrt( (x-p[0]) * (x-p[0]) + (y-p[1]) * (y-p[1]) );
- if (d <= threshold && (d <= d0 || d0 == null)) {
- d0 = d;
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- }
- }
- }
- break;
-
- default:
- x = gridpos.x;
- y = gridpos.y;
- r = s.renderer;
- if (s.show) {
- t = s.markerRenderer.size/2+s.neighborThreshold;
- threshold = (t > 0) ? t : 0;
- for (var j=0; j<s.gridData.length; j++) {
- p = s.gridData[j];
- // neighbor looks different to OHLC chart.
- if (r.constructor == $.jqplot.OHLCRenderer) {
- if (r.candleStick) {
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._bodyWidth/2 && x <= p[0]+r._bodyWidth/2 && y >= yp(s.data[j][2]) && y <= yp(s.data[j][3])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- // if an open hi low close chart
- else if (!r.hlc){
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._tickLength && x <= p[0]+r._tickLength && y >= yp(s.data[j][2]) && y <= yp(s.data[j][3])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- // a hi low close chart
- else {
- var yp = s._yaxis.series_u2p;
- if (x >= p[0]-r._tickLength && x <= p[0]+r._tickLength && y >= yp(s.data[j][1]) && y <= yp(s.data[j][2])) {
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
-
- }
- else {
- d = Math.sqrt( (x-p[0]) * (x-p[0]) + (y-p[1]) * (y-p[1]) );
- if (d <= threshold && (d <= d0 || d0 == null)) {
- d0 = d;
- return {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]};
- }
- }
- }
- }
- break;
- }
- }
-
- return null;
- }
-
-
-
- this.onClick = function(ev) {
- // Event passed in is normalized and will have data attribute.
- // Event passed out is unnormalized.
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var neighbor = checkIntersection(positions.gridPos, p);
- var evt = $.Event('jqplotClick');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- };
-
- this.onDblClick = function(ev) {
- // Event passed in is normalized and will have data attribute.
- // Event passed out is unnormalized.
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var neighbor = checkIntersection(positions.gridPos, p);
- var evt = $.Event('jqplotDblClick');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- };
-
- this.onMouseDown = function(ev) {
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var neighbor = checkIntersection(positions.gridPos, p);
- var evt = $.Event('jqplotMouseDown');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- };
-
- this.onMouseUp = function(ev) {
- var positions = getEventPosition(ev);
- var evt = $.Event('jqplotMouseUp');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, null, ev.data.plot]);
- };
-
- this.onRightClick = function(ev) {
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var neighbor = checkIntersection(positions.gridPos, p);
- if (p.captureRightClick) {
- if (ev.which == 3) {
- var evt = $.Event('jqplotRightClick');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- }
- else {
- var evt = $.Event('jqplotMouseUp');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- }
- }
- };
-
- this.onMouseMove = function(ev) {
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var neighbor = checkIntersection(positions.gridPos, p);
- var evt = $.Event('jqplotMouseMove');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, neighbor, p]);
- };
-
- this.onMouseEnter = function(ev) {
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var evt = $.Event('jqplotMouseEnter');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- evt.relatedTarget = ev.relatedTarget;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, null, p]);
- };
-
- this.onMouseLeave = function(ev) {
- var positions = getEventPosition(ev);
- var p = ev.data.plot;
- var evt = $.Event('jqplotMouseLeave');
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- evt.relatedTarget = ev.relatedTarget;
- $(this).trigger(evt, [positions.gridPos, positions.dataPos, null, p]);
- };
-
- // method: drawSeries
- // Redraws all or just one series on the plot. No axis scaling
- // is performed and no other elements on the plot are redrawn.
- // options is an options object to pass on to the series renderers.
- // It can be an empty object {}. idx is the series index
- // to redraw if only one series is to be redrawn.
- this.drawSeries = function(options, idx){
- var i, series, ctx;
- // if only one argument passed in and it is a number, use it ad idx.
- idx = (typeof(options) === "number" && idx == null) ? options : idx;
- options = (typeof(options) === "object") ? options : {};
- // draw specified series
- if (idx != undefined) {
- series = this.series[idx];
- ctx = series.shadowCanvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- series.drawShadow(ctx, options, this);
- ctx = series.canvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- series.draw(ctx, options, this);
- if (series.renderer.constructor == $.jqplot.BezierCurveRenderer) {
- if (idx < this.series.length - 1) {
- this.drawSeries(idx+1);
- }
- }
- }
-
- else {
- // if call series drawShadow method first, in case all series shadows
- // should be drawn before any series. This will ensure, like for
- // stacked bar plots, that shadows don't overlap series.
- for (i=0; i<this.series.length; i++) {
- // first clear the canvas
- series = this.series[i];
- ctx = series.shadowCanvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- series.drawShadow(ctx, options, this);
- ctx = series.canvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- series.draw(ctx, options, this);
- }
- }
- options = idx = i = series = ctx = null;
- };
-
- // method: moveSeriesToFront
- // This method requires jQuery 1.4+
- // Moves the specified series canvas in front of all other series canvases.
- // This effectively "draws" the specified series on top of all other series,
- // although it is performed through DOM manipulation, no redrawing is performed.
- //
- // Parameters:
- // idx - 0 based index of the series to move. This will be the index of the series
- // as it was first passed into the jqplot function.
- this.moveSeriesToFront = function (idx) {
- idx = parseInt(idx, 10);
- var stackIndex = $.inArray(idx, this.seriesStack);
- // if already in front, return
- if (stackIndex == -1) {
- return;
- }
- if (stackIndex == this.seriesStack.length -1) {
- this.previousSeriesStack = this.seriesStack.slice(0);
- return;
- }
- var opidx = this.seriesStack[this.seriesStack.length -1];
- var serelem = this.series[idx].canvas._elem.detach();
- var shadelem = this.series[idx].shadowCanvas._elem.detach();
- this.series[opidx].shadowCanvas._elem.after(shadelem);
- this.series[opidx].canvas._elem.after(serelem);
- this.previousSeriesStack = this.seriesStack.slice(0);
- this.seriesStack.splice(stackIndex, 1);
- this.seriesStack.push(idx);
- };
-
- // method: moveSeriesToBack
- // This method requires jQuery 1.4+
- // Moves the specified series canvas behind all other series canvases.
- //
- // Parameters:
- // idx - 0 based index of the series to move. This will be the index of the series
- // as it was first passed into the jqplot function.
- this.moveSeriesToBack = function (idx) {
- idx = parseInt(idx, 10);
- var stackIndex = $.inArray(idx, this.seriesStack);
- // if already in back, return
- if (stackIndex == 0 || stackIndex == -1) {
- return;
- }
- var opidx = this.seriesStack[0];
- var serelem = this.series[idx].canvas._elem.detach();
- var shadelem = this.series[idx].shadowCanvas._elem.detach();
- this.series[opidx].shadowCanvas._elem.before(shadelem);
- this.series[opidx].canvas._elem.before(serelem);
- this.previousSeriesStack = this.seriesStack.slice(0);
- this.seriesStack.splice(stackIndex, 1);
- this.seriesStack.unshift(idx);
- };
-
- // method: restorePreviousSeriesOrder
- // This method requires jQuery 1.4+
- // Restore the series canvas order to its previous state.
- // Useful to put a series back where it belongs after moving
- // it to the front.
- this.restorePreviousSeriesOrder = function () {
- var i, j, serelem, shadelem, temp, move, keep;
- // if no change, return.
- if (this.seriesStack == this.previousSeriesStack) {
- return;
- }
- for (i=1; i<this.previousSeriesStack.length; i++) {
- move = this.previousSeriesStack[i];
- keep = this.previousSeriesStack[i-1];
- serelem = this.series[move].canvas._elem.detach();
- shadelem = this.series[move].shadowCanvas._elem.detach();
- this.series[keep].shadowCanvas._elem.after(shadelem);
- this.series[keep].canvas._elem.after(serelem);
- }
- temp = this.seriesStack.slice(0);
- this.seriesStack = this.previousSeriesStack.slice(0);
- this.previousSeriesStack = temp;
- };
-
- // method: restoreOriginalSeriesOrder
- // This method requires jQuery 1.4+
- // Restore the series canvas order to its original order
- // when the plot was created.
- this.restoreOriginalSeriesOrder = function () {
- var i, j, arr=[], serelem, shadelem;
- for (i=0; i<this.series.length; i++) {
- arr.push(i);
- }
- if (this.seriesStack == arr) {
- return;
- }
- this.previousSeriesStack = this.seriesStack.slice(0);
- this.seriesStack = arr;
- for (i=1; i<this.seriesStack.length; i++) {
- serelem = this.series[i].canvas._elem.detach();
- shadelem = this.series[i].shadowCanvas._elem.detach();
- this.series[i-1].shadowCanvas._elem.after(shadelem);
- this.series[i-1].canvas._elem.after(serelem);
- }
- };
-
- this.activateTheme = function (name) {
- this.themeEngine.activate(this, name);
- };
- }
-
-
- // conpute a highlight color or array of highlight colors from given colors.
- $.jqplot.computeHighlightColors = function(colors) {
- var ret;
- if ($.isArray(colors)) {
- ret = [];
- for (var i=0; i<colors.length; i++){
- var rgba = $.jqplot.getColorComponents(colors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 660) ? newrgb[j] * 0.85 : 0.73 * newrgb[j] + 90;
- newrgb[j] = parseInt(newrgb[j], 10);
- (newrgb[j] > 255) ? 255 : newrgb[j];
- }
- // newrgb[3] = (rgba[3] > 0.4) ? rgba[3] * 0.4 : rgba[3] * 1.5;
- // newrgb[3] = (rgba[3] > 0.5) ? 0.8 * rgba[3] - .1 : rgba[3] + 0.2;
- newrgb[3] = 0.3 + 0.35 * rgba[3];
- ret.push('rgba('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+','+newrgb[3]+')');
- }
- }
- else {
- var rgba = $.jqplot.getColorComponents(colors);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- // newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]);
- // newrgb[j] = parseInt(newrgb[j], 10);
- newrgb[j] = (sum > 660) ? newrgb[j] * 0.85 : 0.73 * newrgb[j] + 90;
- newrgb[j] = parseInt(newrgb[j], 10);
- (newrgb[j] > 255) ? 255 : newrgb[j];
- }
- // newrgb[3] = (rgba[3] > 0.4) ? rgba[3] * 0.4 : rgba[3] * 1.5;
- // newrgb[3] = (rgba[3] > 0.5) ? 0.8 * rgba[3] - .1 : rgba[3] + 0.2;
- newrgb[3] = 0.3 + 0.35 * rgba[3];
- ret = 'rgba('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+','+newrgb[3]+')';
- }
- return ret;
- };
-
- $.jqplot.ColorGenerator = function(colors) {
- colors = colors || $.jqplot.config.defaultColors;
- var idx = 0;
-
- this.next = function () {
- if (idx < colors.length) {
- return colors[idx++];
- }
- else {
- idx = 0;
- return colors[idx++];
- }
- };
-
- this.previous = function () {
- if (idx > 0) {
- return colors[idx--];
- }
- else {
- idx = colors.length-1;
- return colors[idx];
- }
- };
-
- // get a color by index without advancing pointer.
- this.get = function(i) {
- var idx = i - colors.length * Math.floor(i/colors.length);
- return colors[idx];
- };
-
- this.setColors = function(c) {
- colors = c;
- };
-
- this.reset = function() {
- idx = 0;
- };
-
- this.getIndex = function() {
- return idx;
- };
-
- this.setIndex = function(index) {
- idx = index;
- };
- };
-
- // convert a hex color string to rgb string.
- // h - 3 or 6 character hex string, with or without leading #
- // a - optional alpha
- $.jqplot.hex2rgb = function(h, a) {
- h = h.replace('#', '');
- if (h.length == 3) {
- h = h.charAt(0)+h.charAt(0)+h.charAt(1)+h.charAt(1)+h.charAt(2)+h.charAt(2);
- }
- var rgb;
- rgb = 'rgba('+parseInt(h.slice(0,2), 16)+', '+parseInt(h.slice(2,4), 16)+', '+parseInt(h.slice(4,6), 16);
- if (a) {
- rgb += ', '+a;
- }
- rgb += ')';
- return rgb;
- };
-
- // convert an rgb color spec to a hex spec. ignore any alpha specification.
- $.jqplot.rgb2hex = function(s) {
- var pat = /rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *(?:, *[0-9.]*)?\)/;
- var m = s.match(pat);
- var h = '#';
- for (var i=1; i<4; i++) {
- var temp;
- if (m[i].search(/%/) != -1) {
- temp = parseInt(255*m[i]/100, 10).toString(16);
- if (temp.length == 1) {
- temp = '0'+temp;
- }
- }
- else {
- temp = parseInt(m[i], 10).toString(16);
- if (temp.length == 1) {
- temp = '0'+temp;
- }
- }
- h += temp;
- }
- return h;
- };
-
- // given a css color spec, return an rgb css color spec
- $.jqplot.normalize2rgb = function(s, a) {
- if (s.search(/^ *rgba?\(/) != -1) {
- return s;
- }
- else if (s.search(/^ *#?[0-9a-fA-F]?[0-9a-fA-F]/) != -1) {
- return $.jqplot.hex2rgb(s, a);
- }
- else {
- throw 'invalid color spec';
- }
- };
-
- // extract the r, g, b, a color components out of a css color spec.
- $.jqplot.getColorComponents = function(s) {
- // check to see if a color keyword.
- s = $.jqplot.colorKeywordMap[s] || s;
- var rgb = $.jqplot.normalize2rgb(s);
- var pat = /rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *,? *([0-9.]* *)?\)/;
- var m = rgb.match(pat);
- var ret = [];
- for (var i=1; i<4; i++) {
- if (m[i].search(/%/) != -1) {
- ret[i-1] = parseInt(255*m[i]/100, 10);
- }
- else {
- ret[i-1] = parseInt(m[i], 10);
- }
- }
- ret[3] = parseFloat(m[4]) ? parseFloat(m[4]) : 1.0;
- return ret;
- };
-
- $.jqplot.colorKeywordMap = {
- aliceblue: 'rgb(240, 248, 255)',
- antiquewhite: 'rgb(250, 235, 215)',
- aqua: 'rgb( 0, 255, 255)',
- aquamarine: 'rgb(127, 255, 212)',
- azure: 'rgb(240, 255, 255)',
- beige: 'rgb(245, 245, 220)',
- bisque: 'rgb(255, 228, 196)',
- black: 'rgb( 0, 0, 0)',
- blanchedalmond: 'rgb(255, 235, 205)',
- blue: 'rgb( 0, 0, 255)',
- blueviolet: 'rgb(138, 43, 226)',
- brown: 'rgb(165, 42, 42)',
- burlywood: 'rgb(222, 184, 135)',
- cadetblue: 'rgb( 95, 158, 160)',
- chartreuse: 'rgb(127, 255, 0)',
- chocolate: 'rgb(210, 105, 30)',
- coral: 'rgb(255, 127, 80)',
- cornflowerblue: 'rgb(100, 149, 237)',
- cornsilk: 'rgb(255, 248, 220)',
- crimson: 'rgb(220, 20, 60)',
- cyan: 'rgb( 0, 255, 255)',
- darkblue: 'rgb( 0, 0, 139)',
- darkcyan: 'rgb( 0, 139, 139)',
- darkgoldenrod: 'rgb(184, 134, 11)',
- darkgray: 'rgb(169, 169, 169)',
- darkgreen: 'rgb( 0, 100, 0)',
- darkgrey: 'rgb(169, 169, 169)',
- darkkhaki: 'rgb(189, 183, 107)',
- darkmagenta: 'rgb(139, 0, 139)',
- darkolivegreen: 'rgb( 85, 107, 47)',
- darkorange: 'rgb(255, 140, 0)',
- darkorchid: 'rgb(153, 50, 204)',
- darkred: 'rgb(139, 0, 0)',
- darksalmon: 'rgb(233, 150, 122)',
- darkseagreen: 'rgb(143, 188, 143)',
- darkslateblue: 'rgb( 72, 61, 139)',
- darkslategray: 'rgb( 47, 79, 79)',
- darkslategrey: 'rgb( 47, 79, 79)',
- darkturquoise: 'rgb( 0, 206, 209)',
- darkviolet: 'rgb(148, 0, 211)',
- deeppink: 'rgb(255, 20, 147)',
- deepskyblue: 'rgb( 0, 191, 255)',
- dimgray: 'rgb(105, 105, 105)',
- dimgrey: 'rgb(105, 105, 105)',
- dodgerblue: 'rgb( 30, 144, 255)',
- firebrick: 'rgb(178, 34, 34)',
- floralwhite: 'rgb(255, 250, 240)',
- forestgreen: 'rgb( 34, 139, 34)',
- fuchsia: 'rgb(255, 0, 255)',
- gainsboro: 'rgb(220, 220, 220)',
- ghostwhite: 'rgb(248, 248, 255)',
- gold: 'rgb(255, 215, 0)',
- goldenrod: 'rgb(218, 165, 32)',
- gray: 'rgb(128, 128, 128)',
- grey: 'rgb(128, 128, 128)',
- green: 'rgb( 0, 128, 0)',
- greenyellow: 'rgb(173, 255, 47)',
- honeydew: 'rgb(240, 255, 240)',
- hotpink: 'rgb(255, 105, 180)',
- indianred: 'rgb(205, 92, 92)',
- indigo: 'rgb( 75, 0, 130)',
- ivory: 'rgb(255, 255, 240)',
- khaki: 'rgb(240, 230, 140)',
- lavender: 'rgb(230, 230, 250)',
- lavenderblush: 'rgb(255, 240, 245)',
- lawngreen: 'rgb(124, 252, 0)',
- lemonchiffon: 'rgb(255, 250, 205)',
- lightblue: 'rgb(173, 216, 230)',
- lightcoral: 'rgb(240, 128, 128)',
- lightcyan: 'rgb(224, 255, 255)',
- lightgoldenrodyellow: 'rgb(250, 250, 210)',
- lightgray: 'rgb(211, 211, 211)',
- lightgreen: 'rgb(144, 238, 144)',
- lightgrey: 'rgb(211, 211, 211)',
- lightpink: 'rgb(255, 182, 193)',
- lightsalmon: 'rgb(255, 160, 122)',
- lightseagreen: 'rgb( 32, 178, 170)',
- lightskyblue: 'rgb(135, 206, 250)',
- lightslategray: 'rgb(119, 136, 153)',
- lightslategrey: 'rgb(119, 136, 153)',
- lightsteelblue: 'rgb(176, 196, 222)',
- lightyellow: 'rgb(255, 255, 224)',
- lime: 'rgb( 0, 255, 0)',
- limegreen: 'rgb( 50, 205, 50)',
- linen: 'rgb(250, 240, 230)',
- magenta: 'rgb(255, 0, 255)',
- maroon: 'rgb(128, 0, 0)',
- mediumaquamarine: 'rgb(102, 205, 170)',
- mediumblue: 'rgb( 0, 0, 205)',
- mediumorchid: 'rgb(186, 85, 211)',
- mediumpurple: 'rgb(147, 112, 219)',
- mediumseagreen: 'rgb( 60, 179, 113)',
- mediumslateblue: 'rgb(123, 104, 238)',
- mediumspringgreen: 'rgb( 0, 250, 154)',
- mediumturquoise: 'rgb( 72, 209, 204)',
- mediumvioletred: 'rgb(199, 21, 133)',
- midnightblue: 'rgb( 25, 25, 112)',
- mintcream: 'rgb(245, 255, 250)',
- mistyrose: 'rgb(255, 228, 225)',
- moccasin: 'rgb(255, 228, 181)',
- navajowhite: 'rgb(255, 222, 173)',
- navy: 'rgb( 0, 0, 128)',
- oldlace: 'rgb(253, 245, 230)',
- olive: 'rgb(128, 128, 0)',
- olivedrab: 'rgb(107, 142, 35)',
- orange: 'rgb(255, 165, 0)',
- orangered: 'rgb(255, 69, 0)',
- orchid: 'rgb(218, 112, 214)',
- palegoldenrod: 'rgb(238, 232, 170)',
- palegreen: 'rgb(152, 251, 152)',
- paleturquoise: 'rgb(175, 238, 238)',
- palevioletred: 'rgb(219, 112, 147)',
- papayawhip: 'rgb(255, 239, 213)',
- peachpuff: 'rgb(255, 218, 185)',
- peru: 'rgb(205, 133, 63)',
- pink: 'rgb(255, 192, 203)',
- plum: 'rgb(221, 160, 221)',
- powderblue: 'rgb(176, 224, 230)',
- purple: 'rgb(128, 0, 128)',
- red: 'rgb(255, 0, 0)',
- rosybrown: 'rgb(188, 143, 143)',
- royalblue: 'rgb( 65, 105, 225)',
- saddlebrown: 'rgb(139, 69, 19)',
- salmon: 'rgb(250, 128, 114)',
- sandybrown: 'rgb(244, 164, 96)',
- seagreen: 'rgb( 46, 139, 87)',
- seashell: 'rgb(255, 245, 238)',
- sienna: 'rgb(160, 82, 45)',
- silver: 'rgb(192, 192, 192)',
- skyblue: 'rgb(135, 206, 235)',
- slateblue: 'rgb(106, 90, 205)',
- slategray: 'rgb(112, 128, 144)',
- slategrey: 'rgb(112, 128, 144)',
- snow: 'rgb(255, 250, 250)',
- springgreen: 'rgb( 0, 255, 127)',
- steelblue: 'rgb( 70, 130, 180)',
- tan: 'rgb(210, 180, 140)',
- teal: 'rgb( 0, 128, 128)',
- thistle: 'rgb(216, 191, 216)',
- tomato: 'rgb(255, 99, 71)',
- turquoise: 'rgb( 64, 224, 208)',
- violet: 'rgb(238, 130, 238)',
- wheat: 'rgb(245, 222, 179)',
- white: 'rgb(255, 255, 255)',
- whitesmoke: 'rgb(245, 245, 245)',
- yellow: 'rgb(255, 255, 0)',
- yellowgreen: 'rgb(154, 205, 50)'
- };
-
-
-
- // class: $.jqplot.AxisLabelRenderer
- // Renderer to place labels on the axes.
- $.jqplot.AxisLabelRenderer = function(options) {
- // Group: Properties
- $.jqplot.ElemContainer.call(this);
- // name of the axis associated with this tick
- this.axis;
- // prop: show
- // wether or not to show the tick (mark and label).
- this.show = true;
- // prop: label
- // The text or html for the label.
- this.label = '';
- this.fontFamily = null;
- this.fontSize = null;
- this.textColor = null;
- this._elem;
- // prop: escapeHTML
- // true to escape HTML entities in the label.
- this.escapeHTML = false;
-
- $.extend(true, this, options);
- };
-
- $.jqplot.AxisLabelRenderer.prototype = new $.jqplot.ElemContainer();
- $.jqplot.AxisLabelRenderer.prototype.constructor = $.jqplot.AxisLabelRenderer;
-
- $.jqplot.AxisLabelRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- $.jqplot.AxisLabelRenderer.prototype.draw = function(ctx, plot) {
- // Memory Leaks patch
- if (this._elem) {
- this._elem.emptyForce();
- this._elem = null;
- }
-
- this._elem = $('<div style="position:absolute;" class="jqplot-'+this.axis+'-label"></div>');
-
- if (Number(this.label)) {
- this._elem.css('white-space', 'nowrap');
- }
-
- if (!this.escapeHTML) {
- this._elem.html(this.label);
- }
- else {
- this._elem.text(this.label);
- }
- if (this.fontFamily) {
- this._elem.css('font-family', this.fontFamily);
- }
- if (this.fontSize) {
- this._elem.css('font-size', this.fontSize);
- }
- if (this.textColor) {
- this._elem.css('color', this.textColor);
- }
-
- return this._elem;
- };
-
- $.jqplot.AxisLabelRenderer.prototype.pack = function() {
- };
-
- // class: $.jqplot.AxisTickRenderer
- // A "tick" object showing the value of a tick/gridline on the plot.
- $.jqplot.AxisTickRenderer = function(options) {
- // Group: Properties
- $.jqplot.ElemContainer.call(this);
- // prop: mark
- // tick mark on the axis. One of 'inside', 'outside', 'cross', '' or null.
- this.mark = 'outside';
- // name of the axis associated with this tick
- this.axis;
- // prop: showMark
- // wether or not to show the mark on the axis.
- this.showMark = true;
- // prop: showGridline
- // wether or not to draw the gridline on the grid at this tick.
- this.showGridline = true;
- // prop: isMinorTick
- // if this is a minor tick.
- this.isMinorTick = false;
- // prop: size
- // Length of the tick beyond the grid in pixels.
- // DEPRECATED: This has been superceeded by markSize
- this.size = 4;
- // prop: markSize
- // Length of the tick marks in pixels. For 'cross' style, length
- // will be stoked above and below axis, so total length will be twice this.
- this.markSize = 6;
- // prop: show
- // wether or not to show the tick (mark and label).
- // Setting this to false requires more testing. It is recommended
- // to set showLabel and showMark to false instead.
- this.show = true;
- // prop: showLabel
- // wether or not to show the label.
- this.showLabel = true;
- this.label = null;
- this.value = null;
- this._styles = {};
- // prop: formatter
- // A class of a formatter for the tick text. sprintf by default.
- this.formatter = $.jqplot.DefaultTickFormatter;
- // prop: prefix
- // String to prepend to the tick label.
- // Prefix is prepended to the formatted tick label.
- this.prefix = '';
- // prop: suffix
- // String to append to the tick label.
- // Suffix is appended to the formatted tick label.
- this.suffix = '';
- // prop: formatString
- // string passed to the formatter.
- this.formatString = '';
- // prop: fontFamily
- // css spec for the font-family css attribute.
- this.fontFamily;
- // prop: fontSize
- // css spec for the font-size css attribute.
- this.fontSize;
- // prop: textColor
- // css spec for the color attribute.
- this.textColor;
- // prop: escapeHTML
- // true to escape HTML entities in the label.
- this.escapeHTML = false;
- this._elem;
- this._breakTick = false;
-
- $.extend(true, this, options);
- };
-
- $.jqplot.AxisTickRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- $.jqplot.AxisTickRenderer.prototype = new $.jqplot.ElemContainer();
- $.jqplot.AxisTickRenderer.prototype.constructor = $.jqplot.AxisTickRenderer;
-
- $.jqplot.AxisTickRenderer.prototype.setTick = function(value, axisName, isMinor) {
- this.value = value;
- this.axis = axisName;
- if (isMinor) {
- this.isMinorTick = true;
- }
- return this;
- };
-
- $.jqplot.AxisTickRenderer.prototype.draw = function() {
- if (this.label === null) {
- this.label = this.prefix + this.formatter(this.formatString, this.value) + this.suffix;
- }
- var style = {position: 'absolute'};
- if (Number(this.label)) {
- style['whitSpace'] = 'nowrap';
- }
-
- // Memory Leaks patch
- if (this._elem) {
- this._elem.emptyForce();
- this._elem = null;
- }
-
- this._elem = $(document.createElement('div'));
- this._elem.addClass("jqplot-"+this.axis+"-tick");
-
- if (!this.escapeHTML) {
- this._elem.html(this.label);
- }
- else {
- this._elem.text(this.label);
- }
-
- this._elem.css(style);
-
- for (var s in this._styles) {
- this._elem.css(s, this._styles[s]);
- }
- if (this.fontFamily) {
- this._elem.css('font-family', this.fontFamily);
- }
- if (this.fontSize) {
- this._elem.css('font-size', this.fontSize);
- }
- if (this.textColor) {
- this._elem.css('color', this.textColor);
- }
- if (this._breakTick) {
- this._elem.addClass('jqplot-breakTick');
- }
-
- return this._elem;
- };
-
- $.jqplot.DefaultTickFormatter = function (format, val) {
- if (typeof val == 'number') {
- if (!format) {
- format = $.jqplot.config.defaultTickFormatString;
- }
- return $.jqplot.sprintf(format, val);
- }
- else {
- return String(val);
- }
- };
-
- $.jqplot.PercentTickFormatter = function (format, val) {
- if (typeof val == 'number') {
- val = 100 * val;
- if (!format) {
- format = $.jqplot.config.defaultTickFormatString;
- }
- return $.jqplot.sprintf(format, val);
- }
- else {
- return String(val);
- }
- };
-
- $.jqplot.AxisTickRenderer.prototype.pack = function() {
- };
-
- // Class: $.jqplot.CanvasGridRenderer
- // The default jqPlot grid renderer, creating a grid on a canvas element.
- // The renderer has no additional options beyond the <Grid> class.
- $.jqplot.CanvasGridRenderer = function(){
- this.shadowRenderer = new $.jqplot.ShadowRenderer();
- };
-
- // called with context of Grid object
- $.jqplot.CanvasGridRenderer.prototype.init = function(options) {
- this._ctx;
- $.extend(true, this, options);
- // set the shadow renderer options
- var sopts = {lineJoin:'miter', lineCap:'round', fill:false, isarc:false, angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, depth:this.shadowDepth, lineWidth:this.shadowWidth, closePath:false, strokeStyle:this.shadowColor};
- this.renderer.shadowRenderer.init(sopts);
- };
-
- // called with context of Grid.
- $.jqplot.CanvasGridRenderer.prototype.createElement = function(plot) {
- var elem;
- // Memory Leaks patch
- if (this._elem) {
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- elem = this._elem.get(0);
- window.G_vmlCanvasManager.uninitElement(elem);
- elem = null;
- }
-
- this._elem.emptyForce();
- this._elem = null;
- }
-
- elem = plot.canvasManager.getCanvas();
-
- var w = this._plotDimensions.width;
- var h = this._plotDimensions.height;
- elem.width = w;
- elem.height = h;
- this._elem = $(elem);
- this._elem.addClass('jqplot-grid-canvas');
- this._elem.css({ position: 'absolute', left: 0, top: 0 });
-
- elem = plot.canvasManager.initCanvas(elem);
-
- this._top = this._offsets.top;
- this._bottom = h - this._offsets.bottom;
- this._left = this._offsets.left;
- this._right = w - this._offsets.right;
- this._width = this._right - this._left;
- this._height = this._bottom - this._top;
- // avoid memory leak
- elem = null;
- return this._elem;
- };
-
- $.jqplot.CanvasGridRenderer.prototype.draw = function() {
- this._ctx = this._elem.get(0).getContext("2d");
- var ctx = this._ctx;
- var axes = this._axes;
- // Add the grid onto the grid canvas. This is the bottom most layer.
- ctx.save();
- ctx.clearRect(0, 0, this._plotDimensions.width, this._plotDimensions.height);
- ctx.fillStyle = this.backgroundColor || this.background;
- ctx.fillRect(this._left, this._top, this._width, this._height);
-
- ctx.save();
- ctx.lineJoin = 'miter';
- ctx.lineCap = 'butt';
- ctx.lineWidth = this.gridLineWidth;
- ctx.strokeStyle = this.gridLineColor;
- var b, e, s, m;
- var ax = ['xaxis', 'yaxis', 'x2axis', 'y2axis'];
- for (var i=4; i>0; i--) {
- var name = ax[i-1];
- var axis = axes[name];
- var ticks = axis._ticks;
- var numticks = ticks.length;
- if (axis.show) {
- if (axis.drawBaseline) {
- var bopts = {};
- if (axis.baselineWidth !== null) {
- bopts.lineWidth = axis.baselineWidth;
- }
- if (axis.baselineColor !== null) {
- bopts.strokeStyle = axis.baselineColor;
- }
- switch (name) {
- case 'xaxis':
- drawLine (this._left, this._bottom, this._right, this._bottom, bopts);
- break;
- case 'yaxis':
- drawLine (this._left, this._bottom, this._left, this._top, bopts);
- break;
- case 'x2axis':
- drawLine (this._left, this._bottom, this._right, this._bottom, bopts);
- break;
- case 'y2axis':
- drawLine (this._right, this._bottom, this._right, this._top, bopts);
- break;
- }
- }
- for (var j=numticks; j>0; j--) {
- var t = ticks[j-1];
- if (t.show) {
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (name) {
- case 'xaxis':
- // draw the grid line if we should
- if (t.showGridline && this.drawGridlines && ((!t.isMinorTick && axis.drawMajorGridlines) || (t.isMinorTick && axis.drawMinorGridlines)) ) {
- drawLine(pos, this._top, pos, this._bottom);
- }
- // draw the mark
- if (t.showMark && t.mark && ((!t.isMinorTick && axis.drawMajorTickMarks) || (t.isMinorTick && axis.drawMinorTickMarks)) ) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._bottom;
- e = this._bottom+s;
- break;
- case 'inside':
- b = this._bottom-s;
- e = this._bottom;
- break;
- case 'cross':
- b = this._bottom-s;
- e = this._bottom+s;
- break;
- default:
- b = this._bottom;
- e = this._bottom+s;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[pos,b],[pos,e]], {lineCap:'butt', lineWidth:this.gridLineWidth, offset:this.gridLineWidth*0.75, depth:2, fill:false, closePath:false});
- }
- // draw the line
- drawLine(pos, b, pos, e);
- }
- break;
- case 'yaxis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && ((!t.isMinorTick && axis.drawMajorGridlines) || (t.isMinorTick && axis.drawMinorGridlines)) ) {
- drawLine(this._right, pos, this._left, pos);
- }
- // draw the mark
- if (t.showMark && t.mark && ((!t.isMinorTick && axis.drawMajorTickMarks) || (t.isMinorTick && axis.drawMinorTickMarks)) ) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._left-s;
- e = this._left;
- break;
- case 'inside':
- b = this._left;
- e = this._left+s;
- break;
- case 'cross':
- b = this._left-s;
- e = this._left+s;
- break;
- default:
- b = this._left-s;
- e = this._left;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- break;
- case 'x2axis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && ((!t.isMinorTick && axis.drawMajorGridlines) || (t.isMinorTick && axis.drawMinorGridlines)) ) {
- drawLine(pos, this._bottom, pos, this._top);
- }
- // draw the mark
- if (t.showMark && t.mark && ((!t.isMinorTick && axis.drawMajorTickMarks) || (t.isMinorTick && axis.drawMinorTickMarks)) ) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._top-s;
- e = this._top;
- break;
- case 'inside':
- b = this._top;
- e = this._top+s;
- break;
- case 'cross':
- b = this._top-s;
- e = this._top+s;
- break;
- default:
- b = this._top-s;
- e = this._top;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[pos,b],[pos,e]], {lineCap:'butt', lineWidth:this.gridLineWidth, offset:this.gridLineWidth*0.75, depth:2, fill:false, closePath:false});
- }
- drawLine(pos, b, pos, e);
- }
- break;
- case 'y2axis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && ((!t.isMinorTick && axis.drawMajorGridlines) || (t.isMinorTick && axis.drawMinorGridlines)) ) {
- drawLine(this._left, pos, this._right, pos);
- }
- // draw the mark
- if (t.showMark && t.mark && ((!t.isMinorTick && axis.drawMajorTickMarks) || (t.isMinorTick && axis.drawMinorTickMarks)) ) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._right;
- e = this._right+s;
- break;
- case 'inside':
- b = this._right-s;
- e = this._right;
- break;
- case 'cross':
- b = this._right-s;
- e = this._right+s;
- break;
- default:
- b = this._right;
- e = this._right+s;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- break;
- default:
- break;
- }
- }
- }
- t = null;
- }
- axis = null;
- ticks = null;
- }
- // Now draw grid lines for additional y axes
- //////
- // TO DO: handle yMidAxis
- //////
- ax = ['y3axis', 'y4axis', 'y5axis', 'y6axis', 'y7axis', 'y8axis', 'y9axis', 'yMidAxis'];
- for (var i=7; i>0; i--) {
- var axis = axes[ax[i-1]];
- var ticks = axis._ticks;
- if (axis.show) {
- var tn = ticks[axis.numberTicks-1];
- var t0 = ticks[0];
- var left = axis.getLeft();
- var points = [[left, tn.getTop() + tn.getHeight()/2], [left, t0.getTop() + t0.getHeight()/2 + 1.0]];
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, points, {lineCap:'butt', fill:false, closePath:false});
- }
- // draw the line
- drawLine(points[0][0], points[0][1], points[1][0], points[1][1], {lineCap:'butt', strokeStyle:axis.borderColor, lineWidth:axis.borderWidth});
- // draw the tick marks
- for (var j=ticks.length; j>0; j--) {
- var t = ticks[j-1];
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- if (t.showMark && t.mark) {
- switch (m) {
- case 'outside':
- b = left;
- e = left+s;
- break;
- case 'inside':
- b = left-s;
- e = left;
- break;
- case 'cross':
- b = left-s;
- e = left+s;
- break;
- default:
- b = left;
- e = left+s;
- break;
- }
- points = [[b,pos], [e,pos]];
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, points, {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- // draw the line
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- t = null;
- }
- t0 = null;
- }
- axis = null;
- ticks = null;
- }
-
- ctx.restore();
-
- function drawLine(bx, by, ex, ey, opts) {
- ctx.save();
- opts = opts || {};
- if (opts.lineWidth == null || opts.lineWidth != 0){
- $.extend(true, ctx, opts);
- ctx.beginPath();
- ctx.moveTo(bx, by);
- ctx.lineTo(ex, ey);
- ctx.stroke();
- ctx.restore();
- }
- }
-
- if (this.shadow) {
- var points = [[this._left, this._bottom], [this._right, this._bottom], [this._right, this._top]];
- this.renderer.shadowRenderer.draw(ctx, points);
- }
- // Now draw border around grid. Use axis border definitions. start at
- // upper left and go clockwise.
- if (this.borderWidth != 0 && this.drawBorder) {
- drawLine (this._left, this._top, this._right, this._top, {lineCap:'round', strokeStyle:axes.x2axis.borderColor, lineWidth:axes.x2axis.borderWidth});
- drawLine (this._right, this._top, this._right, this._bottom, {lineCap:'round', strokeStyle:axes.y2axis.borderColor, lineWidth:axes.y2axis.borderWidth});
- drawLine (this._right, this._bottom, this._left, this._bottom, {lineCap:'round', strokeStyle:axes.xaxis.borderColor, lineWidth:axes.xaxis.borderWidth});
- drawLine (this._left, this._bottom, this._left, this._top, {lineCap:'round', strokeStyle:axes.yaxis.borderColor, lineWidth:axes.yaxis.borderWidth});
- }
- // ctx.lineWidth = this.borderWidth;
- // ctx.strokeStyle = this.borderColor;
- // ctx.strokeRect(this._left, this._top, this._width, this._height);
-
- ctx.restore();
- ctx = null;
- axes = null;
- };
-
- // Class: $.jqplot.DivTitleRenderer
- // The default title renderer for jqPlot. This class has no options beyond the <Title> class.
- $.jqplot.DivTitleRenderer = function() {
- };
-
- $.jqplot.DivTitleRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- $.jqplot.DivTitleRenderer.prototype.draw = function() {
- // Memory Leaks patch
- if (this._elem) {
- this._elem.emptyForce();
- this._elem = null;
- }
-
- var r = this.renderer;
- var elem = document.createElement('div');
- this._elem = $(elem);
- this._elem.addClass('jqplot-title');
-
- if (!this.text) {
- this.show = false;
- this._elem.height(0);
- this._elem.width(0);
- }
- else if (this.text) {
- var color;
- if (this.color) {
- color = this.color;
- }
- else if (this.textColor) {
- color = this.textColor;
- }
-
- // don't trust that a stylesheet is present, set the position.
- var styles = {position:'absolute', top:'0px', left:'0px'};
-
- if (this._plotWidth) {
- styles['width'] = this._plotWidth+'px';
- }
- if (this.fontSize) {
- styles['fontSize'] = this.fontSize;
- }
- if (typeof this.textAlign === 'string') {
- styles['textAlign'] = this.textAlign;
- }
- else {
- styles['textAlign'] = 'center';
- }
- if (color) {
- styles['color'] = color;
- }
- if (this.paddingBottom) {
- styles['paddingBottom'] = this.paddingBottom;
- }
- if (this.fontFamily) {
- styles['fontFamily'] = this.fontFamily;
- }
-
- this._elem.css(styles);
- if (this.escapeHtml) {
- this._elem.text(this.text);
- }
- else {
- this._elem.html(this.text);
- }
-
-
- // styletext += (this._plotWidth) ? 'width:'+this._plotWidth+'px;' : '';
- // styletext += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- // styletext += (this.textAlign) ? 'text-align:'+this.textAlign+';' : 'text-align:center;';
- // styletext += (color) ? 'color:'+color+';' : '';
- // styletext += (this.paddingBottom) ? 'padding-bottom:'+this.paddingBottom+';' : '';
- // this._elem = $('<div class="jqplot-title" style="'+styletext+'">'+this.text+'</div>');
- // if (this.fontFamily) {
- // this._elem.css('font-family', this.fontFamily);
- // }
- }
-
- elem = null;
-
- return this._elem;
- };
-
- $.jqplot.DivTitleRenderer.prototype.pack = function() {
- // nothing to do here
- };
-
-
- var dotlen = 0.1;
-
- $.jqplot.LinePattern = function (ctx, pattern) {
-
- var defaultLinePatterns = {
- dotted: [ dotlen, $.jqplot.config.dotGapLength ],
- dashed: [ $.jqplot.config.dashLength, $.jqplot.config.gapLength ],
- solid: null
- };
-
- if (typeof pattern === 'string') {
- if (pattern[0] === '.' || pattern[0] === '-') {
- var s = pattern;
- pattern = [];
- for (var i=0, imax=s.length; i<imax; i++) {
- if (s[i] === '.') {
- pattern.push( dotlen );
- }
- else if (s[i] === '-') {
- pattern.push( $.jqplot.config.dashLength );
- }
- else {
- continue;
- }
- pattern.push( $.jqplot.config.gapLength );
- }
- }
- else {
- pattern = defaultLinePatterns[pattern];
- }
- }
-
- if (!(pattern && pattern.length)) {
- return ctx;
- }
-
- var patternIndex = 0;
- var patternDistance = pattern[0];
- var px = 0;
- var py = 0;
- var pathx0 = 0;
- var pathy0 = 0;
-
- var moveTo = function (x, y) {
- ctx.moveTo( x, y );
- px = x;
- py = y;
- pathx0 = x;
- pathy0 = y;
- };
-
- var lineTo = function (x, y) {
- var scale = ctx.lineWidth;
- var dx = x - px;
- var dy = y - py;
- var dist = Math.sqrt(dx*dx+dy*dy);
- if ((dist > 0) && (scale > 0)) {
- dx /= dist;
- dy /= dist;
- while (true) {
- var dp = scale * patternDistance;
- if (dp < dist) {
- px += dp * dx;
- py += dp * dy;
- if ((patternIndex & 1) == 0) {
- ctx.lineTo( px, py );
- }
- else {
- ctx.moveTo( px, py );
- }
- dist -= dp;
- patternIndex++;
- if (patternIndex >= pattern.length) {
- patternIndex = 0;
- }
- patternDistance = pattern[patternIndex];
- }
- else {
- px = x;
- py = y;
- if ((patternIndex & 1) == 0) {
- ctx.lineTo( px, py );
- }
- else {
- ctx.moveTo( px, py );
- }
- patternDistance -= dist / scale;
- break;
- }
- }
- }
- };
-
- var beginPath = function () {
- ctx.beginPath();
- };
-
- var closePath = function () {
- lineTo( pathx0, pathy0 );
- };
-
- return {
- moveTo: moveTo,
- lineTo: lineTo,
- beginPath: beginPath,
- closePath: closePath
- };
- };
-
- // Class: $.jqplot.LineRenderer
- // The default line renderer for jqPlot, this class has no options beyond the <Series> class.
- // Draws series as a line.
- $.jqplot.LineRenderer = function(){
- this.shapeRenderer = new $.jqplot.ShapeRenderer();
- this.shadowRenderer = new $.jqplot.ShadowRenderer();
- };
-
- // called with scope of series.
- $.jqplot.LineRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- options = options || {};
- this._type='line';
- this.renderer.animation = {
- show: false,
- direction: 'left',
- speed: 2500,
- _supported: true
- };
- // prop: smooth
- // True to draw a smoothed (interpolated) line through the data points
- // with automatically computed number of smoothing points.
- // Set to an integer number > 2 to specify number of smoothing points
- // to use between each data point.
- this.renderer.smooth = false; // true or a number > 2 for smoothing.
- this.renderer.tension = null; // null to auto compute or a number typically > 6. Fewer points requires higher tension.
- // prop: constrainSmoothing
- // True to use a more accurate smoothing algorithm that will
- // not overshoot any data points. False to allow overshoot but
- // produce a smoother looking line.
- this.renderer.constrainSmoothing = true;
- // this is smoothed data in grid coordinates, like gridData
- this.renderer._smoothedData = [];
- // this is smoothed data in plot units (plot coordinates), like plotData.
- this.renderer._smoothedPlotData = [];
- this.renderer._hiBandGridData = [];
- this.renderer._lowBandGridData = [];
- this.renderer._hiBandSmoothedData = [];
- this.renderer._lowBandSmoothedData = [];
-
- // prop: bandData
- // Data used to draw error bands or confidence intervals above/below a line.
- //
- // bandData can be input in 3 forms. jqPlot will figure out which is the
- // low band line and which is the high band line for all forms:
- //
- // A 2 dimensional array like [[yl1, yl2, ...], [yu1, yu2, ...]] where
- // [yl1, yl2, ...] are y values of the lower line and
- // [yu1, yu2, ...] are y values of the upper line.
- // In this case there must be the same number of y data points as data points
- // in the series and the bands will inherit the x values of the series.
- //
- // A 2 dimensional array like [[[xl1, yl1], [xl2, yl2], ...], [[xh1, yh1], [xh2, yh2], ...]]
- // where [xl1, yl1] are x,y data points for the lower line and
- // [xh1, yh1] are x,y data points for the high line.
- // x values do not have to correspond to the x values of the series and can
- // be of any arbitrary length.
- //
- // Can be of form [[yl1, yu1], [yl2, yu2], [yl3, yu3], ...] where
- // there must be 3 or more arrays and there must be the same number of arrays
- // as there are data points in the series. In this case,
- // [yl1, yu1] specifies the lower and upper y values for the 1st
- // data point and so on. The bands will inherit the x
- // values from the series.
- this.renderer.bandData = [];
-
- // Group: bands
- // Banding around line, e.g error bands or confidence intervals.
- this.renderer.bands = {
- // prop: show
- // true to show the bands. If bandData or interval is
- // supplied, show will be set to true by default.
- show: false,
- hiData: [],
- lowData: [],
- // prop: color
- // color of lines at top and bottom of bands [default: series color].
- color: this.color,
- // prop: showLines
- // True to show lines at top and bottom of bands [default: false].
- showLines: false,
- // prop: fill
- // True to fill area between bands [default: true].
- fill: true,
- // prop: fillColor
- // css color spec for filled area. [default: series color].
- fillColor: null,
- _min: null,
- _max: null,
- // prop: interval
- // User specified interval above and below line for bands [default: '3%''].
- // Can be a value like 3 or a string like '3%'
- // or an upper/lower array like [1, -2] or ['2%', '-1.5%']
- interval: '3%'
- };
-
-
- var lopts = {highlightMouseOver: options.highlightMouseOver, highlightMouseDown: options.highlightMouseDown, highlightColor: options.highlightColor};
-
- delete (options.highlightMouseOver);
- delete (options.highlightMouseDown);
- delete (options.highlightColor);
-
- $.extend(true, this.renderer, options);
-
- this.renderer.options = options;
-
- // if we are given some band data, and bands aren't explicity set to false in options, turn them on.
- if (this.renderer.bandData.length > 1 && (!options.bands || options.bands.show == null)) {
- this.renderer.bands.show = true;
- }
-
- // if we are given an interval, and bands aren't explicity set to false in options, turn them on.
- else if (options.bands && options.bands.show == null && options.bands.interval != null) {
- this.renderer.bands.show = true;
- }
-
- // if plot is filled, turn off bands.
- if (this.fill) {
- this.renderer.bands.show = false;
- }
-
- if (this.renderer.bands.show) {
- this.renderer.initBands.call(this, this.renderer.options, plot);
- }
-
-
- // smoothing is not compatible with stacked lines, disable
- if (this._stack) {
- this.renderer.smooth = false;
- }
-
- // set the shape renderer options
- var opts = {lineJoin:this.lineJoin, lineCap:this.lineCap, fill:this.fill, isarc:false, strokeStyle:this.color, fillStyle:this.fillColor, lineWidth:this.lineWidth, linePattern:this.linePattern, closePath:this.fill};
- this.renderer.shapeRenderer.init(opts);
-
- var shadow_offset = options.shadowOffset;
- // set the shadow renderer options
- if (shadow_offset == null) {
- // scale the shadowOffset to the width of the line.
- if (this.lineWidth > 2.5) {
- shadow_offset = 1.25 * (1 + (Math.atan((this.lineWidth/2.5))/0.785398163 - 1)*0.6);
- // var shadow_offset = this.shadowOffset;
- }
- // for skinny lines, don't make such a big shadow.
- else {
- shadow_offset = 1.25 * Math.atan((this.lineWidth/2.5))/0.785398163;
- }
- }
-
- var sopts = {lineJoin:this.lineJoin, lineCap:this.lineCap, fill:this.fill, isarc:false, angle:this.shadowAngle, offset:shadow_offset, alpha:this.shadowAlpha, depth:this.shadowDepth, lineWidth:this.lineWidth, linePattern:this.linePattern, closePath:this.fill};
- this.renderer.shadowRenderer.init(sopts);
- this._areaPoints = [];
- this._boundingBox = [[],[]];
-
- if (!this.isTrendline && this.fill || this.renderer.bands.show) {
- // Group: Properties
- //
- // prop: highlightMouseOver
- // True to highlight area on a filled plot when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on an area on a filled plot.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over an area on a filled plot.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColor
- // color to use when highlighting an area on a filled plot.
- this.highlightColor = null;
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (lopts.highlightMouseDown && lopts.highlightMouseOver == null) {
- lopts.highlightMouseOver = false;
- }
-
- $.extend(true, this, {highlightMouseOver: lopts.highlightMouseOver, highlightMouseDown: lopts.highlightMouseDown, highlightColor: lopts.highlightColor});
-
- if (!this.highlightColor) {
- var fc = (this.renderer.bands.show) ? this.renderer.bands.fillColor : this.fillColor;
- this.highlightColor = $.jqplot.computeHighlightColors(fc);
- }
- // turn off (disable) the highlighter plugin
- if (this.highlighter) {
- this.highlighter.show = false;
- }
- }
-
- if (!this.isTrendline && plot) {
- plot.plugins.lineRenderer = {};
- plot.postInitHooks.addOnce(postInit);
- plot.postDrawHooks.addOnce(postPlotDraw);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- }
-
- };
-
- $.jqplot.LineRenderer.prototype.initBands = function(options, plot) {
- // use bandData if no data specified in bands option
- //var bd = this.renderer.bandData;
- var bd = options.bandData || [];
- var bands = this.renderer.bands;
- bands.hiData = [];
- bands.lowData = [];
- var data = this.data;
- bands._max = null;
- bands._min = null;
- // If 2 arrays, and each array greater than 2 elements, assume it is hi and low data bands of y values.
- if (bd.length == 2) {
- // Do we have an array of x,y values?
- // like [[[1,1], [2,4], [3,3]], [[1,3], [2,6], [3,5]]]
- if ($.isArray(bd[0][0])) {
- // since an arbitrary array of points, spin through all of them to determine max and min lines.
-
- var p;
- var bdminidx = 0, bdmaxidx = 0;
- for (var i = 0, l = bd[0].length; i<l; i++) {
- p = bd[0][i];
- if ((p[1] != null && p[1] > bands._max) || bands._max == null) {
- bands._max = p[1];
- }
- if ((p[1] != null && p[1] < bands._min) || bands._min == null) {
- bands._min = p[1];
- }
- }
- for (var i = 0, l = bd[1].length; i<l; i++) {
- p = bd[1][i];
- if ((p[1] != null && p[1] > bands._max) || bands._max == null) {
- bands._max = p[1];
- bdmaxidx = 1;
- }
- if ((p[1] != null && p[1] < bands._min) || bands._min == null) {
- bands._min = p[1];
- bdminidx = 1;
- }
- }
-
- if (bdmaxidx === bdminidx) {
- bands.show = false;
- }
-
- bands.hiData = bd[bdmaxidx];
- bands.lowData = bd[bdminidx];
- }
- // else data is arrays of y values
- // like [[1,4,3], [3,6,5]]
- // must have same number of band data points as points in series
- else if (bd[0].length === data.length && bd[1].length === data.length) {
- var hi = (bd[0][0] > bd[1][0]) ? 0 : 1;
- var low = (hi) ? 0 : 1;
- for (var i=0, l=data.length; i < l; i++) {
- bands.hiData.push([data[i][0], bd[hi][i]]);
- bands.lowData.push([data[i][0], bd[low][i]]);
- }
- }
-
- // we don't have proper data array, don't show bands.
- else {
- bands.show = false;
- }
- }
-
- // if more than 2 arrays, have arrays of [ylow, yhi] values.
- // note, can't distinguish case of [[ylow, yhi], [ylow, yhi]] from [[ylow, ylow], [yhi, yhi]]
- // this is assumed to be of the latter form.
- else if (bd.length > 2 && !$.isArray(bd[0][0])) {
- var hi = (bd[0][0] > bd[0][1]) ? 0 : 1;
- var low = (hi) ? 0 : 1;
- for (var i=0, l=bd.length; i<l; i++) {
- bands.hiData.push([data[i][0], bd[i][hi]]);
- bands.lowData.push([data[i][0], bd[i][low]]);
- }
- }
-
- // don't have proper data, auto calculate
- else {
- var intrv = bands.interval;
- var a = null;
- var b = null;
- var afunc = null;
- var bfunc = null;
-
- if ($.isArray(intrv)) {
- a = intrv[0];
- b = intrv[1];
- }
- else {
- a = intrv;
- }
-
- if (isNaN(a)) {
- // we have a string
- if (a.charAt(a.length - 1) === '%') {
- afunc = 'multiply';
- a = parseFloat(a)/100 + 1;
- }
- }
-
- else {
- a = parseFloat(a);
- afunc = 'add';
- }
-
- if (b !== null && isNaN(b)) {
- // we have a string
- if (b.charAt(b.length - 1) === '%') {
- bfunc = 'multiply';
- b = parseFloat(b)/100 + 1;
- }
- }
-
- else if (b !== null) {
- b = parseFloat(b);
- bfunc = 'add';
- }
-
- if (a !== null) {
- if (b === null) {
- b = -a;
- bfunc = afunc;
- if (bfunc === 'multiply') {
- b += 2;
- }
- }
-
- // make sure a always applies to hi band.
- if (a < b) {
- var temp = a;
- a = b;
- b = temp;
- temp = afunc;
- afunc = bfunc;
- bfunc = temp;
- }
-
- for (var i=0, l = data.length; i < l; i++) {
- switch (afunc) {
- case 'add':
- bands.hiData.push([data[i][0], data[i][1] + a]);
- break;
- case 'multiply':
- bands.hiData.push([data[i][0], data[i][1] * a]);
- break;
- }
- switch (bfunc) {
- case 'add':
- bands.lowData.push([data[i][0], data[i][1] + b]);
- break;
- case 'multiply':
- bands.lowData.push([data[i][0], data[i][1] * b]);
- break;
- }
- }
- }
-
- else {
- bands.show = false;
- }
- }
-
- var hd = bands.hiData;
- var ld = bands.lowData;
- for (var i = 0, l = hd.length; i<l; i++) {
- if ((hd[i][1] != null && hd[i][1] > bands._max) || bands._max == null) {
- bands._max = hd[i][1];
- }
- }
- for (var i = 0, l = ld.length; i<l; i++) {
- if ((ld[i][1] != null && ld[i][1] < bands._min) || bands._min == null) {
- bands._min = ld[i][1];
- }
- }
-
- // one last check for proper data
- // these don't apply any more since allowing arbitrary x,y values
- // if (bands.hiData.length != bands.lowData.length) {
- // bands.show = false;
- // }
-
- // if (bands.hiData.length != this.data.length) {
- // bands.show = false;
- // }
-
- if (bands.fillColor === null) {
- var c = $.jqplot.getColorComponents(bands.color);
- // now adjust alpha to differentiate fill
- c[3] = c[3] * 0.5;
- bands.fillColor = 'rgba(' + c[0] +', '+ c[1] +', '+ c[2] +', '+ c[3] + ')';
- }
- };
-
- function getSteps (d, f) {
- return (3.4182054+f) * Math.pow(d, -0.3534992);
- }
-
- function computeSteps (d1, d2) {
- var s = Math.sqrt(Math.pow((d2[0]- d1[0]), 2) + Math.pow ((d2[1] - d1[1]), 2));
- return 5.7648 * Math.log(s) + 7.4456;
- }
-
- function tanh (x) {
- var a = (Math.exp(2*x) - 1) / (Math.exp(2*x) + 1);
- return a;
- }
-
- //////////
- // computeConstrainedSmoothedData
- // An implementation of the constrained cubic spline interpolation
- // method as presented in:
- //
- // Kruger, CJC, Constrained Cubic Spine Interpolation for Chemical Engineering Applications
- // http://www.korf.co.uk/spline.pdf
- //
- // The implementation below borrows heavily from the sample Visual Basic
- // implementation by CJC Kruger found in http://www.korf.co.uk/spline.xls
- //
- /////////
-
- // called with scope of series
- function computeConstrainedSmoothedData (gd) {
- var smooth = this.renderer.smooth;
- var dim = this.canvas.getWidth();
- var xp = this._xaxis.series_p2u;
- var yp = this._yaxis.series_p2u;
- var steps =null;
- var _steps = null;
- var dist = gd.length/dim;
- var _smoothedData = [];
- var _smoothedPlotData = [];
-
- if (!isNaN(parseFloat(smooth))) {
- steps = parseFloat(smooth);
- }
- else {
- steps = getSteps(dist, 0.5);
- }
-
- var yy = [];
- var xx = [];
-
- for (var i=0, l = gd.length; i<l; i++) {
- yy.push(gd[i][1]);
- xx.push(gd[i][0]);
- }
-
- function dxx(x1, x0) {
- if (x1 - x0 == 0) {
- return Math.pow(10,10);
- }
- else {
- return x1 - x0;
- }
- }
-
- var A, B, C, D;
- // loop through each line segment. Have # points - 1 line segments. Nmber segments starting at 1.
- var nmax = gd.length - 1;
- for (var num = 1, gdl = gd.length; num<gdl; num++) {
- var gxx = [];
- var ggxx = [];
- // point at each end of segment.
- for (var j = 0; j < 2; j++) {
- var i = num - 1 + j; // point number, 0 to # points.
-
- if (i == 0 || i == nmax) {
- gxx[j] = Math.pow(10, 10);
- }
- else if (yy[i+1] - yy[i] == 0 || yy[i] - yy[i-1] == 0) {
- gxx[j] = 0;
- }
- else if (((xx[i+1] - xx[i]) / (yy[i+1] - yy[i]) + (xx[i] - xx[i-1]) / (yy[i] - yy[i-1])) == 0 ) {
- gxx[j] = 0;
- }
- else if ( (yy[i+1] - yy[i]) * (yy[i] - yy[i-1]) < 0 ) {
- gxx[j] = 0;
- }
-
- else {
- gxx[j] = 2 / (dxx(xx[i + 1], xx[i]) / (yy[i + 1] - yy[i]) + dxx(xx[i], xx[i - 1]) / (yy[i] - yy[i - 1]));
- }
- }
-
- // Reset first derivative (slope) at first and last point
- if (num == 1) {
- // First point has 0 2nd derivative
- gxx[0] = 3 / 2 * (yy[1] - yy[0]) / dxx(xx[1], xx[0]) - gxx[1] / 2;
- }
- else if (num == nmax) {
- // Last point has 0 2nd derivative
- gxx[1] = 3 / 2 * (yy[nmax] - yy[nmax - 1]) / dxx(xx[nmax], xx[nmax - 1]) - gxx[0] / 2;
- }
-
- // Calc second derivative at points
- ggxx[0] = -2 * (gxx[1] + 2 * gxx[0]) / dxx(xx[num], xx[num - 1]) + 6 * (yy[num] - yy[num - 1]) / Math.pow(dxx(xx[num], xx[num - 1]), 2);
- ggxx[1] = 2 * (2 * gxx[1] + gxx[0]) / dxx(xx[num], xx[num - 1]) - 6 * (yy[num] - yy[num - 1]) / Math.pow(dxx(xx[num], xx[num - 1]), 2);
-
- // Calc constants for cubic interpolation
- D = 1 / 6 * (ggxx[1] - ggxx[0]) / dxx(xx[num], xx[num - 1]);
- C = 1 / 2 * (xx[num] * ggxx[0] - xx[num - 1] * ggxx[1]) / dxx(xx[num], xx[num - 1]);
- B = (yy[num] - yy[num - 1] - C * (Math.pow(xx[num], 2) - Math.pow(xx[num - 1], 2)) - D * (Math.pow(xx[num], 3) - Math.pow(xx[num - 1], 3))) / dxx(xx[num], xx[num - 1]);
- A = yy[num - 1] - B * xx[num - 1] - C * Math.pow(xx[num - 1], 2) - D * Math.pow(xx[num - 1], 3);
-
- var increment = (xx[num] - xx[num - 1]) / steps;
- var temp, tempx;
-
- for (var j = 0, l = steps; j < l; j++) {
- temp = [];
- tempx = xx[num - 1] + j * increment;
- temp.push(tempx);
- temp.push(A + B * tempx + C * Math.pow(tempx, 2) + D * Math.pow(tempx, 3));
- _smoothedData.push(temp);
- _smoothedPlotData.push([xp(temp[0]), yp(temp[1])]);
- }
- }
-
- _smoothedData.push(gd[i]);
- _smoothedPlotData.push([xp(gd[i][0]), yp(gd[i][1])]);
-
- return [_smoothedData, _smoothedPlotData];
- }
-
- ///////
- // computeHermiteSmoothedData
- // A hermite spline smoothing of the plot data.
- // This implementation is derived from the one posted
- // by krypin on the jqplot-users mailing list:
- //
- // http://groups.google.com/group/jqplot-users/browse_thread/thread/748be6a445723cea?pli=1
- //
- // with a blog post:
- //
- // http://blog.statscollector.com/a-plugin-renderer-for-jqplot-to-draw-a-hermite-spline/
- //
- // and download of the original plugin:
- //
- // http://blog.statscollector.com/wp-content/uploads/2010/02/jqplot.hermiteSplineRenderer.js
- //////////
-
- // called with scope of series
- function computeHermiteSmoothedData (gd) {
- var smooth = this.renderer.smooth;
- var tension = this.renderer.tension;
- var dim = this.canvas.getWidth();
- var xp = this._xaxis.series_p2u;
- var yp = this._yaxis.series_p2u;
- var steps =null;
- var _steps = null;
- var a = null;
- var a1 = null;
- var a2 = null;
- var slope = null;
- var slope2 = null;
- var temp = null;
- var t, s, h1, h2, h3, h4;
- var TiX, TiY, Ti1X, Ti1Y;
- var pX, pY, p;
- var sd = [];
- var spd = [];
- var dist = gd.length/dim;
- var min, max, stretch, scale, shift;
- var _smoothedData = [];
- var _smoothedPlotData = [];
- if (!isNaN(parseFloat(smooth))) {
- steps = parseFloat(smooth);
- }
- else {
- steps = getSteps(dist, 0.5);
- }
- if (!isNaN(parseFloat(tension))) {
- tension = parseFloat(tension);
- }
-
- for (var i=0, l = gd.length-1; i < l; i++) {
-
- if (tension === null) {
- slope = Math.abs((gd[i+1][1] - gd[i][1]) / (gd[i+1][0] - gd[i][0]));
-
- min = 0.3;
- max = 0.6;
- stretch = (max - min)/2.0;
- scale = 2.5;
- shift = -1.4;
-
- temp = slope/scale + shift;
-
- a1 = stretch * tanh(temp) - stretch * tanh(shift) + min;
-
- // if have both left and right line segments, will use minimum tension.
- if (i > 0) {
- slope2 = Math.abs((gd[i][1] - gd[i-1][1]) / (gd[i][0] - gd[i-1][0]));
- }
- temp = slope2/scale + shift;
-
- a2 = stretch * tanh(temp) - stretch * tanh(shift) + min;
-
- a = (a1 + a2)/2.0;
-
- }
- else {
- a = tension;
- }
- for (t=0; t < steps; t++) {
- s = t / steps;
- h1 = (1 + 2*s)*Math.pow((1-s),2);
- h2 = s*Math.pow((1-s),2);
- h3 = Math.pow(s,2)*(3-2*s);
- h4 = Math.pow(s,2)*(s-1);
-
- if (gd[i-1]) {
- TiX = a * (gd[i+1][0] - gd[i-1][0]);
- TiY = a * (gd[i+1][1] - gd[i-1][1]);
- } else {
- TiX = a * (gd[i+1][0] - gd[i][0]);
- TiY = a * (gd[i+1][1] - gd[i][1]);
- }
- if (gd[i+2]) {
- Ti1X = a * (gd[i+2][0] - gd[i][0]);
- Ti1Y = a * (gd[i+2][1] - gd[i][1]);
- } else {
- Ti1X = a * (gd[i+1][0] - gd[i][0]);
- Ti1Y = a * (gd[i+1][1] - gd[i][1]);
- }
-
- pX = h1*gd[i][0] + h3*gd[i+1][0] + h2*TiX + h4*Ti1X;
- pY = h1*gd[i][1] + h3*gd[i+1][1] + h2*TiY + h4*Ti1Y;
- p = [pX, pY];
-
- _smoothedData.push(p);
- _smoothedPlotData.push([xp(pX), yp(pY)]);
- }
- }
- _smoothedData.push(gd[l]);
- _smoothedPlotData.push([xp(gd[l][0]), yp(gd[l][1])]);
-
- return [_smoothedData, _smoothedPlotData];
- }
-
- // setGridData
- // converts the user data values to grid coordinates and stores them
- // in the gridData array.
- // Called with scope of a series.
- $.jqplot.LineRenderer.prototype.setGridData = function(plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var data = this._plotData;
- var pdata = this._prevPlotData;
- this.gridData = [];
- this._prevGridData = [];
- this.renderer._smoothedData = [];
- this.renderer._smoothedPlotData = [];
- this.renderer._hiBandGridData = [];
- this.renderer._lowBandGridData = [];
- this.renderer._hiBandSmoothedData = [];
- this.renderer._lowBandSmoothedData = [];
- var bands = this.renderer.bands;
- var hasNull = false;
- for (var i=0, l=data.length; i < l; i++) {
- // if not a line series or if no nulls in data, push the converted point onto the array.
- if (data[i][0] != null && data[i][1] != null) {
- this.gridData.push([xp.call(this._xaxis, data[i][0]), yp.call(this._yaxis, data[i][1])]);
- }
- // else if there is a null, preserve it.
- else if (data[i][0] == null) {
- hasNull = true;
- this.gridData.push([null, yp.call(this._yaxis, data[i][1])]);
- }
- else if (data[i][1] == null) {
- hasNull = true;
- this.gridData.push([xp.call(this._xaxis, data[i][0]), null]);
- }
- // if not a line series or if no nulls in data, push the converted point onto the array.
- if (pdata[i] != null && pdata[i][0] != null && pdata[i][1] != null) {
- this._prevGridData.push([xp.call(this._xaxis, pdata[i][0]), yp.call(this._yaxis, pdata[i][1])]);
- }
- // else if there is a null, preserve it.
- else if (pdata[i] != null && pdata[i][0] == null) {
- this._prevGridData.push([null, yp.call(this._yaxis, pdata[i][1])]);
- }
- else if (pdata[i] != null && pdata[i][0] != null && pdata[i][1] == null) {
- this._prevGridData.push([xp.call(this._xaxis, pdata[i][0]), null]);
- }
- }
-
- // don't do smoothing or bands on broken lines.
- if (hasNull) {
- this.renderer.smooth = false;
- if (this._type === 'line') {
- bands.show = false;
- }
- }
-
- if (this._type === 'line' && bands.show) {
- for (var i=0, l=bands.hiData.length; i<l; i++) {
- this.renderer._hiBandGridData.push([xp.call(this._xaxis, bands.hiData[i][0]), yp.call(this._yaxis, bands.hiData[i][1])]);
- }
- for (var i=0, l=bands.lowData.length; i<l; i++) {
- this.renderer._lowBandGridData.push([xp.call(this._xaxis, bands.lowData[i][0]), yp.call(this._yaxis, bands.lowData[i][1])]);
- }
- }
-
- // calculate smoothed data if enough points and no nulls
- if (this._type === 'line' && this.renderer.smooth && this.gridData.length > 2) {
- var ret;
- if (this.renderer.constrainSmoothing) {
- ret = computeConstrainedSmoothedData.call(this, this.gridData);
- this.renderer._smoothedData = ret[0];
- this.renderer._smoothedPlotData = ret[1];
-
- if (bands.show) {
- ret = computeConstrainedSmoothedData.call(this, this.renderer._hiBandGridData);
- this.renderer._hiBandSmoothedData = ret[0];
- ret = computeConstrainedSmoothedData.call(this, this.renderer._lowBandGridData);
- this.renderer._lowBandSmoothedData = ret[0];
- }
-
- ret = null;
- }
- else {
- ret = computeHermiteSmoothedData.call(this, this.gridData);
- this.renderer._smoothedData = ret[0];
- this.renderer._smoothedPlotData = ret[1];
-
- if (bands.show) {
- ret = computeHermiteSmoothedData.call(this, this.renderer._hiBandGridData);
- this.renderer._hiBandSmoothedData = ret[0];
- ret = computeHermiteSmoothedData.call(this, this.renderer._lowBandGridData);
- this.renderer._lowBandSmoothedData = ret[0];
- }
-
- ret = null;
- }
- }
- };
-
- // makeGridData
- // converts any arbitrary data values to grid coordinates and
- // returns them. This method exists so that plugins can use a series'
- // linerenderer to generate grid data points without overwriting the
- // grid data associated with that series.
- // Called with scope of a series.
- $.jqplot.LineRenderer.prototype.makeGridData = function(data, plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var gd = [];
- var pgd = [];
- this.renderer._smoothedData = [];
- this.renderer._smoothedPlotData = [];
- this.renderer._hiBandGridData = [];
- this.renderer._lowBandGridData = [];
- this.renderer._hiBandSmoothedData = [];
- this.renderer._lowBandSmoothedData = [];
- var bands = this.renderer.bands;
- var hasNull = false;
- for (var i=0; i<data.length; i++) {
- // if not a line series or if no nulls in data, push the converted point onto the array.
- if (data[i][0] != null && data[i][1] != null) {
- gd.push([xp.call(this._xaxis, data[i][0]), yp.call(this._yaxis, data[i][1])]);
- }
- // else if there is a null, preserve it.
- else if (data[i][0] == null) {
- hasNull = true;
- gd.push([null, yp.call(this._yaxis, data[i][1])]);
- }
- else if (data[i][1] == null) {
- hasNull = true;
- gd.push([xp.call(this._xaxis, data[i][0]), null]);
- }
- }
-
- // don't do smoothing or bands on broken lines.
- if (hasNull) {
- this.renderer.smooth = false;
- if (this._type === 'line') {
- bands.show = false;
- }
- }
-
- if (this._type === 'line' && bands.show) {
- for (var i=0, l=bands.hiData.length; i<l; i++) {
- this.renderer._hiBandGridData.push([xp.call(this._xaxis, bands.hiData[i][0]), yp.call(this._yaxis, bands.hiData[i][1])]);
- }
- for (var i=0, l=bands.lowData.length; i<l; i++) {
- this.renderer._lowBandGridData.push([xp.call(this._xaxis, bands.lowData[i][0]), yp.call(this._yaxis, bands.lowData[i][1])]);
- }
- }
-
- if (this._type === 'line' && this.renderer.smooth && gd.length > 2) {
- var ret;
- if (this.renderer.constrainSmoothing) {
- ret = computeConstrainedSmoothedData.call(this, gd);
- this.renderer._smoothedData = ret[0];
- this.renderer._smoothedPlotData = ret[1];
-
- if (bands.show) {
- ret = computeConstrainedSmoothedData.call(this, this.renderer._hiBandGridData);
- this.renderer._hiBandSmoothedData = ret[0];
- ret = computeConstrainedSmoothedData.call(this, this.renderer._lowBandGridData);
- this.renderer._lowBandSmoothedData = ret[0];
- }
-
- ret = null;
- }
- else {
- ret = computeHermiteSmoothedData.call(this, gd);
- this.renderer._smoothedData = ret[0];
- this.renderer._smoothedPlotData = ret[1];
-
- if (bands.show) {
- ret = computeHermiteSmoothedData.call(this, this.renderer._hiBandGridData);
- this.renderer._hiBandSmoothedData = ret[0];
- ret = computeHermiteSmoothedData.call(this, this.renderer._lowBandGridData);
- this.renderer._lowBandSmoothedData = ret[0];
- }
-
- ret = null;
- }
- }
- return gd;
- };
-
-
- // called within scope of series.
- $.jqplot.LineRenderer.prototype.draw = function(ctx, gd, options, plot) {
- var i;
- // get a copy of the options, so we don't modify the original object.
- var opts = $.extend(true, {}, options);
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var fillAndStroke = (opts.fillAndStroke != undefined) ? opts.fillAndStroke : this.fillAndStroke;
- var xmin, ymin, xmax, ymax;
- ctx.save();
- if (gd.length) {
- if (showLine) {
- // if we fill, we'll have to add points to close the curve.
- if (fill) {
- if (this.fillToZero) {
- // have to break line up into shapes at axis crossings
- var negativeColor = this.negativeColor;
- if (! this.useNegativeColors) {
- negativeColor = opts.fillStyle;
- }
- var isnegative = false;
- var posfs = opts.fillStyle;
-
- // if stoking line as well as filling, get a copy of line data.
- if (fillAndStroke) {
- var fasgd = gd.slice(0);
- }
- // if not stacked, fill down to axis
- if (this.index == 0 || !this._stack) {
-
- var tempgd = [];
- var pd = (this.renderer.smooth) ? this.renderer._smoothedPlotData : this._plotData;
- this._areaPoints = [];
- var pyzero = this._yaxis.series_u2p(this.fillToValue);
- var pxzero = this._xaxis.series_u2p(this.fillToValue);
-
- opts.closePath = true;
-
- if (this.fillAxis == 'y') {
- tempgd.push([gd[0][0], pyzero]);
- this._areaPoints.push([gd[0][0], pyzero]);
-
- for (var i=0; i<gd.length-1; i++) {
- tempgd.push(gd[i]);
- this._areaPoints.push(gd[i]);
- // do we have an axis crossing?
- if (pd[i][1] * pd[i+1][1] < 0) {
- if (pd[i][1] < 0) {
- isnegative = true;
- opts.fillStyle = negativeColor;
- }
- else {
- isnegative = false;
- opts.fillStyle = posfs;
- }
-
- var xintercept = gd[i][0] + (gd[i+1][0] - gd[i][0]) * (pyzero-gd[i][1])/(gd[i+1][1] - gd[i][1]);
- tempgd.push([xintercept, pyzero]);
- this._areaPoints.push([xintercept, pyzero]);
- // now draw this shape and shadow.
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, tempgd, opts);
- }
- this.renderer.shapeRenderer.draw(ctx, tempgd, opts);
- // now empty temp array and continue
- tempgd = [[xintercept, pyzero]];
- // this._areaPoints = [[xintercept, pyzero]];
- }
- }
- if (pd[gd.length-1][1] < 0) {
- isnegative = true;
- opts.fillStyle = negativeColor;
- }
- else {
- isnegative = false;
- opts.fillStyle = posfs;
- }
- tempgd.push(gd[gd.length-1]);
- this._areaPoints.push(gd[gd.length-1]);
- tempgd.push([gd[gd.length-1][0], pyzero]);
- this._areaPoints.push([gd[gd.length-1][0], pyzero]);
- }
- // now draw the last area.
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, tempgd, opts);
- }
- this.renderer.shapeRenderer.draw(ctx, tempgd, opts);
-
-
- // var gridymin = this._yaxis.series_u2p(0);
- // // IE doesn't return new length on unshift
- // gd.unshift([gd[0][0], gridymin]);
- // len = gd.length;
- // gd.push([gd[len - 1][0], gridymin]);
- }
- // if stacked, fill to line below
- else {
- var prev = this._prevGridData;
- for (var i=prev.length; i>0; i--) {
- gd.push(prev[i-1]);
- // this._areaPoints.push(prev[i-1]);
- }
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, gd, opts);
- }
- this._areaPoints = gd;
- this.renderer.shapeRenderer.draw(ctx, gd, opts);
- }
- }
- /////////////////////////
- // Not filled to zero
- ////////////////////////
- else {
- // if stoking line as well as filling, get a copy of line data.
- if (fillAndStroke) {
- var fasgd = gd.slice(0);
- }
- // if not stacked, fill down to axis
- if (this.index == 0 || !this._stack) {
- // var gridymin = this._yaxis.series_u2p(this._yaxis.min) - this.gridBorderWidth / 2;
- var gridymin = ctx.canvas.height;
- // IE doesn't return new length on unshift
- gd.unshift([gd[0][0], gridymin]);
- var len = gd.length;
- gd.push([gd[len - 1][0], gridymin]);
- }
- // if stacked, fill to line below
- else {
- var prev = this._prevGridData;
- for (var i=prev.length; i>0; i--) {
- gd.push(prev[i-1]);
- }
- }
- this._areaPoints = gd;
-
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, gd, opts);
- }
-
- this.renderer.shapeRenderer.draw(ctx, gd, opts);
- }
- if (fillAndStroke) {
- var fasopts = $.extend(true, {}, opts, {fill:false, closePath:false});
- this.renderer.shapeRenderer.draw(ctx, fasgd, fasopts);
- //////////
- // TODO: figure out some way to do shadows nicely
- // if (shadow) {
- // this.renderer.shadowRenderer.draw(ctx, fasgd, fasopts);
- // }
- // now draw the markers
- if (this.markerRenderer.show) {
- if (this.renderer.smooth) {
- fasgd = this.gridData;
- }
- for (i=0; i<fasgd.length; i++) {
- this.markerRenderer.draw(fasgd[i][0], fasgd[i][1], ctx, opts.markerOptions);
- }
- }
- }
- }
- else {
-
- if (this.renderer.bands.show) {
- var bdat;
- var bopts = $.extend(true, {}, opts);
- if (this.renderer.bands.showLines) {
- bdat = (this.renderer.smooth) ? this.renderer._hiBandSmoothedData : this.renderer._hiBandGridData;
- this.renderer.shapeRenderer.draw(ctx, bdat, opts);
- bdat = (this.renderer.smooth) ? this.renderer._lowBandSmoothedData : this.renderer._lowBandGridData;
- this.renderer.shapeRenderer.draw(ctx, bdat, bopts);
- }
-
- if (this.renderer.bands.fill) {
- if (this.renderer.smooth) {
- bdat = this.renderer._hiBandSmoothedData.concat(this.renderer._lowBandSmoothedData.reverse());
- }
- else {
- bdat = this.renderer._hiBandGridData.concat(this.renderer._lowBandGridData.reverse());
- }
- this._areaPoints = bdat;
- bopts.closePath = true;
- bopts.fill = true;
- bopts.fillStyle = this.renderer.bands.fillColor;
- this.renderer.shapeRenderer.draw(ctx, bdat, bopts);
- }
- }
-
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, gd, opts);
- }
-
- this.renderer.shapeRenderer.draw(ctx, gd, opts);
- }
- }
- // calculate the bounding box
- var xmin = xmax = ymin = ymax = null;
- for (i=0; i<this._areaPoints.length; i++) {
- var p = this._areaPoints[i];
- if (xmin > p[0] || xmin == null) {
- xmin = p[0];
- }
- if (ymax < p[1] || ymax == null) {
- ymax = p[1];
- }
- if (xmax < p[0] || xmax == null) {
- xmax = p[0];
- }
- if (ymin > p[1] || ymin == null) {
- ymin = p[1];
- }
- }
-
- if (this.type === 'line' && this.renderer.bands.show) {
- ymax = this._yaxis.series_u2p(this.renderer.bands._min);
- ymin = this._yaxis.series_u2p(this.renderer.bands._max);
- }
-
- this._boundingBox = [[xmin, ymax], [xmax, ymin]];
-
- // now draw the markers
- if (this.markerRenderer.show && !fill) {
- if (this.renderer.smooth) {
- gd = this.gridData;
- }
- for (i=0; i<gd.length; i++) {
- if (gd[i][0] != null && gd[i][1] != null) {
- this.markerRenderer.draw(gd[i][0], gd[i][1], ctx, opts.markerOptions);
- }
- }
- }
- }
-
- ctx.restore();
- };
-
- $.jqplot.LineRenderer.prototype.drawShadow = function(ctx, gd, options) {
- // This is a no-op, shadows drawn with lines.
- };
-
- // called with scope of plot.
- // make sure to not leave anything highlighted.
- function postInit(target, data, options) {
- for (var i=0; i<this.series.length; i++) {
- if (this.series[i].renderer.constructor == $.jqplot.LineRenderer) {
- // don't allow mouseover and mousedown at same time.
- if (this.series[i].highlightMouseOver) {
- this.series[i].highlightMouseDown = false;
- }
- }
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.lineRenderer && this.plugins.lineRenderer.highlightCanvas) {
- this.plugins.lineRenderer.highlightCanvas.resetCanvas();
- this.plugins.lineRenderer.highlightCanvas = null;
- }
-
- this.plugins.lineRenderer.highlightedSeriesIndex = null;
- this.plugins.lineRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
-
- this.eventCanvas._elem.before(this.plugins.lineRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-lineRenderer-highlight-canvas', this._plotDimensions, this));
- this.plugins.lineRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- function highlight (plot, sidx, pidx, points) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.lineRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.lineRenderer.highlightedSeriesIndex = sidx;
- var opts = {fillStyle: s.highlightColor};
- if (s.type === 'line' && s.renderer.bands.show) {
- opts.fill = true;
- opts.closePath = true;
- }
- s.renderer.shapeRenderer.draw(canvas._ctx, points, opts);
- canvas = null;
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.lineRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.lineRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- canvas = null;
- }
-
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.lineRenderer.highlightedSeriesIndex)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, neighbor.seriesIndex, neighbor.pointIndex, neighbor.points);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.lineRenderer.highlightedSeriesIndex)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, neighbor.seriesIndex, neighbor.pointIndex, neighbor.points);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.lineRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var idx = plot.plugins.lineRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
-
- // class: $.jqplot.LinearAxisRenderer
- // The default jqPlot axis renderer, creating a numeric axis.
- $.jqplot.LinearAxisRenderer = function() {
- };
-
- // called with scope of axis object.
- $.jqplot.LinearAxisRenderer.prototype.init = function(options){
- // prop: breakPoints
- // EXPERIMENTAL!! Use at your own risk!
- // Works only with linear axes and the default tick renderer.
- // Array of [start, stop] points to create a broken axis.
- // Broken axes have a "jump" in them, which is an immediate
- // transition from a smaller value to a larger value.
- // Currently, axis ticks MUST be manually assigned if using breakPoints
- // by using the axis ticks array option.
- this.breakPoints = null;
- // prop: breakTickLabel
- // Label to use at the axis break if breakPoints are specified.
- this.breakTickLabel = "&asymp;";
- // prop: drawBaseline
- // True to draw the axis baseline.
- this.drawBaseline = true;
- // prop: baselineWidth
- // width of the baseline in pixels.
- this.baselineWidth = null;
- // prop: baselineColor
- // CSS color spec for the baseline.
- this.baselineColor = null;
- // prop: forceTickAt0
- // This will ensure that there is always a tick mark at 0.
- // If data range is strictly positive or negative,
- // this will force 0 to be inside the axis bounds unless
- // the appropriate axis pad (pad, padMin or padMax) is set
- // to 0, then this will force an axis min or max value at 0.
- // This has know effect when any of the following options
- // are set: autoscale, min, max, numberTicks or tickInterval.
- this.forceTickAt0 = false;
- // prop: forceTickAt100
- // This will ensure that there is always a tick mark at 100.
- // If data range is strictly above or below 100,
- // this will force 100 to be inside the axis bounds unless
- // the appropriate axis pad (pad, padMin or padMax) is set
- // to 0, then this will force an axis min or max value at 100.
- // This has know effect when any of the following options
- // are set: autoscale, min, max, numberTicks or tickInterval.
- this.forceTickAt100 = false;
- // prop: tickInset
- // Controls the amount to inset the first and last ticks from
- // the edges of the grid, in multiples of the tick interval.
- // 0 is no inset, 0.5 is one half a tick interval, 1 is a full
- // tick interval, etc.
- this.tickInset = 0;
- // prop: minorTicks
- // Number of ticks to add between "major" ticks.
- // Major ticks are ticks supplied by user or auto computed.
- // Minor ticks cannot be created by user.
- this.minorTicks = 0;
- // prop: alignTicks
- // true to align tick marks across opposed axes
- // such as from the y2axis to yaxis.
- this.alignTicks = false;
- this._autoFormatString = '';
- this._overrideFormatString = false;
- this._scalefact = 1.0;
- $.extend(true, this, options);
- if (this.breakPoints) {
- if (!$.isArray(this.breakPoints)) {
- this.breakPoints = null;
- }
- else if (this.breakPoints.length < 2 || this.breakPoints[1] <= this.breakPoints[0]) {
- this.breakPoints = null;
- }
- }
- if (this.numberTicks != null && this.numberTicks < 2) {
- this.numberTicks = 2;
- }
- this.resetDataBounds();
- };
-
- // called with scope of axis
- $.jqplot.LinearAxisRenderer.prototype.draw = function(ctx, plot) {
- if (this.show) {
- // populate the axis label and value properties.
- // createTicks is a method on the renderer, but
- // call it within the scope of the axis.
- this.renderer.createTicks.call(this, plot);
- // fill a div with axes labels in the right direction.
- // Need to pregenerate each axis to get it's bounds and
- // position it and the labels correctly on the plot.
- var dim=0;
- var temp;
- // Added for theming.
- if (this._elem) {
- // Memory Leaks patch
- //this._elem.empty();
- this._elem.emptyForce();
- this._elem = null;
- }
-
- this._elem = $(document.createElement('div'));
- this._elem.addClass('jqplot-axis jqplot-'+this.name);
- this._elem.css('position', 'absolute');
-
-
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- this._elem.width(this._plotDimensions.width);
- }
- else {
- this._elem.height(this._plotDimensions.height);
- }
-
- // create a _label object.
- this.labelOptions.axis = this.name;
- this._label = new this.labelRenderer(this.labelOptions);
- if (this._label.show) {
- var elem = this._label.draw(ctx, plot);
- elem.appendTo(this._elem);
- elem = null;
- }
-
- var t = this._ticks;
- var tick;
- for (var i=0; i<t.length; i++) {
- tick = t[i];
- if (tick.show && tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- this._elem.append(tick.draw(ctx, plot));
- }
- }
- tick = null;
- t = null;
- }
- return this._elem;
- };
-
- // called with scope of an axis
- $.jqplot.LinearAxisRenderer.prototype.reset = function() {
- this.min = this._options.min;
- this.max = this._options.max;
- this.tickInterval = this._options.tickInterval;
- this.numberTicks = this._options.numberTicks;
- this._autoFormatString = '';
- if (this._overrideFormatString && this.tickOptions && this.tickOptions.formatString) {
- this.tickOptions.formatString = '';
- }
-
- // this._ticks = this.__ticks;
- };
-
- // called with scope of axis
- $.jqplot.LinearAxisRenderer.prototype.set = function() {
- var dim = 0;
- var temp;
- var w = 0;
- var h = 0;
- var lshow = (this._label == null) ? false : this._label.show;
- if (this.show) {
- var t = this._ticks;
- var tick;
- for (var i=0; i<t.length; i++) {
- tick = t[i];
- if (!tick._breakTick && tick.show && tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- temp = tick._elem.outerHeight(true);
- }
- else {
- temp = tick._elem.outerWidth(true);
- }
- if (temp > dim) {
- dim = temp;
- }
- }
- }
- tick = null;
- t = null;
-
- if (lshow) {
- w = this._label._elem.outerWidth(true);
- h = this._label._elem.outerHeight(true);
- }
- if (this.name == 'xaxis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', bottom:'0px'});
- }
- else if (this.name == 'x2axis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', top:'0px'});
- }
- else if (this.name == 'yaxis') {
- dim = dim + w;
- this._elem.css({'width':dim+'px', left:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- else {
- dim = dim + w;
- this._elem.css({'width':dim+'px', right:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.LinearAxisRenderer.prototype.createTicks = function(plot) {
- // we're are operating on an axis here
- var ticks = this._ticks;
- var userTicks = this.ticks;
- var name = this.name;
- // databounds were set on axis initialization.
- var db = this._dataBounds;
- var dim = (this.name.charAt(0) === 'x') ? this._plotDimensions.width : this._plotDimensions.height;
- var interval;
- var min, max;
- var pos1, pos2;
- var tt, i;
- // get a copy of user's settings for min/max.
- var userMin = this.min;
- var userMax = this.max;
- var userNT = this.numberTicks;
- var userTI = this.tickInterval;
-
- var threshold = 30;
- this._scalefact = (Math.max(dim, threshold+1) - threshold)/300.0;
-
- // if we already have ticks, use them.
- // ticks must be in order of increasing value.
-
- if (userTicks.length) {
- // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
- for (i=0; i<userTicks.length; i++){
- var ut = userTicks[i];
- var t = new this.tickRenderer(this.tickOptions);
- if ($.isArray(ut)) {
- t.value = ut[0];
- if (this.breakPoints) {
- if (ut[0] == this.breakPoints[0]) {
- t.label = this.breakTickLabel;
- t._breakTick = true;
- t.showGridline = false;
- t.showMark = false;
- }
- else if (ut[0] > this.breakPoints[0] && ut[0] <= this.breakPoints[1]) {
- t.show = false;
- t.showGridline = false;
- t.label = ut[1];
- }
- else {
- t.label = ut[1];
- }
- }
- else {
- t.label = ut[1];
- }
- t.setTick(ut[0], this.name);
- this._ticks.push(t);
- }
-
- else if ($.isPlainObject(ut)) {
- $.extend(true, t, ut);
- t.axis = this.name;
- this._ticks.push(t);
- }
-
- else {
- t.value = ut;
- if (this.breakPoints) {
- if (ut == this.breakPoints[0]) {
- t.label = this.breakTickLabel;
- t._breakTick = true;
- t.showGridline = false;
- t.showMark = false;
- }
- else if (ut > this.breakPoints[0] && ut <= this.breakPoints[1]) {
- t.show = false;
- t.showGridline = false;
- }
- }
- t.setTick(ut, this.name);
- this._ticks.push(t);
- }
- }
- this.numberTicks = userTicks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this.numberTicks-1].value;
- this.tickInterval = (this.max - this.min) / (this.numberTicks - 1);
- }
-
- // we don't have any ticks yet, let's make some!
- else {
- if (name == 'xaxis' || name == 'x2axis') {
- dim = this._plotDimensions.width;
- }
- else {
- dim = this._plotDimensions.height;
- }
-
- var _numberTicks = this.numberTicks;
-
- // if aligning this axis, use number of ticks from previous axis.
- // Do I need to reset somehow if alignTicks is changed and then graph is replotted??
- if (this.alignTicks) {
- if (this.name === 'x2axis' && plot.axes.xaxis.show) {
- _numberTicks = plot.axes.xaxis.numberTicks;
- }
- else if (this.name.charAt(0) === 'y' && this.name !== 'yaxis' && this.name !== 'yMidAxis' && plot.axes.yaxis.show) {
- _numberTicks = plot.axes.yaxis.numberTicks;
- }
- }
-
- min = ((this.min != null) ? this.min : db.min);
- max = ((this.max != null) ? this.max : db.max);
-
- var range = max - min;
- var rmin, rmax;
- var temp;
-
- if (this.tickOptions == null || !this.tickOptions.formatString) {
- this._overrideFormatString = true;
- }
-
- // Doing complete autoscaling
- if (this.min == null || this.max == null && this.tickInterval == null && !this.autoscale) {
- // Check if user must have tick at 0 or 100 and ensure they are in range.
- // The autoscaling algorithm will always place ticks at 0 and 100 if they are in range.
- if (this.forceTickAt0) {
- if (min > 0) {
- min = 0;
- }
- if (max < 0) {
- max = 0;
- }
- }
-
- if (this.forceTickAt100) {
- if (min > 100) {
- min = 100;
- }
- if (max < 100) {
- max = 100;
- }
- }
-
- var keepMin = false,
- keepMax = false;
-
- if (this.min != null) {
- keepMin = true;
- }
-
- else if (this.max != null) {
- keepMax = true;
- }
-
- // var threshold = 30;
- // var tdim = Math.max(dim, threshold+1);
- // this._scalefact = (tdim-threshold)/300.0;
- var ret = $.jqplot.LinearTickGenerator(min, max, this._scalefact, _numberTicks, keepMin, keepMax);
- // calculate a padded max and min, points should be less than these
- // so that they aren't too close to the edges of the plot.
- // User can adjust how much padding is allowed with pad, padMin and PadMax options.
- // If min or max is set, don't pad that end of axis.
- var tumin = (this.min != null) ? min : min + range*(this.padMin - 1);
- var tumax = (this.max != null) ? max : max - range*(this.padMax - 1);
-
- // if they're equal, we shouldn't have to do anything, right?
- // if (min <=tumin || max >= tumax) {
- if (min <tumin || max > tumax) {
- tumin = (this.min != null) ? min : min - range*(this.padMin - 1);
- tumax = (this.max != null) ? max : max + range*(this.padMax - 1);
- ret = $.jqplot.LinearTickGenerator(tumin, tumax, this._scalefact, _numberTicks, keepMin, keepMax);
- }
-
- this.min = ret[0];
- this.max = ret[1];
- // if numberTicks specified, it should return the same.
- this.numberTicks = ret[2];
- this._autoFormatString = ret[3];
- this.tickInterval = ret[4];
- }
-
- // User has specified some axis scale related option, can use auto algorithm
- else {
-
- // if min and max are same, space them out a bit
- if (min == max) {
- var adj = 0.05;
- if (min > 0) {
- adj = Math.max(Math.log(min)/Math.LN10, 0.05);
- }
- min -= adj;
- max += adj;
- }
-
- // autoscale. Can't autoscale if min or max is supplied.
- // Will use numberTicks and tickInterval if supplied. Ticks
- // across multiple axes may not line up depending on how
- // bars are to be plotted.
- if (this.autoscale && this.min == null && this.max == null) {
- var rrange, ti, margin;
- var forceMinZero = false;
- var forceZeroLine = false;
- var intervals = {min:null, max:null, average:null, stddev:null};
- // if any series are bars, or if any are fill to zero, and if this
- // is the axis to fill toward, check to see if we can start axis at zero.
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- var faname = (s.fillAxis == 'x') ? s._xaxis.name : s._yaxis.name;
- // check to see if this is the fill axis
- if (this.name == faname) {
- var vals = s._plotValues[s.fillAxis];
- var vmin = vals[0];
- var vmax = vals[0];
- for (var j=1; j<vals.length; j++) {
- if (vals[j] < vmin) {
- vmin = vals[j];
- }
- else if (vals[j] > vmax) {
- vmax = vals[j];
- }
- }
- var dp = (vmax - vmin) / vmax;
- // is this sries a bar?
- if (s.renderer.constructor == $.jqplot.BarRenderer) {
- // if no negative values and could also check range.
- if (vmin >= 0 && (s.fillToZero || dp > 0.1)) {
- forceMinZero = true;
- }
- else {
- forceMinZero = false;
- if (s.fill && s.fillToZero && vmin < 0 && vmax > 0) {
- forceZeroLine = true;
- }
- else {
- forceZeroLine = false;
- }
- }
- }
-
- // if not a bar and filling, use appropriate method.
- else if (s.fill) {
- if (vmin >= 0 && (s.fillToZero || dp > 0.1)) {
- forceMinZero = true;
- }
- else if (vmin < 0 && vmax > 0 && s.fillToZero) {
- forceMinZero = false;
- forceZeroLine = true;
- }
- else {
- forceMinZero = false;
- forceZeroLine = false;
- }
- }
-
- // if not a bar and not filling, only change existing state
- // if it doesn't make sense
- else if (vmin < 0) {
- forceMinZero = false;
- }
- }
- }
-
- // check if we need make axis min at 0.
- if (forceMinZero) {
- // compute number of ticks
- this.numberTicks = 2 + Math.ceil((dim-(this.tickSpacing-1))/this.tickSpacing);
- this.min = 0;
- userMin = 0;
- // what order is this range?
- // what tick interval does that give us?
- ti = max/(this.numberTicks-1);
- temp = Math.pow(10, Math.abs(Math.floor(Math.log(ti)/Math.LN10)));
- if (ti/temp == parseInt(ti/temp, 10)) {
- ti += temp;
- }
- this.tickInterval = Math.ceil(ti/temp) * temp;
- this.max = this.tickInterval * (this.numberTicks - 1);
- }
-
- // check if we need to make sure there is a tick at 0.
- else if (forceZeroLine) {
- // compute number of ticks
- this.numberTicks = 2 + Math.ceil((dim-(this.tickSpacing-1))/this.tickSpacing);
- var ntmin = Math.ceil(Math.abs(min)/range*(this.numberTicks-1));
- var ntmax = this.numberTicks - 1 - ntmin;
- ti = Math.max(Math.abs(min/ntmin), Math.abs(max/ntmax));
- temp = Math.pow(10, Math.abs(Math.floor(Math.log(ti)/Math.LN10)));
- this.tickInterval = Math.ceil(ti/temp) * temp;
- this.max = this.tickInterval * ntmax;
- this.min = -this.tickInterval * ntmin;
- }
-
- // if nothing else, do autoscaling which will try to line up ticks across axes.
- else {
- if (this.numberTicks == null){
- if (this.tickInterval) {
- this.numberTicks = 3 + Math.ceil(range / this.tickInterval);
- }
- else {
- this.numberTicks = 2 + Math.ceil((dim-(this.tickSpacing-1))/this.tickSpacing);
- }
- }
-
- if (this.tickInterval == null) {
- // get a tick interval
- ti = range/(this.numberTicks - 1);
-
- if (ti < 1) {
- temp = Math.pow(10, Math.abs(Math.floor(Math.log(ti)/Math.LN10)));
- }
- else {
- temp = 1;
- }
- this.tickInterval = Math.ceil(ti*temp*this.pad)/temp;
- }
- else {
- temp = 1 / this.tickInterval;
- }
-
- // try to compute a nicer, more even tick interval
- // temp = Math.pow(10, Math.floor(Math.log(ti)/Math.LN10));
- // this.tickInterval = Math.ceil(ti/temp) * temp;
- rrange = this.tickInterval * (this.numberTicks - 1);
- margin = (rrange - range)/2;
-
- if (this.min == null) {
- this.min = Math.floor(temp*(min-margin))/temp;
- }
- if (this.max == null) {
- this.max = this.min + rrange;
- }
- }
-
- // Compute a somewhat decent format string if it is needed.
- // get precision of interval and determine a format string.
- var sf = $.jqplot.getSignificantFigures(this.tickInterval);
-
- var fstr;
-
- // if we have only a whole number, use integer formatting
- if (sf.digitsLeft >= sf.significantDigits) {
- fstr = '%d';
- }
-
- else {
- var temp = Math.max(0, 5 - sf.digitsLeft);
- temp = Math.min(temp, sf.digitsRight);
- fstr = '%.'+ temp + 'f';
- }
-
- this._autoFormatString = fstr;
- }
-
- // Use the default algorithm which pads each axis to make the chart
- // centered nicely on the grid.
- else {
-
- rmin = (this.min != null) ? this.min : min - range*(this.padMin - 1);
- rmax = (this.max != null) ? this.max : max + range*(this.padMax - 1);
- range = rmax - rmin;
-
- if (this.numberTicks == null){
- // if tickInterval is specified by user, we will ignore computed maximum.
- // max will be equal or greater to fit even # of ticks.
- if (this.tickInterval != null) {
- this.numberTicks = Math.ceil((rmax - rmin)/this.tickInterval)+1;
- }
- else if (dim > 100) {
- this.numberTicks = parseInt(3+(dim-100)/75, 10);
- }
- else {
- this.numberTicks = 2;
- }
- }
-
- if (this.tickInterval == null) {
- this.tickInterval = range / (this.numberTicks-1);
- }
-
- if (this.max == null) {
- rmax = rmin + this.tickInterval*(this.numberTicks - 1);
- }
- if (this.min == null) {
- rmin = rmax - this.tickInterval*(this.numberTicks - 1);
- }
-
- // get precision of interval and determine a format string.
- var sf = $.jqplot.getSignificantFigures(this.tickInterval);
-
- var fstr;
-
- // if we have only a whole number, use integer formatting
- if (sf.digitsLeft >= sf.significantDigits) {
- fstr = '%d';
- }
-
- else {
- var temp = Math.max(0, 5 - sf.digitsLeft);
- temp = Math.min(temp, sf.digitsRight);
- fstr = '%.'+ temp + 'f';
- }
-
-
- this._autoFormatString = fstr;
-
- this.min = rmin;
- this.max = rmax;
- }
-
- if (this.renderer.constructor == $.jqplot.LinearAxisRenderer && this._autoFormatString == '') {
- // fix for misleading tick display with small range and low precision.
- range = this.max - this.min;
- // figure out precision
- var temptick = new this.tickRenderer(this.tickOptions);
- // use the tick formatString or, the default.
- var fs = temptick.formatString || $.jqplot.config.defaultTickFormatString;
- var fs = fs.match($.jqplot.sprintf.regex)[0];
- var precision = 0;
- if (fs) {
- if (fs.search(/[fFeEgGpP]/) > -1) {
- var m = fs.match(/\%\.(\d{0,})?[eEfFgGpP]/);
- if (m) {
- precision = parseInt(m[1], 10);
- }
- else {
- precision = 6;
- }
- }
- else if (fs.search(/[di]/) > -1) {
- precision = 0;
- }
- // fact will be <= 1;
- var fact = Math.pow(10, -precision);
- if (this.tickInterval < fact) {
- // need to correct underrange
- if (userNT == null && userTI == null) {
- this.tickInterval = fact;
- if (userMax == null && userMin == null) {
- // this.min = Math.floor((this._dataBounds.min - this.tickInterval)/fact) * fact;
- this.min = Math.floor(this._dataBounds.min/fact) * fact;
- if (this.min == this._dataBounds.min) {
- this.min = this._dataBounds.min - this.tickInterval;
- }
- // this.max = Math.ceil((this._dataBounds.max + this.tickInterval)/fact) * fact;
- this.max = Math.ceil(this._dataBounds.max/fact) * fact;
- if (this.max == this._dataBounds.max) {
- this.max = this._dataBounds.max + this.tickInterval;
- }
- var n = (this.max - this.min)/this.tickInterval;
- n = n.toFixed(11);
- n = Math.ceil(n);
- this.numberTicks = n + 1;
- }
- else if (userMax == null) {
- // add one tick for top of range.
- var n = (this._dataBounds.max - this.min) / this.tickInterval;
- n = n.toFixed(11);
- this.numberTicks = Math.ceil(n) + 2;
- this.max = this.min + this.tickInterval * (this.numberTicks-1);
- }
- else if (userMin == null) {
- // add one tick for bottom of range.
- var n = (this.max - this._dataBounds.min) / this.tickInterval;
- n = n.toFixed(11);
- this.numberTicks = Math.ceil(n) + 2;
- this.min = this.max - this.tickInterval * (this.numberTicks-1);
- }
- else {
- // calculate a number of ticks so max is within axis scale
- this.numberTicks = Math.ceil((userMax - userMin)/this.tickInterval) + 1;
- // if user's min and max don't fit evenly in ticks, adjust.
- // This takes care of cases such as user min set to 0, max set to 3.5 but tick
- // format string set to %d (integer ticks)
- this.min = Math.floor(userMin*Math.pow(10, precision))/Math.pow(10, precision);
- this.max = Math.ceil(userMax*Math.pow(10, precision))/Math.pow(10, precision);
- // this.max = this.min + this.tickInterval*(this.numberTicks-1);
- this.numberTicks = Math.ceil((this.max - this.min)/this.tickInterval) + 1;
- }
- }
- }
- }
- }
-
- }
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- this.tickOptions = this.tickOptions || {};
- this.tickOptions.formatString = this._autoFormatString;
- }
-
- var t, to;
- for (var i=0; i<this.numberTicks; i++){
- tt = this.min + i * this.tickInterval;
- t = new this.tickRenderer(this.tickOptions);
- // var t = new $.jqplot.AxisTickRenderer(this.tickOptions);
-
- t.setTick(tt, this.name);
- this._ticks.push(t);
-
- if (i < this.numberTicks - 1) {
- for (var j=0; j<this.minorTicks; j++) {
- tt += this.tickInterval/(this.minorTicks+1);
- to = $.extend(true, {}, this.tickOptions, {name:this.name, value:tt, label:'', isMinorTick:true});
- t = new this.tickRenderer(to);
- this._ticks.push(t);
- }
- }
- t = null;
- }
- }
-
- if (this.tickInset) {
- this.min = this.min - this.tickInset * this.tickInterval;
- this.max = this.max + this.tickInset * this.tickInterval;
- }
-
- ticks = null;
- };
-
- // Used to reset just the values of the ticks and then repack, which will
- // recalculate the positioning functions. It is assuemd that the
- // number of ticks is the same and the values of the new array are at the
- // proper interval.
- // This method needs to be called with the scope of an axis object, like:
- //
- // > plot.axes.yaxis.renderer.resetTickValues.call(plot.axes.yaxis, yarr);
- //
- $.jqplot.LinearAxisRenderer.prototype.resetTickValues = function(opts) {
- if ($.isArray(opts) && opts.length == this._ticks.length) {
- var t;
- for (var i=0; i<opts.length; i++) {
- t = this._ticks[i];
- t.value = opts[i];
- t.label = t.formatter(t.formatString, opts[i]);
- t.label = t.prefix + t.label;
- t._elem.html(t.label);
- }
- t = null;
- this.min = $.jqplot.arrayMin(opts);
- this.max = $.jqplot.arrayMax(opts);
- this.pack();
- }
- // Not implemented yet.
- // else if ($.isPlainObject(opts)) {
- //
- // }
- };
-
- // called with scope of axis
- $.jqplot.LinearAxisRenderer.prototype.pack = function(pos, offsets) {
- // Add defaults for repacking from resetTickValues function.
- pos = pos || {};
- offsets = offsets || this._offsets;
-
- var ticks = this._ticks;
- var max = this.max;
- var min = this.min;
- var offmax = offsets.max;
- var offmin = offsets.min;
- var lshow = (this._label == null) ? false : this._label.show;
-
- for (var p in pos) {
- this._elem.css(p, pos[p]);
- }
-
- this._offsets = offsets;
- // pixellength will be + for x axes and - for y axes becasue pixels always measured from top left.
- var pixellength = offmax - offmin;
- var unitlength = max - min;
-
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
- if (this.breakPoints) {
- unitlength = unitlength - this.breakPoints[1] + this.breakPoints[0];
-
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- this.u2p = function(u){
- if (u > this.breakPoints[0] && u < this.breakPoints[1]){
- u = this.breakPoints[0];
- }
- if (u <= this.breakPoints[0]) {
- return (u - min) * pixellength / unitlength + offmin;
- }
- else {
- return (u - this.breakPoints[1] + this.breakPoints[0] - min) * pixellength / unitlength + offmin;
- }
- };
-
- if (this.name.charAt(0) == 'x'){
- this.series_u2p = function(u){
- if (u > this.breakPoints[0] && u < this.breakPoints[1]){
- u = this.breakPoints[0];
- }
- if (u <= this.breakPoints[0]) {
- return (u - min) * pixellength / unitlength;
- }
- else {
- return (u - this.breakPoints[1] + this.breakPoints[0] - min) * pixellength / unitlength;
- }
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- else {
- this.series_u2p = function(u){
- if (u > this.breakPoints[0] && u < this.breakPoints[1]){
- u = this.breakPoints[0];
- }
- if (u >= this.breakPoints[1]) {
- return (u - max) * pixellength / unitlength;
- }
- else {
- return (u + this.breakPoints[1] - this.breakPoints[0] - max) * pixellength / unitlength;
- }
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
- }
- else {
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- this.u2p = function(u){
- return (u - min) * pixellength / unitlength + offmin;
- };
-
- if (this.name == 'xaxis' || this.name == 'x2axis'){
- this.series_u2p = function(u){
- return (u - min) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- else {
- this.series_u2p = function(u){
- return (u - max) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
- }
-
- if (this.show) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
-
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'xaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- if (temp * t.angle < 0) {
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- }
- // position at start
- else {
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- }
- break;
- case 'end':
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- case 'start':
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- break;
- case 'middle':
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- default:
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- }
- }
- else {
- shim = -t.getWidth()/2;
- }
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('left', val);
- t.pack();
- }
- }
- if (lshow) {
- var w = this._label._elem.outerWidth(true);
- this._label._elem.css('left', offmin + pixellength/2 - w/2 + 'px');
- if (this.name == 'xaxis') {
- this._label._elem.css('bottom', '0px');
- }
- else {
- this._label._elem.css('top', '0px');
- }
- this._label.pack();
- }
- }
- else {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'yaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- case 'end':
- if (temp * t.angle < 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'start':
- if (t.angle > 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'middle':
- // if (t.angle > 0) {
- // shim = -t.getHeight()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- // }
- // else {
- // shim = -t.getHeight()/2 - t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- // }
- shim = -t.getHeight()/2;
- break;
- default:
- shim = -t.getHeight()/2;
- break;
- }
- }
- else {
- shim = -t.getHeight()/2;
- }
-
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('top', val);
- t.pack();
- }
- }
- if (lshow) {
- var h = this._label._elem.outerHeight(true);
- this._label._elem.css('top', offmax - pixellength/2 - h/2 + 'px');
- if (this.name == 'yaxis') {
- this._label._elem.css('left', '0px');
- }
- else {
- this._label._elem.css('right', '0px');
- }
- this._label.pack();
- }
- }
- }
-
- ticks = null;
- };
-
-
- /**
- * The following code was generaously given to me a while back by Scott Prahl.
- * He did a good job at computing axes min, max and number of ticks for the
- * case where the user has not set any scale related parameters (tickInterval,
- * numberTicks, min or max). I had ignored this use case for a long time,
- * focusing on the more difficult case where user has set some option controlling
- * tick generation. Anyway, about time I got this into jqPlot.
- * Thanks Scott!!
- */
-
- /**
- * Copyright (c) 2010 Scott Prahl
- * The next three routines are currently available for use in all personal
- * or commercial projects under both the MIT and GPL version 2.0 licenses.
- * This means that you can choose the license that best suits your project
- * and use it accordingly.
- */
-
- // A good format string depends on the interval. If the interval is greater
- // than 1 then there is no need to show any decimal digits. If it is < 1.0, then
- // use the magnitude of the interval to determine the number of digits to show.
- function bestFormatString (interval)
- {
- var fstr;
- interval = Math.abs(interval);
- if (interval >= 10) {
- fstr = '%d';
- }
-
- else if (interval > 1) {
- if (interval === parseInt(interval, 10)) {
- fstr = '%d';
- }
- else {
- fstr = '%.1f';
- }
- }
-
- else {
- var expv = -Math.floor(Math.log(interval)/Math.LN10);
- fstr = '%.' + expv + 'f';
- }
-
- return fstr;
- }
-
- var _factors = [0.1, 0.2, 0.3, 0.4, 0.5, 0.8, 1, 2, 3, 4, 5];
-
- var _getLowerFactor = function(f) {
- var i = _factors.indexOf(f);
- if (i > 0) {
- return _factors[i-1];
- }
- else {
- return _factors[_factors.length - 1] / 100;
- }
- };
-
- var _getHigherFactor = function(f) {
- var i = _factors.indexOf(f);
- if (i < _factors.length-1) {
- return _factors[i+1];
- }
- else {
- return _factors[0] * 100;
- }
- };
-
- // Given a fixed minimum and maximum and a target number ot ticks
- // figure out the best interval and
- // return min, max, number ticks, format string and tick interval
- function bestConstrainedInterval(min, max, nttarget) {
- // run through possible number to ticks and see which interval is best
- var low = Math.floor(nttarget/2);
- var hi = Math.ceil(nttarget*1.5);
- var badness = Number.MAX_VALUE;
- var r = (max - min);
- var temp;
- var sd;
- var bestNT;
- var gsf = $.jqplot.getSignificantFigures;
- var fsd;
- var fs;
- var currentNT;
- var bestPrec;
-
- for (var i=0, l=hi-low+1; i<l; i++) {
- currentNT = low + i;
- temp = r/(currentNT-1);
- sd = gsf(temp);
-
- temp = Math.abs(nttarget - currentNT) + sd.digitsRight;
- if (temp < badness) {
- badness = temp;
- bestNT = currentNT;
- bestPrec = sd.digitsRight;
- }
- else if (temp === badness) {
- // let nicer ticks trump number ot ticks
- if (sd.digitsRight < bestPrec) {
- bestNT = currentNT;
- bestPrec = sd.digitsRight;
- }
- }
-
- }
-
- fsd = Math.max(bestPrec, Math.max(gsf(min).digitsRight, gsf(max).digitsRight));
- if (fsd === 0) {
- fs = '%d';
- }
- else {
- fs = '%.' + fsd + 'f';
- }
- temp = r / (bestNT - 1);
- // min, max, number ticks, format string, tick interval
- return [min, max, bestNT, fs, temp];
- }
-
- // This will return an interval of form 2 * 10^n, 5 * 10^n or 10 * 10^n
- // it is based soley on the range and number of ticks. So if user specifies
- // number of ticks, use this.
- function bestInterval(range, numberTicks) {
- numberTicks = numberTicks || 7;
- var minimum = range / (numberTicks - 1);
- var magnitude = Math.pow(10, Math.floor(Math.log(minimum) / Math.LN10));
- var residual = minimum / magnitude;
- var interval;
- // "nicest" ranges are 1, 2, 5 or powers of these.
- // for magnitudes below 1, only allow these.
- if (magnitude < 1) {
- if (residual > 5) {
- interval = 10 * magnitude;
- }
- else if (residual > 2) {
- interval = 5 * magnitude;
- }
- else if (residual > 1) {
- interval = 2 * magnitude;
- }
- else {
- interval = magnitude;
- }
- }
- // for large ranges (whole integers), allow intervals like 3, 4 or powers of these.
- // this helps a lot with poor choices for number of ticks.
- else {
- if (residual > 5) {
- interval = 10 * magnitude;
- }
- else if (residual > 4) {
- interval = 5 * magnitude;
- }
- else if (residual > 3) {
- interval = 4 * magnitude;
- }
- else if (residual > 2) {
- interval = 3 * magnitude;
- }
- else if (residual > 1) {
- interval = 2 * magnitude;
- }
- else {
- interval = magnitude;
- }
- }
-
- return interval;
- }
-
- // This will return an interval of form 2 * 10^n, 5 * 10^n or 10 * 10^n
- // it is based soley on the range of data, number of ticks must be computed later.
- function bestLinearInterval(range, scalefact) {
- scalefact = scalefact || 1;
- var expv = Math.floor(Math.log(range)/Math.LN10);
- var magnitude = Math.pow(10, expv);
- // 0 < f < 10
- var f = range / magnitude;
- var fact;
- // for large plots, scalefact will decrease f and increase number of ticks.
- // for small plots, scalefact will increase f and decrease number of ticks.
- f = f/scalefact;
-
- // for large plots, smaller interval, more ticks.
- if (f<=0.38) {
- fact = 0.1;
- }
- else if (f<=1.6) {
- fact = 0.2;
- }
- else if (f<=4.0) {
- fact = 0.5;
- }
- else if (f<=8.0) {
- fact = 1.0;
- }
- // for very small plots, larger interval, less ticks in number ticks
- else if (f<=16.0) {
- fact = 2;
- }
- else {
- fact = 5;
- }
-
- return fact*magnitude;
- }
-
- function bestLinearComponents(range, scalefact) {
- var expv = Math.floor(Math.log(range)/Math.LN10);
- var magnitude = Math.pow(10, expv);
- // 0 < f < 10
- var f = range / magnitude;
- var interval;
- var fact;
- // for large plots, scalefact will decrease f and increase number of ticks.
- // for small plots, scalefact will increase f and decrease number of ticks.
- f = f/scalefact;
-
- // for large plots, smaller interval, more ticks.
- if (f<=0.38) {
- fact = 0.1;
- }
- else if (f<=1.6) {
- fact = 0.2;
- }
- else if (f<=4.0) {
- fact = 0.5;
- }
- else if (f<=8.0) {
- fact = 1.0;
- }
- // for very small plots, larger interval, less ticks in number ticks
- else if (f<=16.0) {
- fact = 2;
- }
- // else if (f<=20.0) {
- // fact = 3;
- // }
- // else if (f<=24.0) {
- // fact = 4;
- // }
- else {
- fact = 5;
- }
-
- interval = fact * magnitude;
-
- return [interval, fact, magnitude];
- }
-
- // Given the min and max for a dataset, return suitable endpoints
- // for the graphing, a good number for the number of ticks, and a
- // format string so that extraneous digits are not displayed.
- // returned is an array containing [min, max, nTicks, format]
- $.jqplot.LinearTickGenerator = function(axis_min, axis_max, scalefact, numberTicks, keepMin, keepMax) {
- // Set to preserve EITHER min OR max.
- // If min is preserved, max must be free.
- keepMin = (keepMin === null) ? false : keepMin;
- keepMax = (keepMax === null || keepMin) ? false : keepMax;
- // if endpoints are equal try to include zero otherwise include one
- if (axis_min === axis_max) {
- axis_max = (axis_max) ? 0 : 1;
- }
-
- scalefact = scalefact || 1.0;
-
- // make sure range is positive
- if (axis_max < axis_min) {
- var a = axis_max;
- axis_max = axis_min;
- axis_min = a;
- }
-
- var r = [];
- var ss = bestLinearInterval(axis_max - axis_min, scalefact);
-
- var gsf = $.jqplot.getSignificantFigures;
-
- if (numberTicks == null) {
-
- // Figure out the axis min, max and number of ticks
- // the min and max will be some multiple of the tick interval,
- // 1*10^n, 2*10^n or 5*10^n. This gaurantees that, if the
- // axis min is negative, 0 will be a tick.
- if (!keepMin && !keepMax) {
- r[0] = Math.floor(axis_min / ss) * ss; // min
- r[1] = Math.ceil(axis_max / ss) * ss; // max
- r[2] = Math.round((r[1]-r[0])/ss+1.0); // number of ticks
- r[3] = bestFormatString(ss); // format string
- r[4] = ss; // tick Interval
- }
-
- else if (keepMin) {
- r[0] = axis_min; // min
- r[2] = Math.ceil((axis_max - axis_min) / ss + 1.0); // number of ticks
- r[1] = axis_min + (r[2] - 1) * ss; // max
- var digitsMin = gsf(axis_min).digitsRight;
- var digitsSS = gsf(ss).digitsRight;
- if (digitsMin < digitsSS) {
- r[3] = bestFormatString(ss); // format string
- }
- else {
- r[3] = '%.' + digitsMin + 'f';
- }
- r[4] = ss; // tick Interval
- }
-
- else if (keepMax) {
- r[1] = axis_max; // max
- r[2] = Math.ceil((axis_max - axis_min) / ss + 1.0); // number of ticks
- r[0] = axis_max - (r[2] - 1) * ss; // min
- var digitsMax = gsf(axis_max).digitsRight;
- var digitsSS = gsf(ss).digitsRight;
- if (digitsMax < digitsSS) {
- r[3] = bestFormatString(ss); // format string
- }
- else {
- r[3] = '%.' + digitsMax + 'f';
- }
- r[4] = ss; // tick Interval
- }
- }
-
- else {
- var tempr = [];
-
- // Figure out the axis min, max and number of ticks
- // the min and max will be some multiple of the tick interval,
- // 1*10^n, 2*10^n or 5*10^n. This gaurantees that, if the
- // axis min is negative, 0 will be a tick.
- tempr[0] = Math.floor(axis_min / ss) * ss; // min
- tempr[1] = Math.ceil(axis_max / ss) * ss; // max
- tempr[2] = Math.round((tempr[1]-tempr[0])/ss+1.0); // number of ticks
- tempr[3] = bestFormatString(ss); // format string
- tempr[4] = ss; // tick Interval
-
- // first, see if we happen to get the right number of ticks
- if (tempr[2] === numberTicks) {
- r = tempr;
- }
-
- else {
-
- var newti = bestInterval(tempr[1] - tempr[0], numberTicks);
-
- r[0] = tempr[0]; // min
- r[2] = numberTicks; // number of ticks
- r[4] = newti; // tick interval
- r[3] = bestFormatString(newti); // format string
- r[1] = r[0] + (r[2] - 1) * r[4]; // max
- }
- }
-
- return r;
- };
-
- $.jqplot.LinearTickGenerator.bestLinearInterval = bestLinearInterval;
- $.jqplot.LinearTickGenerator.bestInterval = bestInterval;
- $.jqplot.LinearTickGenerator.bestLinearComponents = bestLinearComponents;
- $.jqplot.LinearTickGenerator.bestConstrainedInterval = bestConstrainedInterval;
-
-
- // class: $.jqplot.MarkerRenderer
- // The default jqPlot marker renderer, rendering the points on the line.
- $.jqplot.MarkerRenderer = function(options){
- // Group: Properties
-
- // prop: show
- // wether or not to show the marker.
- this.show = true;
- // prop: style
- // One of diamond, circle, square, x, plus, dash, filledDiamond, filledCircle, filledSquare
- this.style = 'filledCircle';
- // prop: lineWidth
- // size of the line for non-filled markers.
- this.lineWidth = 2;
- // prop: size
- // Size of the marker (diameter or circle, length of edge of square, etc.)
- this.size = 9.0;
- // prop: color
- // color of marker. Will be set to color of series by default on init.
- this.color = '#666666';
- // prop: shadow
- // wether or not to draw a shadow on the line
- this.shadow = true;
- // prop: shadowAngle
- // Shadow angle in degrees
- this.shadowAngle = 45;
- // prop: shadowOffset
- // Shadow offset from line in pixels
- this.shadowOffset = 1;
- // prop: shadowDepth
- // Number of times shadow is stroked, each stroke offset shadowOffset from the last.
- this.shadowDepth = 3;
- // prop: shadowAlpha
- // Alpha channel transparency of shadow. 0 = transparent.
- this.shadowAlpha = '0.07';
- // prop: shadowRenderer
- // Renderer that will draws the shadows on the marker.
- this.shadowRenderer = new $.jqplot.ShadowRenderer();
- // prop: shapeRenderer
- // Renderer that will draw the marker.
- this.shapeRenderer = new $.jqplot.ShapeRenderer();
-
- $.extend(true, this, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- var sdopt = {angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, lineWidth:this.lineWidth, depth:this.shadowDepth, closePath:true};
- if (this.style.indexOf('filled') != -1) {
- sdopt.fill = true;
- }
- if (this.style.indexOf('ircle') != -1) {
- sdopt.isarc = true;
- sdopt.closePath = false;
- }
- this.shadowRenderer.init(sdopt);
-
- var shopt = {fill:false, isarc:false, strokeStyle:this.color, fillStyle:this.color, lineWidth:this.lineWidth, closePath:true};
- if (this.style.indexOf('filled') != -1) {
- shopt.fill = true;
- }
- if (this.style.indexOf('ircle') != -1) {
- shopt.isarc = true;
- shopt.closePath = false;
- }
- this.shapeRenderer.init(shopt);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawDiamond = function(x, y, ctx, fill, options) {
- var stretch = 1.2;
- var dx = this.size/2/stretch;
- var dy = this.size/2*stretch;
- var points = [[x-dx, y], [x, y+dy], [x+dx, y], [x, y-dy]];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points);
- }
- this.shapeRenderer.draw(ctx, points, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawPlus = function(x, y, ctx, fill, options) {
- var stretch = 1.0;
- var dx = this.size/2*stretch;
- var dy = this.size/2*stretch;
- var points1 = [[x, y-dy], [x, y+dy]];
- var points2 = [[x+dx, y], [x-dx, y]];
- var opts = $.extend(true, {}, this.options, {closePath:false});
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points1, {closePath:false});
- this.shadowRenderer.draw(ctx, points2, {closePath:false});
- }
- this.shapeRenderer.draw(ctx, points1, opts);
- this.shapeRenderer.draw(ctx, points2, opts);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawX = function(x, y, ctx, fill, options) {
- var stretch = 1.0;
- var dx = this.size/2*stretch;
- var dy = this.size/2*stretch;
- var opts = $.extend(true, {}, this.options, {closePath:false});
- var points1 = [[x-dx, y-dy], [x+dx, y+dy]];
- var points2 = [[x-dx, y+dy], [x+dx, y-dy]];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points1, {closePath:false});
- this.shadowRenderer.draw(ctx, points2, {closePath:false});
- }
- this.shapeRenderer.draw(ctx, points1, opts);
- this.shapeRenderer.draw(ctx, points2, opts);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawDash = function(x, y, ctx, fill, options) {
- var stretch = 1.0;
- var dx = this.size/2*stretch;
- var dy = this.size/2*stretch;
- var points = [[x-dx, y], [x+dx, y]];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points);
- }
- this.shapeRenderer.draw(ctx, points, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawLine = function(p1, p2, ctx, fill, options) {
- var points = [p1, p2];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points);
- }
- this.shapeRenderer.draw(ctx, points, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawSquare = function(x, y, ctx, fill, options) {
- var stretch = 1.0;
- var dx = this.size/2/stretch;
- var dy = this.size/2*stretch;
- var points = [[x-dx, y-dy], [x-dx, y+dy], [x+dx, y+dy], [x+dx, y-dy]];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points);
- }
- this.shapeRenderer.draw(ctx, points, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.drawCircle = function(x, y, ctx, fill, options) {
- var radius = this.size/2;
- var end = 2*Math.PI;
- var points = [x, y, radius, 0, end, true];
- if (this.shadow) {
- this.shadowRenderer.draw(ctx, points);
- }
- this.shapeRenderer.draw(ctx, points, options);
- };
-
- $.jqplot.MarkerRenderer.prototype.draw = function(x, y, ctx, options) {
- options = options || {};
- // hack here b/c shape renderer uses canvas based color style options
- // and marker uses css style names.
- if (options.show == null || options.show != false) {
- if (options.color && !options.fillStyle) {
- options.fillStyle = options.color;
- }
- if (options.color && !options.strokeStyle) {
- options.strokeStyle = options.color;
- }
- switch (this.style) {
- case 'diamond':
- this.drawDiamond(x,y,ctx, false, options);
- break;
- case 'filledDiamond':
- this.drawDiamond(x,y,ctx, true, options);
- break;
- case 'circle':
- this.drawCircle(x,y,ctx, false, options);
- break;
- case 'filledCircle':
- this.drawCircle(x,y,ctx, true, options);
- break;
- case 'square':
- this.drawSquare(x,y,ctx, false, options);
- break;
- case 'filledSquare':
- this.drawSquare(x,y,ctx, true, options);
- break;
- case 'x':
- this.drawX(x,y,ctx, true, options);
- break;
- case 'plus':
- this.drawPlus(x,y,ctx, true, options);
- break;
- case 'dash':
- this.drawDash(x,y,ctx, true, options);
- break;
- case 'line':
- this.drawLine(x, y, ctx, false, options);
- break;
- default:
- this.drawDiamond(x,y,ctx, false, options);
- break;
- }
- }
- };
-
- // class: $.jqplot.shadowRenderer
- // The default jqPlot shadow renderer, rendering shadows behind shapes.
- $.jqplot.ShadowRenderer = function(options){
- // Group: Properties
-
- // prop: angle
- // Angle of the shadow in degrees. Measured counter-clockwise from the x axis.
- this.angle = 45;
- // prop: offset
- // Pixel offset at the given shadow angle of each shadow stroke from the last stroke.
- this.offset = 1;
- // prop: alpha
- // alpha transparency of shadow stroke.
- this.alpha = 0.07;
- // prop: lineWidth
- // width of the shadow line stroke.
- this.lineWidth = 1.5;
- // prop: lineJoin
- // How line segments of the shadow are joined.
- this.lineJoin = 'miter';
- // prop: lineCap
- // how ends of the shadow line are rendered.
- this.lineCap = 'round';
- // prop; closePath
- // whether line path segment is closed upon itself.
- this.closePath = false;
- // prop: fill
- // whether to fill the shape.
- this.fill = false;
- // prop: depth
- // how many times the shadow is stroked. Each stroke will be offset by offset at angle degrees.
- this.depth = 3;
- this.strokeStyle = 'rgba(0,0,0,0.1)';
- // prop: isarc
- // wether the shadow is an arc or not.
- this.isarc = false;
-
- $.extend(true, this, options);
- };
-
- $.jqplot.ShadowRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- // function: draw
- // draws an transparent black (i.e. gray) shadow.
- //
- // ctx - canvas drawing context
- // points - array of points or [x, y, radius, start angle (rad), end angle (rad)]
- $.jqplot.ShadowRenderer.prototype.draw = function(ctx, points, options) {
- ctx.save();
- var opts = (options != null) ? options : {};
- var fill = (opts.fill != null) ? opts.fill : this.fill;
- var fillRect = (opts.fillRect != null) ? opts.fillRect : this.fillRect;
- var closePath = (opts.closePath != null) ? opts.closePath : this.closePath;
- var offset = (opts.offset != null) ? opts.offset : this.offset;
- var alpha = (opts.alpha != null) ? opts.alpha : this.alpha;
- var depth = (opts.depth != null) ? opts.depth : this.depth;
- var isarc = (opts.isarc != null) ? opts.isarc : this.isarc;
- var linePattern = (opts.linePattern != null) ? opts.linePattern : this.linePattern;
- ctx.lineWidth = (opts.lineWidth != null) ? opts.lineWidth : this.lineWidth;
- ctx.lineJoin = (opts.lineJoin != null) ? opts.lineJoin : this.lineJoin;
- ctx.lineCap = (opts.lineCap != null) ? opts.lineCap : this.lineCap;
- ctx.strokeStyle = opts.strokeStyle || this.strokeStyle || 'rgba(0,0,0,'+alpha+')';
- ctx.fillStyle = opts.fillStyle || this.fillStyle || 'rgba(0,0,0,'+alpha+')';
- for (var j=0; j<depth; j++) {
- var ctxPattern = $.jqplot.LinePattern(ctx, linePattern);
- ctx.translate(Math.cos(this.angle*Math.PI/180)*offset, Math.sin(this.angle*Math.PI/180)*offset);
- ctxPattern.beginPath();
- if (isarc) {
- ctx.arc(points[0], points[1], points[2], points[3], points[4], true);
- }
- else if (fillRect) {
- if (fillRect) {
- ctx.fillRect(points[0], points[1], points[2], points[3]);
- }
- }
- else if (points && points.length){
- var move = true;
- for (var i=0; i<points.length; i++) {
- // skip to the first non-null point and move to it.
- if (points[i][0] != null && points[i][1] != null) {
- if (move) {
- ctxPattern.moveTo(points[i][0], points[i][1]);
- move = false;
- }
- else {
- ctxPattern.lineTo(points[i][0], points[i][1]);
- }
- }
- else {
- move = true;
- }
- }
-
- }
- if (closePath) {
- ctxPattern.closePath();
- }
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- }
- ctx.restore();
- };
-
- // class: $.jqplot.shapeRenderer
- // The default jqPlot shape renderer. Given a set of points will
- // plot them and either stroke a line (fill = false) or fill them (fill = true).
- // If a filled shape is desired, closePath = true must also be set to close
- // the shape.
- $.jqplot.ShapeRenderer = function(options){
-
- this.lineWidth = 1.5;
- // prop: linePattern
- // line pattern 'dashed', 'dotted', 'solid', some combination
- // of '-' and '.' characters such as '.-.' or a numerical array like
- // [draw, skip, draw, skip, ...] such as [1, 10] to draw a dotted line,
- // [1, 10, 20, 10] to draw a dot-dash line, and so on.
- this.linePattern = 'solid';
- // prop: lineJoin
- // How line segments of the shadow are joined.
- this.lineJoin = 'miter';
- // prop: lineCap
- // how ends of the shadow line are rendered.
- this.lineCap = 'round';
- // prop; closePath
- // whether line path segment is closed upon itself.
- this.closePath = false;
- // prop: fill
- // whether to fill the shape.
- this.fill = false;
- // prop: isarc
- // wether the shadow is an arc or not.
- this.isarc = false;
- // prop: fillRect
- // true to draw shape as a filled rectangle.
- this.fillRect = false;
- // prop: strokeRect
- // true to draw shape as a stroked rectangle.
- this.strokeRect = false;
- // prop: clearRect
- // true to cear a rectangle.
- this.clearRect = false;
- // prop: strokeStyle
- // css color spec for the stoke style
- this.strokeStyle = '#999999';
- // prop: fillStyle
- // css color spec for the fill style.
- this.fillStyle = '#999999';
-
- $.extend(true, this, options);
- };
-
- $.jqplot.ShapeRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- // function: draw
- // draws the shape.
- //
- // ctx - canvas drawing context
- // points - array of points for shapes or
- // [x, y, width, height] for rectangles or
- // [x, y, radius, start angle (rad), end angle (rad)] for circles and arcs.
- $.jqplot.ShapeRenderer.prototype.draw = function(ctx, points, options) {
- ctx.save();
- var opts = (options != null) ? options : {};
- var fill = (opts.fill != null) ? opts.fill : this.fill;
- var closePath = (opts.closePath != null) ? opts.closePath : this.closePath;
- var fillRect = (opts.fillRect != null) ? opts.fillRect : this.fillRect;
- var strokeRect = (opts.strokeRect != null) ? opts.strokeRect : this.strokeRect;
- var clearRect = (opts.clearRect != null) ? opts.clearRect : this.clearRect;
- var isarc = (opts.isarc != null) ? opts.isarc : this.isarc;
- var linePattern = (opts.linePattern != null) ? opts.linePattern : this.linePattern;
- var ctxPattern = $.jqplot.LinePattern(ctx, linePattern);
- ctx.lineWidth = opts.lineWidth || this.lineWidth;
- ctx.lineJoin = opts.lineJoin || this.lineJoin;
- ctx.lineCap = opts.lineCap || this.lineCap;
- ctx.strokeStyle = (opts.strokeStyle || opts.color) || this.strokeStyle;
- ctx.fillStyle = opts.fillStyle || this.fillStyle;
- ctx.beginPath();
- if (isarc) {
- ctx.arc(points[0], points[1], points[2], points[3], points[4], true);
- if (closePath) {
- ctx.closePath();
- }
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- ctx.restore();
- return;
- }
- else if (clearRect) {
- ctx.clearRect(points[0], points[1], points[2], points[3]);
- ctx.restore();
- return;
- }
- else if (fillRect || strokeRect) {
- if (fillRect) {
- ctx.fillRect(points[0], points[1], points[2], points[3]);
- }
- if (strokeRect) {
- ctx.strokeRect(points[0], points[1], points[2], points[3]);
- ctx.restore();
- return;
- }
- }
- else if (points && points.length){
- var move = true;
- for (var i=0; i<points.length; i++) {
- // skip to the first non-null point and move to it.
- if (points[i][0] != null && points[i][1] != null) {
- if (move) {
- ctxPattern.moveTo(points[i][0], points[i][1]);
- move = false;
- }
- else {
- ctxPattern.lineTo(points[i][0], points[i][1]);
- }
- }
- else {
- move = true;
- }
- }
- if (closePath) {
- ctxPattern.closePath();
- }
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- }
- ctx.restore();
- };
-
- // class $.jqplot.TableLegendRenderer
- // The default legend renderer for jqPlot.
- $.jqplot.TableLegendRenderer = function(){
- //
- };
-
- $.jqplot.TableLegendRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- };
-
- $.jqplot.TableLegendRenderer.prototype.addrow = function (label, color, pad, reverse) {
- var rs = (pad) ? this.rowSpacing+'px' : '0px';
- var tr;
- var td;
- var elem;
- var div0;
- var div1;
- elem = document.createElement('tr');
- tr = $(elem);
- tr.addClass('jqplot-table-legend');
- elem = null;
-
- if (reverse){
- tr.prependTo(this._elem);
- }
-
- else{
- tr.appendTo(this._elem);
- }
-
- if (this.showSwatches) {
- td = $(document.createElement('td'));
- td.addClass('jqplot-table-legend jqplot-table-legend-swatch');
- td.css({textAlign: 'center', paddingTop: rs});
-
- div0 = $(document.createElement('div'));
- div0.addClass('jqplot-table-legend-swatch-outline');
- div1 = $(document.createElement('div'));
- div1.addClass('jqplot-table-legend-swatch');
- div1.css({backgroundColor: color, borderColor: color});
-
- tr.append(td.append(div0.append(div1)));
-
- // $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- // '<div><div class="jqplot-table-legend-swatch" style="background-color:'+color+';border-color:'+color+';"></div>'+
- // '</div></td>').appendTo(tr);
- }
- if (this.showLabels) {
- td = $(document.createElement('td'));
- td.addClass('jqplot-table-legend jqplot-table-legend-label');
- td.css('paddingTop', rs);
- tr.append(td);
-
- // elem = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- // elem.appendTo(tr);
- if (this.escapeHtml) {
- td.text(label);
- }
- else {
- td.html(label);
- }
- }
- td = null;
- div0 = null;
- div1 = null;
- tr = null;
- elem = null;
- };
-
- // called with scope of legend
- $.jqplot.TableLegendRenderer.prototype.draw = function() {
- if (this._elem) {
- this._elem.emptyForce();
- this._elem = null;
- }
-
- if (this.show) {
- var series = this._series;
- // make a table. one line label per row.
- var elem = document.createElement('table');
- this._elem = $(elem);
- this._elem.addClass('jqplot-table-legend');
-
- var ss = {position:'absolute'};
- if (this.background) {
- ss['background'] = this.background;
- }
- if (this.border) {
- ss['border'] = this.border;
- }
- if (this.fontSize) {
- ss['fontSize'] = this.fontSize;
- }
- if (this.fontFamily) {
- ss['fontFamily'] = this.fontFamily;
- }
- if (this.textColor) {
- ss['textColor'] = this.textColor;
- }
- if (this.marginTop != null) {
- ss['marginTop'] = this.marginTop;
- }
- if (this.marginBottom != null) {
- ss['marginBottom'] = this.marginBottom;
- }
- if (this.marginLeft != null) {
- ss['marginLeft'] = this.marginLeft;
- }
- if (this.marginRight != null) {
- ss['marginRight'] = this.marginRight;
- }
-
-
- var pad = false,
- reverse = false,
- s;
- for (var i = 0; i< series.length; i++) {
- s = series[i];
- if (s._stack || s.renderer.constructor == $.jqplot.BezierCurveRenderer){
- reverse = true;
- }
- if (s.show && s.showLabel) {
- var lt = this.labels[i] || s.label.toString();
- if (lt) {
- var color = s.color;
- if (reverse && i < series.length - 1){
- pad = true;
- }
- else if (reverse && i == series.length - 1){
- pad = false;
- }
- this.renderer.addrow.call(this, lt, color, pad, reverse);
- pad = true;
- }
- // let plugins add more rows to legend. Used by trend line plugin.
- for (var j=0; j<$.jqplot.addLegendRowHooks.length; j++) {
- var item = $.jqplot.addLegendRowHooks[j].call(this, s);
- if (item) {
- this.renderer.addrow.call(this, item.label, item.color, pad);
- pad = true;
- }
- }
- lt = null;
- }
- }
- }
- return this._elem;
- };
-
- $.jqplot.TableLegendRenderer.prototype.pack = function(offsets) {
- if (this.show) {
- if (this.placement == 'insideGrid') {
- switch (this.location) {
- case 'nw':
- var a = offsets.left;
- var b = offsets.top;
- this._elem.css('left', a);
- this._elem.css('top', b);
- break;
- case 'n':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = offsets.top;
- this._elem.css('left', a);
- this._elem.css('top', b);
- break;
- case 'ne':
- var a = offsets.right;
- var b = offsets.top;
- this._elem.css({right:a, top:b});
- break;
- case 'e':
- var a = offsets.right;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({right:a, top:b});
- break;
- case 'se':
- var a = offsets.right;
- var b = offsets.bottom;
- this._elem.css({right:a, bottom:b});
- break;
- case 's':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = offsets.bottom;
- this._elem.css({left:a, bottom:b});
- break;
- case 'sw':
- var a = offsets.left;
- var b = offsets.bottom;
- this._elem.css({left:a, bottom:b});
- break;
- case 'w':
- var a = offsets.left;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({left:a, top:b});
- break;
- default: // same as 'se'
- var a = offsets.right;
- var b = offsets.bottom;
- this._elem.css({right:a, bottom:b});
- break;
- }
-
- }
- else if (this.placement == 'outside'){
- switch (this.location) {
- case 'nw':
- var a = this._plotDimensions.width - offsets.left;
- var b = offsets.top;
- this._elem.css('right', a);
- this._elem.css('top', b);
- break;
- case 'n':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = this._plotDimensions.height - offsets.top;
- this._elem.css('left', a);
- this._elem.css('bottom', b);
- break;
- case 'ne':
- var a = this._plotDimensions.width - offsets.right;
- var b = offsets.top;
- this._elem.css({left:a, top:b});
- break;
- case 'e':
- var a = this._plotDimensions.width - offsets.right;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({left:a, top:b});
- break;
- case 'se':
- var a = this._plotDimensions.width - offsets.right;
- var b = offsets.bottom;
- this._elem.css({left:a, bottom:b});
- break;
- case 's':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = this._plotDimensions.height - offsets.bottom;
- this._elem.css({left:a, top:b});
- break;
- case 'sw':
- var a = this._plotDimensions.width - offsets.left;
- var b = offsets.bottom;
- this._elem.css({right:a, bottom:b});
- break;
- case 'w':
- var a = this._plotDimensions.width - offsets.left;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({right:a, top:b});
- break;
- default: // same as 'se'
- var a = offsets.right;
- var b = offsets.bottom;
- this._elem.css({right:a, bottom:b});
- break;
- }
- }
- else {
- switch (this.location) {
- case 'nw':
- this._elem.css({left:0, top:offsets.top});
- break;
- case 'n':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- this._elem.css({left: a, top:offsets.top});
- break;
- case 'ne':
- this._elem.css({right:0, top:offsets.top});
- break;
- case 'e':
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({right:offsets.right, top:b});
- break;
- case 'se':
- this._elem.css({right:offsets.right, bottom:offsets.bottom});
- break;
- case 's':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- this._elem.css({left: a, bottom:offsets.bottom});
- break;
- case 'sw':
- this._elem.css({left:offsets.left, bottom:offsets.bottom});
- break;
- case 'w':
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({left:offsets.left, top:b});
- break;
- default: // same as 'se'
- this._elem.css({right:offsets.right, bottom:offsets.bottom});
- break;
- }
- }
- }
- };
-
- /**
- * Class: $.jqplot.ThemeEngine
- * Theme Engine provides a programatic way to change some of the more
- * common jqplot styling options such as fonts, colors and grid options.
- * A theme engine instance is created with each plot. The theme engine
- * manages a collection of themes which can be modified, added to, or
- * applied to the plot.
- *
- * The themeEngine class is not instantiated directly.
- * When a plot is initialized, the current plot options are scanned
- * an a default theme named "Default" is created. This theme is
- * used as the basis for other themes added to the theme engine and
- * is always available.
- *
- * A theme is a simple javascript object with styling parameters for
- * various entities of the plot. A theme has the form:
- *
- *
- * > {
- * > _name:f "Default",
- * > target: {
- * > backgroundColor: "transparent"
- * > },
- * > legend: {
- * > textColor: null,
- * > fontFamily: null,
- * > fontSize: null,
- * > border: null,
- * > background: null
- * > },
- * > title: {
- * > textColor: "rgb(102, 102, 102)",
- * > fontFamily: "'Trebuchet MS',Arial,Helvetica,sans-serif",
- * > fontSize: "19.2px",
- * > textAlign: "center"
- * > },
- * > seriesStyles: {},
- * > series: [{
- * > color: "#4bb2c5",
- * > lineWidth: 2.5,
- * > linePattern: "solid",
- * > shadow: true,
- * > fillColor: "#4bb2c5",
- * > showMarker: true,
- * > markerOptions: {
- * > color: "#4bb2c5",
- * > show: true,
- * > style: 'filledCircle',
- * > lineWidth: 1.5,
- * > size: 4,
- * > shadow: true
- * > }
- * > }],
- * > grid: {
- * > drawGridlines: true,
- * > gridLineColor: "#cccccc",
- * > gridLineWidth: 1,
- * > backgroundColor: "#fffdf6",
- * > borderColor: "#999999",
- * > borderWidth: 2,
- * > shadow: true
- * > },
- * > axesStyles: {
- * > label: {},
- * > ticks: {}
- * > },
- * > axes: {
- * > xaxis: {
- * > borderColor: "#999999",
- * > borderWidth: 2,
- * > ticks: {
- * > show: true,
- * > showGridline: true,
- * > showLabel: true,
- * > showMark: true,
- * > size: 4,
- * > textColor: "",
- * > whiteSpace: "nowrap",
- * > fontSize: "12px",
- * > fontFamily: "'Trebuchet MS',Arial,Helvetica,sans-serif"
- * > },
- * > label: {
- * > textColor: "rgb(102, 102, 102)",
- * > whiteSpace: "normal",
- * > fontSize: "14.6667px",
- * > fontFamily: "'Trebuchet MS',Arial,Helvetica,sans-serif",
- * > fontWeight: "400"
- * > }
- * > },
- * > yaxis: {
- * > borderColor: "#999999",
- * > borderWidth: 2,
- * > ticks: {
- * > show: true,
- * > showGridline: true,
- * > showLabel: true,
- * > showMark: true,
- * > size: 4,
- * > textColor: "",
- * > whiteSpace: "nowrap",
- * > fontSize: "12px",
- * > fontFamily: "'Trebuchet MS',Arial,Helvetica,sans-serif"
- * > },
- * > label: {
- * > textColor: null,
- * > whiteSpace: null,
- * > fontSize: null,
- * > fontFamily: null,
- * > fontWeight: null
- * > }
- * > },
- * > x2axis: {...
- * > },
- * > ...
- * > y9axis: {...
- * > }
- * > }
- * > }
- *
- * "seriesStyles" is a style object that will be applied to all series in the plot.
- * It will forcibly override any styles applied on the individual series. "axesStyles" is
- * a style object that will be applied to all axes in the plot. It will also forcibly
- * override any styles on the individual axes.
- *
- * The example shown above has series options for a line series. Options for other
- * series types are shown below:
- *
- * Bar Series:
- *
- * > {
- * > color: "#4bb2c5",
- * > seriesColors: ["#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"],
- * > lineWidth: 2.5,
- * > shadow: true,
- * > barPadding: 2,
- * > barMargin: 10,
- * > barWidth: 15.09375,
- * > highlightColors: ["rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)", "rgb(129,201,214)"]
- * > }
- *
- * Pie Series:
- *
- * > {
- * > seriesColors: ["#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"],
- * > padding: 20,
- * > sliceMargin: 0,
- * > fill: true,
- * > shadow: true,
- * > startAngle: 0,
- * > lineWidth: 2.5,
- * > highlightColors: ["rgb(129,201,214)", "rgb(240,189,104)", "rgb(214,202,165)", "rgb(137,180,158)", "rgb(168,180,137)", "rgb(180,174,89)", "rgb(180,113,161)", "rgb(129,141,236)", "rgb(227,205,120)", "rgb(255,138,76)", "rgb(76,169,219)", "rgb(215,126,190)", "rgb(220,232,135)", "rgb(200,167,96)", "rgb(103,202,235)", "rgb(208,154,215)"]
- * > }
- *
- * Funnel Series:
- *
- * > {
- * > color: "#4bb2c5",
- * > lineWidth: 2,
- * > shadow: true,
- * > padding: {
- * > top: 20,
- * > right: 20,
- * > bottom: 20,
- * > left: 20
- * > },
- * > sectionMargin: 6,
- * > seriesColors: ["#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"],
- * > highlightColors: ["rgb(147,208,220)", "rgb(242,199,126)", "rgb(220,210,178)", "rgb(154,191,172)", "rgb(180,191,154)", "rgb(191,186,112)", "rgb(191,133,174)", "rgb(147,157,238)", "rgb(231,212,139)", "rgb(255,154,102)", "rgb(102,181,224)", "rgb(221,144,199)", "rgb(225,235,152)", "rgb(200,167,96)", "rgb(124,210,238)", "rgb(215,169,221)"]
- * > }
- *
- */
- $.jqplot.ThemeEngine = function(){
- // Group: Properties
- //
- // prop: themes
- // hash of themes managed by the theme engine.
- // Indexed by theme name.
- this.themes = {};
- // prop: activeTheme
- // Pointer to currently active theme
- this.activeTheme=null;
-
- };
-
- // called with scope of plot
- $.jqplot.ThemeEngine.prototype.init = function() {
- // get the Default theme from the current plot settings.
- var th = new $.jqplot.Theme({_name:'Default'});
- var n, i, nn;
-
- for (n in th.target) {
- if (n == "textColor") {
- th.target[n] = this.target.css('color');
- }
- else {
- th.target[n] = this.target.css(n);
- }
- }
-
- if (this.title.show && this.title._elem) {
- for (n in th.title) {
- if (n == "textColor") {
- th.title[n] = this.title._elem.css('color');
- }
- else {
- th.title[n] = this.title._elem.css(n);
- }
- }
- }
-
- for (n in th.grid) {
- th.grid[n] = this.grid[n];
- }
- if (th.grid.backgroundColor == null && this.grid.background != null) {
- th.grid.backgroundColor = this.grid.background;
- }
- if (this.legend.show && this.legend._elem) {
- for (n in th.legend) {
- if (n == 'textColor') {
- th.legend[n] = this.legend._elem.css('color');
- }
- else {
- th.legend[n] = this.legend._elem.css(n);
- }
- }
- }
- var s;
-
- for (i=0; i<this.series.length; i++) {
- s = this.series[i];
- if (s.renderer.constructor == $.jqplot.LineRenderer) {
- th.series.push(new LineSeriesProperties());
- }
- else if (s.renderer.constructor == $.jqplot.BarRenderer) {
- th.series.push(new BarSeriesProperties());
- }
- else if (s.renderer.constructor == $.jqplot.PieRenderer) {
- th.series.push(new PieSeriesProperties());
- }
- else if (s.renderer.constructor == $.jqplot.DonutRenderer) {
- th.series.push(new DonutSeriesProperties());
- }
- else if (s.renderer.constructor == $.jqplot.FunnelRenderer) {
- th.series.push(new FunnelSeriesProperties());
- }
- else if (s.renderer.constructor == $.jqplot.MeterGaugeRenderer) {
- th.series.push(new MeterSeriesProperties());
- }
- else {
- th.series.push({});
- }
- for (n in th.series[i]) {
- th.series[i][n] = s[n];
- }
- }
- var a, ax;
- for (n in this.axes) {
- ax = this.axes[n];
- a = th.axes[n] = new AxisProperties();
- a.borderColor = ax.borderColor;
- a.borderWidth = ax.borderWidth;
- if (ax._ticks && ax._ticks[0]) {
- for (nn in a.ticks) {
- if (ax._ticks[0].hasOwnProperty(nn)) {
- a.ticks[nn] = ax._ticks[0][nn];
- }
- else if (ax._ticks[0]._elem){
- a.ticks[nn] = ax._ticks[0]._elem.css(nn);
- }
- }
- }
- if (ax._label && ax._label.show) {
- for (nn in a.label) {
- // a.label[nn] = ax._label._elem.css(nn);
- if (ax._label[nn]) {
- a.label[nn] = ax._label[nn];
- }
- else if (ax._label._elem){
- if (nn == 'textColor') {
- a.label[nn] = ax._label._elem.css('color');
- }
- else {
- a.label[nn] = ax._label._elem.css(nn);
- }
- }
- }
- }
- }
- this.themeEngine._add(th);
- this.themeEngine.activeTheme = this.themeEngine.themes[th._name];
- };
- /**
- * Group: methods
- *
- * method: get
- *
- * Get and return the named theme or the active theme if no name given.
- *
- * parameter:
- *
- * name - name of theme to get.
- *
- * returns:
- *
- * Theme instance of given name.
- */
- $.jqplot.ThemeEngine.prototype.get = function(name) {
- if (!name) {
- // return the active theme
- return this.activeTheme;
- }
- else {
- return this.themes[name];
- }
- };
-
- function numericalOrder(a,b) { return a-b; }
-
- /**
- * method: getThemeNames
- *
- * Return the list of theme names in this manager in alpha-numerical order.
- *
- * parameter:
- *
- * None
- *
- * returns:
- *
- * A the list of theme names in this manager in alpha-numerical order.
- */
- $.jqplot.ThemeEngine.prototype.getThemeNames = function() {
- var tn = [];
- for (var n in this.themes) {
- tn.push(n);
- }
- return tn.sort(numericalOrder);
- };
-
- /**
- * method: getThemes
- *
- * Return a list of themes in alpha-numerical order by name.
- *
- * parameter:
- *
- * None
- *
- * returns:
- *
- * A list of themes in alpha-numerical order by name.
- */
- $.jqplot.ThemeEngine.prototype.getThemes = function() {
- var tn = [];
- var themes = [];
- for (var n in this.themes) {
- tn.push(n);
- }
- tn.sort(numericalOrder);
- for (var i=0; i<tn.length; i++) {
- themes.push(this.themes[tn[i]]);
- }
- return themes;
- };
-
- $.jqplot.ThemeEngine.prototype.activate = function(plot, name) {
- // sometimes need to redraw whole plot.
- var redrawPlot = false;
- if (!name && this.activeTheme && this.activeTheme._name) {
- name = this.activeTheme._name;
- }
- if (!this.themes.hasOwnProperty(name)) {
- throw new Error("No theme of that name");
- }
- else {
- var th = this.themes[name];
- this.activeTheme = th;
- var val, checkBorderColor = false, checkBorderWidth = false;
- var arr = ['xaxis', 'x2axis', 'yaxis', 'y2axis'];
-
- for (i=0; i<arr.length; i++) {
- var ax = arr[i];
- if (th.axesStyles.borderColor != null) {
- plot.axes[ax].borderColor = th.axesStyles.borderColor;
- }
- if (th.axesStyles.borderWidth != null) {
- plot.axes[ax].borderWidth = th.axesStyles.borderWidth;
- }
- }
-
- for (var axname in plot.axes) {
- var axis = plot.axes[axname];
- if (axis.show) {
- var thaxis = th.axes[axname] || {};
- var thaxstyle = th.axesStyles;
- var thax = $.jqplot.extend(true, {}, thaxis, thaxstyle);
- val = (th.axesStyles.borderColor != null) ? th.axesStyles.borderColor : thax.borderColor;
- if (thax.borderColor != null) {
- axis.borderColor = thax.borderColor;
- redrawPlot = true;
- }
- val = (th.axesStyles.borderWidth != null) ? th.axesStyles.borderWidth : thax.borderWidth;
- if (thax.borderWidth != null) {
- axis.borderWidth = thax.borderWidth;
- redrawPlot = true;
- }
- if (axis._ticks && axis._ticks[0]) {
- for (var nn in thax.ticks) {
- // val = null;
- // if (th.axesStyles.ticks && th.axesStyles.ticks[nn] != null) {
- // val = th.axesStyles.ticks[nn];
- // }
- // else if (thax.ticks[nn] != null){
- // val = thax.ticks[nn]
- // }
- val = thax.ticks[nn];
- if (val != null) {
- axis.tickOptions[nn] = val;
- axis._ticks = [];
- redrawPlot = true;
- }
- }
- }
- if (axis._label && axis._label.show) {
- for (var nn in thax.label) {
- // val = null;
- // if (th.axesStyles.label && th.axesStyles.label[nn] != null) {
- // val = th.axesStyles.label[nn];
- // }
- // else if (thax.label && thax.label[nn] != null){
- // val = thax.label[nn]
- // }
- val = thax.label[nn];
- if (val != null) {
- axis.labelOptions[nn] = val;
- redrawPlot = true;
- }
- }
- }
-
- }
- }
-
- for (var n in th.grid) {
- if (th.grid[n] != null) {
- plot.grid[n] = th.grid[n];
- }
- }
- if (!redrawPlot) {
- plot.grid.draw();
- }
-
- if (plot.legend.show) {
- for (n in th.legend) {
- if (th.legend[n] != null) {
- plot.legend[n] = th.legend[n];
- }
- }
- }
- if (plot.title.show) {
- for (n in th.title) {
- if (th.title[n] != null) {
- plot.title[n] = th.title[n];
- }
- }
- }
-
- var i;
- for (i=0; i<th.series.length; i++) {
- var opts = {};
- var redrawSeries = false;
- for (n in th.series[i]) {
- val = (th.seriesStyles[n] != null) ? th.seriesStyles[n] : th.series[i][n];
- if (val != null) {
- opts[n] = val;
- if (n == 'color') {
- plot.series[i].renderer.shapeRenderer.fillStyle = val;
- plot.series[i].renderer.shapeRenderer.strokeStyle = val;
- plot.series[i][n] = val;
- }
- else if ((n == 'lineWidth') || (n == 'linePattern')) {
- plot.series[i].renderer.shapeRenderer[n] = val;
- plot.series[i][n] = val;
- }
- else if (n == 'markerOptions') {
- merge (plot.series[i].markerOptions, val);
- merge (plot.series[i].markerRenderer, val);
- }
- else {
- plot.series[i][n] = val;
- }
- redrawPlot = true;
- }
- }
- }
-
- if (redrawPlot) {
- plot.target.empty();
- plot.draw();
- }
-
- for (n in th.target) {
- if (th.target[n] != null) {
- plot.target.css(n, th.target[n]);
- }
- }
- }
-
- };
-
- $.jqplot.ThemeEngine.prototype._add = function(theme, name) {
- if (name) {
- theme._name = name;
- }
- if (!theme._name) {
- theme._name = Date.parse(new Date());
- }
- if (!this.themes.hasOwnProperty(theme._name)) {
- this.themes[theme._name] = theme;
- }
- else {
- throw new Error("jqplot.ThemeEngine Error: Theme already in use");
- }
- };
-
- // method remove
- // Delete the named theme, return true on success, false on failure.
-
-
- /**
- * method: remove
- *
- * Remove the given theme from the themeEngine.
- *
- * parameters:
- *
- * name - name of the theme to remove.
- *
- * returns:
- *
- * true on success, false on failure.
- */
- $.jqplot.ThemeEngine.prototype.remove = function(name) {
- if (name == 'Default') {
- return false;
- }
- return delete this.themes[name];
- };
-
- /**
- * method: newTheme
- *
- * Create a new theme based on the default theme, adding it the themeEngine.
- *
- * parameters:
- *
- * name - name of the new theme.
- * obj - optional object of styles to be applied to this new theme.
- *
- * returns:
- *
- * new Theme object.
- */
- $.jqplot.ThemeEngine.prototype.newTheme = function(name, obj) {
- if (typeof(name) == 'object') {
- obj = obj || name;
- name = null;
- }
- if (obj && obj._name) {
- name = obj._name;
- }
- else {
- name = name || Date.parse(new Date());
- }
- // var th = new $.jqplot.Theme(name);
- var th = this.copy(this.themes['Default']._name, name);
- $.jqplot.extend(th, obj);
- return th;
- };
-
- // function clone(obj) {
- // return eval(obj.toSource());
- // }
-
- function clone(obj){
- if(obj == null || typeof(obj) != 'object'){
- return obj;
- }
-
- var temp = new obj.constructor();
- for(var key in obj){
- temp[key] = clone(obj[key]);
- }
- return temp;
- }
-
- $.jqplot.clone = clone;
-
- function merge(obj1, obj2) {
- if (obj2 == null || typeof(obj2) != 'object') {
- return;
- }
- for (var key in obj2) {
- if (key == 'highlightColors') {
- obj1[key] = clone(obj2[key]);
- }
- if (obj2[key] != null && typeof(obj2[key]) == 'object') {
- if (!obj1.hasOwnProperty(key)) {
- obj1[key] = {};
- }
- merge(obj1[key], obj2[key]);
- }
- else {
- obj1[key] = obj2[key];
- }
- }
- }
-
- $.jqplot.merge = merge;
-
- // Use the jQuery 1.3.2 extend function since behaviour in jQuery 1.4 seems problematic
- $.jqplot.extend = function() {
- // copy reference to target object
- var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options;
-
- // Handle a deep copy situation
- if ( typeof target === "boolean" ) {
- deep = target;
- target = arguments[1] || {};
- // skip the boolean and the target
- i = 2;
- }
-
- // Handle case when target is a string or something (possible in deep copy)
- if ( typeof target !== "object" && !toString.call(target) === "[object Function]" ) {
- target = {};
- }
-
- for ( ; i < length; i++ ){
- // Only deal with non-null/undefined values
- if ( (options = arguments[ i ]) != null ) {
- // Extend the base object
- for ( var name in options ) {
- var src = target[ name ], copy = options[ name ];
-
- // Prevent never-ending loop
- if ( target === copy ) {
- continue;
- }
-
- // Recurse if we're merging object values
- if ( deep && copy && typeof copy === "object" && !copy.nodeType ) {
- target[ name ] = $.jqplot.extend( deep,
- // Never move original objects, clone them
- src || ( copy.length != null ? [ ] : { } )
- , copy );
- }
- // Don't bring in undefined values
- else if ( copy !== undefined ) {
- target[ name ] = copy;
- }
- }
- }
- }
- // Return the modified object
- return target;
- };
-
- /**
- * method: rename
- *
- * Rename a theme.
- *
- * parameters:
- *
- * oldName - current name of the theme.
- * newName - desired name of the theme.
- *
- * returns:
- *
- * new Theme object.
- */
- $.jqplot.ThemeEngine.prototype.rename = function (oldName, newName) {
- if (oldName == 'Default' || newName == 'Default') {
- throw new Error ("jqplot.ThemeEngine Error: Cannot rename from/to Default");
- }
- if (this.themes.hasOwnProperty(newName)) {
- throw new Error ("jqplot.ThemeEngine Error: New name already in use.");
- }
- else if (this.themes.hasOwnProperty(oldName)) {
- var th = this.copy (oldName, newName);
- this.remove(oldName);
- return th;
- }
- throw new Error("jqplot.ThemeEngine Error: Old name or new name invalid");
- };
-
- /**
- * method: copy
- *
- * Create a copy of an existing theme in the themeEngine, adding it the themeEngine.
- *
- * parameters:
- *
- * sourceName - name of the existing theme.
- * targetName - name of the copy.
- * obj - optional object of style parameter to apply to the new theme.
- *
- * returns:
- *
- * new Theme object.
- */
- $.jqplot.ThemeEngine.prototype.copy = function (sourceName, targetName, obj) {
- if (targetName == 'Default') {
- throw new Error ("jqplot.ThemeEngine Error: Cannot copy over Default theme");
- }
- if (!this.themes.hasOwnProperty(sourceName)) {
- var s = "jqplot.ThemeEngine Error: Source name invalid";
- throw new Error(s);
- }
- if (this.themes.hasOwnProperty(targetName)) {
- var s = "jqplot.ThemeEngine Error: Target name invalid";
- throw new Error(s);
- }
- else {
- var th = clone(this.themes[sourceName]);
- th._name = targetName;
- $.jqplot.extend(true, th, obj);
- this._add(th);
- return th;
- }
- };
-
-
- $.jqplot.Theme = function(name, obj) {
- if (typeof(name) == 'object') {
- obj = obj || name;
- name = null;
- }
- name = name || Date.parse(new Date());
- this._name = name;
- this.target = {
- backgroundColor: null
- };
- this.legend = {
- textColor: null,
- fontFamily: null,
- fontSize: null,
- border: null,
- background: null
- };
- this.title = {
- textColor: null,
- fontFamily: null,
- fontSize: null,
- textAlign: null
- };
- this.seriesStyles = {};
- this.series = [];
- this.grid = {
- drawGridlines: null,
- gridLineColor: null,
- gridLineWidth: null,
- backgroundColor: null,
- borderColor: null,
- borderWidth: null,
- shadow: null
- };
- this.axesStyles = {label:{}, ticks:{}};
- this.axes = {};
- if (typeof(obj) == 'string') {
- this._name = obj;
- }
- else if(typeof(obj) == 'object') {
- $.jqplot.extend(true, this, obj);
- }
- };
-
- var AxisProperties = function() {
- this.borderColor = null;
- this.borderWidth = null;
- this.ticks = new AxisTicks();
- this.label = new AxisLabel();
- };
-
- var AxisTicks = function() {
- this.show = null;
- this.showGridline = null;
- this.showLabel = null;
- this.showMark = null;
- this.size = null;
- this.textColor = null;
- this.whiteSpace = null;
- this.fontSize = null;
- this.fontFamily = null;
- };
-
- var AxisLabel = function() {
- this.textColor = null;
- this.whiteSpace = null;
- this.fontSize = null;
- this.fontFamily = null;
- this.fontWeight = null;
- };
-
- var LineSeriesProperties = function() {
- this.color=null;
- this.lineWidth=null;
- this.linePattern=null;
- this.shadow=null;
- this.fillColor=null;
- this.showMarker=null;
- this.markerOptions = new MarkerOptions();
- };
-
- var MarkerOptions = function() {
- this.show = null;
- this.style = null;
- this.lineWidth = null;
- this.size = null;
- this.color = null;
- this.shadow = null;
- };
-
- var BarSeriesProperties = function() {
- this.color=null;
- this.seriesColors=null;
- this.lineWidth=null;
- this.shadow=null;
- this.barPadding=null;
- this.barMargin=null;
- this.barWidth=null;
- this.highlightColors=null;
- };
-
- var PieSeriesProperties = function() {
- this.seriesColors=null;
- this.padding=null;
- this.sliceMargin=null;
- this.fill=null;
- this.shadow=null;
- this.startAngle=null;
- this.lineWidth=null;
- this.highlightColors=null;
- };
-
- var DonutSeriesProperties = function() {
- this.seriesColors=null;
- this.padding=null;
- this.sliceMargin=null;
- this.fill=null;
- this.shadow=null;
- this.startAngle=null;
- this.lineWidth=null;
- this.innerDiameter=null;
- this.thickness=null;
- this.ringMargin=null;
- this.highlightColors=null;
- };
-
- var FunnelSeriesProperties = function() {
- this.color=null;
- this.lineWidth=null;
- this.shadow=null;
- this.padding=null;
- this.sectionMargin=null;
- this.seriesColors=null;
- this.highlightColors=null;
- };
-
- var MeterSeriesProperties = function() {
- this.padding=null;
- this.backgroundColor=null;
- this.ringColor=null;
- this.tickColor=null;
- this.ringWidth=null;
- this.intervalColors=null;
- this.intervalInnerRadius=null;
- this.intervalOuterRadius=null;
- this.hubRadius=null;
- this.needleThickness=null;
- this.needlePad=null;
- };
-
-
-
-
- $.fn.jqplotChildText = function() {
- return $(this).contents().filter(function() {
- return this.nodeType == 3; // Node.TEXT_NODE not defined in I7
- }).text();
- };
-
- // Returns font style as abbreviation for "font" property.
- $.fn.jqplotGetComputedFontStyle = function() {
- var css = window.getComputedStyle ? window.getComputedStyle(this[0], "") : this[0].currentStyle;
- var attrs = css['font-style'] ? ['font-style', 'font-weight', 'font-size', 'font-family'] : ['fontStyle', 'fontWeight', 'fontSize', 'fontFamily'];
- var style = [];
-
- for (var i=0 ; i < attrs.length; ++i) {
- var attr = String(css[attrs[i]]);
-
- if (attr && attr != 'normal') {
- style.push(attr);
- }
- }
- return style.join(' ');
- };
-
- /**
- * Namespace: $.fn
- * jQuery namespace to attach functions to jQuery elements.
- *
- */
-
- $.fn.jqplotToImageCanvas = function(options) {
-
- options = options || {};
- var x_offset = (options.x_offset == null) ? 0 : options.x_offset;
- var y_offset = (options.y_offset == null) ? 0 : options.y_offset;
- var backgroundColor = (options.backgroundColor == null) ? 'rgb(255,255,255)' : options.backgroundColor;
-
- if ($(this).width() == 0 || $(this).height() == 0) {
- return null;
- }
-
- // excanvas and hence IE < 9 do not support toDataURL and cannot export images.
- if ($.jqplot.use_excanvas) {
- return null;
- }
-
- var newCanvas = document.createElement("canvas");
- var h = $(this).outerHeight(true);
- var w = $(this).outerWidth(true);
- var offs = $(this).offset();
- var plotleft = offs.left;
- var plottop = offs.top;
- var transx = 0, transy = 0;
-
- // have to check if any elements are hanging outside of plot area before rendering,
- // since changing width of canvas will erase canvas.
-
- var clses = ['jqplot-table-legend', 'jqplot-xaxis-tick', 'jqplot-x2axis-tick', 'jqplot-yaxis-tick', 'jqplot-y2axis-tick', 'jqplot-y3axis-tick',
- 'jqplot-y4axis-tick', 'jqplot-y5axis-tick', 'jqplot-y6axis-tick', 'jqplot-y7axis-tick', 'jqplot-y8axis-tick', 'jqplot-y9axis-tick',
- 'jqplot-xaxis-label', 'jqplot-x2axis-label', 'jqplot-yaxis-label', 'jqplot-y2axis-label', 'jqplot-y3axis-label', 'jqplot-y4axis-label',
- 'jqplot-y5axis-label', 'jqplot-y6axis-label', 'jqplot-y7axis-label', 'jqplot-y8axis-label', 'jqplot-y9axis-label' ];
-
- var temptop, templeft, tempbottom, tempright;
-
- for (var i = 0; i < clses.length; i++) {
- $(this).find('.'+clses[i]).each(function() {
- temptop = $(this).offset().top - plottop;
- templeft = $(this).offset().left - plotleft;
- tempright = templeft + $(this).outerWidth(true) + transx;
- tempbottom = temptop + $(this).outerHeight(true) + transy;
- if (templeft < -transx) {
- w = w - transx - templeft;
- transx = -templeft;
- }
- if (temptop < -transy) {
- h = h - transy - temptop;
- transy = - temptop;
- }
- if (tempright > w) {
- w = tempright;
- }
- if (tempbottom > h) {
- h = tempbottom;
- }
- });
- }
-
- newCanvas.width = w + Number(x_offset);
- newCanvas.height = h + Number(y_offset);
-
- var newContext = newCanvas.getContext("2d");
-
- newContext.save();
- newContext.fillStyle = backgroundColor;
- newContext.fillRect(0,0, newCanvas.width, newCanvas.height);
- newContext.restore();
-
- newContext.translate(transx, transy);
- newContext.textAlign = 'left';
- newContext.textBaseline = 'top';
-
- function getLineheight(el) {
- var lineheight = parseInt($(el).css('line-height'), 10);
-
- if (isNaN(lineheight)) {
- lineheight = parseInt($(el).css('font-size'), 10) * 1.2;
- }
- return lineheight;
- }
-
- function writeWrappedText (el, context, text, left, top, canvasWidth) {
- var lineheight = getLineheight(el);
- var tagwidth = $(el).innerWidth();
- var tagheight = $(el).innerHeight();
- var words = text.split(/\s+/);
- var wl = words.length;
- var w = '';
- var breaks = [];
- var temptop = top;
- var templeft = left;
-
- for (var i=0; i<wl; i++) {
- w += words[i];
- if (context.measureText(w).width > tagwidth) {
- breaks.push(i);
- w = '';
- i--;
- }
- }
- if (breaks.length === 0) {
- // center text if necessary
- if ($(el).css('textAlign') === 'center') {
- templeft = left + (canvasWidth - context.measureText(w).width)/2 - transx;
- }
- context.fillText(text, templeft, top);
- }
- else {
- w = words.slice(0, breaks[0]).join(' ');
- // center text if necessary
- if ($(el).css('textAlign') === 'center') {
- templeft = left + (canvasWidth - context.measureText(w).width)/2 - transx;
- }
- context.fillText(w, templeft, temptop);
- temptop += lineheight;
- for (var i=1, l=breaks.length; i<l; i++) {
- w = words.slice(breaks[i-1], breaks[i]).join(' ');
- // center text if necessary
- if ($(el).css('textAlign') === 'center') {
- templeft = left + (canvasWidth - context.measureText(w).width)/2 - transx;
- }
- context.fillText(w, templeft, temptop);
- temptop += lineheight;
- }
- w = words.slice(breaks[i-1], words.length).join(' ');
- // center text if necessary
- if ($(el).css('textAlign') === 'center') {
- templeft = left + (canvasWidth - context.measureText(w).width)/2 - transx;
- }
- context.fillText(w, templeft, temptop);
- }
-
- }
-
- function _jqpToImage(el, x_offset, y_offset) {
- var tagname = el.tagName.toLowerCase();
- var p = $(el).position();
- var css = window.getComputedStyle ? window.getComputedStyle(el, "") : el.currentStyle; // for IE < 9
- var left = x_offset + p.left + parseInt(css.marginLeft, 10) + parseInt(css.borderLeftWidth, 10) + parseInt(css.paddingLeft, 10);
- var top = y_offset + p.top + parseInt(css.marginTop, 10) + parseInt(css.borderTopWidth, 10)+ parseInt(css.paddingTop, 10);
- var w = newCanvas.width;
- // var left = x_offset + p.left + $(el).css('marginLeft') + $(el).css('borderLeftWidth')
-
- // somehow in here, for divs within divs, the width of the inner div should be used instead of the canvas.
-
- if ((tagname == 'div' || tagname == 'span') && !$(el).hasClass('jqplot-highlighter-tooltip')) {
- $(el).children().each(function() {
- _jqpToImage(this, left, top);
- });
- var text = $(el).jqplotChildText();
-
- if (text) {
- newContext.font = $(el).jqplotGetComputedFontStyle();
- newContext.fillStyle = $(el).css('color');
-
- writeWrappedText(el, newContext, text, left, top, w);
- }
- }
-
- // handle the standard table legend
-
- else if (tagname === 'table' && $(el).hasClass('jqplot-table-legend')) {
- newContext.strokeStyle = $(el).css('border-top-color');
- newContext.fillStyle = $(el).css('background-color');
- newContext.fillRect(left, top, $(el).innerWidth(), $(el).innerHeight());
- if (parseInt($(el).css('border-top-width'), 10) > 0) {
- newContext.strokeRect(left, top, $(el).innerWidth(), $(el).innerHeight());
- }
-
- // find all the swatches
- $(el).find('div.jqplot-table-legend-swatch-outline').each(function() {
- // get the first div and stroke it
- var elem = $(this);
- newContext.strokeStyle = elem.css('border-top-color');
- var l = left + elem.position().left;
- var t = top + elem.position().top;
- newContext.strokeRect(l, t, elem.innerWidth(), elem.innerHeight());
-
- // now fill the swatch
-
- l += parseInt(elem.css('padding-left'), 10);
- t += parseInt(elem.css('padding-top'), 10);
- var h = elem.innerHeight() - 2 * parseInt(elem.css('padding-top'), 10);
- var w = elem.innerWidth() - 2 * parseInt(elem.css('padding-left'), 10);
-
- var swatch = elem.children('div.jqplot-table-legend-swatch');
- newContext.fillStyle = swatch.css('background-color');
- newContext.fillRect(l, t, w, h);
- });
-
- // now add text
-
- $(el).find('td.jqplot-table-legend-label').each(function(){
- var elem = $(this);
- var l = left + elem.position().left;
- var t = top + elem.position().top + parseInt(elem.css('padding-top'), 10);
- newContext.font = elem.jqplotGetComputedFontStyle();
- newContext.fillStyle = elem.css('color');
- writeWrappedText(elem, newContext, elem.text(), l, t, w);
- });
-
- var elem = null;
- }
-
- else if (tagname == 'canvas') {
- newContext.drawImage(el, left, top);
- }
- }
- $(this).children().each(function() {
- _jqpToImage(this, x_offset, y_offset);
- });
- return newCanvas;
- };
-
- // return the raw image data string.
- // Should work on canvas supporting browsers.
- $.fn.jqplotToImageStr = function(options) {
- var imgCanvas = $(this).jqplotToImageCanvas(options);
- if (imgCanvas) {
- return imgCanvas.toDataURL("image/png");
- }
- else {
- return null;
- }
- };
-
- // return a DOM <img> element and return it.
- // Should work on canvas supporting browsers.
- $.fn.jqplotToImageElem = function(options) {
- var elem = document.createElement("img");
- var str = $(this).jqplotToImageStr(options);
- elem.src = str;
- return elem;
- };
-
- // return a string for an <img> element and return it.
- // Should work on canvas supporting browsers.
- $.fn.jqplotToImageElemStr = function(options) {
- var str = '<img src='+$(this).jqplotToImageStr(options)+' />';
- return str;
- };
-
- // Not gauranteed to work, even on canvas supporting browsers due to
- // limitations with location.href and browser support.
- $.fn.jqplotSaveImage = function() {
- var imgData = $(this).jqplotToImageStr({});
- if (imgData) {
- window.location.href = imgData.replace("image/png", "image/octet-stream");
- }
-
- };
-
- // Not gauranteed to work, even on canvas supporting browsers due to
- // limitations with window.open and arbitrary data.
- $.fn.jqplotViewImage = function() {
- var imgStr = $(this).jqplotToImageElemStr({});
- var imgData = $(this).jqplotToImageStr({});
- if (imgStr) {
- var w = window.open('');
- w.document.open("image/png");
- w.document.write(imgStr);
- w.document.close();
- w = null;
- }
- };
-
-
-
-
- /**
- * @description
- * <p>Object with extended date parsing and formatting capabilities.
- * This library borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.</p>
- *
- * <p>jsDate takes a different approach by not extending the built-in
- * Date Object, improving date parsing, allowing for multiple formatting
- * syntaxes and multiple and more easily expandable localization.</p>
- *
- * @author Chris Leonello
- * @date #date#
- * @version #VERSION#
- * @copyright (c) 2010 Chris Leonello
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * <p>Ken's origianl Date Instance Methods and copyright notice:</p>
- * <pre>
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- * </pre>
- *
- * @class
- * @name jsDate
- * @param {String | Number | Array | Date&nbsp;Object | Options&nbsp;Object} arguments Optional arguments, either a parsable date/time string,
- * a JavaScript timestamp, an array of numbers of form [year, month, day, hours, minutes, seconds, milliseconds],
- * a Date object, or an options object of form {syntax: "perl", date:some Date} where all options are optional.
- */
-
- var jsDate = function () {
-
- this.syntax = jsDate.config.syntax;
- this._type = "jsDate";
- this.proxy = new Date();
- this.options = {};
- this.locale = jsDate.regional.getLocale();
- this.formatString = '';
- this.defaultCentury = jsDate.config.defaultCentury;
-
- switch ( arguments.length ) {
- case 0:
- break;
- case 1:
- // other objects either won't have a _type property or,
- // if they do, it shouldn't be set to "jsDate", so
- // assume it is an options argument.
- if (get_type(arguments[0]) == "[object Object]" && arguments[0]._type != "jsDate") {
- var opts = this.options = arguments[0];
- this.syntax = opts.syntax || this.syntax;
- this.defaultCentury = opts.defaultCentury || this.defaultCentury;
- this.proxy = jsDate.createDate(opts.date);
- }
- else {
- this.proxy = jsDate.createDate(arguments[0]);
- }
- break;
- default:
- var a = [];
- for ( var i=0; i<arguments.length; i++ ) {
- a.push(arguments[i]);
- }
- // this should be the current date/time?
- this.proxy = new Date();
- this.proxy.setFullYear.apply( this.proxy, a.slice(0,3) );
- if ( a.slice(3).length ) {
- this.proxy.setHours.apply( this.proxy, a.slice(3) );
- }
- break;
- }
- };
-
- /**
- * @namespace Configuration options that will be used as defaults for all instances on the page.
- * @property {String} defaultLocale The default locale to use [en].
- * @property {String} syntax The default syntax to use [perl].
- * @property {Number} defaultCentury The default centry for 2 digit dates.
- */
- jsDate.config = {
- defaultLocale: 'en',
- syntax: 'perl',
- defaultCentury: 1900
- };
-
- /**
- * Add an arbitrary amount to the currently stored date
- *
- * @param {Number} number
- * @param {String} unit
- * @returns {jsDate}
- */
-
- jsDate.prototype.add = function(number, unit) {
- var factor = multipliers[unit] || multipliers.day;
- if (typeof factor == 'number') {
- this.proxy.setTime(this.proxy.getTime() + (factor * number));
- } else {
- factor.add(this, number);
- }
- return this;
- };
-
- /**
- * Create a new jqplot.date object with the same date
- *
- * @returns {jsDate}
- */
-
- jsDate.prototype.clone = function() {
- return new jsDate(this.proxy.getTime());
- };
-
- /**
- * Get the UTC TimeZone Offset of this date in milliseconds.
- *
- * @returns {Number}
- */
-
- jsDate.prototype.getUtcOffset = function() {
- return this.proxy.getTimezoneOffset() * 60000;
- };
-
- /**
- * Find the difference between this jsDate and another date.
- *
- * @param {String| Number| Array| jsDate&nbsp;Object| Date&nbsp;Object} dateObj
- * @param {String} unit
- * @param {Boolean} allowDecimal
- * @returns {Number} Number of units difference between dates.
- */
-
- jsDate.prototype.diff = function(dateObj, unit, allowDecimal) {
- // ensure we have a Date object
- dateObj = new jsDate(dateObj);
- if (dateObj === null) {
- return null;
- }
- // get the multiplying factor integer or factor function
- var factor = multipliers[unit] || multipliers.day;
- if (typeof factor == 'number') {
- // multiply
- var unitDiff = (this.proxy.getTime() - dateObj.proxy.getTime()) / factor;
- } else {
- // run function
- var unitDiff = factor.diff(this.proxy, dateObj.proxy);
- }
- // if decimals are not allowed, round toward zero
- return (allowDecimal ? unitDiff : Math[unitDiff > 0 ? 'floor' : 'ceil'](unitDiff));
- };
-
- /**
- * Get the abbreviated name of the current week day
- *
- * @returns {String}
- */
-
- jsDate.prototype.getAbbrDayName = function() {
- return jsDate.regional[this.locale]["dayNamesShort"][this.proxy.getDay()];
- };
-
- /**
- * Get the abbreviated name of the current month
- *
- * @returns {String}
- */
-
- jsDate.prototype.getAbbrMonthName = function() {
- return jsDate.regional[this.locale]["monthNamesShort"][this.proxy.getMonth()];
- };
-
- /**
- * Get UPPER CASE AM or PM for the current time
- *
- * @returns {String}
- */
-
- jsDate.prototype.getAMPM = function() {
- return this.proxy.getHours() >= 12 ? 'PM' : 'AM';
- };
-
- /**
- * Get lower case am or pm for the current time
- *
- * @returns {String}
- */
-
- jsDate.prototype.getAmPm = function() {
- return this.proxy.getHours() >= 12 ? 'pm' : 'am';
- };
-
- /**
- * Get the century (19 for 20th Century)
- *
- * @returns {Integer} Century (19 for 20th century).
- */
- jsDate.prototype.getCentury = function() {
- return parseInt(this.proxy.getFullYear()/100, 10);
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getDate = function() {
- return this.proxy.getDate();
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getDay = function() {
- return this.proxy.getDay();
- };
-
- /**
- * Get the Day of week 1 (Monday) thru 7 (Sunday)
- *
- * @returns {Integer} Day of week 1 (Monday) thru 7 (Sunday)
- */
- jsDate.prototype.getDayOfWeek = function() {
- var dow = this.proxy.getDay();
- return dow===0?7:dow;
- };
-
- /**
- * Get the day of the year
- *
- * @returns {Integer} 1 - 366, day of the year
- */
- jsDate.prototype.getDayOfYear = function() {
- var d = this.proxy;
- var ms = d - new Date('' + d.getFullYear() + '/1/1 GMT');
- ms += d.getTimezoneOffset()*60000;
- d = null;
- return parseInt(ms/60000/60/24, 10)+1;
- };
-
- /**
- * Get the name of the current week day
- *
- * @returns {String}
- */
-
- jsDate.prototype.getDayName = function() {
- return jsDate.regional[this.locale]["dayNames"][this.proxy.getDay()];
- };
-
- /**
- * Get the week number of the given year, starting with the first Sunday as the first week
- * @returns {Integer} Week number (13 for the 13th full week of the year).
- */
- jsDate.prototype.getFullWeekOfYear = function() {
- var d = this.proxy;
- var doy = this.getDayOfYear();
- var rdow = 6-d.getDay();
- var woy = parseInt((doy+rdow)/7, 10);
- return woy;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getFullYear = function() {
- return this.proxy.getFullYear();
- };
-
- /**
- * Get the GMT offset in hours and minutes (e.g. +06:30)
- *
- * @returns {String}
- */
-
- jsDate.prototype.getGmtOffset = function() {
- // divide the minutes offset by 60
- var hours = this.proxy.getTimezoneOffset() / 60;
- // decide if we are ahead of or behind GMT
- var prefix = hours < 0 ? '+' : '-';
- // remove the negative sign if any
- hours = Math.abs(hours);
- // add the +/- to the padded number of hours to : to the padded minutes
- return prefix + addZeros(Math.floor(hours), 2) + ':' + addZeros((hours % 1) * 60, 2);
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getHours = function() {
- return this.proxy.getHours();
- };
-
- /**
- * Get the current hour on a 12-hour scheme
- *
- * @returns {Integer}
- */
-
- jsDate.prototype.getHours12 = function() {
- var hours = this.proxy.getHours();
- return hours > 12 ? hours - 12 : (hours == 0 ? 12 : hours);
- };
-
-
- jsDate.prototype.getIsoWeek = function() {
- var d = this.proxy;
- var woy = d.getWeekOfYear();
- var dow1_1 = (new Date('' + d.getFullYear() + '/1/1')).getDay();
- // First week is 01 and not 00 as in the case of %U and %W,
- // so we add 1 to the final result except if day 1 of the year
- // is a Monday (then %W returns 01).
- // We also need to subtract 1 if the day 1 of the year is
- // Friday-Sunday, so the resulting equation becomes:
- var idow = woy + (dow1_1 > 4 || dow1_1 <= 1 ? 0 : 1);
- if(idow == 53 && (new Date('' + d.getFullYear() + '/12/31')).getDay() < 4)
- {
- idow = 1;
- }
- else if(idow === 0)
- {
- d = new jsDate(new Date('' + (d.getFullYear()-1) + '/12/31'));
- idow = d.getIsoWeek();
- }
- d = null;
- return idow;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getMilliseconds = function() {
- return this.proxy.getMilliseconds();
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getMinutes = function() {
- return this.proxy.getMinutes();
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getMonth = function() {
- return this.proxy.getMonth();
- };
-
- /**
- * Get the name of the current month
- *
- * @returns {String}
- */
-
- jsDate.prototype.getMonthName = function() {
- return jsDate.regional[this.locale]["monthNames"][this.proxy.getMonth()];
- };
-
- /**
- * Get the number of the current month, 1-12
- *
- * @returns {Integer}
- */
-
- jsDate.prototype.getMonthNumber = function() {
- return this.proxy.getMonth() + 1;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getSeconds = function() {
- return this.proxy.getSeconds();
- };
-
- /**
- * Return a proper two-digit year integer
- *
- * @returns {Integer}
- */
-
- jsDate.prototype.getShortYear = function() {
- return this.proxy.getYear() % 100;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getTime = function() {
- return this.proxy.getTime();
- };
-
- /**
- * Get the timezone abbreviation
- *
- * @returns {String} Abbreviation for the timezone
- */
- jsDate.prototype.getTimezoneAbbr = function() {
- return this.proxy.toString().replace(/^.*\(([^)]+)\)$/, '$1');
- };
-
- /**
- * Get the browser-reported name for the current timezone (e.g. MDT, Mountain Daylight Time)
- *
- * @returns {String}
- */
- jsDate.prototype.getTimezoneName = function() {
- var match = /(?:\((.+)\)$| ([A-Z]{3}) )/.exec(this.toString());
- return match[1] || match[2] || 'GMT' + this.getGmtOffset();
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getTimezoneOffset = function() {
- return this.proxy.getTimezoneOffset();
- };
-
-
- /**
- * Get the week number of the given year, starting with the first Monday as the first week
- * @returns {Integer} Week number (13 for the 13th week of the year).
- */
- jsDate.prototype.getWeekOfYear = function() {
- var doy = this.getDayOfYear();
- var rdow = 7 - this.getDayOfWeek();
- var woy = parseInt((doy+rdow)/7, 10);
- return woy;
- };
-
- /**
- * Get the current date as a Unix timestamp
- *
- * @returns {Integer}
- */
-
- jsDate.prototype.getUnix = function() {
- return Math.round(this.proxy.getTime() / 1000, 0);
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.getYear = function() {
- return this.proxy.getYear();
- };
-
- /**
- * Return a date one day ahead (or any other unit)
- *
- * @param {String} unit Optional, year | month | day | week | hour | minute | second | millisecond
- * @returns {jsDate}
- */
-
- jsDate.prototype.next = function(unit) {
- unit = unit || 'day';
- return this.clone().add(1, unit);
- };
-
- /**
- * Set the jsDate instance to a new date.
- *
- * @param {String | Number | Array | Date Object | jsDate Object | Options Object} arguments Optional arguments,
- * either a parsable date/time string,
- * a JavaScript timestamp, an array of numbers of form [year, month, day, hours, minutes, seconds, milliseconds],
- * a Date object, jsDate Object or an options object of form {syntax: "perl", date:some Date} where all options are optional.
- */
- jsDate.prototype.set = function() {
- switch ( arguments.length ) {
- case 0:
- this.proxy = new Date();
- break;
- case 1:
- // other objects either won't have a _type property or,
- // if they do, it shouldn't be set to "jsDate", so
- // assume it is an options argument.
- if (get_type(arguments[0]) == "[object Object]" && arguments[0]._type != "jsDate") {
- var opts = this.options = arguments[0];
- this.syntax = opts.syntax || this.syntax;
- this.defaultCentury = opts.defaultCentury || this.defaultCentury;
- this.proxy = jsDate.createDate(opts.date);
- }
- else {
- this.proxy = jsDate.createDate(arguments[0]);
- }
- break;
- default:
- var a = [];
- for ( var i=0; i<arguments.length; i++ ) {
- a.push(arguments[i]);
- }
- // this should be the current date/time
- this.proxy = new Date();
- this.proxy.setFullYear.apply( this.proxy, a.slice(0,3) );
- if ( a.slice(3).length ) {
- this.proxy.setHours.apply( this.proxy, a.slice(3) );
- }
- break;
- }
- return this;
- };
-
- /**
- * Sets the day of the month for a specified date according to local time.
- * @param {Integer} dayValue An integer from 1 to 31, representing the day of the month.
- */
- jsDate.prototype.setDate = function(n) {
- this.proxy.setDate(n);
- return this;
- };
-
- /**
- * Sets the full year for a specified date according to local time.
- * @param {Integer} yearValue The numeric value of the year, for example, 1995.
- * @param {Integer} monthValue Optional, between 0 and 11 representing the months January through December.
- * @param {Integer} dayValue Optional, between 1 and 31 representing the day of the month. If you specify the dayValue parameter, you must also specify the monthValue.
- */
- jsDate.prototype.setFullYear = function() {
- this.proxy.setFullYear.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Sets the hours for a specified date according to local time.
- *
- * @param {Integer} hoursValue An integer between 0 and 23, representing the hour.
- * @param {Integer} minutesValue Optional, An integer between 0 and 59, representing the minutes.
- * @param {Integer} secondsValue Optional, An integer between 0 and 59, representing the seconds.
- * If you specify the secondsValue parameter, you must also specify the minutesValue.
- * @param {Integer} msValue Optional, A number between 0 and 999, representing the milliseconds.
- * If you specify the msValue parameter, you must also specify the minutesValue and secondsValue.
- */
- jsDate.prototype.setHours = function() {
- this.proxy.setHours.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setMilliseconds = function(n) {
- this.proxy.setMilliseconds(n);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setMinutes = function() {
- this.proxy.setMinutes.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setMonth = function() {
- this.proxy.setMonth.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setSeconds = function() {
- this.proxy.setSeconds.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setTime = function(n) {
- this.proxy.setTime(n);
- return this;
- };
-
- /**
- * Implements Date functionality
- */
- jsDate.prototype.setYear = function() {
- this.proxy.setYear.apply(this.proxy, arguments);
- return this;
- };
-
- /**
- * Provide a formatted string representation of this date.
- *
- * @param {String} formatString A format string.
- * See: {@link jsDate.formats}.
- * @returns {String} Date String.
- */
-
- jsDate.prototype.strftime = function(formatString) {
- formatString = formatString || this.formatString || jsDate.regional[this.locale]['formatString'];
- return jsDate.strftime(this, formatString, this.syntax);
- };
-
- /**
- * Return a String representation of this jsDate object.
- * @returns {String} Date string.
- */
-
- jsDate.prototype.toString = function() {
- return this.proxy.toString();
- };
-
- /**
- * Convert the current date to an 8-digit integer (%Y%m%d)
- *
- * @returns {Integer}
- */
-
- jsDate.prototype.toYmdInt = function() {
- return (this.proxy.getFullYear() * 10000) + (this.getMonthNumber() * 100) + this.proxy.getDate();
- };
-
- /**
- * @namespace Holds localizations for month/day names.
- * <p>jsDate attempts to detect locale when loaded and defaults to 'en'.
- * If a localization is detected which is not available, jsDate defaults to 'en'.
- * Additional localizations can be added after jsDate loads. After adding a localization,
- * call the jsDate.regional.getLocale() method. Currently, en, fr and de are defined.</p>
- *
- * <p>Localizations must be an object and have the following properties defined: monthNames, monthNamesShort, dayNames, dayNamesShort and Localizations are added like:</p>
- * <pre class="code">
- * jsDate.regional['en'] = {
- * monthNames : 'January February March April May June July August September October November December'.split(' '),
- * monthNamesShort : 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' '),
- * dayNames : 'Sunday Monday Tuesday Wednesday Thursday Friday Saturday'.split(' '),
- * dayNamesShort : 'Sun Mon Tue Wed Thu Fri Sat'.split(' ')
- * };
- * </pre>
- * <p>After adding localizations, call <code>jsDate.regional.getLocale();</code> to update the locale setting with the
- * new localizations.</p>
- */
-
- jsDate.regional = {
- 'en': {
- monthNames: ['January','February','March','April','May','June','July','August','September','October','November','December'],
- monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun','Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
- dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
- dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'fr': {
- monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
- monthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun','Jul','Aoû','Sep','Oct','Nov','Déc'],
- dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
- dayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'de': {
- monthNames: ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
- monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'],
- dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
- dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'es': {
- monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio', 'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
- monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun', 'Jul','Ago','Sep','Oct','Nov','Dic'],
- dayNames: ['Domingo','Lunes','Martes','Mi&eacute;rcoles','Jueves','Viernes','S&aacute;bado'],
- dayNamesShort: ['Dom','Lun','Mar','Mi&eacute;','Juv','Vie','S&aacute;b'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'ru': {
- monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],
- monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн','Июл','Авг','Сен','Окт','Ноя','Дек'],
- dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'],
- dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'ar': {
- monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران','تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
- monthNamesShort: ['1','2','3','4','5','6','7','8','9','10','11','12'],
- dayNames: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
- dayNamesShort: ['سبت', 'أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'pt': {
- monthNames: ['Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
- monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez'],
- dayNames: ['Domingo','Segunda-feira','Ter&ccedil;a-feira','Quarta-feira','Quinta-feira','Sexta-feira','S&aacute;bado'],
- dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','S&aacute;b'],
- formatString: '%Y-%m-%d %H:%M:%S'
- },
-
- 'pt-BR': {
- monthNames: ['Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho', 'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
- monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez'],
- dayNames: ['Domingo','Segunda-feira','Ter&ccedil;a-feira','Quarta-feira','Quinta-feira','Sexta-feira','S&aacute;bado'],
- dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','S&aacute;b'],
- formatString: '%Y-%m-%d %H:%M:%S'
- }
-
-
- };
-
- // Set english variants to 'en'
- jsDate.regional['en-US'] = jsDate.regional['en-GB'] = jsDate.regional['en'];
-
- /**
- * Try to determine the users locale based on the lang attribute of the html page. Defaults to 'en'
- * if it cannot figure out a locale of if the locale does not have a localization defined.
- * @returns {String} locale
- */
-
- jsDate.regional.getLocale = function () {
- var l = jsDate.config.defaultLocale;
-
- if ( document && document.getElementsByTagName('html') && document.getElementsByTagName('html')[0].lang ) {
- l = document.getElementsByTagName('html')[0].lang;
- if (!jsDate.regional.hasOwnProperty(l)) {
- l = jsDate.config.defaultLocale;
- }
- }
-
- return l;
- };
-
- // ms in day
- var day = 24 * 60 * 60 * 1000;
-
- // padd a number with zeros
- var addZeros = function(num, digits) {
- num = String(num);
- var i = digits - num.length;
- var s = String(Math.pow(10, i)).slice(1);
- return s.concat(num);
- };
-
- // representations used for calculating differences between dates.
- // This borrows heavily from Ken Snyder's work.
- var multipliers = {
- millisecond: 1,
- second: 1000,
- minute: 60 * 1000,
- hour: 60 * 60 * 1000,
- day: day,
- week: 7 * day,
- month: {
- // add a number of months
- add: function(d, number) {
- // add any years needed (increments of 12)
- multipliers.year.add(d, Math[number > 0 ? 'floor' : 'ceil'](number / 12));
- // ensure that we properly wrap betwen December and January
- // 11 % 12 = 11
- // 12 % 12 = 0
- var prevMonth = d.getMonth() + (number % 12);
- if (prevMonth == 12) {
- prevMonth = 0;
- d.setYear(d.getFullYear() + 1);
- } else if (prevMonth == -1) {
- prevMonth = 11;
- d.setYear(d.getFullYear() - 1);
- }
- d.setMonth(prevMonth);
- },
- // get the number of months between two Date objects (decimal to the nearest day)
- diff: function(d1, d2) {
- // get the number of years
- var diffYears = d1.getFullYear() - d2.getFullYear();
- // get the number of remaining months
- var diffMonths = d1.getMonth() - d2.getMonth() + (diffYears * 12);
- // get the number of remaining days
- var diffDays = d1.getDate() - d2.getDate();
- // return the month difference with the days difference as a decimal
- return diffMonths + (diffDays / 30);
- }
- },
- year: {
- // add a number of years
- add: function(d, number) {
- d.setYear(d.getFullYear() + Math[number > 0 ? 'floor' : 'ceil'](number));
- },
- // get the number of years between two Date objects (decimal to the nearest day)
- diff: function(d1, d2) {
- return multipliers.month.diff(d1, d2) / 12;
- }
- }
- };
- //
- // Alias each multiplier with an 's' to allow 'year' and 'years' for example.
- // This comes from Ken Snyders work.
- //
- for (var unit in multipliers) {
- if (unit.substring(unit.length - 1) != 's') { // IE will iterate newly added properties :|
- multipliers[unit + 's'] = multipliers[unit];
- }
- }
-
- //
- // take a jsDate instance and a format code and return the formatted value.
- // This is a somewhat modified version of Ken Snyder's method.
- //
- var format = function(d, code, syntax) {
- // if shorcut codes are used, recursively expand those.
- if (jsDate.formats[syntax]["shortcuts"][code]) {
- return jsDate.strftime(d, jsDate.formats[syntax]["shortcuts"][code], syntax);
- } else {
- // get the format code function and addZeros() argument
- var getter = (jsDate.formats[syntax]["codes"][code] || '').split('.');
- var nbr = d['get' + getter[0]] ? d['get' + getter[0]]() : '';
- if (getter[1]) {
- nbr = addZeros(nbr, getter[1]);
- }
- return nbr;
- }
- };
-
- /**
- * @static
- * Static function for convert a date to a string according to a given format. Also acts as namespace for strftime format codes.
- * <p>strftime formatting can be accomplished without creating a jsDate object by calling jsDate.strftime():</p>
- * <pre class="code">
- * var formattedDate = jsDate.strftime('Feb 8, 2006 8:48:32', '%Y-%m-%d %H:%M:%S');
- * </pre>
- * @param {String | Number | Array | jsDate&nbsp;Object | Date&nbsp;Object} date A parsable date string, JavaScript time stamp, Array of form [year, month, day, hours, minutes, seconds, milliseconds], jsDate Object or Date object.
- * @param {String} formatString String with embedded date formatting codes.
- * See: {@link jsDate.formats}.
- * @param {String} syntax Optional syntax to use [default perl].
- * @param {String} locale Optional locale to use.
- * @returns {String} Formatted representation of the date.
- */
- //
- // Logic as implemented here is very similar to Ken Snyder's Date Instance Methods.
- //
- jsDate.strftime = function(d, formatString, syntax, locale) {
- var syn = 'perl';
- var loc = jsDate.regional.getLocale();
-
- // check if syntax and locale are available or reversed
- if (syntax && jsDate.formats.hasOwnProperty(syntax)) {
- syn = syntax;
- }
- else if (syntax && jsDate.regional.hasOwnProperty(syntax)) {
- loc = syntax;
- }
-
- if (locale && jsDate.formats.hasOwnProperty(locale)) {
- syn = locale;
- }
- else if (locale && jsDate.regional.hasOwnProperty(locale)) {
- loc = locale;
- }
-
- if (get_type(d) != "[object Object]" || d._type != "jsDate") {
- d = new jsDate(d);
- d.locale = loc;
- }
- if (!formatString) {
- formatString = d.formatString || jsDate.regional[loc]['formatString'];
- }
- // default the format string to year-month-day
- var source = formatString || '%Y-%m-%d',
- result = '',
- match;
- // replace each format code
- while (source.length > 0) {
- if (match = source.match(jsDate.formats[syn].codes.matcher)) {
- result += source.slice(0, match.index);
- result += (match[1] || '') + format(d, match[2], syn);
- source = source.slice(match.index + match[0].length);
- } else {
- result += source;
- source = '';
- }
- }
- return result;
- };
-
- /**
- * @namespace
- * Namespace to hold format codes and format shortcuts. "perl" and "php" format codes
- * and shortcuts are defined by default. Additional codes and shortcuts can be
- * added like:
- *
- * <pre class="code">
- * jsDate.formats["perl"] = {
- * "codes": {
- * matcher: /someregex/,
- * Y: "fullYear", // name of "get" method without the "get",
- * ..., // more codes
- * },
- * "shortcuts": {
- * F: '%Y-%m-%d',
- * ..., // more shortcuts
- * }
- * };
- * </pre>
- *
- * <p>Additionally, ISO and SQL shortcuts are defined and can be accesses via:
- * <code>jsDate.formats.ISO</code> and <code>jsDate.formats.SQL</code>
- */
-
- jsDate.formats = {
- ISO:'%Y-%m-%dT%H:%M:%S.%N%G',
- SQL:'%Y-%m-%d %H:%M:%S'
- };
-
- /**
- * Perl format codes and shortcuts for strftime.
- *
- * A hash (object) of codes where each code must be an array where the first member is
- * the name of a Date.prototype or jsDate.prototype function to call
- * and optionally a second member indicating the number to pass to addZeros()
- *
- * <p>The following format codes are defined:</p>
- *
- * <pre class="code">
- * Code Result Description
- * == Years ==
- * %Y 2008 Four-digit year
- * %y 08 Two-digit year
- *
- * == Months ==
- * %m 09 Two-digit month
- * %#m 9 One or two-digit month
- * %B September Full month name
- * %b Sep Abbreviated month name
- *
- * == Days ==
- * %d 05 Two-digit day of month
- * %#d 5 One or two-digit day of month
- * %e 5 One or two-digit day of month
- * %A Sunday Full name of the day of the week
- * %a Sun Abbreviated name of the day of the week
- * %w 0 Number of the day of the week (0 = Sunday, 6 = Saturday)
- *
- * == Hours ==
- * %H 23 Hours in 24-hour format (two digits)
- * %#H 3 Hours in 24-hour integer format (one or two digits)
- * %I 11 Hours in 12-hour format (two digits)
- * %#I 3 Hours in 12-hour integer format (one or two digits)
- * %p PM AM or PM
- *
- * == Minutes ==
- * %M 09 Minutes (two digits)
- * %#M 9 Minutes (one or two digits)
- *
- * == Seconds ==
- * %S 02 Seconds (two digits)
- * %#S 2 Seconds (one or two digits)
- * %s 1206567625723 Unix timestamp (Seconds past 1970-01-01 00:00:00)
- *
- * == Milliseconds ==
- * %N 008 Milliseconds (three digits)
- * %#N 8 Milliseconds (one to three digits)
- *
- * == Timezone ==
- * %O 360 difference in minutes between local time and GMT
- * %Z Mountain Standard Time Name of timezone as reported by browser
- * %G 06:00 Hours and minutes between GMT
- *
- * == Shortcuts ==
- * %F 2008-03-26 %Y-%m-%d
- * %T 05:06:30 %H:%M:%S
- * %X 05:06:30 %H:%M:%S
- * %x 03/26/08 %m/%d/%y
- * %D 03/26/08 %m/%d/%y
- * %#c Wed Mar 26 15:31:00 2008 %a %b %e %H:%M:%S %Y
- * %v 3-Sep-2008 %e-%b-%Y
- * %R 15:31 %H:%M
- * %r 03:31:00 PM %I:%M:%S %p
- *
- * == Characters ==
- * %n \n Newline
- * %t \t Tab
- * %% % Percent Symbol
- * </pre>
- *
- * <p>Formatting shortcuts that will be translated into their longer version.
- * Be sure that format shortcuts do not refer to themselves: this will cause an infinite loop.</p>
- *
- * <p>Format codes and format shortcuts can be redefined after the jsDate
- * module is imported.</p>
- *
- * <p>Note that if you redefine the whole hash (object), you must supply a "matcher"
- * regex for the parser. The default matcher is:</p>
- *
- * <code>/()%(#?(%|[a-z]))/i</code>
- *
- * <p>which corresponds to the Perl syntax used by default.</p>
- *
- * <p>By customizing the matcher and format codes, nearly any strftime functionality is possible.</p>
- */
-
- jsDate.formats.perl = {
- codes: {
- //
- // 2-part regex matcher for format codes
- //
- // first match must be the character before the code (to account for escaping)
- // second match must be the format code character(s)
- //
- matcher: /()%(#?(%|[a-z]))/i,
- // year
- Y: 'FullYear',
- y: 'ShortYear.2',
- // month
- m: 'MonthNumber.2',
- '#m': 'MonthNumber',
- B: 'MonthName',
- b: 'AbbrMonthName',
- // day
- d: 'Date.2',
- '#d': 'Date',
- e: 'Date',
- A: 'DayName',
- a: 'AbbrDayName',
- w: 'Day',
- // hours
- H: 'Hours.2',
- '#H': 'Hours',
- I: 'Hours12.2',
- '#I': 'Hours12',
- p: 'AMPM',
- // minutes
- M: 'Minutes.2',
- '#M': 'Minutes',
- // seconds
- S: 'Seconds.2',
- '#S': 'Seconds',
- s: 'Unix',
- // milliseconds
- N: 'Milliseconds.3',
- '#N': 'Milliseconds',
- // timezone
- O: 'TimezoneOffset',
- Z: 'TimezoneName',
- G: 'GmtOffset'
- },
-
- shortcuts: {
- // date
- F: '%Y-%m-%d',
- // time
- T: '%H:%M:%S',
- X: '%H:%M:%S',
- // local format date
- x: '%m/%d/%y',
- D: '%m/%d/%y',
- // local format extended
- '#c': '%a %b %e %H:%M:%S %Y',
- // local format short
- v: '%e-%b-%Y',
- R: '%H:%M',
- r: '%I:%M:%S %p',
- // tab and newline
- t: '\t',
- n: '\n',
- '%': '%'
- }
- };
-
- /**
- * PHP format codes and shortcuts for strftime.
- *
- * A hash (object) of codes where each code must be an array where the first member is
- * the name of a Date.prototype or jsDate.prototype function to call
- * and optionally a second member indicating the number to pass to addZeros()
- *
- * <p>The following format codes are defined:</p>
- *
- * <pre class="code">
- * Code Result Description
- * === Days ===
- * %a Sun through Sat An abbreviated textual representation of the day
- * %A Sunday - Saturday A full textual representation of the day
- * %d 01 to 31 Two-digit day of the month (with leading zeros)
- * %e 1 to 31 Day of the month, with a space preceding single digits.
- * %j 001 to 366 Day of the year, 3 digits with leading zeros
- * %u 1 - 7 (Mon - Sun) ISO-8601 numeric representation of the day of the week
- * %w 0 - 6 (Sun - Sat) Numeric representation of the day of the week
- *
- * === Week ===
- * %U 13 Full Week number, starting with the first Sunday as the first week
- * %V 01 through 53 ISO-8601:1988 week number, starting with the first week of the year
- * with at least 4 weekdays, with Monday being the start of the week
- * %W 46 A numeric representation of the week of the year,
- * starting with the first Monday as the first week
- * === Month ===
- * %b Jan through Dec Abbreviated month name, based on the locale
- * %B January - December Full month name, based on the locale
- * %h Jan through Dec Abbreviated month name, based on the locale (an alias of %b)
- * %m 01 - 12 (Jan - Dec) Two digit representation of the month
- *
- * === Year ===
- * %C 19 Two digit century (year/100, truncated to an integer)
- * %y 09 for 2009 Two digit year
- * %Y 2038 Four digit year
- *
- * === Time ===
- * %H 00 through 23 Two digit representation of the hour in 24-hour format
- * %I 01 through 12 Two digit representation of the hour in 12-hour format
- * %l 1 through 12 Hour in 12-hour format, with a space preceeding single digits
- * %M 00 through 59 Two digit representation of the minute
- * %p AM/PM UPPER-CASE 'AM' or 'PM' based on the given time
- * %P am/pm lower-case 'am' or 'pm' based on the given time
- * %r 09:34:17 PM Same as %I:%M:%S %p
- * %R 00:35 Same as %H:%M
- * %S 00 through 59 Two digit representation of the second
- * %T 21:34:17 Same as %H:%M:%S
- * %X 03:59:16 Preferred time representation based on locale, without the date
- * %z -0500 or EST Either the time zone offset from UTC or the abbreviation
- * %Z -0500 or EST The time zone offset/abbreviation option NOT given by %z
- *
- * === Time and Date ===
- * %D 02/05/09 Same as %m/%d/%y
- * %F 2009-02-05 Same as %Y-%m-%d (commonly used in database datestamps)
- * %s 305815200 Unix Epoch Time timestamp (same as the time() function)
- * %x 02/05/09 Preferred date representation, without the time
- *
- * === Miscellaneous ===
- * %n --- A newline character (\n)
- * %t --- A Tab character (\t)
- * %% --- A literal percentage character (%)
- * </pre>
- */
-
- jsDate.formats.php = {
- codes: {
- //
- // 2-part regex matcher for format codes
- //
- // first match must be the character before the code (to account for escaping)
- // second match must be the format code character(s)
- //
- matcher: /()%((%|[a-z]))/i,
- // day
- a: 'AbbrDayName',
- A: 'DayName',
- d: 'Date.2',
- e: 'Date',
- j: 'DayOfYear.3',
- u: 'DayOfWeek',
- w: 'Day',
- // week
- U: 'FullWeekOfYear.2',
- V: 'IsoWeek.2',
- W: 'WeekOfYear.2',
- // month
- b: 'AbbrMonthName',
- B: 'MonthName',
- m: 'MonthNumber.2',
- h: 'AbbrMonthName',
- // year
- C: 'Century.2',
- y: 'ShortYear.2',
- Y: 'FullYear',
- // time
- H: 'Hours.2',
- I: 'Hours12.2',
- l: 'Hours12',
- p: 'AMPM',
- P: 'AmPm',
- M: 'Minutes.2',
- S: 'Seconds.2',
- s: 'Unix',
- O: 'TimezoneOffset',
- z: 'GmtOffset',
- Z: 'TimezoneAbbr'
- },
-
- shortcuts: {
- D: '%m/%d/%y',
- F: '%Y-%m-%d',
- T: '%H:%M:%S',
- X: '%H:%M:%S',
- x: '%m/%d/%y',
- R: '%H:%M',
- r: '%I:%M:%S %p',
- t: '\t',
- n: '\n',
- '%': '%'
- }
- };
- //
- // Conceptually, the logic implemented here is similar to Ken Snyder's Date Instance Methods.
- // I use his idea of a set of parsers which can be regular expressions or functions,
- // iterating through those, and then seeing if Date.parse() will create a date.
- // The parser expressions and functions are a little different and some bugs have been
- // worked out. Also, a lot of "pre-parsing" is done to fix implementation
- // variations of Date.parse() between browsers.
- //
- jsDate.createDate = function(date) {
- // if passing in multiple arguments, try Date constructor
- if (date == null) {
- return new Date();
- }
- // If the passed value is already a date object, return it
- if (date instanceof Date) {
- return date;
- }
- // if (typeof date == 'number') return new Date(date * 1000);
- // If the passed value is an integer, interpret it as a javascript timestamp
- if (typeof date == 'number') {
- return new Date(date);
- }
-
- // Before passing strings into Date.parse(), have to normalize them for certain conditions.
- // If strings are not formatted staccording to the EcmaScript spec, results from Date parse will be implementation dependent.
- //
- // For example:
- // * FF and Opera assume 2 digit dates are pre y2k, Chome assumes <50 is pre y2k, 50+ is 21st century.
- // * Chrome will correctly parse '1984-1-25' into localtime, FF and Opera will not parse.
- // * Both FF, Chrome and Opera will parse '1984/1/25' into localtime.
-
- // remove leading and trailing spaces
- var parsable = String(date).replace(/^\s*(.+)\s*$/g, '$1');
-
- // replace dahses (-) with slashes (/) in dates like n[nnn]/n[n]/n[nnn]
- parsable = parsable.replace(/^([0-9]{1,4})-([0-9]{1,2})-([0-9]{1,4})/, "$1/$2/$3");
-
- /////////
- // Need to check for '15-Dec-09' also.
- // FF will not parse, but Chrome will.
- // Chrome will set date to 2009 as well.
- /////////
-
- // first check for 'dd-mmm-yyyy' or 'dd/mmm/yyyy' like '15-Dec-2010'
- parsable = parsable.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{4})/i, "$1 $2 $3");
-
- // Now check for 'dd-mmm-yy' or 'dd/mmm/yy' and normalize years to default century.
- var match = parsable.match(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i);
- if (match && match.length > 3) {
- var m3 = parseFloat(match[3]);
- var ny = jsDate.config.defaultCentury + m3;
- ny = String(ny);
-
- // now replace 2 digit year with 4 digit year
- parsable = parsable.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i, match[1] +' '+ match[2] +' '+ ny);
-
- }
-
- // Check for '1/19/70 8:14PM'
- // where starts with mm/dd/yy or yy/mm/dd and have something after
- // Check if 1st postiion is greater than 31, assume it is year.
- // Assme all 2 digit years are 1900's.
- // Finally, change them into US style mm/dd/yyyy representations.
- match = parsable.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})[^0-9]/);
-
- function h1(parsable, match) {
- var m1 = parseFloat(match[1]);
- var m2 = parseFloat(match[2]);
- var m3 = parseFloat(match[3]);
- var cent = jsDate.config.defaultCentury;
- var ny, nd, nm, str;
-
- if (m1 > 31) { // first number is a year
- nd = m3;
- nm = m2;
- ny = cent + m1;
- }
-
- else { // last number is the year
- nd = m2;
- nm = m1;
- ny = cent + m3;
- }
-
- str = nm+'/'+nd+'/'+ny;
-
- // now replace 2 digit year with 4 digit year
- return parsable.replace(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})/, str);
-
- }
-
- if (match && match.length > 3) {
- parsable = h1(parsable, match);
- }
-
- // Now check for '1/19/70' with nothing after and do as above
- var match = parsable.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})$/);
-
- if (match && match.length > 3) {
- parsable = h1(parsable, match);
- }
-
-
- var i = 0;
- var length = jsDate.matchers.length;
- var pattern,
- ms,
- current = parsable,
- obj;
- while (i < length) {
- ms = Date.parse(current);
- if (!isNaN(ms)) {
- return new Date(ms);
- }
- pattern = jsDate.matchers[i];
- if (typeof pattern == 'function') {
- obj = pattern.call(jsDate, current);
- if (obj instanceof Date) {
- return obj;
- }
- } else {
- current = parsable.replace(pattern[0], pattern[1]);
- }
- i++;
- }
- return NaN;
- };
-
-
- /**
- * @static
- * Handy static utility function to return the number of days in a given month.
- * @param {Integer} year Year
- * @param {Integer} month Month (1-12)
- * @returns {Integer} Number of days in the month.
- */
- //
- // handy utility method Borrowed right from Ken Snyder's Date Instance Mehtods.
- //
- jsDate.daysInMonth = function(year, month) {
- if (month == 2) {
- return new Date(year, 1, 29).getDate() == 29 ? 29 : 28;
- }
- return [undefined,31,undefined,31,30,31,30,31,31,30,31,30,31][month];
- };
-
-
- //
- // An Array of regular expressions or functions that will attempt to match the date string.
- // Functions are called with scope of a jsDate instance.
- //
- jsDate.matchers = [
- // convert dd.mmm.yyyy to mm/dd/yyyy (world date to US date).
- [/(3[01]|[0-2]\d)\s*\.\s*(1[0-2]|0\d)\s*\.\s*([1-9]\d{3})/, '$2/$1/$3'],
- // convert yyyy-mm-dd to mm/dd/yyyy (ISO date to US date).
- [/([1-9]\d{3})\s*-\s*(1[0-2]|0\d)\s*-\s*(3[01]|[0-2]\d)/, '$2/$3/$1'],
- // Handle 12 hour or 24 hour time with milliseconds am/pm and optional date part.
- function(str) {
- var match = str.match(/^(?:(.+)\s+)?([012]?\d)(?:\s*\:\s*(\d\d))?(?:\s*\:\s*(\d\d(\.\d*)?))?\s*(am|pm)?\s*$/i);
- // opt. date hour opt. minute opt. second opt. msec opt. am or pm
- if (match) {
- if (match[1]) {
- var d = this.createDate(match[1]);
- if (isNaN(d)) {
- return;
- }
- } else {
- var d = new Date();
- d.setMilliseconds(0);
- }
- var hour = parseFloat(match[2]);
- if (match[6]) {
- hour = match[6].toLowerCase() == 'am' ? (hour == 12 ? 0 : hour) : (hour == 12 ? 12 : hour + 12);
- }
- d.setHours(hour, parseInt(match[3] || 0, 10), parseInt(match[4] || 0, 10), ((parseFloat(match[5] || 0)) || 0)*1000);
- return d;
- }
- else {
- return str;
- }
- },
- // Handle ISO timestamp with time zone.
- function(str) {
- var match = str.match(/^(?:(.+))[T|\s+]([012]\d)(?:\:(\d\d))(?:\:(\d\d))(?:\.\d+)([\+\-]\d\d\:\d\d)$/i);
- if (match) {
- if (match[1]) {
- var d = this.createDate(match[1]);
- if (isNaN(d)) {
- return;
- }
- } else {
- var d = new Date();
- d.setMilliseconds(0);
- }
- var hour = parseFloat(match[2]);
- d.setHours(hour, parseInt(match[3], 10), parseInt(match[4], 10), parseFloat(match[5])*1000);
- return d;
- }
- else {
- return str;
- }
- },
- // Try to match ambiguous strings like 12/8/22.
- // Use FF date assumption that 2 digit years are 20th century (i.e. 1900's).
- // This may be redundant with pre processing of date already performed.
- function(str) {
- var match = str.match(/^([0-3]?\d)\s*[-\/.\s]{1}\s*([a-zA-Z]{3,9})\s*[-\/.\s]{1}\s*([0-3]?\d)$/);
- if (match) {
- var d = new Date();
- var cent = jsDate.config.defaultCentury;
- var m1 = parseFloat(match[1]);
- var m3 = parseFloat(match[3]);
- var ny, nd, nm;
- if (m1 > 31) { // first number is a year
- nd = m3;
- ny = cent + m1;
- }
-
- else { // last number is the year
- nd = m1;
- ny = cent + m3;
- }
-
- var nm = inArray(match[2], jsDate.regional[jsDate.regional.getLocale()]["monthNamesShort"]);
-
- if (nm == -1) {
- nm = inArray(match[2], jsDate.regional[jsDate.regional.getLocale()]["monthNames"]);
- }
-
- d.setFullYear(ny, nm, nd);
- d.setHours(0,0,0,0);
- return d;
- }
-
- else {
- return str;
- }
- }
- ];
-
- //
- // I think John Reisig published this method on his blog, ejohn.
- //
- function inArray( elem, array ) {
- if ( array.indexOf ) {
- return array.indexOf( elem );
- }
-
- for ( var i = 0, length = array.length; i < length; i++ ) {
- if ( array[ i ] === elem ) {
- return i;
- }
- }
-
- return -1;
- }
-
- //
- // Thanks to Kangax, Christian Sciberras and Stack Overflow for this method.
- //
- function get_type(thing){
- if(thing===null) return "[object Null]"; // special case
- return Object.prototype.toString.call(thing);
- }
-
- $.jsDate = jsDate;
-
-
- /**
- * JavaScript printf/sprintf functions.
- *
- * This code has been adapted from the publicly available sprintf methods
- * by Ash Searle. His original header follows:
- *
- * This code is unrestricted: you are free to use it however you like.
- *
- * The functions should work as expected, performing left or right alignment,
- * truncating strings, outputting numbers with a required precision etc.
- *
- * For complex cases, these functions follow the Perl implementations of
- * (s)printf, allowing arguments to be passed out-of-order, and to set the
- * precision or length of the output based on arguments instead of fixed
- * numbers.
- *
- * See http://perldoc.perl.org/functions/sprintf.html for more information.
- *
- * Implemented:
- * - zero and space-padding
- * - right and left-alignment,
- * - base X prefix (binary, octal and hex)
- * - positive number prefix
- * - (minimum) width
- * - precision / truncation / maximum width
- * - out of order arguments
- *
- * Not implemented (yet):
- * - vector flag
- * - size (bytes, words, long-words etc.)
- *
- * Will not implement:
- * - %n or %p (no pass-by-reference in JavaScript)
- *
- * @version 2007.04.27
- * @author Ash Searle
- *
- * You can see the original work and comments on his blog:
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- */
-
- /**
- * @Modifications 2009.05.26
- * @author Chris Leonello
- *
- * Added %p %P specifier
- * Acts like %g or %G but will not add more significant digits to the output than present in the input.
- * Example:
- * Format: '%.3p', Input: 0.012, Output: 0.012
- * Format: '%.3g', Input: 0.012, Output: 0.0120
- * Format: '%.4p', Input: 12.0, Output: 12.0
- * Format: '%.4g', Input: 12.0, Output: 12.00
- * Format: '%.4p', Input: 4.321e-5, Output: 4.321e-5
- * Format: '%.4g', Input: 4.321e-5, Output: 4.3210e-5
- *
- * Example:
- * >>> $.jqplot.sprintf('%.2f, %d', 23.3452, 43.23)
- * "23.35, 43"
- * >>> $.jqplot.sprintf("no value: %n, decimal with thousands separator: %'d", 23.3452, 433524)
- * "no value: , decimal with thousands separator: 433,524"
- */
- $.jqplot.sprintf = function() {
- function pad(str, len, chr, leftJustify) {
- var padding = (str.length >= len) ? '' : Array(1 + len - str.length >>> 0).join(chr);
- return leftJustify ? str + padding : padding + str;
-
- }
-
- function thousand_separate(value) {
- var value_str = new String(value);
- for (var i=10; i>0; i--) {
- if (value_str == (value_str = value_str.replace(/^(\d+)(\d{3})/, "$1"+$.jqplot.sprintf.thousandsSeparator+"$2"))) break;
- }
- return value_str;
- }
-
- function justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace) {
- var diff = minWidth - value.length;
- if (diff > 0) {
- var spchar = ' ';
- if (htmlSpace) { spchar = '&nbsp;'; }
- if (leftJustify || !zeroPad) {
- value = pad(value, minWidth, spchar, leftJustify);
- } else {
- value = value.slice(0, prefix.length) + pad('', diff, '0', true) + value.slice(prefix.length);
- }
- }
- return value;
- }
-
- function formatBaseX(value, base, prefix, leftJustify, minWidth, precision, zeroPad, htmlSpace) {
- // Note: casts negative numbers to positive ones
- var number = value >>> 0;
- prefix = prefix && number && {'2': '0b', '8': '0', '16': '0x'}[base] || '';
- value = prefix + pad(number.toString(base), precision || 0, '0', false);
- return justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace);
- }
-
- function formatString(value, leftJustify, minWidth, precision, zeroPad, htmlSpace) {
- if (precision != null) {
- value = value.slice(0, precision);
- }
- return justify(value, '', leftJustify, minWidth, zeroPad, htmlSpace);
- }
-
- var a = arguments, i = 0, format = a[i++];
-
- return format.replace($.jqplot.sprintf.regex, function(substring, valueIndex, flags, minWidth, _, precision, type) {
- if (substring == '%%') { return '%'; }
-
- // parse flags
- var leftJustify = false, positivePrefix = '', zeroPad = false, prefixBaseX = false, htmlSpace = false, thousandSeparation = false;
- for (var j = 0; flags && j < flags.length; j++) switch (flags.charAt(j)) {
- case ' ': positivePrefix = ' '; break;
- case '+': positivePrefix = '+'; break;
- case '-': leftJustify = true; break;
- case '0': zeroPad = true; break;
- case '#': prefixBaseX = true; break;
- case '&': htmlSpace = true; break;
- case '\'': thousandSeparation = true; break;
- }
-
- // parameters may be null, undefined, empty-string or real valued
- // we want to ignore null, undefined and empty-string values
-
- if (!minWidth) {
- minWidth = 0;
- }
- else if (minWidth == '*') {
- minWidth = +a[i++];
- }
- else if (minWidth.charAt(0) == '*') {
- minWidth = +a[minWidth.slice(1, -1)];
- }
- else {
- minWidth = +minWidth;
- }
-
- // Note: undocumented perl feature:
- if (minWidth < 0) {
- minWidth = -minWidth;
- leftJustify = true;
- }
-
- if (!isFinite(minWidth)) {
- throw new Error('$.jqplot.sprintf: (minimum-)width must be finite');
- }
-
- if (!precision) {
- precision = 'fFeE'.indexOf(type) > -1 ? 6 : (type == 'd') ? 0 : void(0);
- }
- else if (precision == '*') {
- precision = +a[i++];
- }
- else if (precision.charAt(0) == '*') {
- precision = +a[precision.slice(1, -1)];
- }
- else {
- precision = +precision;
- }
-
- // grab value using valueIndex if required?
- var value = valueIndex ? a[valueIndex.slice(0, -1)] : a[i++];
-
- switch (type) {
- case 's': {
- if (value == null) {
- return '';
- }
- return formatString(String(value), leftJustify, minWidth, precision, zeroPad, htmlSpace);
- }
- case 'c': return formatString(String.fromCharCode(+value), leftJustify, minWidth, precision, zeroPad, htmlSpace);
- case 'b': return formatBaseX(value, 2, prefixBaseX, leftJustify, minWidth, precision, zeroPad,htmlSpace);
- case 'o': return formatBaseX(value, 8, prefixBaseX, leftJustify, minWidth, precision, zeroPad, htmlSpace);
- case 'x': return formatBaseX(value, 16, prefixBaseX, leftJustify, minWidth, precision, zeroPad, htmlSpace);
- case 'X': return formatBaseX(value, 16, prefixBaseX, leftJustify, minWidth, precision, zeroPad, htmlSpace).toUpperCase();
- case 'u': return formatBaseX(value, 10, prefixBaseX, leftJustify, minWidth, precision, zeroPad, htmlSpace);
- case 'i': {
- var number = parseInt(+value, 10);
- if (isNaN(number)) {
- return '';
- }
- var prefix = number < 0 ? '-' : positivePrefix;
- var number_str = thousandSeparation ? thousand_separate(String(Math.abs(number))): String(Math.abs(number));
- value = prefix + pad(number_str, precision, '0', false);
- //value = prefix + pad(String(Math.abs(number)), precision, '0', false);
- return justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace);
- }
- case 'd': {
- var number = Math.round(+value);
- if (isNaN(number)) {
- return '';
- }
- var prefix = number < 0 ? '-' : positivePrefix;
- var number_str = thousandSeparation ? thousand_separate(String(Math.abs(number))): String(Math.abs(number));
- value = prefix + pad(number_str, precision, '0', false);
- return justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace);
- }
- case 'e':
- case 'E':
- case 'f':
- case 'F':
- case 'g':
- case 'G':
- {
- var number = +value;
- if (isNaN(number)) {
- return '';
- }
- var prefix = number < 0 ? '-' : positivePrefix;
- var method = ['toExponential', 'toFixed', 'toPrecision']['efg'.indexOf(type.toLowerCase())];
- var textTransform = ['toString', 'toUpperCase']['eEfFgG'.indexOf(type) % 2];
- var number_str = Math.abs(number)[method](precision);
- number_str = thousandSeparation ? thousand_separate(number_str): number_str;
- value = prefix + number_str;
- var justified = justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace)[textTransform]();
-
- if ($.jqplot.sprintf.decimalMark !== '.' && $.jqplot.sprintf.decimalMark !== $.jqplot.sprintf.thousandsSeparator) {
- return justified.replace(/\./, $.jqplot.sprintf.decimalMark);
- } else {
- return justified;
- }
- }
- case 'p':
- case 'P':
- {
- // make sure number is a number
- var number = +value;
- if (isNaN(number)) {
- return '';
- }
- var prefix = number < 0 ? '-' : positivePrefix;
-
- var parts = String(Number(Math.abs(number)).toExponential()).split(/e|E/);
- var sd = (parts[0].indexOf('.') != -1) ? parts[0].length - 1 : parts[0].length;
- var zeros = (parts[1] < 0) ? -parts[1] - 1 : 0;
-
- if (Math.abs(number) < 1) {
- if (sd + zeros <= precision) {
- value = prefix + Math.abs(number).toPrecision(sd);
- }
- else {
- if (sd <= precision - 1) {
- value = prefix + Math.abs(number).toExponential(sd-1);
- }
- else {
- value = prefix + Math.abs(number).toExponential(precision-1);
- }
- }
- }
- else {
- var prec = (sd <= precision) ? sd : precision;
- value = prefix + Math.abs(number).toPrecision(prec);
- }
- var textTransform = ['toString', 'toUpperCase']['pP'.indexOf(type) % 2];
- return justify(value, prefix, leftJustify, minWidth, zeroPad, htmlSpace)[textTransform]();
- }
- case 'n': return '';
- default: return substring;
- }
- });
- };
-
- $.jqplot.sprintf.thousandsSeparator = ',';
- // Specifies the decimal mark for floating point values. By default a period '.'
- // is used. If you change this value to for example a comma be sure to also
- // change the thousands separator or else this won't work since a simple String
- // replace is used (replacing all periods with the mark specified here).
- $.jqplot.sprintf.decimalMark = '.';
-
- $.jqplot.sprintf.regex = /%%|%(\d+\$)?([-+#0&\' ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([nAscboxXuidfegpEGP])/g;
-
- $.jqplot.getSignificantFigures = function(number) {
- var parts = String(Number(Math.abs(number)).toExponential()).split(/e|E/);
- // total significant digits
- var sd = (parts[0].indexOf('.') != -1) ? parts[0].length - 1 : parts[0].length;
- var zeros = (parts[1] < 0) ? -parts[1] - 1 : 0;
- // exponent
- var expn = parseInt(parts[1], 10);
- // digits to the left of the decimal place
- var dleft = (expn + 1 > 0) ? expn + 1 : 0;
- // digits to the right of the decimal place
- var dright = (sd <= dleft) ? 0 : sd - expn - 1;
- return {significantDigits: sd, digitsLeft: dleft, digitsRight: dright, zeros: zeros, exponent: expn} ;
- };
-
- $.jqplot.getPrecision = function(number) {
- return $.jqplot.getSignificantFigures(number).digitsRight;
- };
-
-})(jQuery);
-
-
- var backCompat = $.uiBackCompat !== false;
-
- $.jqplot.effects = {
- effect: {}
- };
-
- // prefix used for storing data on .data()
- var dataSpace = "jqplot.storage.";
-
- /******************************************************************************/
- /*********************************** EFFECTS **********************************/
- /******************************************************************************/
-
- $.extend( $.jqplot.effects, {
- version: "1.9pre",
-
- // Saves a set of properties in a data storage
- save: function( element, set ) {
- for( var i=0; i < set.length; i++ ) {
- if ( set[ i ] !== null ) {
- element.data( dataSpace + set[ i ], element[ 0 ].style[ set[ i ] ] );
- }
- }
- },
-
- // Restores a set of previously saved properties from a data storage
- restore: function( element, set ) {
- for( var i=0; i < set.length; i++ ) {
- if ( set[ i ] !== null ) {
- element.css( set[ i ], element.data( dataSpace + set[ i ] ) );
- }
- }
- },
-
- setMode: function( el, mode ) {
- if (mode === "toggle") {
- mode = el.is( ":hidden" ) ? "show" : "hide";
- }
- return mode;
- },
-
- // Wraps the element around a wrapper that copies position properties
- createWrapper: function( element ) {
-
- // if the element is already wrapped, return it
- if ( element.parent().is( ".ui-effects-wrapper" )) {
- return element.parent();
- }
-
- // wrap the element
- var props = {
- width: element.outerWidth(true),
- height: element.outerHeight(true),
- "float": element.css( "float" )
- },
- wrapper = $( "<div></div>" )
- .addClass( "ui-effects-wrapper" )
- .css({
- fontSize: "100%",
- background: "transparent",
- border: "none",
- margin: 0,
- padding: 0
- }),
- // Store the size in case width/height are defined in % - Fixes #5245
- size = {
- width: element.width(),
- height: element.height()
- },
- active = document.activeElement;
-
- element.wrap( wrapper );
-
- // Fixes #7595 - Elements lose focus when wrapped.
- if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) {
- $( active ).focus();
- }
-
- wrapper = element.parent(); //Hotfix for jQuery 1.4 since some change in wrap() seems to actually loose the reference to the wrapped element
-
- // transfer positioning properties to the wrapper
- if ( element.css( "position" ) === "static" ) {
- wrapper.css({ position: "relative" });
- element.css({ position: "relative" });
- } else {
- $.extend( props, {
- position: element.css( "position" ),
- zIndex: element.css( "z-index" )
- });
- $.each([ "top", "left", "bottom", "right" ], function(i, pos) {
- props[ pos ] = element.css( pos );
- if ( isNaN( parseInt( props[ pos ], 10 ) ) ) {
- props[ pos ] = "auto";
- }
- });
- element.css({
- position: "relative",
- top: 0,
- left: 0,
- right: "auto",
- bottom: "auto"
- });
- }
- element.css(size);
-
- return wrapper.css( props ).show();
- },
-
- removeWrapper: function( element ) {
- var active = document.activeElement;
-
- if ( element.parent().is( ".ui-effects-wrapper" ) ) {
- element.parent().replaceWith( element );
-
- // Fixes #7595 - Elements lose focus when wrapped.
- if ( element[ 0 ] === active || $.contains( element[ 0 ], active ) ) {
- $( active ).focus();
- }
- }
-
-
- return element;
- }
- });
-
- // return an effect options object for the given parameters:
- function _normalizeArguments( effect, options, speed, callback ) {
-
- // short path for passing an effect options object:
- if ( $.isPlainObject( effect ) ) {
- return effect;
- }
-
- // convert to an object
- effect = { effect: effect };
-
- // catch (effect)
- if ( options === undefined ) {
- options = {};
- }
-
- // catch (effect, callback)
- if ( $.isFunction( options ) ) {
- callback = options;
- speed = null;
- options = {};
- }
-
- // catch (effect, speed, ?)
- if ( $.type( options ) === "number" || $.fx.speeds[ options ]) {
- callback = speed;
- speed = options;
- options = {};
- }
-
- // catch (effect, options, callback)
- if ( $.isFunction( speed ) ) {
- callback = speed;
- speed = null;
- }
-
- // add options to effect
- if ( options ) {
- $.extend( effect, options );
- }
-
- speed = speed || options.duration;
- effect.duration = $.fx.off ? 0 : typeof speed === "number"
- ? speed : speed in $.fx.speeds ? $.fx.speeds[ speed ] : $.fx.speeds._default;
-
- effect.complete = callback || options.complete;
-
- return effect;
- }
-
- function standardSpeed( speed ) {
- // valid standard speeds
- if ( !speed || typeof speed === "number" || $.fx.speeds[ speed ] ) {
- return true;
- }
-
- // invalid strings - treat as "normal" speed
- if ( typeof speed === "string" && !$.jqplot.effects.effect[ speed ] ) {
- // TODO: remove in 2.0 (#7115)
- if ( backCompat && $.jqplot.effects[ speed ] ) {
- return false;
- }
- return true;
- }
-
- return false;
- }
-
- $.fn.extend({
- jqplotEffect: function( effect, options, speed, callback ) {
- var args = _normalizeArguments.apply( this, arguments ),
- mode = args.mode,
- queue = args.queue,
- effectMethod = $.jqplot.effects.effect[ args.effect ],
-
- // DEPRECATED: remove in 2.0 (#7115)
- oldEffectMethod = !effectMethod && backCompat && $.jqplot.effects[ args.effect ];
-
- if ( $.fx.off || !( effectMethod || oldEffectMethod ) ) {
- // delegate to the original method (e.g., .show()) if possible
- if ( mode ) {
- return this[ mode ]( args.duration, args.complete );
- } else {
- return this.each( function() {
- if ( args.complete ) {
- args.complete.call( this );
- }
- });
- }
- }
-
- function run( next ) {
- var elem = $( this ),
- complete = args.complete,
- mode = args.mode;
-
- function done() {
- if ( $.isFunction( complete ) ) {
- complete.call( elem[0] );
- }
- if ( $.isFunction( next ) ) {
- next();
- }
- }
-
- // if the element is hiddden and mode is hide,
- // or element is visible and mode is show
- if ( elem.is( ":hidden" ) ? mode === "hide" : mode === "show" ) {
- done();
- } else {
- effectMethod.call( elem[0], args, done );
- }
- }
-
- // TODO: remove this check in 2.0, effectMethod will always be true
- if ( effectMethod ) {
- return queue === false ? this.each( run ) : this.queue( queue || "fx", run );
- } else {
- // DEPRECATED: remove in 2.0 (#7115)
- return oldEffectMethod.call(this, {
- options: args,
- duration: args.duration,
- callback: args.complete,
- mode: args.mode
- });
- }
- }
- });
-
-
-
-
- var rvertical = /up|down|vertical/,
- rpositivemotion = /up|left|vertical|horizontal/;
-
- $.jqplot.effects.effect.blind = function( o, done ) {
- // Create element
- var el = $( this ),
- props = [ "position", "top", "bottom", "left", "right", "height", "width" ],
- mode = $.jqplot.effects.setMode( el, o.mode || "hide" ),
- direction = o.direction || "up",
- vertical = rvertical.test( direction ),
- ref = vertical ? "height" : "width",
- ref2 = vertical ? "top" : "left",
- motion = rpositivemotion.test( direction ),
- animation = {},
- show = mode === "show",
- wrapper, distance, top;
-
- // // if already wrapped, the wrapper's properties are my property. #6245
- if ( el.parent().is( ".ui-effects-wrapper" ) ) {
- $.jqplot.effects.save( el.parent(), props );
- } else {
- $.jqplot.effects.save( el, props );
- }
- el.show();
- top = parseInt(el.css('top'), 10);
- wrapper = $.jqplot.effects.createWrapper( el ).css({
- overflow: "hidden"
- });
-
- distance = vertical ? wrapper[ ref ]() + top : wrapper[ ref ]();
-
- animation[ ref ] = show ? String(distance) : '0';
- if ( !motion ) {
- el
- .css( vertical ? "bottom" : "right", 0 )
- .css( vertical ? "top" : "left", "" )
- .css({ position: "absolute" });
- animation[ ref2 ] = show ? '0' : String(distance);
- }
-
- // // start at 0 if we are showing
- if ( show ) {
- wrapper.css( ref, 0 );
- if ( ! motion ) {
- wrapper.css( ref2, distance );
- }
- }
-
- // // Animate
- wrapper.animate( animation, {
- duration: o.duration,
- easing: o.easing,
- queue: false,
- complete: function() {
- if ( mode === "hide" ) {
- el.hide();
- }
- $.jqplot.effects.restore( el, props );
- $.jqplot.effects.removeWrapper( el );
- done();
- }
- });
-
- };
-
-
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.css b/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.css
deleted file mode 100644
index de15fff5..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.css
+++ /dev/null
@@ -1 +0,0 @@
-.jqplot-target{position:relative;color:#666;font-family:"Trebuchet MS",Arial,Helvetica,sans-serif;font-size:1em;}.jqplot-axis{font-size:.75em;}.jqplot-xaxis{margin-top:10px;}.jqplot-x2axis{margin-bottom:10px;}.jqplot-yaxis{margin-right:10px;}.jqplot-y2axis,.jqplot-y3axis,.jqplot-y4axis,.jqplot-y5axis,.jqplot-y6axis,.jqplot-y7axis,.jqplot-y8axis,.jqplot-y9axis,.jqplot-yMidAxis{margin-left:10px;margin-right:10px;}.jqplot-axis-tick,.jqplot-xaxis-tick,.jqplot-yaxis-tick,.jqplot-x2axis-tick,.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick,.jqplot-yMidAxis-tick{position:absolute;white-space:pre;}.jqplot-xaxis-tick{top:0;left:15px;vertical-align:top;}.jqplot-x2axis-tick{bottom:0;left:15px;vertical-align:bottom;}.jqplot-yaxis-tick{right:0;top:15px;text-align:right;}.jqplot-yaxis-tick.jqplot-breakTick{right:-20px;margin-right:0;padding:1px 5px 1px 5px;z-index:2;font-size:1.5em;}.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick{left:0;top:15px;text-align:left;}.jqplot-yMidAxis-tick{text-align:center;white-space:nowrap;}.jqplot-xaxis-label{margin-top:10px;font-size:11pt;position:absolute;}.jqplot-x2axis-label{margin-bottom:10px;font-size:11pt;position:absolute;}.jqplot-yaxis-label{margin-right:10px;font-size:11pt;position:absolute;}.jqplot-yMidAxis-label{font-size:11pt;position:absolute;}.jqplot-y2axis-label,.jqplot-y3axis-label,.jqplot-y4axis-label,.jqplot-y5axis-label,.jqplot-y6axis-label,.jqplot-y7axis-label,.jqplot-y8axis-label,.jqplot-y9axis-label{font-size:11pt;margin-left:10px;position:absolute;}.jqplot-meterGauge-tick{font-size:.75em;color:#999;}.jqplot-meterGauge-label{font-size:1em;color:#999;}table.jqplot-table-legend{margin-top:12px;margin-bottom:12px;margin-left:12px;margin-right:12px;}table.jqplot-table-legend,table.jqplot-cursor-legend{background-color:rgba(255,255,255,0.6);border:1px solid #ccc;position:absolute;font-size:.75em;}td.jqplot-table-legend{vertical-align:middle;}td.jqplot-seriesToggle:hover,td.jqplot-seriesToggle:active{cursor:pointer;}.jqplot-table-legend .jqplot-series-hidden{text-decoration:line-through;}div.jqplot-table-legend-swatch-outline{border:1px solid #ccc;padding:1px;}div.jqplot-table-legend-swatch{width:0;height:0;border-top-width:5px;border-bottom-width:5px;border-left-width:6px;border-right-width:6px;border-top-style:solid;border-bottom-style:solid;border-left-style:solid;border-right-style:solid;}.jqplot-title{top:0;left:0;padding-bottom:.5em;font-size:1.2em;}table.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em;}.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:rgba(208,208,208,0.5);padding:1px;}.jqplot-highlighter-tooltip,.jqplot-canvasOverlay-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:rgba(208,208,208,0.5);padding:1px;}.jqplot-point-label{font-size:.75em;z-index:2;}td.jqplot-cursor-legend-swatch{vertical-align:middle;text-align:center;}div.jqplot-cursor-legend-swatch{width:1.2em;height:.7em;}.jqplot-error{text-align:center;}.jqplot-error-message{position:relative;top:46%;display:inline-block;}div.jqplot-bubble-label{font-size:.8em;padding-left:2px;padding-right:2px;color:rgb(20%,20%,20%);}div.jqplot-bubble-label.jqplot-bubble-label-highlight{background:rgba(90%,90%,90%,0.7);}div.jqplot-noData-container{text-align:center;background-color:rgba(96%,96%,96%,0.3);} \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.js b/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.js
deleted file mode 100644
index 1def2792..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.jqplot.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(H){var r;H.fn.emptyForce=function(){for(var ab=0,ac;(ac=H(this)[ab])!=null;ab++){if(ac.nodeType===1){H.cleanData(ac.getElementsByTagName("*"))}if(H.jqplot.use_excanvas){ac.outerHTML=""}else{while(ac.firstChild){ac.removeChild(ac.firstChild)}}ac=null}return H(this)};H.fn.removeChildForce=function(ab){while(ab.firstChild){this.removeChildForce(ab.firstChild);ab.removeChild(ab.firstChild)}};H.fn.jqplot=function(){var ab=[];var ad=[];for(var ae=0,ac=arguments.length;ae<ac;ae++){if(H.isArray(arguments[ae])){ab.push(arguments[ae])}else{if(H.isPlainObject(arguments[ae])){ad.push(arguments[ae])}}}return this.each(function(ah){var am,al,ak=H(this),ag=ab.length,af=ad.length,aj,ai;if(ah<ag){aj=ab[ah]}else{aj=ag?ab[ag-1]:null}if(ah<af){ai=ad[ah]}else{ai=af?ad[af-1]:null}am=ak.attr("id");if(am===r){am="jqplot_target_"+H.jqplot.targetCounter++;ak.attr("id",am)}al=H.jqplot(am,aj,ai);ak.data("jqplot",al)})};H.jqplot=function(ah,ae,ac){var ad=null,ab=null;if(arguments.length===3){ad=ae;ab=ac}else{if(arguments.length===2){if(H.isArray(ae)){ad=ae}else{if(H.isPlainObject(ae)){ab=ae}}}}if(ad===null&&ab!==null&&ab.data){ad=ab.data}var ag=new N();H("#"+ah).removeClass("jqplot-error");if(H.jqplot.config.catchErrors){try{ag.init(ah,ad,ab);ag.draw();ag.themeEngine.init.call(ag);return ag}catch(af){var ai=H.jqplot.config.errorMessage||af.message;H("#"+ah).append('<div class="jqplot-error-message">'+ai+"</div>");H("#"+ah).addClass("jqplot-error");document.getElementById(ah).style.background=H.jqplot.config.errorBackground;document.getElementById(ah).style.border=H.jqplot.config.errorBorder;document.getElementById(ah).style.fontFamily=H.jqplot.config.errorFontFamily;document.getElementById(ah).style.fontSize=H.jqplot.config.errorFontSize;document.getElementById(ah).style.fontStyle=H.jqplot.config.errorFontStyle;document.getElementById(ah).style.fontWeight=H.jqplot.config.errorFontWeight}}else{ag.init(ah,ad,ab);ag.draw();ag.themeEngine.init.call(ag);return ag}};H.jqplot.version="1.0.4";H.jqplot.revision="1121";H.jqplot.targetCounter=1;H.jqplot.CanvasManager=function(){if(typeof H.jqplot.CanvasManager.canvases=="undefined"){H.jqplot.CanvasManager.canvases=[];H.jqplot.CanvasManager.free=[]}var ab=[];this.getCanvas=function(){var ae;var ad=true;if(!H.jqplot.use_excanvas){for(var af=0,ac=H.jqplot.CanvasManager.canvases.length;af<ac;af++){if(H.jqplot.CanvasManager.free[af]===true){ad=false;ae=H.jqplot.CanvasManager.canvases[af];H.jqplot.CanvasManager.free[af]=false;ab.push(af);break}}}if(ad){ae=document.createElement("canvas");ab.push(H.jqplot.CanvasManager.canvases.length);H.jqplot.CanvasManager.canvases.push(ae);H.jqplot.CanvasManager.free.push(false)}return ae};this.initCanvas=function(ac){if(H.jqplot.use_excanvas){return window.G_vmlCanvasManager.initElement(ac)}return ac};this.freeAllCanvases=function(){for(var ad=0,ac=ab.length;ad<ac;ad++){this.freeCanvas(ab[ad])}ab=[]};this.freeCanvas=function(ac){if(H.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==r){window.G_vmlCanvasManager.uninitElement(H.jqplot.CanvasManager.canvases[ac]);H.jqplot.CanvasManager.canvases[ac]=null}else{var ad=H.jqplot.CanvasManager.canvases[ac];ad.getContext("2d").clearRect(0,0,ad.width,ad.height);H(ad).unbind().removeAttr("class").removeAttr("style");H(ad).css({left:"",top:"",position:""});ad.width=0;ad.height=0;H.jqplot.CanvasManager.free[ac]=true}}};H.jqplot.log=function(){if(window.console){window.console.log.apply(window.console,arguments)}};H.jqplot.config={addDomReference:false,enablePlugins:false,defaultHeight:300,defaultWidth:400,UTCAdjust:false,timezoneOffset:new Date(new Date().getTimezoneOffset()*60000),errorMessage:"",errorBackground:"",errorBorder:"",errorFontFamily:"",errorFontSize:"",errorFontStyle:"",errorFontWeight:"",catchErrors:false,defaultTickFormatString:"%.1f",defaultColors:["#4bb2c5","#EAA228","#c5b47f","#579575","#839557","#958c12","#953579","#4b5de4","#d8b83f","#ff5800","#0085cc","#c747a3","#cddf54","#FBD178","#26B4E3","#bd70c7"],defaultNegativeColors:["#498991","#C08840","#9F9274","#546D61","#646C4A","#6F6621","#6E3F5F","#4F64B0","#A89050","#C45923","#187399","#945381","#959E5C","#C7AF7B","#478396","#907294"],dashLength:4,gapLength:4,dotGapLength:2.5,srcLocation:"jqplot/src/",pluginLocation:"jqplot/src/plugins/"};H.jqplot.arrayMax=function(ab){return Math.max.apply(Math,ab)};H.jqplot.arrayMin=function(ab){return Math.min.apply(Math,ab)};H.jqplot.enablePlugins=H.jqplot.config.enablePlugins;H.jqplot.support_canvas=function(){if(typeof H.jqplot.support_canvas.result=="undefined"){H.jqplot.support_canvas.result=!!document.createElement("canvas").getContext}return H.jqplot.support_canvas.result};H.jqplot.support_canvas_text=function(){if(typeof H.jqplot.support_canvas_text.result=="undefined"){if(window.G_vmlCanvasManager!==r&&window.G_vmlCanvasManager._version>887){H.jqplot.support_canvas_text.result=true}else{H.jqplot.support_canvas_text.result=!!(document.createElement("canvas").getContext&&typeof document.createElement("canvas").getContext("2d").fillText=="function")}}return H.jqplot.support_canvas_text.result};H.jqplot.use_excanvas=(H.browser.msie&&!H.jqplot.support_canvas())?true:false;H.jqplot.preInitHooks=[];H.jqplot.postInitHooks=[];H.jqplot.preParseOptionsHooks=[];H.jqplot.postParseOptionsHooks=[];H.jqplot.preDrawHooks=[];H.jqplot.postDrawHooks=[];H.jqplot.preDrawSeriesHooks=[];H.jqplot.postDrawSeriesHooks=[];H.jqplot.preDrawLegendHooks=[];H.jqplot.addLegendRowHooks=[];H.jqplot.preSeriesInitHooks=[];H.jqplot.postSeriesInitHooks=[];H.jqplot.preParseSeriesOptionsHooks=[];H.jqplot.postParseSeriesOptionsHooks=[];H.jqplot.eventListenerHooks=[];H.jqplot.preDrawSeriesShadowHooks=[];H.jqplot.postDrawSeriesShadowHooks=[];H.jqplot.ElemContainer=function(){this._elem;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null}};H.jqplot.ElemContainer.prototype.createElement=function(ae,ag,ac,ad,ah){this._offsets=ag;var ab=ac||"jqplot";var af=document.createElement(ae);this._elem=H(af);this._elem.addClass(ab);this._elem.css(ad);this._elem.attr(ah);af=null;return this._elem};H.jqplot.ElemContainer.prototype.getWidth=function(){if(this._elem){return this._elem.outerWidth(true)}else{return null}};H.jqplot.ElemContainer.prototype.getHeight=function(){if(this._elem){return this._elem.outerHeight(true)}else{return null}};H.jqplot.ElemContainer.prototype.getPosition=function(){if(this._elem){return this._elem.position()}else{return{top:null,left:null,bottom:null,right:null}}};H.jqplot.ElemContainer.prototype.getTop=function(){return this.getPosition().top};H.jqplot.ElemContainer.prototype.getLeft=function(){return this.getPosition().left};H.jqplot.ElemContainer.prototype.getBottom=function(){return this._elem.css("bottom")};H.jqplot.ElemContainer.prototype.getRight=function(){return this._elem.css("right")};function s(ab){H.jqplot.ElemContainer.call(this);this.name=ab;this._series=[];this.show=false;this.tickRenderer=H.jqplot.AxisTickRenderer;this.tickOptions={};this.labelRenderer=H.jqplot.AxisLabelRenderer;this.labelOptions={};this.label=null;this.showLabel=true;this.min=null;this.max=null;this.autoscale=false;this.pad=1.2;this.padMax=null;this.padMin=null;this.ticks=[];this.numberTicks;this.tickInterval;this.renderer=H.jqplot.LinearAxisRenderer;this.rendererOptions={};this.showTicks=true;this.showTickMarks=true;this.showMinorTicks=true;this.drawMajorGridlines=true;this.drawMinorGridlines=false;this.drawMajorTickMarks=true;this.drawMinorTickMarks=true;this.useSeriesColor=false;this.borderWidth=null;this.borderColor=null;this.scaleToHiddenSeries=false;this._dataBounds={min:null,max:null};this._intervalStats=[];this._offsets={min:null,max:null};this._ticks=[];this._label=null;this.syncTicks=null;this.tickSpacing=75;this._min=null;this._max=null;this._tickInterval=null;this._numberTicks=null;this.__ticks=null;this._options={}}s.prototype=new H.jqplot.ElemContainer();s.prototype.constructor=s;s.prototype.init=function(){if(H.isFunction(this.renderer)){this.renderer=new this.renderer()}this.tickOptions.axis=this.name;if(this.tickOptions.showMark==null){this.tickOptions.showMark=this.showTicks}if(this.tickOptions.showMark==null){this.tickOptions.showMark=this.showTickMarks}if(this.tickOptions.showLabel==null){this.tickOptions.showLabel=this.showTicks}if(this.label==null||this.label==""){this.showLabel=false}else{this.labelOptions.label=this.label}if(this.showLabel==false){this.labelOptions.show=false}if(this.pad==0){this.pad=1}if(this.padMax==0){this.padMax=1}if(this.padMin==0){this.padMin=1}if(this.padMax==null){this.padMax=(this.pad-1)/2+1}if(this.padMin==null){this.padMin=(this.pad-1)/2+1}this.pad=this.padMax+this.padMin-1;if(this.min!=null||this.max!=null){this.autoscale=false}if(this.syncTicks==null&&this.name.indexOf("y")>-1){this.syncTicks=true}else{if(this.syncTicks==null){this.syncTicks=false}}this.renderer.init.call(this,this.rendererOptions)};s.prototype.draw=function(ab,ac){if(this.__ticks){this.__ticks=null}return this.renderer.draw.call(this,ab,ac)};s.prototype.set=function(){this.renderer.set.call(this)};s.prototype.pack=function(ac,ab){if(this.show){this.renderer.pack.call(this,ac,ab)}if(this._min==null){this._min=this.min;this._max=this.max;this._tickInterval=this.tickInterval;this._numberTicks=this.numberTicks;this.__ticks=this._ticks}};s.prototype.reset=function(){this.renderer.reset.call(this)};s.prototype.resetScale=function(ab){H.extend(true,this,{min:null,max:null,numberTicks:null,tickInterval:null,_ticks:[],ticks:[]},ab);this.resetDataBounds()};s.prototype.resetDataBounds=function(){var ai=this._dataBounds;ai.min=null;ai.max=null;var ac,aj,ag;var ad=(this.show)?true:false;for(var af=0;af<this._series.length;af++){aj=this._series[af];if(aj.show||this.scaleToHiddenSeries){ag=aj._plotData;if(aj._type==="line"&&aj.renderer.bands.show&&this.name.charAt(0)!=="x"){ag=[[0,aj.renderer.bands._min],[1,aj.renderer.bands._max]]}var ab=1,ah=1;if(aj._type!=null&&aj._type=="ohlc"){ab=3;ah=2}for(var ae=0,ac=ag.length;ae<ac;ae++){if(this.name=="xaxis"||this.name=="x2axis"){if((ag[ae][0]!=null&&ag[ae][0]<ai.min)||ai.min==null){ai.min=ag[ae][0]}if((ag[ae][0]!=null&&ag[ae][0]>ai.max)||ai.max==null){ai.max=ag[ae][0]}}else{if((ag[ae][ab]!=null&&ag[ae][ab]<ai.min)||ai.min==null){ai.min=ag[ae][ab]}if((ag[ae][ah]!=null&&ag[ae][ah]>ai.max)||ai.max==null){ai.max=ag[ae][ah]}}}if(ad&&aj.renderer.constructor!==H.jqplot.BarRenderer){ad=false}else{if(ad&&this._options.hasOwnProperty("forceTickAt0")&&this._options.forceTickAt0==false){ad=false}else{if(ad&&aj.renderer.constructor===H.jqplot.BarRenderer){if(aj.barDirection=="vertical"&&this.name!="xaxis"&&this.name!="x2axis"){if(this._options.pad!=null||this._options.padMin!=null){ad=false}}else{if(aj.barDirection=="horizontal"&&(this.name=="xaxis"||this.name=="x2axis")){if(this._options.pad!=null||this._options.padMin!=null){ad=false}}}}}}}}if(ad&&this.renderer.constructor===H.jqplot.LinearAxisRenderer&&ai.min>=0){this.padMin=1;this.forceTickAt0=true}};function n(ab){H.jqplot.ElemContainer.call(this);this.show=false;this.location="ne";this.labels=[];this.showLabels=true;this.showSwatches=true;this.placement="insideGrid";this.xoffset=0;this.yoffset=0;this.border;this.background;this.textColor;this.fontFamily;this.fontSize;this.rowSpacing="0.5em";this.renderer=H.jqplot.TableLegendRenderer;this.rendererOptions={};this.preDraw=false;this.marginTop=null;this.marginRight=null;this.marginBottom=null;this.marginLeft=null;this.escapeHtml=false;this._series=[];H.extend(true,this,ab)}n.prototype=new H.jqplot.ElemContainer();n.prototype.constructor=n;n.prototype.setOptions=function(ab){H.extend(true,this,ab);if(this.placement=="inside"){this.placement="insideGrid"}if(this.xoffset>0){if(this.placement=="insideGrid"){switch(this.location){case"nw":case"w":case"sw":if(this.marginLeft==null){this.marginLeft=this.xoffset+"px"}this.marginRight="0px";break;case"ne":case"e":case"se":default:if(this.marginRight==null){this.marginRight=this.xoffset+"px"}this.marginLeft="0px";break}}else{if(this.placement=="outside"){switch(this.location){case"nw":case"w":case"sw":if(this.marginRight==null){this.marginRight=this.xoffset+"px"}this.marginLeft="0px";break;case"ne":case"e":case"se":default:if(this.marginLeft==null){this.marginLeft=this.xoffset+"px"}this.marginRight="0px";break}}}this.xoffset=0}if(this.yoffset>0){if(this.placement=="outside"){switch(this.location){case"sw":case"s":case"se":if(this.marginTop==null){this.marginTop=this.yoffset+"px"}this.marginBottom="0px";break;case"ne":case"n":case"nw":default:if(this.marginBottom==null){this.marginBottom=this.yoffset+"px"}this.marginTop="0px";break}}else{if(this.placement=="insideGrid"){switch(this.location){case"sw":case"s":case"se":if(this.marginBottom==null){this.marginBottom=this.yoffset+"px"}this.marginTop="0px";break;case"ne":case"n":case"nw":default:if(this.marginTop==null){this.marginTop=this.yoffset+"px"}this.marginBottom="0px";break}}}this.yoffset=0}};n.prototype.init=function(){if(H.isFunction(this.renderer)){this.renderer=new this.renderer()}this.renderer.init.call(this,this.rendererOptions)};n.prototype.draw=function(ac,ad){for(var ab=0;ab<H.jqplot.preDrawLegendHooks.length;ab++){H.jqplot.preDrawLegendHooks[ab].call(this,ac)}return this.renderer.draw.call(this,ac,ad)};n.prototype.pack=function(ab){this.renderer.pack.call(this,ab)};function u(ab){H.jqplot.ElemContainer.call(this);this.text=ab;this.show=true;this.fontFamily;this.fontSize;this.textAlign;this.textColor;this.renderer=H.jqplot.DivTitleRenderer;this.rendererOptions={};this.escapeHtml=false}u.prototype=new H.jqplot.ElemContainer();u.prototype.constructor=u;u.prototype.init=function(){if(H.isFunction(this.renderer)){this.renderer=new this.renderer()}this.renderer.init.call(this,this.rendererOptions)};u.prototype.draw=function(ab){return this.renderer.draw.call(this,ab)};u.prototype.pack=function(){this.renderer.pack.call(this)};function O(ab){ab=ab||{};H.jqplot.ElemContainer.call(this);this.show=true;this.xaxis="xaxis";this._xaxis;this.yaxis="yaxis";this._yaxis;this.gridBorderWidth=2;this.renderer=H.jqplot.LineRenderer;this.rendererOptions={};this.data=[];this.gridData=[];this.label="";this.showLabel=true;this.color;this.negativeColor;this.lineWidth=2.5;this.lineJoin="round";this.lineCap="round";this.linePattern="solid";this.shadow=true;this.shadowAngle=45;this.shadowOffset=1.25;this.shadowDepth=3;this.shadowAlpha="0.1";this.breakOnNull=false;this.markerRenderer=H.jqplot.MarkerRenderer;this.markerOptions={};this.showLine=true;this.showMarker=true;this.index;this.fill=false;this.fillColor;this.fillAlpha;this.fillAndStroke=false;this.disableStack=false;this._stack=false;this.neighborThreshold=4;this.fillToZero=false;this.fillToValue=0;this.fillAxis="y";this.useNegativeColors=true;this._stackData=[];this._plotData=[];this._plotValues={x:[],y:[]};this._intervals={x:{},y:{}};this._prevPlotData=[];this._prevGridData=[];this._stackAxis="y";this._primaryAxis="_xaxis";this.canvas=new H.jqplot.GenericCanvas();this.shadowCanvas=new H.jqplot.GenericCanvas();this.plugins={};this._sumy=0;this._sumx=0;this._type=""}O.prototype=new H.jqplot.ElemContainer();O.prototype.constructor=O;O.prototype.init=function(ae,ai,ag){this.index=ae;this.gridBorderWidth=ai;var ah=this.data;var ad=[],af,ab;for(af=0,ab=ah.length;af<ab;af++){if(!this.breakOnNull){if(ah[af]==null||ah[af][0]==null||ah[af][1]==null){continue}else{ad.push(ah[af])}}else{ad.push(ah[af])}}this.data=ad;if(!this.color){this.color=ag.colorGenerator.get(this.index)}if(!this.negativeColor){this.negativeColor=ag.negativeColorGenerator.get(this.index)}if(!this.fillColor){this.fillColor=this.color}if(this.fillAlpha){var ac=H.jqplot.normalize2rgb(this.fillColor);var ac=H.jqplot.getColorComponents(ac);this.fillColor="rgba("+ac[0]+","+ac[1]+","+ac[2]+","+this.fillAlpha+")"}if(H.isFunction(this.renderer)){this.renderer=new this.renderer()}this.renderer.init.call(this,this.rendererOptions,ag);this.markerRenderer=new this.markerRenderer();if(!this.markerOptions.color){this.markerOptions.color=this.color}if(this.markerOptions.show==null){this.markerOptions.show=this.showMarker}this.showMarker=this.markerOptions.show;this.markerRenderer.init(this.markerOptions)};O.prototype.draw=function(ah,ae,ag){var ac=(ae==r)?{}:ae;ah=(ah==r)?this.canvas._ctx:ah;var ab,af,ad;for(ab=0;ab<H.jqplot.preDrawSeriesHooks.length;ab++){H.jqplot.preDrawSeriesHooks[ab].call(this,ah,ac)}if(this.show){this.renderer.setGridData.call(this,ag);if(!ac.preventJqPlotSeriesDrawTrigger){H(ah.canvas).trigger("jqplotSeriesDraw",[this.data,this.gridData])}af=[];if(ac.data){af=ac.data}else{if(!this._stack){af=this.data}else{af=this._plotData}}ad=ac.gridData||this.renderer.makeGridData.call(this,af,ag);if(this._type==="line"&&this.renderer.smooth&&this.renderer._smoothedData.length){ad=this.renderer._smoothedData}this.renderer.draw.call(this,ah,ad,ac,ag)}for(ab=0;ab<H.jqplot.postDrawSeriesHooks.length;ab++){H.jqplot.postDrawSeriesHooks[ab].call(this,ah,ac,ag)}ah=ae=ag=ab=af=ad=null};O.prototype.drawShadow=function(ah,ae,ag){var ac=(ae==r)?{}:ae;ah=(ah==r)?this.shadowCanvas._ctx:ah;var ab,af,ad;for(ab=0;ab<H.jqplot.preDrawSeriesShadowHooks.length;ab++){H.jqplot.preDrawSeriesShadowHooks[ab].call(this,ah,ac)}if(this.shadow){this.renderer.setGridData.call(this,ag);af=[];if(ac.data){af=ac.data}else{if(!this._stack){af=this.data}else{af=this._plotData}}ad=ac.gridData||this.renderer.makeGridData.call(this,af,ag);this.renderer.drawShadow.call(this,ah,ad,ac,ag)}for(ab=0;ab<H.jqplot.postDrawSeriesShadowHooks.length;ab++){H.jqplot.postDrawSeriesShadowHooks[ab].call(this,ah,ac)}ah=ae=ag=ab=af=ad=null};O.prototype.toggleDisplay=function(ac,ae){var ab,ad;if(ac.data.series){ab=ac.data.series}else{ab=this}if(ac.data.speed){ad=ac.data.speed}if(ad){if(ab.canvas._elem.is(":hidden")||!ab.show){ab.show=true;ab.canvas._elem.removeClass("jqplot-series-hidden");if(ab.shadowCanvas._elem){ab.shadowCanvas._elem.fadeIn(ad)}ab.canvas._elem.fadeIn(ad,ae);ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+ab.index).fadeIn(ad)}else{ab.show=false;ab.canvas._elem.addClass("jqplot-series-hidden");if(ab.shadowCanvas._elem){ab.shadowCanvas._elem.fadeOut(ad)}ab.canvas._elem.fadeOut(ad,ae);ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+ab.index).fadeOut(ad)}}else{if(ab.canvas._elem.is(":hidden")||!ab.show){ab.show=true;ab.canvas._elem.removeClass("jqplot-series-hidden");if(ab.shadowCanvas._elem){ab.shadowCanvas._elem.show()}ab.canvas._elem.show(0,ae);ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+ab.index).show()}else{ab.show=false;ab.canvas._elem.addClass("jqplot-series-hidden");if(ab.shadowCanvas._elem){ab.shadowCanvas._elem.hide()}ab.canvas._elem.hide(0,ae);ab.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+ab.index).hide()}}};function I(){H.jqplot.ElemContainer.call(this);this.drawGridlines=true;this.gridLineColor="#cccccc";this.gridLineWidth=1;this.background="#fffdf6";this.borderColor="#999999";this.borderWidth=2;this.drawBorder=true;this.shadow=true;this.shadowAngle=45;this.shadowOffset=1.5;this.shadowWidth=3;this.shadowDepth=3;this.shadowColor=null;this.shadowAlpha="0.07";this._left;this._top;this._right;this._bottom;this._width;this._height;this._axes=[];this.renderer=H.jqplot.CanvasGridRenderer;this.rendererOptions={};this._offsets={top:null,bottom:null,left:null,right:null}}I.prototype=new H.jqplot.ElemContainer();I.prototype.constructor=I;I.prototype.init=function(){if(H.isFunction(this.renderer)){this.renderer=new this.renderer()}this.renderer.init.call(this,this.rendererOptions)};I.prototype.createElement=function(ab,ac){this._offsets=ab;return this.renderer.createElement.call(this,ac)};I.prototype.draw=function(){this.renderer.draw.call(this)};H.jqplot.GenericCanvas=function(){H.jqplot.ElemContainer.call(this);this._ctx};H.jqplot.GenericCanvas.prototype=new H.jqplot.ElemContainer();H.jqplot.GenericCanvas.prototype.constructor=H.jqplot.GenericCanvas;H.jqplot.GenericCanvas.prototype.createElement=function(af,ad,ac,ag){this._offsets=af;var ab="jqplot";if(ad!=r){ab=ad}var ae;ae=ag.canvasManager.getCanvas();if(ac!=null){this._plotDimensions=ac}ae.width=this._plotDimensions.width-this._offsets.left-this._offsets.right;ae.height=this._plotDimensions.height-this._offsets.top-this._offsets.bottom;this._elem=H(ae);this._elem.css({position:"absolute",left:this._offsets.left,top:this._offsets.top});this._elem.addClass(ab);ae=ag.canvasManager.initCanvas(ae);ae=null;return this._elem};H.jqplot.GenericCanvas.prototype.setContext=function(){this._ctx=this._elem.get(0).getContext("2d");return this._ctx};H.jqplot.GenericCanvas.prototype.resetCanvas=function(){if(this._elem){if(H.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==r){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce()}this._ctx=null};H.jqplot.HooksManager=function(){this.hooks=[];this.args=[]};H.jqplot.HooksManager.prototype.addOnce=function(ae,ac){ac=ac||[];var af=false;for(var ad=0,ab=this.hooks.length;ad<ab;ad++){if(this.hooks[ad]==ae){af=true}}if(!af){this.hooks.push(ae);this.args.push(ac)}};H.jqplot.HooksManager.prototype.add=function(ac,ab){ab=ab||[];this.hooks.push(ac);this.args.push(ab)};H.jqplot.EventListenerManager=function(){this.hooks=[]};H.jqplot.EventListenerManager.prototype.addOnce=function(af,ae){var ag=false,ad,ac;for(var ac=0,ab=this.hooks.length;ac<ab;ac++){ad=this.hooks[ac];if(ad[0]==af&&ad[1]==ae){ag=true}}if(!ag){this.hooks.push([af,ae])}};H.jqplot.EventListenerManager.prototype.add=function(ac,ab){this.hooks.push([ac,ab])};var Q=["yMidAxis","xaxis","yaxis","x2axis","y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis"];function N(){this.animate=false;this.animateReplot=false;this.axes={xaxis:new s("xaxis"),yaxis:new s("yaxis"),x2axis:new s("x2axis"),y2axis:new s("y2axis"),y3axis:new s("y3axis"),y4axis:new s("y4axis"),y5axis:new s("y5axis"),y6axis:new s("y6axis"),y7axis:new s("y7axis"),y8axis:new s("y8axis"),y9axis:new s("y9axis"),yMidAxis:new s("yMidAxis")};this.baseCanvas=new H.jqplot.GenericCanvas();this.captureRightClick=false;this.data=[];this.dataRenderer;this.dataRendererOptions;this.defaults={axesDefaults:{},axes:{xaxis:{},yaxis:{},x2axis:{},y2axis:{},y3axis:{},y4axis:{},y5axis:{},y6axis:{},y7axis:{},y8axis:{},y9axis:{},yMidAxis:{}},seriesDefaults:{},series:[]};this.defaultAxisStart=1;this.drawIfHidden=false;this.eventCanvas=new H.jqplot.GenericCanvas();this.fillBetween={series1:null,series2:null,color:null,baseSeries:0,fill:true};this.fontFamily;this.fontSize;this.grid=new I();this.legend=new n();this.negativeSeriesColors=H.jqplot.config.defaultNegativeColors;this.noDataIndicator={show:false,indicator:"Loading Data...",axes:{xaxis:{min:0,max:10,tickInterval:2,show:true},yaxis:{min:0,max:12,tickInterval:3,show:true}}};this.options={};this.previousSeriesStack=[];this.plugins={};this.series=[];this.seriesStack=[];this.seriesColors=H.jqplot.config.defaultColors;this.sortData=true;this.stackSeries=false;this.syncXTicks=true;this.syncYTicks=true;this.target=null;this.targetId=null;this.textColor;this.title=new u();this._drawCount=0;this._sumy=0;this._sumx=0;this._stackData=[];this._plotData=[];this._width=null;this._height=null;this._plotDimensions={height:null,width:null};this._gridPadding={top:null,right:null,bottom:null,left:null};this._defaultGridPadding={top:10,right:10,bottom:23,left:10};this._addDomReference=H.jqplot.config.addDomReference;this.preInitHooks=new H.jqplot.HooksManager();this.postInitHooks=new H.jqplot.HooksManager();this.preParseOptionsHooks=new H.jqplot.HooksManager();this.postParseOptionsHooks=new H.jqplot.HooksManager();this.preDrawHooks=new H.jqplot.HooksManager();this.postDrawHooks=new H.jqplot.HooksManager();this.preDrawSeriesHooks=new H.jqplot.HooksManager();this.postDrawSeriesHooks=new H.jqplot.HooksManager();this.preDrawLegendHooks=new H.jqplot.HooksManager();this.addLegendRowHooks=new H.jqplot.HooksManager();this.preSeriesInitHooks=new H.jqplot.HooksManager();this.postSeriesInitHooks=new H.jqplot.HooksManager();this.preParseSeriesOptionsHooks=new H.jqplot.HooksManager();this.postParseSeriesOptionsHooks=new H.jqplot.HooksManager();this.eventListenerHooks=new H.jqplot.EventListenerManager();this.preDrawSeriesShadowHooks=new H.jqplot.HooksManager();this.postDrawSeriesShadowHooks=new H.jqplot.HooksManager();this.colorGenerator=new H.jqplot.ColorGenerator();this.negativeColorGenerator=new H.jqplot.ColorGenerator();this.canvasManager=new H.jqplot.CanvasManager();this.themeEngine=new H.jqplot.ThemeEngine();var ad=0;this.init=function(ao,al,aq){aq=aq||{};for(var am=0;am<H.jqplot.preInitHooks.length;am++){H.jqplot.preInitHooks[am].call(this,ao,al,aq)}for(var am=0;am<this.preInitHooks.hooks.length;am++){this.preInitHooks.hooks[am].call(this,ao,al,aq)}this.targetId="#"+ao;this.target=H("#"+ao);if(this._addDomReference){this.target.data("jqplot",this)}this.target.removeClass("jqplot-error");if(!this.target.get(0)){throw"No plot target specified"}if(this.target.css("position")=="static"){this.target.css("position","relative")}if(!this.target.hasClass("jqplot-target")){this.target.addClass("jqplot-target")}if(!this.target.height()){var an;if(aq&&aq.height){an=parseInt(aq.height,10)}else{if(this.target.attr("data-height")){an=parseInt(this.target.attr("data-height"),10)}else{an=parseInt(H.jqplot.config.defaultHeight,10)}}this._height=an;this.target.css("height",an+"px")}else{this._height=an=this.target.height()}if(!this.target.width()){var ap;if(aq&&aq.width){ap=parseInt(aq.width,10)}else{if(this.target.attr("data-width")){ap=parseInt(this.target.attr("data-width"),10)}else{ap=parseInt(H.jqplot.config.defaultWidth,10)}}this._width=ap;this.target.css("width",ap+"px")}else{this._width=ap=this.target.width()}for(var am=0,aj=Q.length;am<aj;am++){this.axes[Q[am]]=new s(Q[am])}this._plotDimensions.height=this._height;this._plotDimensions.width=this._width;this.grid._plotDimensions=this._plotDimensions;this.title._plotDimensions=this._plotDimensions;this.baseCanvas._plotDimensions=this._plotDimensions;this.eventCanvas._plotDimensions=this._plotDimensions;this.legend._plotDimensions=this._plotDimensions;if(this._height<=0||this._width<=0||!this._height||!this._width){throw"Canvas dimension not set"}if(aq.dataRenderer&&H.isFunction(aq.dataRenderer)){if(aq.dataRendererOptions){this.dataRendererOptions=aq.dataRendererOptions}this.dataRenderer=aq.dataRenderer;al=this.dataRenderer(al,this,this.dataRendererOptions)}if(aq.noDataIndicator&&H.isPlainObject(aq.noDataIndicator)){H.extend(true,this.noDataIndicator,aq.noDataIndicator)}if(al==null||H.isArray(al)==false||al.length==0||H.isArray(al[0])==false||al[0].length==0){if(this.noDataIndicator.show==false){throw"No Data"}else{for(var af in this.noDataIndicator.axes){for(var ah in this.noDataIndicator.axes[af]){this.axes[af][ah]=this.noDataIndicator.axes[af][ah]}}this.postDrawHooks.add(function(){var ax=this.eventCanvas.getHeight();var au=this.eventCanvas.getWidth();var at=H('<div class="jqplot-noData-container" style="position:absolute;"></div>');this.target.append(at);at.height(ax);at.width(au);at.css("top",this.eventCanvas._offsets.top);at.css("left",this.eventCanvas._offsets.left);var aw=H('<div class="jqplot-noData-contents" style="text-align:center; position:relative; margin-left:auto; margin-right:auto;"></div>');at.append(aw);aw.html(this.noDataIndicator.indicator);var av=aw.height();var ar=aw.width();aw.height(av);aw.width(ar);aw.css("top",(ax-av)/2+"px")})}}this.data=H.extend(true,[],al);this.parseOptions(aq);if(this.textColor){this.target.css("color",this.textColor)}if(this.fontFamily){this.target.css("font-family",this.fontFamily)}if(this.fontSize){this.target.css("font-size",this.fontSize)}this.title.init();this.legend.init();this._sumy=0;this._sumx=0;this.computePlotData();for(var am=0;am<this.series.length;am++){this.seriesStack.push(am);this.previousSeriesStack.push(am);this.series[am].shadowCanvas._plotDimensions=this._plotDimensions;this.series[am].canvas._plotDimensions=this._plotDimensions;for(var ak=0;ak<H.jqplot.preSeriesInitHooks.length;ak++){H.jqplot.preSeriesInitHooks[ak].call(this.series[am],ao,this.data,this.options.seriesDefaults,this.options.series[am],this)}for(var ak=0;ak<this.preSeriesInitHooks.hooks.length;ak++){this.preSeriesInitHooks.hooks[ak].call(this.series[am],ao,this.data,this.options.seriesDefaults,this.options.series[am],this)}this.series[am]._plotDimensions=this._plotDimensions;this.series[am].init(am,this.grid.borderWidth,this);for(var ak=0;ak<H.jqplot.postSeriesInitHooks.length;ak++){H.jqplot.postSeriesInitHooks[ak].call(this.series[am],ao,this.data,this.options.seriesDefaults,this.options.series[am],this)}for(var ak=0;ak<this.postSeriesInitHooks.hooks.length;ak++){this.postSeriesInitHooks.hooks[ak].call(this.series[am],ao,this.data,this.options.seriesDefaults,this.options.series[am],this)}this._sumy+=this.series[am]._sumy;this._sumx+=this.series[am]._sumx}var ag,ai;for(var am=0,aj=Q.length;am<aj;am++){ag=Q[am];ai=this.axes[ag];ai._plotDimensions=this._plotDimensions;ai.init();if(this.axes[ag].borderColor==null){if(ag.charAt(0)!=="x"&&ai.useSeriesColor===true&&ai.show){ai.borderColor=ai._series[0].color}else{ai.borderColor=this.grid.borderColor}}}if(this.sortData){ab(this.series)}this.grid.init();this.grid._axes=this.axes;this.legend._series=this.series;for(var am=0;am<H.jqplot.postInitHooks.length;am++){H.jqplot.postInitHooks[am].call(this,ao,this.data,aq)}for(var am=0;am<this.postInitHooks.hooks.length;am++){this.postInitHooks.hooks[am].call(this,ao,this.data,aq)}};this.resetAxesScale=function(ak,ag){var ai=ag||{};var aj=ak||this.axes;if(aj===true){aj=this.axes}if(H.isArray(aj)){for(var ah=0;ah<aj.length;ah++){this.axes[aj[ah]].resetScale(ai[aj[ah]])}}else{if(typeof(aj)==="object"){for(var af in aj){this.axes[af].resetScale(ai[af])}}}};this.reInitialize=function(an,af){var ar=H.extend(true,{},this.options,af);var ap=this.targetId.substr(1);var al=(an==null)?this.data:an;for(var ao=0;ao<H.jqplot.preInitHooks.length;ao++){H.jqplot.preInitHooks[ao].call(this,ap,al,ar)}for(var ao=0;ao<this.preInitHooks.hooks.length;ao++){this.preInitHooks.hooks[ao].call(this,ap,al,ar)}this._height=this.target.height();this._width=this.target.width();if(this._height<=0||this._width<=0||!this._height||!this._width){throw"Target dimension not set"}this._plotDimensions.height=this._height;this._plotDimensions.width=this._width;this.grid._plotDimensions=this._plotDimensions;this.title._plotDimensions=this._plotDimensions;this.baseCanvas._plotDimensions=this._plotDimensions;this.eventCanvas._plotDimensions=this._plotDimensions;this.legend._plotDimensions=this._plotDimensions;var ag,aq,am,ai;for(var ao=0,ak=Q.length;ao<ak;ao++){ag=Q[ao];ai=this.axes[ag];aq=ai._ticks;for(var am=0,aj=aq.length;am<aj;am++){var ah=aq[am]._elem;if(ah){if(H.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==r){window.G_vmlCanvasManager.uninitElement(ah.get(0))}ah.emptyForce();ah=null;aq._elem=null}}aq=null;delete ai.ticks;delete ai._ticks;this.axes[ag]=new s(ag);this.axes[ag]._plotWidth=this._width;this.axes[ag]._plotHeight=this._height}if(an){if(ar.dataRenderer&&H.isFunction(ar.dataRenderer)){if(ar.dataRendererOptions){this.dataRendererOptions=ar.dataRendererOptions}this.dataRenderer=ar.dataRenderer;an=this.dataRenderer(an,this,this.dataRendererOptions)}this.data=H.extend(true,[],an)}if(af){this.parseOptions(ar)}this.title._plotWidth=this._width;if(this.textColor){this.target.css("color",this.textColor)}if(this.fontFamily){this.target.css("font-family",this.fontFamily)}if(this.fontSize){this.target.css("font-size",this.fontSize)}this.title.init();this.legend.init();this._sumy=0;this._sumx=0;this.seriesStack=[];this.previousSeriesStack=[];this.computePlotData();for(var ao=0,ak=this.series.length;ao<ak;ao++){this.seriesStack.push(ao);this.previousSeriesStack.push(ao);this.series[ao].shadowCanvas._plotDimensions=this._plotDimensions;this.series[ao].canvas._plotDimensions=this._plotDimensions;for(var am=0;am<H.jqplot.preSeriesInitHooks.length;am++){H.jqplot.preSeriesInitHooks[am].call(this.series[ao],ap,this.data,this.options.seriesDefaults,this.options.series[ao],this)}for(var am=0;am<this.preSeriesInitHooks.hooks.length;am++){this.preSeriesInitHooks.hooks[am].call(this.series[ao],ap,this.data,this.options.seriesDefaults,this.options.series[ao],this)}this.series[ao]._plotDimensions=this._plotDimensions;this.series[ao].init(ao,this.grid.borderWidth,this);for(var am=0;am<H.jqplot.postSeriesInitHooks.length;am++){H.jqplot.postSeriesInitHooks[am].call(this.series[ao],ap,this.data,this.options.seriesDefaults,this.options.series[ao],this)}for(var am=0;am<this.postSeriesInitHooks.hooks.length;am++){this.postSeriesInitHooks.hooks[am].call(this.series[ao],ap,this.data,this.options.seriesDefaults,this.options.series[ao],this)}this._sumy+=this.series[ao]._sumy;this._sumx+=this.series[ao]._sumx}for(var ao=0,ak=Q.length;ao<ak;ao++){ag=Q[ao];ai=this.axes[ag];ai._plotDimensions=this._plotDimensions;ai.init();if(ai.borderColor==null){if(ag.charAt(0)!=="x"&&ai.useSeriesColor===true&&ai.show){ai.borderColor=ai._series[0].color}else{ai.borderColor=this.grid.borderColor}}}if(this.sortData){ab(this.series)}this.grid.init();this.grid._axes=this.axes;this.legend._series=this.series;for(var ao=0,ak=H.jqplot.postInitHooks.length;ao<ak;ao++){H.jqplot.postInitHooks[ao].call(this,ap,this.data,ar)}for(var ao=0,ak=this.postInitHooks.hooks.length;ao<ak;ao++){this.postInitHooks.hooks[ao].call(this,ap,this.data,ar)}};this.quickInit=function(){this._height=this.target.height();this._width=this.target.width();if(this._height<=0||this._width<=0||!this._height||!this._width){throw"Target dimension not set"}this._plotDimensions.height=this._height;this._plotDimensions.width=this._width;this.grid._plotDimensions=this._plotDimensions;this.title._plotDimensions=this._plotDimensions;this.baseCanvas._plotDimensions=this._plotDimensions;this.eventCanvas._plotDimensions=this._plotDimensions;this.legend._plotDimensions=this._plotDimensions;for(var ak in this.axes){this.axes[ak]._plotWidth=this._width;this.axes[ak]._plotHeight=this._height}this.title._plotWidth=this._width;if(this.textColor){this.target.css("color",this.textColor)}if(this.fontFamily){this.target.css("font-family",this.fontFamily)}if(this.fontSize){this.target.css("font-size",this.fontSize)}this._sumy=0;this._sumx=0;this.computePlotData();for(var ai=0;ai<this.series.length;ai++){if(this.series[ai]._type==="line"&&this.series[ai].renderer.bands.show){this.series[ai].renderer.initBands.call(this.series[ai],this.series[ai].renderer.options,this)}this.series[ai]._plotDimensions=this._plotDimensions;this.series[ai].canvas._plotDimensions=this._plotDimensions;this._sumy+=this.series[ai]._sumy;this._sumx+=this.series[ai]._sumx}var ag;for(var af=0;af<12;af++){ag=Q[af];var ah=this.axes[ag]._ticks;for(var ai=0;ai<ah.length;ai++){var aj=ah[ai]._elem;if(aj){if(H.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==r){window.G_vmlCanvasManager.uninitElement(aj.get(0))}aj.emptyForce();aj=null;ah._elem=null}}ah=null;this.axes[ag]._plotDimensions=this._plotDimensions;this.axes[ag]._ticks=[]}if(this.sortData){ab(this.series)}this.grid._axes=this.axes;this.legend._series=this.series};function ab(aj){var an,ao,ap,af,am;for(var ak=0;ak<aj.length;ak++){var ag;var al=[aj[ak].data,aj[ak]._stackData,aj[ak]._plotData,aj[ak]._prevPlotData];for(var ah=0;ah<4;ah++){ag=true;an=al[ah];if(aj[ak]._stackAxis=="x"){for(var ai=0;ai<an.length;ai++){if(typeof(an[ai][1])!="number"){ag=false;break}}if(ag){an.sort(function(ar,aq){return ar[1]-aq[1]})}}else{for(var ai=0;ai<an.length;ai++){if(typeof(an[ai][0])!="number"){ag=false;break}}if(ag){an.sort(function(ar,aq){return ar[0]-aq[0]})}}}}}this.computePlotData=function(){this._plotData=[];this._stackData=[];var am,an,ai;for(an=0,ai=this.series.length;an<ai;an++){am=this.series[an];this._plotData.push([]);this._stackData.push([]);var ag=am.data;this._plotData[an]=H.extend(true,[],ag);this._stackData[an]=H.extend(true,[],ag);am._plotData=this._plotData[an];am._stackData=this._stackData[an];var aq={x:[],y:[]};if(this.stackSeries&&!am.disableStack){am._stack=true;var ao=(am._stackAxis==="x")?0:1;for(var aj=0,af=ag.length;aj<af;aj++){var ap=ag[aj][ao];if(ap==null){ap=0}this._plotData[an][aj][ao]=ap;this._stackData[an][aj][ao]=ap;if(an>0){for(var ak=an;ak--;){var ah=this._plotData[ak][aj][ao];if(ap*ah>=0){this._plotData[an][aj][ao]+=ah;this._stackData[an][aj][ao]+=ah;break}}}}}else{for(var al=0;al<am.data.length;al++){aq.x.push(am.data[al][0]);aq.y.push(am.data[al][1])}this._stackData.push(am.data);this.series[an]._stackData=am.data;this._plotData.push(am.data);am._plotData=am.data;am._plotValues=aq}if(an>0){am._prevPlotData=this.series[an-1]._plotData}am._sumy=0;am._sumx=0;for(al=am.data.length-1;al>-1;al--){am._sumy+=am.data[al][1];am._sumx+=am.data[al][0]}}};this.populatePlotData=function(an,ao){this._plotData=[];this._stackData=[];an._stackData=[];an._plotData=[];var ar={x:[],y:[]};if(this.stackSeries&&!an.disableStack){an._stack=true;var aq=(an._stackAxis==="x")?0:1;var at=H.extend(true,[],an.data);var au=H.extend(true,[],an.data);var ah,ag,ai,ap,af;for(var al=0;al<ao;al++){var aj=this.series[al].data;for(var ak=0;ak<aj.length;ak++){ai=aj[ak];ah=(ai[0]!=null)?ai[0]:0;ag=(ai[1]!=null)?ai[1]:0;at[ak][0]+=ah;at[ak][1]+=ag;ap=(aq)?ag:ah;if(an.data[ak][aq]*ap>=0){au[ak][aq]+=ap}}}for(var am=0;am<au.length;am++){ar.x.push(au[am][0]);ar.y.push(au[am][1])}this._plotData.push(au);this._stackData.push(at);an._stackData=at;an._plotData=au;an._plotValues=ar}else{for(var am=0;am<an.data.length;am++){ar.x.push(an.data[am][0]);ar.y.push(an.data[am][1])}this._stackData.push(an.data);this.series[ao]._stackData=an.data;this._plotData.push(an.data);an._plotData=an.data;an._plotValues=ar}if(ao>0){an._prevPlotData=this.series[ao-1]._plotData}an._sumy=0;an._sumx=0;for(am=an.data.length-1;am>-1;am--){an._sumy+=an.data[am][1];an._sumx+=an.data[am][0]}};this.getNextSeriesColor=(function(ag){var af=0;var ah=ag.seriesColors;return function(){if(af<ah.length){return ah[af++]}else{af=0;return ah[af++]}}})(this);this.parseOptions=function(ar){for(var am=0;am<this.preParseOptionsHooks.hooks.length;am++){this.preParseOptionsHooks.hooks[am].call(this,ar)}for(var am=0;am<H.jqplot.preParseOptionsHooks.length;am++){H.jqplot.preParseOptionsHooks[am].call(this,ar)}this.options=H.extend(true,{},this.defaults,ar);var ag=this.options;this.animate=ag.animate;this.animateReplot=ag.animateReplot;this.stackSeries=ag.stackSeries;if(H.isPlainObject(ag.fillBetween)){var aq=["series1","series2","color","baseSeries","fill"],an;for(var am=0,ak=aq.length;am<ak;am++){an=aq[am];if(ag.fillBetween[an]!=null){this.fillBetween[an]=ag.fillBetween[an]}}}if(ag.seriesColors){this.seriesColors=ag.seriesColors}if(ag.negativeSeriesColors){this.negativeSeriesColors=ag.negativeSeriesColors}if(ag.captureRightClick){this.captureRightClick=ag.captureRightClick}this.defaultAxisStart=(ar&&ar.defaultAxisStart!=null)?ar.defaultAxisStart:this.defaultAxisStart;this.colorGenerator.setColors(this.seriesColors);this.negativeColorGenerator.setColors(this.negativeSeriesColors);H.extend(true,this._gridPadding,ag.gridPadding);this.sortData=(ag.sortData!=null)?ag.sortData:this.sortData;for(var am=0;am<12;am++){var ah=Q[am];var aj=this.axes[ah];aj._options=H.extend(true,{},ag.axesDefaults,ag.axes[ah]);H.extend(true,aj,ag.axesDefaults,ag.axes[ah]);aj._plotWidth=this._width;aj._plotHeight=this._height}var ap=function(ax,av,ay){var au=[];var aw,at;av=av||"vertical";if(!H.isArray(ax[0])){for(aw=0,at=ax.length;aw<at;aw++){if(av=="vertical"){au.push([ay+aw,ax[aw]])}else{au.push([ax[aw],ay+aw])}}}else{H.extend(true,au,ax)}return au};var ao=0;this.series=[];for(var am=0;am<this.data.length;am++){var af=H.extend(true,{index:am},{seriesColors:this.seriesColors,negativeSeriesColors:this.negativeSeriesColors},this.options.seriesDefaults,this.options.series[am],{rendererOptions:{animation:{show:this.animate}}});var aq=new O(af);for(var al=0;al<H.jqplot.preParseSeriesOptionsHooks.length;al++){H.jqplot.preParseSeriesOptionsHooks[al].call(aq,this.options.seriesDefaults,this.options.series[am])}for(var al=0;al<this.preParseSeriesOptionsHooks.hooks.length;al++){this.preParseSeriesOptionsHooks.hooks[al].call(aq,this.options.seriesDefaults,this.options.series[am])}H.extend(true,aq,af);var ai="vertical";if(aq.renderer===H.jqplot.BarRenderer&&aq.rendererOptions&&aq.rendererOptions.barDirection=="horizontal"){ai="horizontal";aq._stackAxis="x";aq._primaryAxis="_yaxis"}aq.data=ap(this.data[am],ai,this.defaultAxisStart);switch(aq.xaxis){case"xaxis":aq._xaxis=this.axes.xaxis;break;case"x2axis":aq._xaxis=this.axes.x2axis;break;default:break}aq._yaxis=this.axes[aq.yaxis];aq._xaxis._series.push(aq);aq._yaxis._series.push(aq);if(aq.show){aq._xaxis.show=true;aq._yaxis.show=true}else{if(aq._xaxis.scaleToHiddenSeries){aq._xaxis.show=true}if(aq._yaxis.scaleToHiddenSeries){aq._yaxis.show=true}}if(!aq.label){aq.label="Series "+(am+1).toString()}this.series.push(aq);for(var al=0;al<H.jqplot.postParseSeriesOptionsHooks.length;al++){H.jqplot.postParseSeriesOptionsHooks[al].call(this.series[am],this.options.seriesDefaults,this.options.series[am])}for(var al=0;al<this.postParseSeriesOptionsHooks.hooks.length;al++){this.postParseSeriesOptionsHooks.hooks[al].call(this.series[am],this.options.seriesDefaults,this.options.series[am])}}H.extend(true,this.grid,this.options.grid);for(var am=0,ak=Q.length;am<ak;am++){var ah=Q[am];var aj=this.axes[ah];if(aj.borderWidth==null){aj.borderWidth=this.grid.borderWidth}}if(typeof this.options.title=="string"){this.title.text=this.options.title}else{if(typeof this.options.title=="object"){H.extend(true,this.title,this.options.title)}}this.title._plotWidth=this._width;this.legend.setOptions(this.options.legend);for(var am=0;am<H.jqplot.postParseOptionsHooks.length;am++){H.jqplot.postParseOptionsHooks[am].call(this,ar)}for(var am=0;am<this.postParseOptionsHooks.hooks.length;am++){this.postParseOptionsHooks.hooks[am].call(this,ar)}};this.destroy=function(){this.canvasManager.freeAllCanvases();if(this.eventCanvas&&this.eventCanvas._elem){this.eventCanvas._elem.unbind()}this.target.empty();this.target[0].innerHTML=""};this.replot=function(ag){var ah=ag||{};var aj=ah.data||null;var af=(ah.clear===false)?false:true;var ai=ah.resetAxes||false;delete ah.data;delete ah.clear;delete ah.resetAxes;this.target.trigger("jqplotPreReplot");if(af){this.destroy()}if(aj||!H.isEmptyObject(ah)){this.reInitialize(aj,ah)}else{this.quickInit()}if(ai){this.resetAxesScale(ai,ah.axes)}this.draw();this.target.trigger("jqplotPostReplot")};this.redraw=function(af){af=(af!=null)?af:true;this.target.trigger("jqplotPreRedraw");if(af){this.canvasManager.freeAllCanvases();this.eventCanvas._elem.unbind();this.target.empty()}for(var ah in this.axes){this.axes[ah]._ticks=[]}this.computePlotData();this._sumy=0;this._sumx=0;for(var ag=0,ai=this.series.length;ag<ai;ag++){this._sumy+=this.series[ag]._sumy;this._sumx+=this.series[ag]._sumx}this.draw();this.target.trigger("jqplotPostRedraw")};this.draw=function(){if(this.drawIfHidden||this.target.is(":visible")){this.target.trigger("jqplotPreDraw");var aB,az,ay,ai;for(aB=0,ay=H.jqplot.preDrawHooks.length;aB<ay;aB++){H.jqplot.preDrawHooks[aB].call(this)}for(aB=0,ay=this.preDrawHooks.length;aB<ay;aB++){this.preDrawHooks.hooks[aB].apply(this,this.preDrawSeriesHooks.args[aB])}this.target.append(this.baseCanvas.createElement({left:0,right:0,top:0,bottom:0},"jqplot-base-canvas",null,this));this.baseCanvas.setContext();this.target.append(this.title.draw());this.title.pack({top:0,left:0});var aF=this.legend.draw({},this);var af={top:0,left:0,bottom:0,right:0};if(this.legend.placement=="outsideGrid"){this.target.append(aF);switch(this.legend.location){case"n":af.top+=this.legend.getHeight();break;case"s":af.bottom+=this.legend.getHeight();break;case"ne":case"e":case"se":af.right+=this.legend.getWidth();break;case"nw":case"w":case"sw":af.left+=this.legend.getWidth();break;default:af.right+=this.legend.getWidth();break}aF=aF.detach()}var al=this.axes;var aG;for(aB=0;aB<12;aB++){aG=Q[aB];this.target.append(al[aG].draw(this.baseCanvas._ctx,this));al[aG].set()}if(al.yaxis.show){af.left+=al.yaxis.getWidth()}var aA=["y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis"];var ar=[0,0,0,0,0,0,0,0];var av=0;var au;for(au=0;au<8;au++){if(al[aA[au]].show){av+=al[aA[au]].getWidth();ar[au]=av}}af.right+=av;if(al.x2axis.show){af.top+=al.x2axis.getHeight()}if(this.title.show){af.top+=this.title.getHeight()}if(al.xaxis.show){af.bottom+=al.xaxis.getHeight()}if(this.options.gridDimensions&&H.isPlainObject(this.options.gridDimensions)){var am=parseInt(this.options.gridDimensions.width,10)||0;var aC=parseInt(this.options.gridDimensions.height,10)||0;var ah=(this._width-af.left-af.right-am)/2;var aE=(this._height-af.top-af.bottom-aC)/2;if(aE>=0&&ah>=0){af.top+=aE;af.bottom+=aE;af.left+=ah;af.right+=ah}}var ag=["top","bottom","left","right"];for(var au in ag){if(this._gridPadding[ag[au]]==null&&af[ag[au]]>0){this._gridPadding[ag[au]]=af[ag[au]]}else{if(this._gridPadding[ag[au]]==null){this._gridPadding[ag[au]]=this._defaultGridPadding[ag[au]]}}}var at=this._gridPadding;if(this.legend.placement==="outsideGrid"){at={top:this.title.getHeight(),left:0,right:0,bottom:0};if(this.legend.location==="s"){at.left=this._gridPadding.left;at.right=this._gridPadding.right}}al.xaxis.pack({position:"absolute",bottom:this._gridPadding.bottom-al.xaxis.getHeight(),left:0,width:this._width},{min:this._gridPadding.left,max:this._width-this._gridPadding.right});al.yaxis.pack({position:"absolute",top:0,left:this._gridPadding.left-al.yaxis.getWidth(),height:this._height},{min:this._height-this._gridPadding.bottom,max:this._gridPadding.top});al.x2axis.pack({position:"absolute",top:this._gridPadding.top-al.x2axis.getHeight(),left:0,width:this._width},{min:this._gridPadding.left,max:this._width-this._gridPadding.right});for(aB=8;aB>0;aB--){al[aA[aB-1]].pack({position:"absolute",top:0,right:this._gridPadding.right-ar[aB-1]},{min:this._height-this._gridPadding.bottom,max:this._gridPadding.top})}var an=(this._width-this._gridPadding.left-this._gridPadding.right)/2+this._gridPadding.left-al.yMidAxis.getWidth()/2;al.yMidAxis.pack({position:"absolute",top:0,left:an,zIndex:9,textAlign:"center"},{min:this._height-this._gridPadding.bottom,max:this._gridPadding.top});this.target.append(this.grid.createElement(this._gridPadding,this));this.grid.draw();var ak=this.series;var aD=ak.length;for(aB=0,ay=aD;aB<ay;aB++){az=this.seriesStack[aB];this.target.append(ak[az].shadowCanvas.createElement(this._gridPadding,"jqplot-series-shadowCanvas",null,this));ak[az].shadowCanvas.setContext();ak[az].shadowCanvas._elem.data("seriesIndex",az)}for(aB=0,ay=aD;aB<ay;aB++){az=this.seriesStack[aB];this.target.append(ak[az].canvas.createElement(this._gridPadding,"jqplot-series-canvas",null,this));ak[az].canvas.setContext();ak[az].canvas._elem.data("seriesIndex",az)}this.target.append(this.eventCanvas.createElement(this._gridPadding,"jqplot-event-canvas",null,this));this.eventCanvas.setContext();this.eventCanvas._ctx.fillStyle="rgba(0,0,0,0)";this.eventCanvas._ctx.fillRect(0,0,this.eventCanvas._ctx.canvas.width,this.eventCanvas._ctx.canvas.height);this.bindCustomEvents();if(this.legend.preDraw){this.eventCanvas._elem.before(aF);this.legend.pack(at);if(this.legend._elem){this.drawSeries({legendInfo:{location:this.legend.location,placement:this.legend.placement,width:this.legend.getWidth(),height:this.legend.getHeight(),xoffset:this.legend.xoffset,yoffset:this.legend.yoffset}})}else{this.drawSeries()}}else{this.drawSeries();if(aD){H(ak[aD-1].canvas._elem).after(aF)}this.legend.pack(at)}for(var aB=0,ay=H.jqplot.eventListenerHooks.length;aB<ay;aB++){this.eventCanvas._elem.bind(H.jqplot.eventListenerHooks[aB][0],{plot:this},H.jqplot.eventListenerHooks[aB][1])}for(var aB=0,ay=this.eventListenerHooks.hooks.length;aB<ay;aB++){this.eventCanvas._elem.bind(this.eventListenerHooks.hooks[aB][0],{plot:this},this.eventListenerHooks.hooks[aB][1])}var aq=this.fillBetween;if(aq.fill&&aq.series1!==aq.series2&&aq.series1<aD&&aq.series2<aD&&ak[aq.series1]._type==="line"&&ak[aq.series2]._type==="line"){this.doFillBetweenLines()}for(var aB=0,ay=H.jqplot.postDrawHooks.length;aB<ay;aB++){H.jqplot.postDrawHooks[aB].call(this)}for(var aB=0,ay=this.postDrawHooks.hooks.length;aB<ay;aB++){this.postDrawHooks.hooks[aB].apply(this,this.postDrawHooks.args[aB])}if(this.target.is(":visible")){this._drawCount+=1}var ao,ap,aw,aj;for(aB=0,ay=aD;aB<ay;aB++){ao=ak[aB];ap=ao.renderer;aw=".jqplot-point-label.jqplot-series-"+aB;if(ap.animation&&ap.animation._supported&&ap.animation.show&&(this._drawCount<2||this.animateReplot)){aj=this.target.find(aw);aj.stop(true,true).hide();ao.canvas._elem.stop(true,true).hide();ao.shadowCanvas._elem.stop(true,true).hide();ao.canvas._elem.jqplotEffect("blind",{mode:"show",direction:ap.animation.direction},ap.animation.speed);ao.shadowCanvas._elem.jqplotEffect("blind",{mode:"show",direction:ap.animation.direction},ap.animation.speed);aj.fadeIn(ap.animation.speed*0.8)}}aj=null;this.target.trigger("jqplotPostDraw",[this])}};N.prototype.doFillBetweenLines=function(){var ah=this.fillBetween;var aq=ah.series1;var ao=ah.series2;var ap=(aq<ao)?aq:ao;var an=(ao>aq)?ao:aq;var al=this.series[ap];var ak=this.series[an];if(ak.renderer.smooth){var aj=ak.renderer._smoothedData.slice(0).reverse()}else{var aj=ak.gridData.slice(0).reverse()}if(al.renderer.smooth){var am=al.renderer._smoothedData.concat(aj)}else{var am=al.gridData.concat(aj)}var ai=(ah.color!==null)?ah.color:this.series[aq].fillColor;var ar=(ah.baseSeries!==null)?ah.baseSeries:ap;var ag=this.series[ar].renderer.shapeRenderer;var af={fillStyle:ai,fill:true,closePath:true};ag.draw(al.shadowCanvas._ctx,am,af)};this.bindCustomEvents=function(){this.eventCanvas._elem.bind("click",{plot:this},this.onClick);this.eventCanvas._elem.bind("dblclick",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("mousedown",{plot:this},this.onMouseDown);this.eventCanvas._elem.bind("mousemove",{plot:this},this.onMouseMove);this.eventCanvas._elem.bind("mouseenter",{plot:this},this.onMouseEnter);this.eventCanvas._elem.bind("mouseleave",{plot:this},this.onMouseLeave);if(this.captureRightClick){this.eventCanvas._elem.bind("mouseup",{plot:this},this.onRightClick);this.eventCanvas._elem.get(0).oncontextmenu=function(){return false}}else{this.eventCanvas._elem.bind("mouseup",{plot:this},this.onMouseUp)}};function ac(ao){var am=ao.data.plot;var ai=am.eventCanvas._elem.offset();var al={x:ao.pageX-ai.left,y:ao.pageY-ai.top};var aj={xaxis:null,yaxis:null,x2axis:null,y2axis:null,y3axis:null,y4axis:null,y5axis:null,y6axis:null,y7axis:null,y8axis:null,y9axis:null,yMidAxis:null};var ak=["xaxis","yaxis","x2axis","y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis","yMidAxis"];var af=am.axes;var ag,ah;for(ag=11;ag>0;ag--){ah=ak[ag-1];if(af[ah].show){aj[ah]=af[ah].series_p2u(al[ah.charAt(0)])}}return{offsets:ai,gridPos:al,dataPos:aj}}function ae(af,ag){var ak=ag.series;var aQ,aO,aN,aI,aJ,aD,aC,ap,an,at,au,aE;var aM,aR,aK,al,aB,aG,aP;var ah,aH;for(aN=ag.seriesStack.length-1;aN>=0;aN--){aQ=ag.seriesStack[aN];aI=ak[aQ];aP=aI._highlightThreshold;switch(aI.renderer.constructor){case H.jqplot.BarRenderer:aD=af.x;aC=af.y;for(aO=0;aO<aI._barPoints.length;aO++){aB=aI._barPoints[aO];aK=aI.gridData[aO];if(aD>aB[0][0]&&aD<aB[2][0]&&aC>aB[2][1]&&aC<aB[0][1]){return{seriesIndex:aI.index,pointIndex:aO,gridData:aK,data:aI.data[aO],points:aI._barPoints[aO]}}}break;case H.jqplot.PyramidRenderer:aD=af.x;aC=af.y;for(aO=0;aO<aI._barPoints.length;aO++){aB=aI._barPoints[aO];aK=aI.gridData[aO];if(aD>aB[0][0]+aP[0][0]&&aD<aB[2][0]+aP[2][0]&&aC>aB[2][1]&&aC<aB[0][1]){return{seriesIndex:aI.index,pointIndex:aO,gridData:aK,data:aI.data[aO],points:aI._barPoints[aO]}}}break;case H.jqplot.DonutRenderer:at=aI.startAngle/180*Math.PI;aD=af.x-aI._center[0];aC=af.y-aI._center[1];aJ=Math.sqrt(Math.pow(aD,2)+Math.pow(aC,2));if(aD>0&&-aC>=0){ap=2*Math.PI-Math.atan(-aC/aD)}else{if(aD>0&&-aC<0){ap=-Math.atan(-aC/aD)}else{if(aD<0){ap=Math.PI-Math.atan(-aC/aD)}else{if(aD==0&&-aC>0){ap=3*Math.PI/2}else{if(aD==0&&-aC<0){ap=Math.PI/2}else{if(aD==0&&aC==0){ap=0}}}}}}if(at){ap-=at;if(ap<0){ap+=2*Math.PI}else{if(ap>2*Math.PI){ap-=2*Math.PI}}}an=aI.sliceMargin/180*Math.PI;if(aJ<aI._radius&&aJ>aI._innerRadius){for(aO=0;aO<aI.gridData.length;aO++){au=(aO>0)?aI.gridData[aO-1][1]+an:an;aE=aI.gridData[aO][1];if(ap>au&&ap<aE){return{seriesIndex:aI.index,pointIndex:aO,gridData:aI.gridData[aO],data:aI.data[aO]}}}}break;case H.jqplot.PieRenderer:at=aI.startAngle/180*Math.PI;aD=af.x-aI._center[0];aC=af.y-aI._center[1];aJ=Math.sqrt(Math.pow(aD,2)+Math.pow(aC,2));if(aD>0&&-aC>=0){ap=2*Math.PI-Math.atan(-aC/aD)}else{if(aD>0&&-aC<0){ap=-Math.atan(-aC/aD)}else{if(aD<0){ap=Math.PI-Math.atan(-aC/aD)}else{if(aD==0&&-aC>0){ap=3*Math.PI/2}else{if(aD==0&&-aC<0){ap=Math.PI/2}else{if(aD==0&&aC==0){ap=0}}}}}}if(at){ap-=at;if(ap<0){ap+=2*Math.PI}else{if(ap>2*Math.PI){ap-=2*Math.PI}}}an=aI.sliceMargin/180*Math.PI;if(aJ<aI._radius){for(aO=0;aO<aI.gridData.length;aO++){au=(aO>0)?aI.gridData[aO-1][1]+an:an;aE=aI.gridData[aO][1];if(ap>au&&ap<aE){return{seriesIndex:aI.index,pointIndex:aO,gridData:aI.gridData[aO],data:aI.data[aO]}}}}break;case H.jqplot.BubbleRenderer:aD=af.x;aC=af.y;var az=null;if(aI.show){for(var aO=0;aO<aI.gridData.length;aO++){aK=aI.gridData[aO];aR=Math.sqrt((aD-aK[0])*(aD-aK[0])+(aC-aK[1])*(aC-aK[1]));if(aR<=aK[2]&&(aR<=aM||aM==null)){aM=aR;az={seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}if(az!=null){return az}}break;case H.jqplot.FunnelRenderer:aD=af.x;aC=af.y;var aF=aI._vertices,aj=aF[0],ai=aF[aF.length-1],am,ay,ar;function aL(aU,aW,aV){var aT=(aW[1]-aV[1])/(aW[0]-aV[0]);var aS=aW[1]-aT*aW[0];var aX=aU+aW[1];return[(aX-aS)/aT,aX]}am=aL(aC,aj[0],ai[3]);ay=aL(aC,aj[1],ai[2]);for(aO=0;aO<aF.length;aO++){ar=aF[aO];if(aC>=ar[0][1]&&aC<=ar[3][1]&&aD>=am[0]&&aD<=ay[0]){return{seriesIndex:aI.index,pointIndex:aO,gridData:null,data:aI.data[aO]}}}break;case H.jqplot.LineRenderer:aD=af.x;aC=af.y;aJ=aI.renderer;if(aI.show){if((aI.fill||(aI.renderer.bands.show&&aI.renderer.bands.fill))&&(!ag.plugins.highlighter||!ag.plugins.highlighter.show)){var aq=false;if(aD>aI._boundingBox[0][0]&&aD<aI._boundingBox[1][0]&&aC>aI._boundingBox[1][1]&&aC<aI._boundingBox[0][1]){var ax=aI._areaPoints.length;var aA;var aO=ax-1;for(var aA=0;aA<ax;aA++){var aw=[aI._areaPoints[aA][0],aI._areaPoints[aA][1]];var av=[aI._areaPoints[aO][0],aI._areaPoints[aO][1]];if(aw[1]<aC&&av[1]>=aC||av[1]<aC&&aw[1]>=aC){if(aw[0]+(aC-aw[1])/(av[1]-aw[1])*(av[0]-aw[0])<aD){aq=!aq}}aO=aA}}if(aq){return{seriesIndex:aQ,pointIndex:null,gridData:aI.gridData,data:aI.data,points:aI._areaPoints}}break}else{aH=aI.markerRenderer.size/2+aI.neighborThreshold;ah=(aH>0)?aH:0;for(var aO=0;aO<aI.gridData.length;aO++){aK=aI.gridData[aO];if(aJ.constructor==H.jqplot.OHLCRenderer){if(aJ.candleStick){var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._bodyWidth/2&&aD<=aK[0]+aJ._bodyWidth/2&&aC>=ao(aI.data[aO][2])&&aC<=ao(aI.data[aO][3])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}else{if(!aJ.hlc){var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._tickLength&&aD<=aK[0]+aJ._tickLength&&aC>=ao(aI.data[aO][2])&&aC<=ao(aI.data[aO][3])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}else{var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._tickLength&&aD<=aK[0]+aJ._tickLength&&aC>=ao(aI.data[aO][1])&&aC<=ao(aI.data[aO][2])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}}}else{if(aK[0]!=null&&aK[1]!=null){aR=Math.sqrt((aD-aK[0])*(aD-aK[0])+(aC-aK[1])*(aC-aK[1]));if(aR<=ah&&(aR<=aM||aM==null)){aM=aR;return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}}}}}break;default:aD=af.x;aC=af.y;aJ=aI.renderer;if(aI.show){aH=aI.markerRenderer.size/2+aI.neighborThreshold;ah=(aH>0)?aH:0;for(var aO=0;aO<aI.gridData.length;aO++){aK=aI.gridData[aO];if(aJ.constructor==H.jqplot.OHLCRenderer){if(aJ.candleStick){var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._bodyWidth/2&&aD<=aK[0]+aJ._bodyWidth/2&&aC>=ao(aI.data[aO][2])&&aC<=ao(aI.data[aO][3])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}else{if(!aJ.hlc){var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._tickLength&&aD<=aK[0]+aJ._tickLength&&aC>=ao(aI.data[aO][2])&&aC<=ao(aI.data[aO][3])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}else{var ao=aI._yaxis.series_u2p;if(aD>=aK[0]-aJ._tickLength&&aD<=aK[0]+aJ._tickLength&&aC>=ao(aI.data[aO][1])&&aC<=ao(aI.data[aO][2])){return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}}}else{aR=Math.sqrt((aD-aK[0])*(aD-aK[0])+(aC-aK[1])*(aC-aK[1]));if(aR<=ah&&(aR<=aM||aM==null)){aM=aR;return{seriesIndex:aQ,pointIndex:aO,gridData:aK,data:aI.data[aO]}}}}}break}}return null}this.onClick=function(ah){var ag=ac(ah);var aj=ah.data.plot;var ai=ae(ag.gridPos,aj);var af=H.Event("jqplotClick");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])};this.onDblClick=function(ah){var ag=ac(ah);var aj=ah.data.plot;var ai=ae(ag.gridPos,aj);var af=H.Event("jqplotDblClick");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])};this.onMouseDown=function(ah){var ag=ac(ah);var aj=ah.data.plot;var ai=ae(ag.gridPos,aj);var af=H.Event("jqplotMouseDown");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])};this.onMouseUp=function(ah){var ag=ac(ah);var af=H.Event("jqplotMouseUp");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,null,ah.data.plot])};this.onRightClick=function(ah){var ag=ac(ah);var aj=ah.data.plot;var ai=ae(ag.gridPos,aj);if(aj.captureRightClick){if(ah.which==3){var af=H.Event("jqplotRightClick");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])}else{var af=H.Event("jqplotMouseUp");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])}}};this.onMouseMove=function(ah){var ag=ac(ah);var aj=ah.data.plot;var ai=ae(ag.gridPos,aj);var af=H.Event("jqplotMouseMove");af.pageX=ah.pageX;af.pageY=ah.pageY;H(this).trigger(af,[ag.gridPos,ag.dataPos,ai,aj])};this.onMouseEnter=function(ah){var ag=ac(ah);var ai=ah.data.plot;var af=H.Event("jqplotMouseEnter");af.pageX=ah.pageX;af.pageY=ah.pageY;af.relatedTarget=ah.relatedTarget;H(this).trigger(af,[ag.gridPos,ag.dataPos,null,ai])};this.onMouseLeave=function(ah){var ag=ac(ah);var ai=ah.data.plot;var af=H.Event("jqplotMouseLeave");af.pageX=ah.pageX;af.pageY=ah.pageY;af.relatedTarget=ah.relatedTarget;H(this).trigger(af,[ag.gridPos,ag.dataPos,null,ai])};this.drawSeries=function(ah,af){var aj,ai,ag;af=(typeof(ah)==="number"&&af==null)?ah:af;ah=(typeof(ah)==="object")?ah:{};if(af!=r){ai=this.series[af];ag=ai.shadowCanvas._ctx;ag.clearRect(0,0,ag.canvas.width,ag.canvas.height);ai.drawShadow(ag,ah,this);ag=ai.canvas._ctx;ag.clearRect(0,0,ag.canvas.width,ag.canvas.height);ai.draw(ag,ah,this);if(ai.renderer.constructor==H.jqplot.BezierCurveRenderer){if(af<this.series.length-1){this.drawSeries(af+1)}}}else{for(aj=0;aj<this.series.length;aj++){ai=this.series[aj];ag=ai.shadowCanvas._ctx;ag.clearRect(0,0,ag.canvas.width,ag.canvas.height);ai.drawShadow(ag,ah,this);ag=ai.canvas._ctx;ag.clearRect(0,0,ag.canvas.width,ag.canvas.height);ai.draw(ag,ah,this)}}ah=af=aj=ai=ag=null};this.moveSeriesToFront=function(ag){ag=parseInt(ag,10);var aj=H.inArray(ag,this.seriesStack);if(aj==-1){return}if(aj==this.seriesStack.length-1){this.previousSeriesStack=this.seriesStack.slice(0);return}var af=this.seriesStack[this.seriesStack.length-1];var ai=this.series[ag].canvas._elem.detach();var ah=this.series[ag].shadowCanvas._elem.detach();this.series[af].shadowCanvas._elem.after(ah);this.series[af].canvas._elem.after(ai);this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack.splice(aj,1);this.seriesStack.push(ag)};this.moveSeriesToBack=function(ag){ag=parseInt(ag,10);var aj=H.inArray(ag,this.seriesStack);if(aj==0||aj==-1){return}var af=this.seriesStack[0];var ai=this.series[ag].canvas._elem.detach();var ah=this.series[ag].shadowCanvas._elem.detach();this.series[af].shadowCanvas._elem.before(ah);this.series[af].canvas._elem.before(ai);this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack.splice(aj,1);this.seriesStack.unshift(ag)};this.restorePreviousSeriesOrder=function(){var al,ak,aj,ai,ah,af,ag;if(this.seriesStack==this.previousSeriesStack){return}for(al=1;al<this.previousSeriesStack.length;al++){af=this.previousSeriesStack[al];ag=this.previousSeriesStack[al-1];aj=this.series[af].canvas._elem.detach();ai=this.series[af].shadowCanvas._elem.detach();this.series[ag].shadowCanvas._elem.after(ai);this.series[ag].canvas._elem.after(aj)}ah=this.seriesStack.slice(0);this.seriesStack=this.previousSeriesStack.slice(0);this.previousSeriesStack=ah};this.restoreOriginalSeriesOrder=function(){var aj,ai,af=[],ah,ag;for(aj=0;aj<this.series.length;aj++){af.push(aj)}if(this.seriesStack==af){return}this.previousSeriesStack=this.seriesStack.slice(0);this.seriesStack=af;for(aj=1;aj<this.seriesStack.length;aj++){ah=this.series[aj].canvas._elem.detach();ag=this.series[aj].shadowCanvas._elem.detach();this.series[aj-1].shadowCanvas._elem.after(ag);this.series[aj-1].canvas._elem.after(ah)}};this.activateTheme=function(af){this.themeEngine.activate(this,af)}}H.jqplot.computeHighlightColors=function(ac){var ae;if(H.isArray(ac)){ae=[];for(var ag=0;ag<ac.length;ag++){var af=H.jqplot.getColorComponents(ac[ag]);var ab=[af[0],af[1],af[2]];var ah=ab[0]+ab[1]+ab[2];for(var ad=0;ad<3;ad++){ab[ad]=(ah>660)?ab[ad]*0.85:0.73*ab[ad]+90;ab[ad]=parseInt(ab[ad],10);(ab[ad]>255)?255:ab[ad]}ab[3]=0.3+0.35*af[3];ae.push("rgba("+ab[0]+","+ab[1]+","+ab[2]+","+ab[3]+")")}}else{var af=H.jqplot.getColorComponents(ac);var ab=[af[0],af[1],af[2]];var ah=ab[0]+ab[1]+ab[2];for(var ad=0;ad<3;ad++){ab[ad]=(ah>660)?ab[ad]*0.85:0.73*ab[ad]+90;ab[ad]=parseInt(ab[ad],10);(ab[ad]>255)?255:ab[ad]}ab[3]=0.3+0.35*af[3];ae="rgba("+ab[0]+","+ab[1]+","+ab[2]+","+ab[3]+")"}return ae};H.jqplot.ColorGenerator=function(ac){ac=ac||H.jqplot.config.defaultColors;var ab=0;this.next=function(){if(ab<ac.length){return ac[ab++]}else{ab=0;return ac[ab++]}};this.previous=function(){if(ab>0){return ac[ab--]}else{ab=ac.length-1;return ac[ab]}};this.get=function(ae){var ad=ae-ac.length*Math.floor(ae/ac.length);return ac[ad]};this.setColors=function(ad){ac=ad};this.reset=function(){ab=0};this.getIndex=function(){return ab};this.setIndex=function(ad){ab=ad}};H.jqplot.hex2rgb=function(ad,ab){ad=ad.replace("#","");if(ad.length==3){ad=ad.charAt(0)+ad.charAt(0)+ad.charAt(1)+ad.charAt(1)+ad.charAt(2)+ad.charAt(2)}var ac;ac="rgba("+parseInt(ad.slice(0,2),16)+", "+parseInt(ad.slice(2,4),16)+", "+parseInt(ad.slice(4,6),16);if(ab){ac+=", "+ab}ac+=")";return ac};H.jqplot.rgb2hex=function(ag){var ad=/rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *(?:, *[0-9.]*)?\)/;var ab=ag.match(ad);var af="#";for(var ae=1;ae<4;ae++){var ac;if(ab[ae].search(/%/)!=-1){ac=parseInt(255*ab[ae]/100,10).toString(16);if(ac.length==1){ac="0"+ac}}else{ac=parseInt(ab[ae],10).toString(16);if(ac.length==1){ac="0"+ac}}af+=ac}return af};H.jqplot.normalize2rgb=function(ac,ab){if(ac.search(/^ *rgba?\(/)!=-1){return ac}else{if(ac.search(/^ *#?[0-9a-fA-F]?[0-9a-fA-F]/)!=-1){return H.jqplot.hex2rgb(ac,ab)}else{throw"invalid color spec"}}};H.jqplot.getColorComponents=function(ag){ag=H.jqplot.colorKeywordMap[ag]||ag;var ae=H.jqplot.normalize2rgb(ag);var ad=/rgba?\( *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *, *([0-9]{1,3}\.?[0-9]*%?) *,? *([0-9.]* *)?\)/;var ab=ae.match(ad);var ac=[];for(var af=1;af<4;af++){if(ab[af].search(/%/)!=-1){ac[af-1]=parseInt(255*ab[af]/100,10)}else{ac[af-1]=parseInt(ab[af],10)}}ac[3]=parseFloat(ab[4])?parseFloat(ab[4]):1;return ac};H.jqplot.colorKeywordMap={aliceblue:"rgb(240, 248, 255)",antiquewhite:"rgb(250, 235, 215)",aqua:"rgb( 0, 255, 255)",aquamarine:"rgb(127, 255, 212)",azure:"rgb(240, 255, 255)",beige:"rgb(245, 245, 220)",bisque:"rgb(255, 228, 196)",black:"rgb( 0, 0, 0)",blanchedalmond:"rgb(255, 235, 205)",blue:"rgb( 0, 0, 255)",blueviolet:"rgb(138, 43, 226)",brown:"rgb(165, 42, 42)",burlywood:"rgb(222, 184, 135)",cadetblue:"rgb( 95, 158, 160)",chartreuse:"rgb(127, 255, 0)",chocolate:"rgb(210, 105, 30)",coral:"rgb(255, 127, 80)",cornflowerblue:"rgb(100, 149, 237)",cornsilk:"rgb(255, 248, 220)",crimson:"rgb(220, 20, 60)",cyan:"rgb( 0, 255, 255)",darkblue:"rgb( 0, 0, 139)",darkcyan:"rgb( 0, 139, 139)",darkgoldenrod:"rgb(184, 134, 11)",darkgray:"rgb(169, 169, 169)",darkgreen:"rgb( 0, 100, 0)",darkgrey:"rgb(169, 169, 169)",darkkhaki:"rgb(189, 183, 107)",darkmagenta:"rgb(139, 0, 139)",darkolivegreen:"rgb( 85, 107, 47)",darkorange:"rgb(255, 140, 0)",darkorchid:"rgb(153, 50, 204)",darkred:"rgb(139, 0, 0)",darksalmon:"rgb(233, 150, 122)",darkseagreen:"rgb(143, 188, 143)",darkslateblue:"rgb( 72, 61, 139)",darkslategray:"rgb( 47, 79, 79)",darkslategrey:"rgb( 47, 79, 79)",darkturquoise:"rgb( 0, 206, 209)",darkviolet:"rgb(148, 0, 211)",deeppink:"rgb(255, 20, 147)",deepskyblue:"rgb( 0, 191, 255)",dimgray:"rgb(105, 105, 105)",dimgrey:"rgb(105, 105, 105)",dodgerblue:"rgb( 30, 144, 255)",firebrick:"rgb(178, 34, 34)",floralwhite:"rgb(255, 250, 240)",forestgreen:"rgb( 34, 139, 34)",fuchsia:"rgb(255, 0, 255)",gainsboro:"rgb(220, 220, 220)",ghostwhite:"rgb(248, 248, 255)",gold:"rgb(255, 215, 0)",goldenrod:"rgb(218, 165, 32)",gray:"rgb(128, 128, 128)",grey:"rgb(128, 128, 128)",green:"rgb( 0, 128, 0)",greenyellow:"rgb(173, 255, 47)",honeydew:"rgb(240, 255, 240)",hotpink:"rgb(255, 105, 180)",indianred:"rgb(205, 92, 92)",indigo:"rgb( 75, 0, 130)",ivory:"rgb(255, 255, 240)",khaki:"rgb(240, 230, 140)",lavender:"rgb(230, 230, 250)",lavenderblush:"rgb(255, 240, 245)",lawngreen:"rgb(124, 252, 0)",lemonchiffon:"rgb(255, 250, 205)",lightblue:"rgb(173, 216, 230)",lightcoral:"rgb(240, 128, 128)",lightcyan:"rgb(224, 255, 255)",lightgoldenrodyellow:"rgb(250, 250, 210)",lightgray:"rgb(211, 211, 211)",lightgreen:"rgb(144, 238, 144)",lightgrey:"rgb(211, 211, 211)",lightpink:"rgb(255, 182, 193)",lightsalmon:"rgb(255, 160, 122)",lightseagreen:"rgb( 32, 178, 170)",lightskyblue:"rgb(135, 206, 250)",lightslategray:"rgb(119, 136, 153)",lightslategrey:"rgb(119, 136, 153)",lightsteelblue:"rgb(176, 196, 222)",lightyellow:"rgb(255, 255, 224)",lime:"rgb( 0, 255, 0)",limegreen:"rgb( 50, 205, 50)",linen:"rgb(250, 240, 230)",magenta:"rgb(255, 0, 255)",maroon:"rgb(128, 0, 0)",mediumaquamarine:"rgb(102, 205, 170)",mediumblue:"rgb( 0, 0, 205)",mediumorchid:"rgb(186, 85, 211)",mediumpurple:"rgb(147, 112, 219)",mediumseagreen:"rgb( 60, 179, 113)",mediumslateblue:"rgb(123, 104, 238)",mediumspringgreen:"rgb( 0, 250, 154)",mediumturquoise:"rgb( 72, 209, 204)",mediumvioletred:"rgb(199, 21, 133)",midnightblue:"rgb( 25, 25, 112)",mintcream:"rgb(245, 255, 250)",mistyrose:"rgb(255, 228, 225)",moccasin:"rgb(255, 228, 181)",navajowhite:"rgb(255, 222, 173)",navy:"rgb( 0, 0, 128)",oldlace:"rgb(253, 245, 230)",olive:"rgb(128, 128, 0)",olivedrab:"rgb(107, 142, 35)",orange:"rgb(255, 165, 0)",orangered:"rgb(255, 69, 0)",orchid:"rgb(218, 112, 214)",palegoldenrod:"rgb(238, 232, 170)",palegreen:"rgb(152, 251, 152)",paleturquoise:"rgb(175, 238, 238)",palevioletred:"rgb(219, 112, 147)",papayawhip:"rgb(255, 239, 213)",peachpuff:"rgb(255, 218, 185)",peru:"rgb(205, 133, 63)",pink:"rgb(255, 192, 203)",plum:"rgb(221, 160, 221)",powderblue:"rgb(176, 224, 230)",purple:"rgb(128, 0, 128)",red:"rgb(255, 0, 0)",rosybrown:"rgb(188, 143, 143)",royalblue:"rgb( 65, 105, 225)",saddlebrown:"rgb(139, 69, 19)",salmon:"rgb(250, 128, 114)",sandybrown:"rgb(244, 164, 96)",seagreen:"rgb( 46, 139, 87)",seashell:"rgb(255, 245, 238)",sienna:"rgb(160, 82, 45)",silver:"rgb(192, 192, 192)",skyblue:"rgb(135, 206, 235)",slateblue:"rgb(106, 90, 205)",slategray:"rgb(112, 128, 144)",slategrey:"rgb(112, 128, 144)",snow:"rgb(255, 250, 250)",springgreen:"rgb( 0, 255, 127)",steelblue:"rgb( 70, 130, 180)",tan:"rgb(210, 180, 140)",teal:"rgb( 0, 128, 128)",thistle:"rgb(216, 191, 216)",tomato:"rgb(255, 99, 71)",turquoise:"rgb( 64, 224, 208)",violet:"rgb(238, 130, 238)",wheat:"rgb(245, 222, 179)",white:"rgb(255, 255, 255)",whitesmoke:"rgb(245, 245, 245)",yellow:"rgb(255, 255, 0)",yellowgreen:"rgb(154, 205, 50)"};H.jqplot.AxisLabelRenderer=function(ab){H.jqplot.ElemContainer.call(this);this.axis;this.show=true;this.label="";this.fontFamily=null;this.fontSize=null;this.textColor=null;this._elem;this.escapeHTML=false;H.extend(true,this,ab)};H.jqplot.AxisLabelRenderer.prototype=new H.jqplot.ElemContainer();H.jqplot.AxisLabelRenderer.prototype.constructor=H.jqplot.AxisLabelRenderer;H.jqplot.AxisLabelRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.AxisLabelRenderer.prototype.draw=function(ab,ac){if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=H('<div style="position:absolute;" class="jqplot-'+this.axis+'-label"></div>');if(Number(this.label)){this._elem.css("white-space","nowrap")}if(!this.escapeHTML){this._elem.html(this.label)}else{this._elem.text(this.label)}if(this.fontFamily){this._elem.css("font-family",this.fontFamily)}if(this.fontSize){this._elem.css("font-size",this.fontSize)}if(this.textColor){this._elem.css("color",this.textColor)}return this._elem};H.jqplot.AxisLabelRenderer.prototype.pack=function(){};H.jqplot.AxisTickRenderer=function(ab){H.jqplot.ElemContainer.call(this);this.mark="outside";this.axis;this.showMark=true;this.showGridline=true;this.isMinorTick=false;this.size=4;this.markSize=6;this.show=true;this.showLabel=true;this.label=null;this.value=null;this._styles={};this.formatter=H.jqplot.DefaultTickFormatter;this.prefix="";this.suffix="";this.formatString="";this.fontFamily;this.fontSize;this.textColor;this.escapeHTML=false;this._elem;this._breakTick=false;H.extend(true,this,ab)};H.jqplot.AxisTickRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.AxisTickRenderer.prototype=new H.jqplot.ElemContainer();H.jqplot.AxisTickRenderer.prototype.constructor=H.jqplot.AxisTickRenderer;H.jqplot.AxisTickRenderer.prototype.setTick=function(ab,ad,ac){this.value=ab;this.axis=ad;if(ac){this.isMinorTick=true}return this};H.jqplot.AxisTickRenderer.prototype.draw=function(){if(this.label===null){this.label=this.prefix+this.formatter(this.formatString,this.value)+this.suffix}var ac={position:"absolute"};if(Number(this.label)){ac.whitSpace="nowrap"}if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=H(document.createElement("div"));this._elem.addClass("jqplot-"+this.axis+"-tick");if(!this.escapeHTML){this._elem.html(this.label)}else{this._elem.text(this.label)}this._elem.css(ac);for(var ab in this._styles){this._elem.css(ab,this._styles[ab])}if(this.fontFamily){this._elem.css("font-family",this.fontFamily)}if(this.fontSize){this._elem.css("font-size",this.fontSize)}if(this.textColor){this._elem.css("color",this.textColor)}if(this._breakTick){this._elem.addClass("jqplot-breakTick")}return this._elem};H.jqplot.DefaultTickFormatter=function(ab,ac){if(typeof ac=="number"){if(!ab){ab=H.jqplot.config.defaultTickFormatString}return H.jqplot.sprintf(ab,ac)}else{return String(ac)}};H.jqplot.PercentTickFormatter=function(ab,ac){if(typeof ac=="number"){ac=100*ac;if(!ab){ab=H.jqplot.config.defaultTickFormatString}return H.jqplot.sprintf(ab,ac)}else{return String(ac)}};H.jqplot.AxisTickRenderer.prototype.pack=function(){};H.jqplot.CanvasGridRenderer=function(){this.shadowRenderer=new H.jqplot.ShadowRenderer()};H.jqplot.CanvasGridRenderer.prototype.init=function(ac){this._ctx;H.extend(true,this,ac);var ab={lineJoin:"miter",lineCap:"round",fill:false,isarc:false,angle:this.shadowAngle,offset:this.shadowOffset,alpha:this.shadowAlpha,depth:this.shadowDepth,lineWidth:this.shadowWidth,closePath:false,strokeStyle:this.shadowColor};this.renderer.shadowRenderer.init(ab)};H.jqplot.CanvasGridRenderer.prototype.createElement=function(ae){var ad;if(this._elem){if(H.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==r){ad=this._elem.get(0);window.G_vmlCanvasManager.uninitElement(ad);ad=null}this._elem.emptyForce();this._elem=null}ad=ae.canvasManager.getCanvas();var ab=this._plotDimensions.width;var ac=this._plotDimensions.height;ad.width=ab;ad.height=ac;this._elem=H(ad);this._elem.addClass("jqplot-grid-canvas");this._elem.css({position:"absolute",left:0,top:0});ad=ae.canvasManager.initCanvas(ad);this._top=this._offsets.top;this._bottom=ac-this._offsets.bottom;this._left=this._offsets.left;this._right=ab-this._offsets.right;this._width=this._right-this._left;this._height=this._bottom-this._top;ad=null;return this._elem};H.jqplot.CanvasGridRenderer.prototype.draw=function(){this._ctx=this._elem.get(0).getContext("2d");var am=this._ctx;var ap=this._axes;am.save();am.clearRect(0,0,this._plotDimensions.width,this._plotDimensions.height);am.fillStyle=this.backgroundColor||this.background;am.fillRect(this._left,this._top,this._width,this._height);am.save();am.lineJoin="miter";am.lineCap="butt";am.lineWidth=this.gridLineWidth;am.strokeStyle=this.gridLineColor;var at,ar,aj,ak;var ag=["xaxis","yaxis","x2axis","y2axis"];for(var aq=4;aq>0;aq--){var aw=ag[aq-1];var ab=ap[aw];var au=ab._ticks;var al=au.length;if(ab.show){if(ab.drawBaseline){var av={};if(ab.baselineWidth!==null){av.lineWidth=ab.baselineWidth}if(ab.baselineColor!==null){av.strokeStyle=ab.baselineColor}switch(aw){case"xaxis":ai(this._left,this._bottom,this._right,this._bottom,av);break;case"yaxis":ai(this._left,this._bottom,this._left,this._top,av);break;case"x2axis":ai(this._left,this._bottom,this._right,this._bottom,av);break;case"y2axis":ai(this._right,this._bottom,this._right,this._top,av);break}}for(var an=al;an>0;an--){var ah=au[an-1];if(ah.show){var ae=Math.round(ab.u2p(ah.value))+0.5;switch(aw){case"xaxis":if(ah.showGridline&&this.drawGridlines&&((!ah.isMinorTick&&ab.drawMajorGridlines)||(ah.isMinorTick&&ab.drawMinorGridlines))){ai(ae,this._top,ae,this._bottom)}if(ah.showMark&&ah.mark&&((!ah.isMinorTick&&ab.drawMajorTickMarks)||(ah.isMinorTick&&ab.drawMinorTickMarks))){aj=ah.markSize;ak=ah.mark;var ae=Math.round(ab.u2p(ah.value))+0.5;switch(ak){case"outside":at=this._bottom;ar=this._bottom+aj;break;case"inside":at=this._bottom-aj;ar=this._bottom;break;case"cross":at=this._bottom-aj;ar=this._bottom+aj;break;default:at=this._bottom;ar=this._bottom+aj;break}if(this.shadow){this.renderer.shadowRenderer.draw(am,[[ae,at],[ae,ar]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}ai(ae,at,ae,ar)}break;case"yaxis":if(ah.showGridline&&this.drawGridlines&&((!ah.isMinorTick&&ab.drawMajorGridlines)||(ah.isMinorTick&&ab.drawMinorGridlines))){ai(this._right,ae,this._left,ae)}if(ah.showMark&&ah.mark&&((!ah.isMinorTick&&ab.drawMajorTickMarks)||(ah.isMinorTick&&ab.drawMinorTickMarks))){aj=ah.markSize;ak=ah.mark;var ae=Math.round(ab.u2p(ah.value))+0.5;switch(ak){case"outside":at=this._left-aj;ar=this._left;break;case"inside":at=this._left;ar=this._left+aj;break;case"cross":at=this._left-aj;ar=this._left+aj;break;default:at=this._left-aj;ar=this._left;break}if(this.shadow){this.renderer.shadowRenderer.draw(am,[[at,ae],[ar,ae]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}ai(at,ae,ar,ae,{strokeStyle:ab.borderColor})}break;case"x2axis":if(ah.showGridline&&this.drawGridlines&&((!ah.isMinorTick&&ab.drawMajorGridlines)||(ah.isMinorTick&&ab.drawMinorGridlines))){ai(ae,this._bottom,ae,this._top)}if(ah.showMark&&ah.mark&&((!ah.isMinorTick&&ab.drawMajorTickMarks)||(ah.isMinorTick&&ab.drawMinorTickMarks))){aj=ah.markSize;ak=ah.mark;var ae=Math.round(ab.u2p(ah.value))+0.5;switch(ak){case"outside":at=this._top-aj;ar=this._top;break;case"inside":at=this._top;ar=this._top+aj;break;case"cross":at=this._top-aj;ar=this._top+aj;break;default:at=this._top-aj;ar=this._top;break}if(this.shadow){this.renderer.shadowRenderer.draw(am,[[ae,at],[ae,ar]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}ai(ae,at,ae,ar)}break;case"y2axis":if(ah.showGridline&&this.drawGridlines&&((!ah.isMinorTick&&ab.drawMajorGridlines)||(ah.isMinorTick&&ab.drawMinorGridlines))){ai(this._left,ae,this._right,ae)}if(ah.showMark&&ah.mark&&((!ah.isMinorTick&&ab.drawMajorTickMarks)||(ah.isMinorTick&&ab.drawMinorTickMarks))){aj=ah.markSize;ak=ah.mark;var ae=Math.round(ab.u2p(ah.value))+0.5;switch(ak){case"outside":at=this._right;ar=this._right+aj;break;case"inside":at=this._right-aj;ar=this._right;break;case"cross":at=this._right-aj;ar=this._right+aj;break;default:at=this._right;ar=this._right+aj;break}if(this.shadow){this.renderer.shadowRenderer.draw(am,[[at,ae],[ar,ae]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}ai(at,ae,ar,ae,{strokeStyle:ab.borderColor})}break;default:break}}}ah=null}ab=null;au=null}ag=["y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis","yMidAxis"];for(var aq=7;aq>0;aq--){var ab=ap[ag[aq-1]];var au=ab._ticks;if(ab.show){var ac=au[ab.numberTicks-1];var af=au[0];var ad=ab.getLeft();var ao=[[ad,ac.getTop()+ac.getHeight()/2],[ad,af.getTop()+af.getHeight()/2+1]];if(this.shadow){this.renderer.shadowRenderer.draw(am,ao,{lineCap:"butt",fill:false,closePath:false})}ai(ao[0][0],ao[0][1],ao[1][0],ao[1][1],{lineCap:"butt",strokeStyle:ab.borderColor,lineWidth:ab.borderWidth});for(var an=au.length;an>0;an--){var ah=au[an-1];aj=ah.markSize;ak=ah.mark;var ae=Math.round(ab.u2p(ah.value))+0.5;if(ah.showMark&&ah.mark){switch(ak){case"outside":at=ad;ar=ad+aj;break;case"inside":at=ad-aj;ar=ad;break;case"cross":at=ad-aj;ar=ad+aj;break;default:at=ad;ar=ad+aj;break}ao=[[at,ae],[ar,ae]];if(this.shadow){this.renderer.shadowRenderer.draw(am,ao,{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}ai(at,ae,ar,ae,{strokeStyle:ab.borderColor})}ah=null}af=null}ab=null;au=null}am.restore();function ai(aB,aA,ay,ax,az){am.save();az=az||{};if(az.lineWidth==null||az.lineWidth!=0){H.extend(true,am,az);am.beginPath();am.moveTo(aB,aA);am.lineTo(ay,ax);am.stroke();am.restore()}}if(this.shadow){var ao=[[this._left,this._bottom],[this._right,this._bottom],[this._right,this._top]];this.renderer.shadowRenderer.draw(am,ao)}if(this.borderWidth!=0&&this.drawBorder){ai(this._left,this._top,this._right,this._top,{lineCap:"round",strokeStyle:ap.x2axis.borderColor,lineWidth:ap.x2axis.borderWidth});ai(this._right,this._top,this._right,this._bottom,{lineCap:"round",strokeStyle:ap.y2axis.borderColor,lineWidth:ap.y2axis.borderWidth});ai(this._right,this._bottom,this._left,this._bottom,{lineCap:"round",strokeStyle:ap.xaxis.borderColor,lineWidth:ap.xaxis.borderWidth});ai(this._left,this._bottom,this._left,this._top,{lineCap:"round",strokeStyle:ap.yaxis.borderColor,lineWidth:ap.yaxis.borderWidth})}am.restore();am=null;ap=null};H.jqplot.DivTitleRenderer=function(){};H.jqplot.DivTitleRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.DivTitleRenderer.prototype.draw=function(){if(this._elem){this._elem.emptyForce();this._elem=null}var ae=this.renderer;var ad=document.createElement("div");this._elem=H(ad);this._elem.addClass("jqplot-title");if(!this.text){this.show=false;this._elem.height(0);this._elem.width(0)}else{if(this.text){var ab;if(this.color){ab=this.color}else{if(this.textColor){ab=this.textColor}}var ac={position:"absolute",top:"0px",left:"0px"};if(this._plotWidth){ac.width=this._plotWidth+"px"}if(this.fontSize){ac.fontSize=this.fontSize}if(typeof this.textAlign==="string"){ac.textAlign=this.textAlign}else{ac.textAlign="center"}if(ab){ac.color=ab}if(this.paddingBottom){ac.paddingBottom=this.paddingBottom}if(this.fontFamily){ac.fontFamily=this.fontFamily}this._elem.css(ac);if(this.escapeHtml){this._elem.text(this.text)}else{this._elem.html(this.text)}}}ad=null;return this._elem};H.jqplot.DivTitleRenderer.prototype.pack=function(){};var o=0.1;H.jqplot.LinePattern=function(ap,ak){var aj={dotted:[o,H.jqplot.config.dotGapLength],dashed:[H.jqplot.config.dashLength,H.jqplot.config.gapLength],solid:null};if(typeof ak==="string"){if(ak[0]==="."||ak[0]==="-"){var aq=ak;ak=[];for(var ai=0,af=aq.length;ai<af;ai++){if(aq[ai]==="."){ak.push(o)}else{if(aq[ai]==="-"){ak.push(H.jqplot.config.dashLength)}else{continue}}ak.push(H.jqplot.config.gapLength)}}else{ak=aj[ak]}}if(!(ak&&ak.length)){return ap}var ae=0;var al=ak[0];var an=0;var am=0;var ah=0;var ab=0;var ao=function(ar,at){ap.moveTo(ar,at);an=ar;am=at;ah=ar;ab=at};var ad=function(ar,ay){var aw=ap.lineWidth;var au=ar-an;var at=ay-am;var av=Math.sqrt(au*au+at*at);if((av>0)&&(aw>0)){au/=av;at/=av;while(true){var ax=aw*al;if(ax<av){an+=ax*au;am+=ax*at;if((ae&1)==0){ap.lineTo(an,am)}else{ap.moveTo(an,am)}av-=ax;ae++;if(ae>=ak.length){ae=0}al=ak[ae]}else{an=ar;am=ay;if((ae&1)==0){ap.lineTo(an,am)}else{ap.moveTo(an,am)}al-=av/aw;break}}}};var ac=function(){ap.beginPath()};var ag=function(){ad(ah,ab)};return{moveTo:ao,lineTo:ad,beginPath:ac,closePath:ag}};H.jqplot.LineRenderer=function(){this.shapeRenderer=new H.jqplot.ShapeRenderer();this.shadowRenderer=new H.jqplot.ShadowRenderer()};H.jqplot.LineRenderer.prototype.init=function(ac,ah){ac=ac||{};this._type="line";this.renderer.animation={show:false,direction:"left",speed:2500,_supported:true};this.renderer.smooth=false;this.renderer.tension=null;this.renderer.constrainSmoothing=true;this.renderer._smoothedData=[];this.renderer._smoothedPlotData=[];this.renderer._hiBandGridData=[];this.renderer._lowBandGridData=[];this.renderer._hiBandSmoothedData=[];this.renderer._lowBandSmoothedData=[];this.renderer.bandData=[];this.renderer.bands={show:false,hiData:[],lowData:[],color:this.color,showLines:false,fill:true,fillColor:null,_min:null,_max:null,interval:"3%"};var af={highlightMouseOver:ac.highlightMouseOver,highlightMouseDown:ac.highlightMouseDown,highlightColor:ac.highlightColor};delete (ac.highlightMouseOver);delete (ac.highlightMouseDown);delete (ac.highlightColor);H.extend(true,this.renderer,ac);this.renderer.options=ac;if(this.renderer.bandData.length>1&&(!ac.bands||ac.bands.show==null)){this.renderer.bands.show=true}else{if(ac.bands&&ac.bands.show==null&&ac.bands.interval!=null){this.renderer.bands.show=true}}if(this.fill){this.renderer.bands.show=false}if(this.renderer.bands.show){this.renderer.initBands.call(this,this.renderer.options,ah)}if(this._stack){this.renderer.smooth=false}var ag={lineJoin:this.lineJoin,lineCap:this.lineCap,fill:this.fill,isarc:false,strokeStyle:this.color,fillStyle:this.fillColor,lineWidth:this.lineWidth,linePattern:this.linePattern,closePath:this.fill};this.renderer.shapeRenderer.init(ag);var ad=ac.shadowOffset;if(ad==null){if(this.lineWidth>2.5){ad=1.25*(1+(Math.atan((this.lineWidth/2.5))/0.785398163-1)*0.6)}else{ad=1.25*Math.atan((this.lineWidth/2.5))/0.785398163}}var ab={lineJoin:this.lineJoin,lineCap:this.lineCap,fill:this.fill,isarc:false,angle:this.shadowAngle,offset:ad,alpha:this.shadowAlpha,depth:this.shadowDepth,lineWidth:this.lineWidth,linePattern:this.linePattern,closePath:this.fill};this.renderer.shadowRenderer.init(ab);this._areaPoints=[];this._boundingBox=[[],[]];if(!this.isTrendline&&this.fill||this.renderer.bands.show){this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColor=null;if(af.highlightMouseDown&&af.highlightMouseOver==null){af.highlightMouseOver=false}H.extend(true,this,{highlightMouseOver:af.highlightMouseOver,highlightMouseDown:af.highlightMouseDown,highlightColor:af.highlightColor});if(!this.highlightColor){var ae=(this.renderer.bands.show)?this.renderer.bands.fillColor:this.fillColor;this.highlightColor=H.jqplot.computeHighlightColors(ae)}if(this.highlighter){this.highlighter.show=false}}if(!this.isTrendline&&ah){ah.plugins.lineRenderer={};ah.postInitHooks.addOnce(v);ah.postDrawHooks.addOnce(Z);ah.eventListenerHooks.addOnce("jqplotMouseMove",g);ah.eventListenerHooks.addOnce("jqplotMouseDown",d);ah.eventListenerHooks.addOnce("jqplotMouseUp",Y);ah.eventListenerHooks.addOnce("jqplotClick",f);ah.eventListenerHooks.addOnce("jqplotRightClick",p)}};H.jqplot.LineRenderer.prototype.initBands=function(ae,ao){var af=ae.bandData||[];var ah=this.renderer.bands;ah.hiData=[];ah.lowData=[];var av=this.data;ah._max=null;ah._min=null;if(af.length==2){if(H.isArray(af[0][0])){var ai;var ab=0,al=0;for(var ap=0,am=af[0].length;ap<am;ap++){ai=af[0][ap];if((ai[1]!=null&&ai[1]>ah._max)||ah._max==null){ah._max=ai[1]}if((ai[1]!=null&&ai[1]<ah._min)||ah._min==null){ah._min=ai[1]}}for(var ap=0,am=af[1].length;ap<am;ap++){ai=af[1][ap];if((ai[1]!=null&&ai[1]>ah._max)||ah._max==null){ah._max=ai[1];al=1}if((ai[1]!=null&&ai[1]<ah._min)||ah._min==null){ah._min=ai[1];ab=1}}if(al===ab){ah.show=false}ah.hiData=af[al];ah.lowData=af[ab]}else{if(af[0].length===av.length&&af[1].length===av.length){var ad=(af[0][0]>af[1][0])?0:1;var aw=(ad)?0:1;for(var ap=0,am=av.length;ap<am;ap++){ah.hiData.push([av[ap][0],af[ad][ap]]);ah.lowData.push([av[ap][0],af[aw][ap]])}}else{ah.show=false}}}else{if(af.length>2&&!H.isArray(af[0][0])){var ad=(af[0][0]>af[0][1])?0:1;var aw=(ad)?0:1;for(var ap=0,am=af.length;ap<am;ap++){ah.hiData.push([av[ap][0],af[ap][ad]]);ah.lowData.push([av[ap][0],af[ap][aw]])}}else{var ak=ah.interval;var au=null;var at=null;var ac=null;var an=null;if(H.isArray(ak)){au=ak[0];at=ak[1]}else{au=ak}if(isNaN(au)){if(au.charAt(au.length-1)==="%"){ac="multiply";au=parseFloat(au)/100+1}}else{au=parseFloat(au);ac="add"}if(at!==null&&isNaN(at)){if(at.charAt(at.length-1)==="%"){an="multiply";at=parseFloat(at)/100+1}}else{if(at!==null){at=parseFloat(at);an="add"}}if(au!==null){if(at===null){at=-au;an=ac;if(an==="multiply"){at+=2}}if(au<at){var aq=au;au=at;at=aq;aq=ac;ac=an;an=aq}for(var ap=0,am=av.length;ap<am;ap++){switch(ac){case"add":ah.hiData.push([av[ap][0],av[ap][1]+au]);break;case"multiply":ah.hiData.push([av[ap][0],av[ap][1]*au]);break}switch(an){case"add":ah.lowData.push([av[ap][0],av[ap][1]+at]);break;case"multiply":ah.lowData.push([av[ap][0],av[ap][1]*at]);break}}}else{ah.show=false}}}var ag=ah.hiData;var aj=ah.lowData;for(var ap=0,am=ag.length;ap<am;ap++){if((ag[ap][1]!=null&&ag[ap][1]>ah._max)||ah._max==null){ah._max=ag[ap][1]}}for(var ap=0,am=aj.length;ap<am;ap++){if((aj[ap][1]!=null&&aj[ap][1]<ah._min)||ah._min==null){ah._min=aj[ap][1]}}if(ah.fillColor===null){var ar=H.jqplot.getColorComponents(ah.color);ar[3]=ar[3]*0.5;ah.fillColor="rgba("+ar[0]+", "+ar[1]+", "+ar[2]+", "+ar[3]+")"}};function G(ac,ab){return(3.4182054+ab)*Math.pow(ac,-0.3534992)}function k(ad,ac){var ab=Math.sqrt(Math.pow((ac[0]-ad[0]),2)+Math.pow((ac[1]-ad[1]),2));return 5.7648*Math.log(ab)+7.4456}function w(ab){var ac=(Math.exp(2*ab)-1)/(Math.exp(2*ab)+1);return ac}function F(aD){var am=this.renderer.smooth;var ax=this.canvas.getWidth();var ah=this._xaxis.series_p2u;var aA=this._yaxis.series_p2u;var az=null;var ag=null;var at=aD.length/ax;var ad=[];var ar=[];if(!isNaN(parseFloat(am))){az=parseFloat(am)}else{az=G(at,0.5)}var ap=[];var ae=[];for(var ay=0,au=aD.length;ay<au;ay++){ap.push(aD[ay][1]);ae.push(aD[ay][0])}function ao(aE,aF){if(aE-aF==0){return Math.pow(10,10)}else{return aE-aF}}var aq,al,ak,aj;var ab=aD.length-1;for(var af=1,av=aD.length;af<av;af++){var ac=[];var an=[];for(var aw=0;aw<2;aw++){var ay=af-1+aw;if(ay==0||ay==ab){ac[aw]=Math.pow(10,10)}else{if(ap[ay+1]-ap[ay]==0||ap[ay]-ap[ay-1]==0){ac[aw]=0}else{if(((ae[ay+1]-ae[ay])/(ap[ay+1]-ap[ay])+(ae[ay]-ae[ay-1])/(ap[ay]-ap[ay-1]))==0){ac[aw]=0}else{if((ap[ay+1]-ap[ay])*(ap[ay]-ap[ay-1])<0){ac[aw]=0}else{ac[aw]=2/(ao(ae[ay+1],ae[ay])/(ap[ay+1]-ap[ay])+ao(ae[ay],ae[ay-1])/(ap[ay]-ap[ay-1]))}}}}}if(af==1){ac[0]=3/2*(ap[1]-ap[0])/ao(ae[1],ae[0])-ac[1]/2}else{if(af==ab){ac[1]=3/2*(ap[ab]-ap[ab-1])/ao(ae[ab],ae[ab-1])-ac[0]/2}}an[0]=-2*(ac[1]+2*ac[0])/ao(ae[af],ae[af-1])+6*(ap[af]-ap[af-1])/Math.pow(ao(ae[af],ae[af-1]),2);an[1]=2*(2*ac[1]+ac[0])/ao(ae[af],ae[af-1])-6*(ap[af]-ap[af-1])/Math.pow(ao(ae[af],ae[af-1]),2);aj=1/6*(an[1]-an[0])/ao(ae[af],ae[af-1]);ak=1/2*(ae[af]*an[0]-ae[af-1]*an[1])/ao(ae[af],ae[af-1]);al=(ap[af]-ap[af-1]-ak*(Math.pow(ae[af],2)-Math.pow(ae[af-1],2))-aj*(Math.pow(ae[af],3)-Math.pow(ae[af-1],3)))/ao(ae[af],ae[af-1]);aq=ap[af-1]-al*ae[af-1]-ak*Math.pow(ae[af-1],2)-aj*Math.pow(ae[af-1],3);var aC=(ae[af]-ae[af-1])/az;var aB,ai;for(var aw=0,au=az;aw<au;aw++){aB=[];ai=ae[af-1]+aw*aC;aB.push(ai);aB.push(aq+al*ai+ak*Math.pow(ai,2)+aj*Math.pow(ai,3));ad.push(aB);ar.push([ah(aB[0]),aA(aB[1])])}}ad.push(aD[ay]);ar.push([ah(aD[ay][0]),aA(aD[ay][1])]);return[ad,ar]}function B(aj){var ai=this.renderer.smooth;var aO=this.renderer.tension;var ab=this.canvas.getWidth();var aB=this._xaxis.series_p2u;var ak=this._yaxis.series_p2u;var aC=null;var aD=null;var aN=null;var aI=null;var aG=null;var am=null;var aL=null;var ag=null;var aE,aF,ax,aw,au,ar;var ae,ac,ao,an;var av,at,aH;var ap=[];var ad=[];var af=aj.length/ab;var aM,aq,az,aA,ay;var al=[];var ah=[];if(!isNaN(parseFloat(ai))){aC=parseFloat(ai)}else{aC=G(af,0.5)}if(!isNaN(parseFloat(aO))){aO=parseFloat(aO)}for(var aK=0,aJ=aj.length-1;aK<aJ;aK++){if(aO===null){am=Math.abs((aj[aK+1][1]-aj[aK][1])/(aj[aK+1][0]-aj[aK][0]));aM=0.3;aq=0.6;az=(aq-aM)/2;aA=2.5;ay=-1.4;ag=am/aA+ay;aI=az*w(ag)-az*w(ay)+aM;if(aK>0){aL=Math.abs((aj[aK][1]-aj[aK-1][1])/(aj[aK][0]-aj[aK-1][0]))}ag=aL/aA+ay;aG=az*w(ag)-az*w(ay)+aM;aN=(aI+aG)/2}else{aN=aO}for(aE=0;aE<aC;aE++){aF=aE/aC;ax=(1+2*aF)*Math.pow((1-aF),2);aw=aF*Math.pow((1-aF),2);au=Math.pow(aF,2)*(3-2*aF);ar=Math.pow(aF,2)*(aF-1);if(aj[aK-1]){ae=aN*(aj[aK+1][0]-aj[aK-1][0]);ac=aN*(aj[aK+1][1]-aj[aK-1][1])}else{ae=aN*(aj[aK+1][0]-aj[aK][0]);ac=aN*(aj[aK+1][1]-aj[aK][1])}if(aj[aK+2]){ao=aN*(aj[aK+2][0]-aj[aK][0]);an=aN*(aj[aK+2][1]-aj[aK][1])}else{ao=aN*(aj[aK+1][0]-aj[aK][0]);an=aN*(aj[aK+1][1]-aj[aK][1])}av=ax*aj[aK][0]+au*aj[aK+1][0]+aw*ae+ar*ao;at=ax*aj[aK][1]+au*aj[aK+1][1]+aw*ac+ar*an;aH=[av,at];al.push(aH);ah.push([aB(av),ak(at)])}}al.push(aj[aJ]);ah.push([aB(aj[aJ][0]),ak(aj[aJ][1])]);return[al,ah]}H.jqplot.LineRenderer.prototype.setGridData=function(aj){var af=this._xaxis.series_u2p;var ab=this._yaxis.series_u2p;var ag=this._plotData;var ak=this._prevPlotData;this.gridData=[];this._prevGridData=[];this.renderer._smoothedData=[];this.renderer._smoothedPlotData=[];this.renderer._hiBandGridData=[];this.renderer._lowBandGridData=[];this.renderer._hiBandSmoothedData=[];this.renderer._lowBandSmoothedData=[];var ae=this.renderer.bands;var ac=false;for(var ah=0,ad=ag.length;ah<ad;ah++){if(ag[ah][0]!=null&&ag[ah][1]!=null){this.gridData.push([af.call(this._xaxis,ag[ah][0]),ab.call(this._yaxis,ag[ah][1])])}else{if(ag[ah][0]==null){ac=true;this.gridData.push([null,ab.call(this._yaxis,ag[ah][1])])}else{if(ag[ah][1]==null){ac=true;this.gridData.push([af.call(this._xaxis,ag[ah][0]),null])}}}if(ak[ah]!=null&&ak[ah][0]!=null&&ak[ah][1]!=null){this._prevGridData.push([af.call(this._xaxis,ak[ah][0]),ab.call(this._yaxis,ak[ah][1])])}else{if(ak[ah]!=null&&ak[ah][0]==null){this._prevGridData.push([null,ab.call(this._yaxis,ak[ah][1])])}else{if(ak[ah]!=null&&ak[ah][0]!=null&&ak[ah][1]==null){this._prevGridData.push([af.call(this._xaxis,ak[ah][0]),null])}}}}if(ac){this.renderer.smooth=false;if(this._type==="line"){ae.show=false}}if(this._type==="line"&&ae.show){for(var ah=0,ad=ae.hiData.length;ah<ad;ah++){this.renderer._hiBandGridData.push([af.call(this._xaxis,ae.hiData[ah][0]),ab.call(this._yaxis,ae.hiData[ah][1])])}for(var ah=0,ad=ae.lowData.length;ah<ad;ah++){this.renderer._lowBandGridData.push([af.call(this._xaxis,ae.lowData[ah][0]),ab.call(this._yaxis,ae.lowData[ah][1])])}}if(this._type==="line"&&this.renderer.smooth&&this.gridData.length>2){var ai;if(this.renderer.constrainSmoothing){ai=F.call(this,this.gridData);this.renderer._smoothedData=ai[0];this.renderer._smoothedPlotData=ai[1];if(ae.show){ai=F.call(this,this.renderer._hiBandGridData);this.renderer._hiBandSmoothedData=ai[0];ai=F.call(this,this.renderer._lowBandGridData);this.renderer._lowBandSmoothedData=ai[0]}ai=null}else{ai=B.call(this,this.gridData);this.renderer._smoothedData=ai[0];this.renderer._smoothedPlotData=ai[1];if(ae.show){ai=B.call(this,this.renderer._hiBandGridData);this.renderer._hiBandSmoothedData=ai[0];ai=B.call(this,this.renderer._lowBandGridData);this.renderer._lowBandSmoothedData=ai[0]}ai=null}}};H.jqplot.LineRenderer.prototype.makeGridData=function(ai,ak){var ag=this._xaxis.series_u2p;var ab=this._yaxis.series_u2p;var al=[];var ad=[];this.renderer._smoothedData=[];this.renderer._smoothedPlotData=[];this.renderer._hiBandGridData=[];this.renderer._lowBandGridData=[];this.renderer._hiBandSmoothedData=[];this.renderer._lowBandSmoothedData=[];var af=this.renderer.bands;var ac=false;for(var ah=0;ah<ai.length;ah++){if(ai[ah][0]!=null&&ai[ah][1]!=null){al.push([ag.call(this._xaxis,ai[ah][0]),ab.call(this._yaxis,ai[ah][1])])}else{if(ai[ah][0]==null){ac=true;al.push([null,ab.call(this._yaxis,ai[ah][1])])}else{if(ai[ah][1]==null){ac=true;al.push([ag.call(this._xaxis,ai[ah][0]),null])}}}}if(ac){this.renderer.smooth=false;if(this._type==="line"){af.show=false}}if(this._type==="line"&&af.show){for(var ah=0,ae=af.hiData.length;ah<ae;ah++){this.renderer._hiBandGridData.push([ag.call(this._xaxis,af.hiData[ah][0]),ab.call(this._yaxis,af.hiData[ah][1])])}for(var ah=0,ae=af.lowData.length;ah<ae;ah++){this.renderer._lowBandGridData.push([ag.call(this._xaxis,af.lowData[ah][0]),ab.call(this._yaxis,af.lowData[ah][1])])}}if(this._type==="line"&&this.renderer.smooth&&al.length>2){var aj;if(this.renderer.constrainSmoothing){aj=F.call(this,al);this.renderer._smoothedData=aj[0];this.renderer._smoothedPlotData=aj[1];if(af.show){aj=F.call(this,this.renderer._hiBandGridData);this.renderer._hiBandSmoothedData=aj[0];aj=F.call(this,this.renderer._lowBandGridData);this.renderer._lowBandSmoothedData=aj[0]}aj=null}else{aj=B.call(this,al);this.renderer._smoothedData=aj[0];this.renderer._smoothedPlotData=aj[1];if(af.show){aj=B.call(this,this.renderer._hiBandGridData);this.renderer._hiBandSmoothedData=aj[0];aj=B.call(this,this.renderer._lowBandGridData);this.renderer._lowBandSmoothedData=aj[0]}aj=null}}return al};H.jqplot.LineRenderer.prototype.draw=function(aq,aC,ac,av){var aw;var ak=H.extend(true,{},ac);var ae=(ak.shadow!=r)?ak.shadow:this.shadow;var aD=(ak.showLine!=r)?ak.showLine:this.showLine;var au=(ak.fill!=r)?ak.fill:this.fill;var ab=(ak.fillAndStroke!=r)?ak.fillAndStroke:this.fillAndStroke;var al,ar,ao,ay;aq.save();if(aC.length){if(aD){if(au){if(this.fillToZero){var az=this.negativeColor;if(!this.useNegativeColors){az=ak.fillStyle}var ai=false;var aj=ak.fillStyle;if(ab){var aB=aC.slice(0)}if(this.index==0||!this._stack){var ap=[];var aF=(this.renderer.smooth)?this.renderer._smoothedPlotData:this._plotData;this._areaPoints=[];var aA=this._yaxis.series_u2p(this.fillToValue);var ad=this._xaxis.series_u2p(this.fillToValue);ak.closePath=true;if(this.fillAxis=="y"){ap.push([aC[0][0],aA]);this._areaPoints.push([aC[0][0],aA]);for(var aw=0;aw<aC.length-1;aw++){ap.push(aC[aw]);this._areaPoints.push(aC[aw]);if(aF[aw][1]*aF[aw+1][1]<0){if(aF[aw][1]<0){ai=true;ak.fillStyle=az}else{ai=false;ak.fillStyle=aj}var ah=aC[aw][0]+(aC[aw+1][0]-aC[aw][0])*(aA-aC[aw][1])/(aC[aw+1][1]-aC[aw][1]);ap.push([ah,aA]);this._areaPoints.push([ah,aA]);if(ae){this.renderer.shadowRenderer.draw(aq,ap,ak)}this.renderer.shapeRenderer.draw(aq,ap,ak);ap=[[ah,aA]]}}if(aF[aC.length-1][1]<0){ai=true;ak.fillStyle=az}else{ai=false;ak.fillStyle=aj}ap.push(aC[aC.length-1]);this._areaPoints.push(aC[aC.length-1]);ap.push([aC[aC.length-1][0],aA]);this._areaPoints.push([aC[aC.length-1][0],aA])}if(ae){this.renderer.shadowRenderer.draw(aq,ap,ak)}this.renderer.shapeRenderer.draw(aq,ap,ak)}else{var an=this._prevGridData;for(var aw=an.length;aw>0;aw--){aC.push(an[aw-1])}if(ae){this.renderer.shadowRenderer.draw(aq,aC,ak)}this._areaPoints=aC;this.renderer.shapeRenderer.draw(aq,aC,ak)}}else{if(ab){var aB=aC.slice(0)}if(this.index==0||!this._stack){var af=aq.canvas.height;aC.unshift([aC[0][0],af]);var ax=aC.length;aC.push([aC[ax-1][0],af])}else{var an=this._prevGridData;for(var aw=an.length;aw>0;aw--){aC.push(an[aw-1])}}this._areaPoints=aC;if(ae){this.renderer.shadowRenderer.draw(aq,aC,ak)}this.renderer.shapeRenderer.draw(aq,aC,ak)}if(ab){var at=H.extend(true,{},ak,{fill:false,closePath:false});this.renderer.shapeRenderer.draw(aq,aB,at);if(this.markerRenderer.show){if(this.renderer.smooth){aB=this.gridData}for(aw=0;aw<aB.length;aw++){this.markerRenderer.draw(aB[aw][0],aB[aw][1],aq,ak.markerOptions)}}}}else{if(this.renderer.bands.show){var ag;var aE=H.extend(true,{},ak);if(this.renderer.bands.showLines){ag=(this.renderer.smooth)?this.renderer._hiBandSmoothedData:this.renderer._hiBandGridData;this.renderer.shapeRenderer.draw(aq,ag,ak);ag=(this.renderer.smooth)?this.renderer._lowBandSmoothedData:this.renderer._lowBandGridData;this.renderer.shapeRenderer.draw(aq,ag,aE)}if(this.renderer.bands.fill){if(this.renderer.smooth){ag=this.renderer._hiBandSmoothedData.concat(this.renderer._lowBandSmoothedData.reverse())}else{ag=this.renderer._hiBandGridData.concat(this.renderer._lowBandGridData.reverse())}this._areaPoints=ag;aE.closePath=true;aE.fill=true;aE.fillStyle=this.renderer.bands.fillColor;this.renderer.shapeRenderer.draw(aq,ag,aE)}}if(ae){this.renderer.shadowRenderer.draw(aq,aC,ak)}this.renderer.shapeRenderer.draw(aq,aC,ak)}}var al=ao=ar=ay=null;for(aw=0;aw<this._areaPoints.length;aw++){var am=this._areaPoints[aw];if(al>am[0]||al==null){al=am[0]}if(ay<am[1]||ay==null){ay=am[1]}if(ao<am[0]||ao==null){ao=am[0]}if(ar>am[1]||ar==null){ar=am[1]}}if(this.type==="line"&&this.renderer.bands.show){ay=this._yaxis.series_u2p(this.renderer.bands._min);ar=this._yaxis.series_u2p(this.renderer.bands._max)}this._boundingBox=[[al,ay],[ao,ar]];if(this.markerRenderer.show&&!au){if(this.renderer.smooth){aC=this.gridData}for(aw=0;aw<aC.length;aw++){if(aC[aw][0]!=null&&aC[aw][1]!=null){this.markerRenderer.draw(aC[aw][0],aC[aw][1],aq,ak.markerOptions)}}}}aq.restore()};H.jqplot.LineRenderer.prototype.drawShadow=function(ab,ad,ac){};function v(ae,ad,ab){for(var ac=0;ac<this.series.length;ac++){if(this.series[ac].renderer.constructor==H.jqplot.LineRenderer){if(this.series[ac].highlightMouseOver){this.series[ac].highlightMouseDown=false}}}}function Z(){if(this.plugins.lineRenderer&&this.plugins.lineRenderer.highlightCanvas){this.plugins.lineRenderer.highlightCanvas.resetCanvas();this.plugins.lineRenderer.highlightCanvas=null}this.plugins.lineRenderer.highlightedSeriesIndex=null;this.plugins.lineRenderer.highlightCanvas=new H.jqplot.GenericCanvas();this.eventCanvas._elem.before(this.plugins.lineRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-lineRenderer-highlight-canvas",this._plotDimensions,this));this.plugins.lineRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(ab){V(ab.data.plot)})}function X(ah,ag,ae,ad){var ac=ah.series[ag];var ab=ah.plugins.lineRenderer.highlightCanvas;ab._ctx.clearRect(0,0,ab._ctx.canvas.width,ab._ctx.canvas.height);ac._highlightedPoint=ae;ah.plugins.lineRenderer.highlightedSeriesIndex=ag;var af={fillStyle:ac.highlightColor};if(ac.type==="line"&&ac.renderer.bands.show){af.fill=true;af.closePath=true}ac.renderer.shapeRenderer.draw(ab._ctx,ad,af);ab=null}function V(ad){var ab=ad.plugins.lineRenderer.highlightCanvas;ab._ctx.clearRect(0,0,ab._ctx.canvas.width,ab._ctx.canvas.height);for(var ac=0;ac<ad.series.length;ac++){ad.series[ac]._highlightedPoint=null}ad.plugins.lineRenderer.highlightedSeriesIndex=null;ad.target.trigger("jqplotDataUnhighlight");ab=null}function g(af,ae,ai,ah,ag){if(ah){var ad=[ah.seriesIndex,ah.pointIndex,ah.data];var ac=jQuery.Event("jqplotDataMouseOver");ac.pageX=af.pageX;ac.pageY=af.pageY;ag.target.trigger(ac,ad);if(ag.series[ad[0]].highlightMouseOver&&!(ad[0]==ag.plugins.lineRenderer.highlightedSeriesIndex)){var ab=jQuery.Event("jqplotDataHighlight");ab.which=af.which;ab.pageX=af.pageX;ab.pageY=af.pageY;ag.target.trigger(ab,ad);X(ag,ah.seriesIndex,ah.pointIndex,ah.points)}}else{if(ah==null){V(ag)}}}function d(ae,ad,ah,ag,af){if(ag){var ac=[ag.seriesIndex,ag.pointIndex,ag.data];if(af.series[ac[0]].highlightMouseDown&&!(ac[0]==af.plugins.lineRenderer.highlightedSeriesIndex)){var ab=jQuery.Event("jqplotDataHighlight");ab.which=ae.which;ab.pageX=ae.pageX;ab.pageY=ae.pageY;af.target.trigger(ab,ac);X(af,ag.seriesIndex,ag.pointIndex,ag.points)}}else{if(ag==null){V(af)}}}function Y(ad,ac,ag,af,ae){var ab=ae.plugins.lineRenderer.highlightedSeriesIndex;if(ab!=null&&ae.series[ab].highlightMouseDown){V(ae)}}function f(ae,ad,ah,ag,af){if(ag){var ac=[ag.seriesIndex,ag.pointIndex,ag.data];var ab=jQuery.Event("jqplotDataClick");ab.which=ae.which;ab.pageX=ae.pageX;ab.pageY=ae.pageY;af.target.trigger(ab,ac)}}function p(af,ae,ai,ah,ag){if(ah){var ad=[ah.seriesIndex,ah.pointIndex,ah.data];var ab=ag.plugins.lineRenderer.highlightedSeriesIndex;if(ab!=null&&ag.series[ab].highlightMouseDown){V(ag)}var ac=jQuery.Event("jqplotDataRightClick");ac.which=af.which;ac.pageX=af.pageX;ac.pageY=af.pageY;ag.target.trigger(ac,ad)}}H.jqplot.LinearAxisRenderer=function(){};H.jqplot.LinearAxisRenderer.prototype.init=function(ab){this.breakPoints=null;this.breakTickLabel="&asymp;";this.drawBaseline=true;this.baselineWidth=null;this.baselineColor=null;this.forceTickAt0=false;this.forceTickAt100=false;this.tickInset=0;this.minorTicks=0;this.alignTicks=false;this._autoFormatString="";this._overrideFormatString=false;this._scalefact=1;H.extend(true,this,ab);if(this.breakPoints){if(!H.isArray(this.breakPoints)){this.breakPoints=null}else{if(this.breakPoints.length<2||this.breakPoints[1]<=this.breakPoints[0]){this.breakPoints=null}}}if(this.numberTicks!=null&&this.numberTicks<2){this.numberTicks=2}this.resetDataBounds()};H.jqplot.LinearAxisRenderer.prototype.draw=function(ab,ai){if(this.show){this.renderer.createTicks.call(this,ai);var ah=0;var ac;if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=H(document.createElement("div"));this._elem.addClass("jqplot-axis jqplot-"+this.name);this._elem.css("position","absolute");if(this.name=="xaxis"||this.name=="x2axis"){this._elem.width(this._plotDimensions.width)}else{this._elem.height(this._plotDimensions.height)}this.labelOptions.axis=this.name;this._label=new this.labelRenderer(this.labelOptions);if(this._label.show){var ag=this._label.draw(ab,ai);ag.appendTo(this._elem);ag=null}var af=this._ticks;var ae;for(var ad=0;ad<af.length;ad++){ae=af[ad];if(ae.show&&ae.showLabel&&(!ae.isMinorTick||this.showMinorTicks)){this._elem.append(ae.draw(ab,ai))}}ae=null;af=null}return this._elem};H.jqplot.LinearAxisRenderer.prototype.reset=function(){this.min=this._options.min;this.max=this._options.max;this.tickInterval=this._options.tickInterval;this.numberTicks=this._options.numberTicks;this._autoFormatString="";if(this._overrideFormatString&&this.tickOptions&&this.tickOptions.formatString){this.tickOptions.formatString=""}};H.jqplot.LinearAxisRenderer.prototype.set=function(){var ai=0;var ad;var ac=0;var ah=0;var ab=(this._label==null)?false:this._label.show;if(this.show){var ag=this._ticks;var af;for(var ae=0;ae<ag.length;ae++){af=ag[ae];if(!af._breakTick&&af.show&&af.showLabel&&(!af.isMinorTick||this.showMinorTicks)){if(this.name=="xaxis"||this.name=="x2axis"){ad=af._elem.outerHeight(true)}else{ad=af._elem.outerWidth(true)}if(ad>ai){ai=ad}}}af=null;ag=null;if(ab){ac=this._label._elem.outerWidth(true);ah=this._label._elem.outerHeight(true)}if(this.name=="xaxis"){ai=ai+ah;this._elem.css({height:ai+"px",left:"0px",bottom:"0px"})}else{if(this.name=="x2axis"){ai=ai+ah;this._elem.css({height:ai+"px",left:"0px",top:"0px"})}else{if(this.name=="yaxis"){ai=ai+ac;this._elem.css({width:ai+"px",left:"0px",top:"0px"});if(ab&&this._label.constructor==H.jqplot.AxisLabelRenderer){this._label._elem.css("width",ac+"px")}}else{ai=ai+ac;this._elem.css({width:ai+"px",right:"0px",top:"0px"});if(ab&&this._label.constructor==H.jqplot.AxisLabelRenderer){this._label._elem.css("width",ac+"px")}}}}}};H.jqplot.LinearAxisRenderer.prototype.createTicks=function(ad){var aN=this._ticks;var aE=this.ticks;var at=this.name;var av=this._dataBounds;var ab=(this.name.charAt(0)==="x")?this._plotDimensions.width:this._plotDimensions.height;var ah;var a0,aC;var aj,ai;var aY,aU;var aB=this.min;var aZ=this.max;var aQ=this.numberTicks;var a4=this.tickInterval;var ag=30;this._scalefact=(Math.max(ab,ag+1)-ag)/300;if(aE.length){for(aU=0;aU<aE.length;aU++){var aI=aE[aU];var aO=new this.tickRenderer(this.tickOptions);if(H.isArray(aI)){aO.value=aI[0];if(this.breakPoints){if(aI[0]==this.breakPoints[0]){aO.label=this.breakTickLabel;aO._breakTick=true;aO.showGridline=false;aO.showMark=false}else{if(aI[0]>this.breakPoints[0]&&aI[0]<=this.breakPoints[1]){aO.show=false;aO.showGridline=false;aO.label=aI[1]}else{aO.label=aI[1]}}}else{aO.label=aI[1]}aO.setTick(aI[0],this.name);this._ticks.push(aO)}else{if(H.isPlainObject(aI)){H.extend(true,aO,aI);aO.axis=this.name;this._ticks.push(aO)}else{aO.value=aI;if(this.breakPoints){if(aI==this.breakPoints[0]){aO.label=this.breakTickLabel;aO._breakTick=true;aO.showGridline=false;aO.showMark=false}else{if(aI>this.breakPoints[0]&&aI<=this.breakPoints[1]){aO.show=false;aO.showGridline=false}}}aO.setTick(aI,this.name);this._ticks.push(aO)}}}this.numberTicks=aE.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value;this.tickInterval=(this.max-this.min)/(this.numberTicks-1)}else{if(at=="xaxis"||at=="x2axis"){ab=this._plotDimensions.width}else{ab=this._plotDimensions.height}var aq=this.numberTicks;if(this.alignTicks){if(this.name==="x2axis"&&ad.axes.xaxis.show){aq=ad.axes.xaxis.numberTicks}else{if(this.name.charAt(0)==="y"&&this.name!=="yaxis"&&this.name!=="yMidAxis"&&ad.axes.yaxis.show){aq=ad.axes.yaxis.numberTicks}}}a0=((this.min!=null)?this.min:av.min);aC=((this.max!=null)?this.max:av.max);var ao=aC-a0;var aM,ar;var am;if(this.tickOptions==null||!this.tickOptions.formatString){this._overrideFormatString=true}if(this.min==null||this.max==null&&this.tickInterval==null&&!this.autoscale){if(this.forceTickAt0){if(a0>0){a0=0}if(aC<0){aC=0}}if(this.forceTickAt100){if(a0>100){a0=100}if(aC<100){aC=100}}var ay=false,aV=false;if(this.min!=null){ay=true}else{if(this.max!=null){aV=true}}var aJ=H.jqplot.LinearTickGenerator(a0,aC,this._scalefact,aq,ay,aV);var ap=(this.min!=null)?a0:a0+ao*(this.padMin-1);var aK=(this.max!=null)?aC:aC-ao*(this.padMax-1);if(a0<ap||aC>aK){ap=(this.min!=null)?a0:a0-ao*(this.padMin-1);aK=(this.max!=null)?aC:aC+ao*(this.padMax-1);aJ=H.jqplot.LinearTickGenerator(ap,aK,this._scalefact,aq,ay,aV)}this.min=aJ[0];this.max=aJ[1];this.numberTicks=aJ[2];this._autoFormatString=aJ[3];this.tickInterval=aJ[4]}else{if(a0==aC){var ac=0.05;if(a0>0){ac=Math.max(Math.log(a0)/Math.LN10,0.05)}a0-=ac;aC+=ac}if(this.autoscale&&this.min==null&&this.max==null){var ae,af,al;var aw=false;var aH=false;var au={min:null,max:null,average:null,stddev:null};for(var aU=0;aU<this._series.length;aU++){var aP=this._series[aU];var ax=(aP.fillAxis=="x")?aP._xaxis.name:aP._yaxis.name;if(this.name==ax){var aL=aP._plotValues[aP.fillAxis];var aA=aL[0];var aW=aL[0];for(var aT=1;aT<aL.length;aT++){if(aL[aT]<aA){aA=aL[aT]}else{if(aL[aT]>aW){aW=aL[aT]}}}var an=(aW-aA)/aW;if(aP.renderer.constructor==H.jqplot.BarRenderer){if(aA>=0&&(aP.fillToZero||an>0.1)){aw=true}else{aw=false;if(aP.fill&&aP.fillToZero&&aA<0&&aW>0){aH=true}else{aH=false}}}else{if(aP.fill){if(aA>=0&&(aP.fillToZero||an>0.1)){aw=true}else{if(aA<0&&aW>0&&aP.fillToZero){aw=false;aH=true}else{aw=false;aH=false}}}else{if(aA<0){aw=false}}}}}if(aw){this.numberTicks=2+Math.ceil((ab-(this.tickSpacing-1))/this.tickSpacing);this.min=0;aB=0;af=aC/(this.numberTicks-1);am=Math.pow(10,Math.abs(Math.floor(Math.log(af)/Math.LN10)));if(af/am==parseInt(af/am,10)){af+=am}this.tickInterval=Math.ceil(af/am)*am;this.max=this.tickInterval*(this.numberTicks-1)}else{if(aH){this.numberTicks=2+Math.ceil((ab-(this.tickSpacing-1))/this.tickSpacing);var aD=Math.ceil(Math.abs(a0)/ao*(this.numberTicks-1));var a3=this.numberTicks-1-aD;af=Math.max(Math.abs(a0/aD),Math.abs(aC/a3));am=Math.pow(10,Math.abs(Math.floor(Math.log(af)/Math.LN10)));this.tickInterval=Math.ceil(af/am)*am;this.max=this.tickInterval*a3;this.min=-this.tickInterval*aD}else{if(this.numberTicks==null){if(this.tickInterval){this.numberTicks=3+Math.ceil(ao/this.tickInterval)}else{this.numberTicks=2+Math.ceil((ab-(this.tickSpacing-1))/this.tickSpacing)}}if(this.tickInterval==null){af=ao/(this.numberTicks-1);if(af<1){am=Math.pow(10,Math.abs(Math.floor(Math.log(af)/Math.LN10)))}else{am=1}this.tickInterval=Math.ceil(af*am*this.pad)/am}else{am=1/this.tickInterval}ae=this.tickInterval*(this.numberTicks-1);al=(ae-ao)/2;if(this.min==null){this.min=Math.floor(am*(a0-al))/am}if(this.max==null){this.max=this.min+ae}}}var az=H.jqplot.getSignificantFigures(this.tickInterval);var aG;if(az.digitsLeft>=az.significantDigits){aG="%d"}else{var am=Math.max(0,5-az.digitsLeft);am=Math.min(am,az.digitsRight);aG="%."+am+"f"}this._autoFormatString=aG}else{aM=(this.min!=null)?this.min:a0-ao*(this.padMin-1);ar=(this.max!=null)?this.max:aC+ao*(this.padMax-1);ao=ar-aM;if(this.numberTicks==null){if(this.tickInterval!=null){this.numberTicks=Math.ceil((ar-aM)/this.tickInterval)+1}else{if(ab>100){this.numberTicks=parseInt(3+(ab-100)/75,10)}else{this.numberTicks=2}}}if(this.tickInterval==null){this.tickInterval=ao/(this.numberTicks-1)}if(this.max==null){ar=aM+this.tickInterval*(this.numberTicks-1)}if(this.min==null){aM=ar-this.tickInterval*(this.numberTicks-1)}var az=H.jqplot.getSignificantFigures(this.tickInterval);var aG;if(az.digitsLeft>=az.significantDigits){aG="%d"}else{var am=Math.max(0,5-az.digitsLeft);am=Math.min(am,az.digitsRight);aG="%."+am+"f"}this._autoFormatString=aG;this.min=aM;this.max=ar}if(this.renderer.constructor==H.jqplot.LinearAxisRenderer&&this._autoFormatString==""){ao=this.max-this.min;var a1=new this.tickRenderer(this.tickOptions);var aF=a1.formatString||H.jqplot.config.defaultTickFormatString;var aF=aF.match(H.jqplot.sprintf.regex)[0];var aX=0;if(aF){if(aF.search(/[fFeEgGpP]/)>-1){var aS=aF.match(/\%\.(\d{0,})?[eEfFgGpP]/);if(aS){aX=parseInt(aS[1],10)}else{aX=6}}else{if(aF.search(/[di]/)>-1){aX=0}}var ak=Math.pow(10,-aX);if(this.tickInterval<ak){if(aQ==null&&a4==null){this.tickInterval=ak;if(aZ==null&&aB==null){this.min=Math.floor(this._dataBounds.min/ak)*ak;if(this.min==this._dataBounds.min){this.min=this._dataBounds.min-this.tickInterval}this.max=Math.ceil(this._dataBounds.max/ak)*ak;if(this.max==this._dataBounds.max){this.max=this._dataBounds.max+this.tickInterval}var aR=(this.max-this.min)/this.tickInterval;aR=aR.toFixed(11);aR=Math.ceil(aR);this.numberTicks=aR+1}else{if(aZ==null){var aR=(this._dataBounds.max-this.min)/this.tickInterval;aR=aR.toFixed(11);this.numberTicks=Math.ceil(aR)+2;this.max=this.min+this.tickInterval*(this.numberTicks-1)}else{if(aB==null){var aR=(this.max-this._dataBounds.min)/this.tickInterval;aR=aR.toFixed(11);this.numberTicks=Math.ceil(aR)+2;this.min=this.max-this.tickInterval*(this.numberTicks-1)}else{this.numberTicks=Math.ceil((aZ-aB)/this.tickInterval)+1;this.min=Math.floor(aB*Math.pow(10,aX))/Math.pow(10,aX);this.max=Math.ceil(aZ*Math.pow(10,aX))/Math.pow(10,aX);this.numberTicks=Math.ceil((this.max-this.min)/this.tickInterval)+1}}}}}}}}if(this._overrideFormatString&&this._autoFormatString!=""){this.tickOptions=this.tickOptions||{};this.tickOptions.formatString=this._autoFormatString}var aO,a2;for(var aU=0;aU<this.numberTicks;aU++){aY=this.min+aU*this.tickInterval;aO=new this.tickRenderer(this.tickOptions);aO.setTick(aY,this.name);this._ticks.push(aO);if(aU<this.numberTicks-1){for(var aT=0;aT<this.minorTicks;aT++){aY+=this.tickInterval/(this.minorTicks+1);a2=H.extend(true,{},this.tickOptions,{name:this.name,value:aY,label:"",isMinorTick:true});aO=new this.tickRenderer(a2);this._ticks.push(aO)}}aO=null}}if(this.tickInset){this.min=this.min-this.tickInset*this.tickInterval;this.max=this.max+this.tickInset*this.tickInterval}aN=null};H.jqplot.LinearAxisRenderer.prototype.resetTickValues=function(ad){if(H.isArray(ad)&&ad.length==this._ticks.length){var ac;for(var ab=0;ab<ad.length;ab++){ac=this._ticks[ab];ac.value=ad[ab];ac.label=ac.formatter(ac.formatString,ad[ab]);ac.label=ac.prefix+ac.label;ac._elem.html(ac.label)}ac=null;this.min=H.jqplot.arrayMin(ad);this.max=H.jqplot.arrayMax(ad);this.pack()}};H.jqplot.LinearAxisRenderer.prototype.pack=function(ad,ac){ad=ad||{};ac=ac||this._offsets;var ar=this._ticks;var an=this.max;var am=this.min;var ai=ac.max;var ag=ac.min;var ak=(this._label==null)?false:this._label.show;for(var al in ad){this._elem.css(al,ad[al])}this._offsets=ac;var ae=ai-ag;var af=an-am;if(this.breakPoints){af=af-this.breakPoints[1]+this.breakPoints[0];this.p2u=function(au){return(au-ag)*af/ae+am};this.u2p=function(au){if(au>this.breakPoints[0]&&au<this.breakPoints[1]){au=this.breakPoints[0]}if(au<=this.breakPoints[0]){return(au-am)*ae/af+ag}else{return(au-this.breakPoints[1]+this.breakPoints[0]-am)*ae/af+ag}};if(this.name.charAt(0)=="x"){this.series_u2p=function(au){if(au>this.breakPoints[0]&&au<this.breakPoints[1]){au=this.breakPoints[0]}if(au<=this.breakPoints[0]){return(au-am)*ae/af}else{return(au-this.breakPoints[1]+this.breakPoints[0]-am)*ae/af}};this.series_p2u=function(au){return au*af/ae+am}}else{this.series_u2p=function(au){if(au>this.breakPoints[0]&&au<this.breakPoints[1]){au=this.breakPoints[0]}if(au>=this.breakPoints[1]){return(au-an)*ae/af}else{return(au+this.breakPoints[1]-this.breakPoints[0]-an)*ae/af}};this.series_p2u=function(au){return au*af/ae+an}}}else{this.p2u=function(au){return(au-ag)*af/ae+am};this.u2p=function(au){return(au-am)*ae/af+ag};if(this.name=="xaxis"||this.name=="x2axis"){this.series_u2p=function(au){return(au-am)*ae/af};this.series_p2u=function(au){return au*af/ae+am}}else{this.series_u2p=function(au){return(au-an)*ae/af};this.series_p2u=function(au){return au*af/ae+an}}}if(this.show){if(this.name=="xaxis"||this.name=="x2axis"){for(var ao=0;ao<ar.length;ao++){var aj=ar[ao];if(aj.show&&aj.showLabel){var ab;if(aj.constructor==H.jqplot.CanvasAxisTickRenderer&&aj.angle){var aq=(this.name=="xaxis")?1:-1;switch(aj.labelPosition){case"auto":if(aq*aj.angle<0){ab=-aj.getWidth()+aj._textRenderer.height*Math.sin(-aj._textRenderer.angle)/2}else{ab=-aj._textRenderer.height*Math.sin(aj._textRenderer.angle)/2}break;case"end":ab=-aj.getWidth()+aj._textRenderer.height*Math.sin(-aj._textRenderer.angle)/2;break;case"start":ab=-aj._textRenderer.height*Math.sin(aj._textRenderer.angle)/2;break;case"middle":ab=-aj.getWidth()/2+aj._textRenderer.height*Math.sin(-aj._textRenderer.angle)/2;break;default:ab=-aj.getWidth()/2+aj._textRenderer.height*Math.sin(-aj._textRenderer.angle)/2;break}}else{ab=-aj.getWidth()/2}var at=this.u2p(aj.value)+ab+"px";aj._elem.css("left",at);aj.pack()}}if(ak){var ah=this._label._elem.outerWidth(true);this._label._elem.css("left",ag+ae/2-ah/2+"px");if(this.name=="xaxis"){this._label._elem.css("bottom","0px")}else{this._label._elem.css("top","0px")}this._label.pack()}}else{for(var ao=0;ao<ar.length;ao++){var aj=ar[ao];if(aj.show&&aj.showLabel){var ab;if(aj.constructor==H.jqplot.CanvasAxisTickRenderer&&aj.angle){var aq=(this.name=="yaxis")?1:-1;switch(aj.labelPosition){case"auto":case"end":if(aq*aj.angle<0){ab=-aj._textRenderer.height*Math.cos(-aj._textRenderer.angle)/2}else{ab=-aj.getHeight()+aj._textRenderer.height*Math.cos(aj._textRenderer.angle)/2}break;case"start":if(aj.angle>0){ab=-aj._textRenderer.height*Math.cos(-aj._textRenderer.angle)/2}else{ab=-aj.getHeight()+aj._textRenderer.height*Math.cos(aj._textRenderer.angle)/2}break;case"middle":ab=-aj.getHeight()/2;break;default:ab=-aj.getHeight()/2;break}}else{ab=-aj.getHeight()/2}var at=this.u2p(aj.value)+ab+"px";aj._elem.css("top",at);aj.pack()}}if(ak){var ap=this._label._elem.outerHeight(true);this._label._elem.css("top",ai-ae/2-ap/2+"px");if(this.name=="yaxis"){this._label._elem.css("left","0px")}else{this._label._elem.css("right","0px")}this._label.pack()}}}ar=null};function h(ac){var ab;ac=Math.abs(ac);if(ac>=10){ab="%d"}else{if(ac>1){if(ac===parseInt(ac,10)){ab="%d"}else{ab="%.1f"}}else{var ad=-Math.floor(Math.log(ac)/Math.LN10);ab="%."+ad+"f"}}return ab}var a=[0.1,0.2,0.3,0.4,0.5,0.8,1,2,3,4,5];var b=function(ac){var ab=a.indexOf(ac);if(ab>0){return a[ab-1]}else{return a[a.length-1]/100}};var i=function(ac){var ab=a.indexOf(ac);if(ab<a.length-1){return a[ab+1]}else{return a[0]*100}};function c(af,an,am){var ak=Math.floor(am/2);var ac=Math.ceil(am*1.5);var ae=Number.MAX_VALUE;var ab=(an-af);var aq;var aj;var al;var ar=H.jqplot.getSignificantFigures;var ap;var ah;var ai;var ao;for(var ag=0,ad=ac-ak+1;ag<ad;ag++){ai=ak+ag;aq=ab/(ai-1);aj=ar(aq);aq=Math.abs(am-ai)+aj.digitsRight;if(aq<ae){ae=aq;al=ai;ao=aj.digitsRight}else{if(aq===ae){if(aj.digitsRight<ao){al=ai;ao=aj.digitsRight}}}}ap=Math.max(ao,Math.max(ar(af).digitsRight,ar(an).digitsRight));if(ap===0){ah="%d"}else{ah="%."+ap+"f"}aq=ab/(al-1);return[af,an,al,ah,aq]}function S(ac,af){af=af||7;var ae=ac/(af-1);var ad=Math.pow(10,Math.floor(Math.log(ae)/Math.LN10));var ag=ae/ad;var ab;if(ad<1){if(ag>5){ab=10*ad}else{if(ag>2){ab=5*ad}else{if(ag>1){ab=2*ad}else{ab=ad}}}}else{if(ag>5){ab=10*ad}else{if(ag>4){ab=5*ad}else{if(ag>3){ab=4*ad}else{if(ag>2){ab=3*ad}else{if(ag>1){ab=2*ad}else{ab=ad}}}}}}return ab}function M(ac,ab){ab=ab||1;var ae=Math.floor(Math.log(ac)/Math.LN10);var ag=Math.pow(10,ae);var af=ac/ag;var ad;af=af/ab;if(af<=0.38){ad=0.1}else{if(af<=1.6){ad=0.2}else{if(af<=4){ad=0.5}else{if(af<=8){ad=1}else{if(af<=16){ad=2}else{ad=5}}}}}return ad*ag}function t(ad,ac){var af=Math.floor(Math.log(ad)/Math.LN10);var ah=Math.pow(10,af);var ag=ad/ah;var ab;var ae;ag=ag/ac;if(ag<=0.38){ae=0.1}else{if(ag<=1.6){ae=0.2}else{if(ag<=4){ae=0.5}else{if(ag<=8){ae=1}else{if(ag<=16){ae=2}else{ae=5}}}}}ab=ae*ah;return[ab,ae,ah]}H.jqplot.LinearTickGenerator=function(ah,ak,ad,ae,ai,al){ai=(ai===null)?false:ai;al=(al===null||ai)?false:al;if(ah===ak){ak=(ak)?0:1}ad=ad||1;if(ak<ah){var am=ak;ak=ah;ah=am}var ac=[];var ap=M(ak-ah,ad);var ao=H.jqplot.getSignificantFigures;if(ae==null){if(!ai&&!al){ac[0]=Math.floor(ah/ap)*ap;ac[1]=Math.ceil(ak/ap)*ap;ac[2]=Math.round((ac[1]-ac[0])/ap+1);ac[3]=h(ap);ac[4]=ap}else{if(ai){ac[0]=ah;ac[2]=Math.ceil((ak-ah)/ap+1);ac[1]=ah+(ac[2]-1)*ap;var an=ao(ah).digitsRight;var aj=ao(ap).digitsRight;if(an<aj){ac[3]=h(ap)}else{ac[3]="%."+an+"f"}ac[4]=ap}else{if(al){ac[1]=ak;ac[2]=Math.ceil((ak-ah)/ap+1);ac[0]=ak-(ac[2]-1)*ap;var af=ao(ak).digitsRight;var aj=ao(ap).digitsRight;if(af<aj){ac[3]=h(ap)}else{ac[3]="%."+af+"f"}ac[4]=ap}}}}else{var ag=[];ag[0]=Math.floor(ah/ap)*ap;ag[1]=Math.ceil(ak/ap)*ap;ag[2]=Math.round((ag[1]-ag[0])/ap+1);ag[3]=h(ap);ag[4]=ap;if(ag[2]===ae){ac=ag}else{var ab=S(ag[1]-ag[0],ae);ac[0]=ag[0];ac[2]=ae;ac[4]=ab;ac[3]=h(ab);ac[1]=ac[0]+(ac[2]-1)*ac[4]}}return ac};H.jqplot.LinearTickGenerator.bestLinearInterval=M;H.jqplot.LinearTickGenerator.bestInterval=S;H.jqplot.LinearTickGenerator.bestLinearComponents=t;H.jqplot.LinearTickGenerator.bestConstrainedInterval=c;H.jqplot.MarkerRenderer=function(ab){this.show=true;this.style="filledCircle";this.lineWidth=2;this.size=9;this.color="#666666";this.shadow=true;this.shadowAngle=45;this.shadowOffset=1;this.shadowDepth=3;this.shadowAlpha="0.07";this.shadowRenderer=new H.jqplot.ShadowRenderer();this.shapeRenderer=new H.jqplot.ShapeRenderer();H.extend(true,this,ab)};H.jqplot.MarkerRenderer.prototype.init=function(ab){H.extend(true,this,ab);var ad={angle:this.shadowAngle,offset:this.shadowOffset,alpha:this.shadowAlpha,lineWidth:this.lineWidth,depth:this.shadowDepth,closePath:true};if(this.style.indexOf("filled")!=-1){ad.fill=true}if(this.style.indexOf("ircle")!=-1){ad.isarc=true;ad.closePath=false}this.shadowRenderer.init(ad);var ac={fill:false,isarc:false,strokeStyle:this.color,fillStyle:this.color,lineWidth:this.lineWidth,closePath:true};if(this.style.indexOf("filled")!=-1){ac.fill=true}if(this.style.indexOf("ircle")!=-1){ac.isarc=true;ac.closePath=false}this.shapeRenderer.init(ac)};H.jqplot.MarkerRenderer.prototype.drawDiamond=function(ad,ac,ag,af,ai){var ab=1.2;var aj=this.size/2/ab;var ah=this.size/2*ab;var ae=[[ad-aj,ac],[ad,ac+ah],[ad+aj,ac],[ad,ac-ah]];if(this.shadow){this.shadowRenderer.draw(ag,ae)}this.shapeRenderer.draw(ag,ae,ai)};H.jqplot.MarkerRenderer.prototype.drawPlus=function(ae,ad,ah,ag,ak){var ac=1;var al=this.size/2*ac;var ai=this.size/2*ac;var aj=[[ae,ad-ai],[ae,ad+ai]];var af=[[ae+al,ad],[ae-al,ad]];var ab=H.extend(true,{},this.options,{closePath:false});if(this.shadow){this.shadowRenderer.draw(ah,aj,{closePath:false});this.shadowRenderer.draw(ah,af,{closePath:false})}this.shapeRenderer.draw(ah,aj,ab);this.shapeRenderer.draw(ah,af,ab)};H.jqplot.MarkerRenderer.prototype.drawX=function(ae,ad,ah,ag,ak){var ac=1;var al=this.size/2*ac;var ai=this.size/2*ac;var ab=H.extend(true,{},this.options,{closePath:false});var aj=[[ae-al,ad-ai],[ae+al,ad+ai]];var af=[[ae-al,ad+ai],[ae+al,ad-ai]];if(this.shadow){this.shadowRenderer.draw(ah,aj,{closePath:false});this.shadowRenderer.draw(ah,af,{closePath:false})}this.shapeRenderer.draw(ah,aj,ab);this.shapeRenderer.draw(ah,af,ab)};H.jqplot.MarkerRenderer.prototype.drawDash=function(ad,ac,ag,af,ai){var ab=1;var aj=this.size/2*ab;var ah=this.size/2*ab;var ae=[[ad-aj,ac],[ad+aj,ac]];if(this.shadow){this.shadowRenderer.draw(ag,ae)}this.shapeRenderer.draw(ag,ae,ai)};H.jqplot.MarkerRenderer.prototype.drawLine=function(ag,af,ab,ae,ac){var ad=[ag,af];if(this.shadow){this.shadowRenderer.draw(ab,ad)}this.shapeRenderer.draw(ab,ad,ac)};H.jqplot.MarkerRenderer.prototype.drawSquare=function(ad,ac,ag,af,ai){var ab=1;var aj=this.size/2/ab;var ah=this.size/2*ab;var ae=[[ad-aj,ac-ah],[ad-aj,ac+ah],[ad+aj,ac+ah],[ad+aj,ac-ah]];if(this.shadow){this.shadowRenderer.draw(ag,ae)}this.shapeRenderer.draw(ag,ae,ai)};H.jqplot.MarkerRenderer.prototype.drawCircle=function(ac,ai,ae,ah,af){var ab=this.size/2;var ad=2*Math.PI;var ag=[ac,ai,ab,0,ad,true];if(this.shadow){this.shadowRenderer.draw(ae,ag)}this.shapeRenderer.draw(ae,ag,af)};H.jqplot.MarkerRenderer.prototype.draw=function(ab,ae,ac,ad){ad=ad||{};if(ad.show==null||ad.show!=false){if(ad.color&&!ad.fillStyle){ad.fillStyle=ad.color}if(ad.color&&!ad.strokeStyle){ad.strokeStyle=ad.color}switch(this.style){case"diamond":this.drawDiamond(ab,ae,ac,false,ad);break;case"filledDiamond":this.drawDiamond(ab,ae,ac,true,ad);break;case"circle":this.drawCircle(ab,ae,ac,false,ad);break;case"filledCircle":this.drawCircle(ab,ae,ac,true,ad);break;case"square":this.drawSquare(ab,ae,ac,false,ad);break;case"filledSquare":this.drawSquare(ab,ae,ac,true,ad);break;case"x":this.drawX(ab,ae,ac,true,ad);break;case"plus":this.drawPlus(ab,ae,ac,true,ad);break;case"dash":this.drawDash(ab,ae,ac,true,ad);break;case"line":this.drawLine(ab,ae,ac,false,ad);break;default:this.drawDiamond(ab,ae,ac,false,ad);break}}};H.jqplot.ShadowRenderer=function(ab){this.angle=45;this.offset=1;this.alpha=0.07;this.lineWidth=1.5;this.lineJoin="miter";this.lineCap="round";this.closePath=false;this.fill=false;this.depth=3;this.strokeStyle="rgba(0,0,0,0.1)";this.isarc=false;H.extend(true,this,ab)};H.jqplot.ShadowRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.ShadowRenderer.prototype.draw=function(ao,am,aq){ao.save();var ab=(aq!=null)?aq:{};var an=(ab.fill!=null)?ab.fill:this.fill;var aj=(ab.fillRect!=null)?ab.fillRect:this.fillRect;var ai=(ab.closePath!=null)?ab.closePath:this.closePath;var af=(ab.offset!=null)?ab.offset:this.offset;var ad=(ab.alpha!=null)?ab.alpha:this.alpha;var ah=(ab.depth!=null)?ab.depth:this.depth;var ap=(ab.isarc!=null)?ab.isarc:this.isarc;var ak=(ab.linePattern!=null)?ab.linePattern:this.linePattern;ao.lineWidth=(ab.lineWidth!=null)?ab.lineWidth:this.lineWidth;ao.lineJoin=(ab.lineJoin!=null)?ab.lineJoin:this.lineJoin;ao.lineCap=(ab.lineCap!=null)?ab.lineCap:this.lineCap;ao.strokeStyle=ab.strokeStyle||this.strokeStyle||"rgba(0,0,0,"+ad+")";ao.fillStyle=ab.fillStyle||this.fillStyle||"rgba(0,0,0,"+ad+")";for(var ae=0;ae<ah;ae++){var al=H.jqplot.LinePattern(ao,ak);ao.translate(Math.cos(this.angle*Math.PI/180)*af,Math.sin(this.angle*Math.PI/180)*af);al.beginPath();if(ap){ao.arc(am[0],am[1],am[2],am[3],am[4],true)}else{if(aj){if(aj){ao.fillRect(am[0],am[1],am[2],am[3])}}else{if(am&&am.length){var ac=true;for(var ag=0;ag<am.length;ag++){if(am[ag][0]!=null&&am[ag][1]!=null){if(ac){al.moveTo(am[ag][0],am[ag][1]);ac=false}else{al.lineTo(am[ag][0],am[ag][1])}}else{ac=true}}}}}if(ai){al.closePath()}if(an){ao.fill()}else{ao.stroke()}}ao.restore()};H.jqplot.ShapeRenderer=function(ab){this.lineWidth=1.5;this.linePattern="solid";this.lineJoin="miter";this.lineCap="round";this.closePath=false;this.fill=false;this.isarc=false;this.fillRect=false;this.strokeRect=false;this.clearRect=false;this.strokeStyle="#999999";this.fillStyle="#999999";H.extend(true,this,ab)};H.jqplot.ShapeRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.ShapeRenderer.prototype.draw=function(am,ak,ao){am.save();var ab=(ao!=null)?ao:{};var al=(ab.fill!=null)?ab.fill:this.fill;var ag=(ab.closePath!=null)?ab.closePath:this.closePath;var ah=(ab.fillRect!=null)?ab.fillRect:this.fillRect;var ae=(ab.strokeRect!=null)?ab.strokeRect:this.strokeRect;var ac=(ab.clearRect!=null)?ab.clearRect:this.clearRect;var an=(ab.isarc!=null)?ab.isarc:this.isarc;var ai=(ab.linePattern!=null)?ab.linePattern:this.linePattern;var aj=H.jqplot.LinePattern(am,ai);am.lineWidth=ab.lineWidth||this.lineWidth;am.lineJoin=ab.lineJoin||this.lineJoin;am.lineCap=ab.lineCap||this.lineCap;am.strokeStyle=(ab.strokeStyle||ab.color)||this.strokeStyle;am.fillStyle=ab.fillStyle||this.fillStyle;am.beginPath();if(an){am.arc(ak[0],ak[1],ak[2],ak[3],ak[4],true);if(ag){am.closePath()}if(al){am.fill()}else{am.stroke()}am.restore();return}else{if(ac){am.clearRect(ak[0],ak[1],ak[2],ak[3]);am.restore();return}else{if(ah||ae){if(ah){am.fillRect(ak[0],ak[1],ak[2],ak[3])}if(ae){am.strokeRect(ak[0],ak[1],ak[2],ak[3]);am.restore();return}}else{if(ak&&ak.length){var ad=true;for(var af=0;af<ak.length;af++){if(ak[af][0]!=null&&ak[af][1]!=null){if(ad){aj.moveTo(ak[af][0],ak[af][1]);ad=false}else{aj.lineTo(ak[af][0],ak[af][1])}}else{ad=true}}if(ag){aj.closePath()}if(al){am.fill()}else{am.stroke()}}}}}am.restore()};H.jqplot.TableLegendRenderer=function(){};H.jqplot.TableLegendRenderer.prototype.init=function(ab){H.extend(true,this,ab)};H.jqplot.TableLegendRenderer.prototype.addrow=function(ak,ae,ab,ai){var af=(ab)?this.rowSpacing+"px":"0px";var aj;var ad;var ac;var ah;var ag;ac=document.createElement("tr");aj=H(ac);aj.addClass("jqplot-table-legend");ac=null;if(ai){aj.prependTo(this._elem)}else{aj.appendTo(this._elem)}if(this.showSwatches){ad=H(document.createElement("td"));ad.addClass("jqplot-table-legend jqplot-table-legend-swatch");ad.css({textAlign:"center",paddingTop:af});ah=H(document.createElement("div"));ah.addClass("jqplot-table-legend-swatch-outline");ag=H(document.createElement("div"));ag.addClass("jqplot-table-legend-swatch");ag.css({backgroundColor:ae,borderColor:ae});aj.append(ad.append(ah.append(ag)))}if(this.showLabels){ad=H(document.createElement("td"));ad.addClass("jqplot-table-legend jqplot-table-legend-label");ad.css("paddingTop",af);aj.append(ad);if(this.escapeHtml){ad.text(ak)}else{ad.html(ak)}}ad=null;ah=null;ag=null;aj=null;ac=null};H.jqplot.TableLegendRenderer.prototype.draw=function(){if(this._elem){this._elem.emptyForce();this._elem=null}if(this.show){var ag=this._series;var ac=document.createElement("table");this._elem=H(ac);this._elem.addClass("jqplot-table-legend");var al={position:"absolute"};if(this.background){al.background=this.background}if(this.border){al.border=this.border}if(this.fontSize){al.fontSize=this.fontSize}if(this.fontFamily){al.fontFamily=this.fontFamily}if(this.textColor){al.textColor=this.textColor}if(this.marginTop!=null){al.marginTop=this.marginTop}if(this.marginBottom!=null){al.marginBottom=this.marginBottom}if(this.marginLeft!=null){al.marginLeft=this.marginLeft}if(this.marginRight!=null){al.marginRight=this.marginRight}var ab=false,ai=false,ak;for(var ah=0;ah<ag.length;ah++){ak=ag[ah];if(ak._stack||ak.renderer.constructor==H.jqplot.BezierCurveRenderer){ai=true}if(ak.show&&ak.showLabel){var af=this.labels[ah]||ak.label.toString();if(af){var ad=ak.color;if(ai&&ah<ag.length-1){ab=true}else{if(ai&&ah==ag.length-1){ab=false}}this.renderer.addrow.call(this,af,ad,ab,ai);ab=true}for(var ae=0;ae<H.jqplot.addLegendRowHooks.length;ae++){var aj=H.jqplot.addLegendRowHooks[ae].call(this,ak);if(aj){this.renderer.addrow.call(this,aj.label,aj.color,ab);ab=true}}af=null}}}return this._elem};H.jqplot.TableLegendRenderer.prototype.pack=function(ad){if(this.show){if(this.placement=="insideGrid"){switch(this.location){case"nw":var ac=ad.left;var ab=ad.top;this._elem.css("left",ac);this._elem.css("top",ab);break;case"n":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;var ab=ad.top;this._elem.css("left",ac);this._elem.css("top",ab);break;case"ne":var ac=ad.right;var ab=ad.top;this._elem.css({right:ac,top:ab});break;case"e":var ac=ad.right;var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({right:ac,top:ab});break;case"se":var ac=ad.right;var ab=ad.bottom;this._elem.css({right:ac,bottom:ab});break;case"s":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;var ab=ad.bottom;this._elem.css({left:ac,bottom:ab});break;case"sw":var ac=ad.left;var ab=ad.bottom;this._elem.css({left:ac,bottom:ab});break;case"w":var ac=ad.left;var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({left:ac,top:ab});break;default:var ac=ad.right;var ab=ad.bottom;this._elem.css({right:ac,bottom:ab});break}}else{if(this.placement=="outside"){switch(this.location){case"nw":var ac=this._plotDimensions.width-ad.left;var ab=ad.top;this._elem.css("right",ac);this._elem.css("top",ab);break;case"n":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;var ab=this._plotDimensions.height-ad.top;this._elem.css("left",ac);this._elem.css("bottom",ab);break;case"ne":var ac=this._plotDimensions.width-ad.right;var ab=ad.top;this._elem.css({left:ac,top:ab});break;case"e":var ac=this._plotDimensions.width-ad.right;var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({left:ac,top:ab});break;case"se":var ac=this._plotDimensions.width-ad.right;var ab=ad.bottom;this._elem.css({left:ac,bottom:ab});break;case"s":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;var ab=this._plotDimensions.height-ad.bottom;this._elem.css({left:ac,top:ab});break;case"sw":var ac=this._plotDimensions.width-ad.left;var ab=ad.bottom;this._elem.css({right:ac,bottom:ab});break;case"w":var ac=this._plotDimensions.width-ad.left;var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({right:ac,top:ab});break;default:var ac=ad.right;var ab=ad.bottom;this._elem.css({right:ac,bottom:ab});break}}else{switch(this.location){case"nw":this._elem.css({left:0,top:ad.top});break;case"n":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;this._elem.css({left:ac,top:ad.top});break;case"ne":this._elem.css({right:0,top:ad.top});break;case"e":var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({right:ad.right,top:ab});break;case"se":this._elem.css({right:ad.right,bottom:ad.bottom});break;case"s":var ac=(ad.left+(this._plotDimensions.width-ad.right))/2-this.getWidth()/2;this._elem.css({left:ac,bottom:ad.bottom});break;case"sw":this._elem.css({left:ad.left,bottom:ad.bottom});break;case"w":var ab=(ad.top+(this._plotDimensions.height-ad.bottom))/2-this.getHeight()/2;this._elem.css({left:ad.left,top:ab});break;default:this._elem.css({right:ad.right,bottom:ad.bottom});break}}}}};H.jqplot.ThemeEngine=function(){this.themes={};this.activeTheme=null};H.jqplot.ThemeEngine.prototype.init=function(){var ae=new H.jqplot.Theme({_name:"Default"});var ah,ac,ag;for(ah in ae.target){if(ah=="textColor"){ae.target[ah]=this.target.css("color")}else{ae.target[ah]=this.target.css(ah)}}if(this.title.show&&this.title._elem){for(ah in ae.title){if(ah=="textColor"){ae.title[ah]=this.title._elem.css("color")}else{ae.title[ah]=this.title._elem.css(ah)}}}for(ah in ae.grid){ae.grid[ah]=this.grid[ah]}if(ae.grid.backgroundColor==null&&this.grid.background!=null){ae.grid.backgroundColor=this.grid.background}if(this.legend.show&&this.legend._elem){for(ah in ae.legend){if(ah=="textColor"){ae.legend[ah]=this.legend._elem.css("color")}else{ae.legend[ah]=this.legend._elem.css(ah)}}}var ad;for(ac=0;ac<this.series.length;ac++){ad=this.series[ac];if(ad.renderer.constructor==H.jqplot.LineRenderer){ae.series.push(new m())}else{if(ad.renderer.constructor==H.jqplot.BarRenderer){ae.series.push(new P())}else{if(ad.renderer.constructor==H.jqplot.PieRenderer){ae.series.push(new e())}else{if(ad.renderer.constructor==H.jqplot.DonutRenderer){ae.series.push(new C())}else{if(ad.renderer.constructor==H.jqplot.FunnelRenderer){ae.series.push(new U())}else{if(ad.renderer.constructor==H.jqplot.MeterGaugeRenderer){ae.series.push(new z())}else{ae.series.push({})}}}}}}for(ah in ae.series[ac]){ae.series[ac][ah]=ad[ah]}}var ab,af;for(ah in this.axes){af=this.axes[ah];ab=ae.axes[ah]=new L();ab.borderColor=af.borderColor;ab.borderWidth=af.borderWidth;if(af._ticks&&af._ticks[0]){for(ag in ab.ticks){if(af._ticks[0].hasOwnProperty(ag)){ab.ticks[ag]=af._ticks[0][ag]}else{if(af._ticks[0]._elem){ab.ticks[ag]=af._ticks[0]._elem.css(ag)}}}}if(af._label&&af._label.show){for(ag in ab.label){if(af._label[ag]){ab.label[ag]=af._label[ag]}else{if(af._label._elem){if(ag=="textColor"){ab.label[ag]=af._label._elem.css("color")}else{ab.label[ag]=af._label._elem.css(ag)}}}}}}this.themeEngine._add(ae);this.themeEngine.activeTheme=this.themeEngine.themes[ae._name]};H.jqplot.ThemeEngine.prototype.get=function(ab){if(!ab){return this.activeTheme}else{return this.themes[ab]}};function K(ac,ab){return ac-ab}H.jqplot.ThemeEngine.prototype.getThemeNames=function(){var ab=[];for(var ac in this.themes){ab.push(ac)}return ab.sort(K)};H.jqplot.ThemeEngine.prototype.getThemes=function(){var ac=[];var ab=[];for(var ae in this.themes){ac.push(ae)}ac.sort(K);for(var ad=0;ad<ac.length;ad++){ab.push(this.themes[ac[ad]])}return ab};H.jqplot.ThemeEngine.prototype.activate=function(ao,au){var ab=false;if(!au&&this.activeTheme&&this.activeTheme._name){au=this.activeTheme._name}if(!this.themes.hasOwnProperty(au)){throw new Error("No theme of that name")}else{var ag=this.themes[au];this.activeTheme=ag;var at,am=false,al=false;var ac=["xaxis","x2axis","yaxis","y2axis"];for(ap=0;ap<ac.length;ap++){var ah=ac[ap];if(ag.axesStyles.borderColor!=null){ao.axes[ah].borderColor=ag.axesStyles.borderColor}if(ag.axesStyles.borderWidth!=null){ao.axes[ah].borderWidth=ag.axesStyles.borderWidth}}for(var ar in ao.axes){var ae=ao.axes[ar];if(ae.show){var ak=ag.axes[ar]||{};var ai=ag.axesStyles;var af=H.jqplot.extend(true,{},ak,ai);at=(ag.axesStyles.borderColor!=null)?ag.axesStyles.borderColor:af.borderColor;if(af.borderColor!=null){ae.borderColor=af.borderColor;ab=true}at=(ag.axesStyles.borderWidth!=null)?ag.axesStyles.borderWidth:af.borderWidth;if(af.borderWidth!=null){ae.borderWidth=af.borderWidth;ab=true}if(ae._ticks&&ae._ticks[0]){for(var ad in af.ticks){at=af.ticks[ad];if(at!=null){ae.tickOptions[ad]=at;ae._ticks=[];ab=true}}}if(ae._label&&ae._label.show){for(var ad in af.label){at=af.label[ad];if(at!=null){ae.labelOptions[ad]=at;ab=true}}}}}for(var an in ag.grid){if(ag.grid[an]!=null){ao.grid[an]=ag.grid[an]}}if(!ab){ao.grid.draw()}if(ao.legend.show){for(an in ag.legend){if(ag.legend[an]!=null){ao.legend[an]=ag.legend[an]}}}if(ao.title.show){for(an in ag.title){if(ag.title[an]!=null){ao.title[an]=ag.title[an]}}}var ap;for(ap=0;ap<ag.series.length;ap++){var aj={};var aq=false;for(an in ag.series[ap]){at=(ag.seriesStyles[an]!=null)?ag.seriesStyles[an]:ag.series[ap][an];if(at!=null){aj[an]=at;if(an=="color"){ao.series[ap].renderer.shapeRenderer.fillStyle=at;ao.series[ap].renderer.shapeRenderer.strokeStyle=at;ao.series[ap][an]=at}else{if((an=="lineWidth")||(an=="linePattern")){ao.series[ap].renderer.shapeRenderer[an]=at;ao.series[ap][an]=at}else{if(an=="markerOptions"){R(ao.series[ap].markerOptions,at);R(ao.series[ap].markerRenderer,at)}else{ao.series[ap][an]=at}}}ab=true}}}if(ab){ao.target.empty();ao.draw()}for(an in ag.target){if(ag.target[an]!=null){ao.target.css(an,ag.target[an])}}}};H.jqplot.ThemeEngine.prototype._add=function(ac,ab){if(ab){ac._name=ab}if(!ac._name){ac._name=Date.parse(new Date())}if(!this.themes.hasOwnProperty(ac._name)){this.themes[ac._name]=ac}else{throw new Error("jqplot.ThemeEngine Error: Theme already in use")}};H.jqplot.ThemeEngine.prototype.remove=function(ab){if(ab=="Default"){return false}return delete this.themes[ab]};H.jqplot.ThemeEngine.prototype.newTheme=function(ab,ad){if(typeof(ab)=="object"){ad=ad||ab;ab=null}if(ad&&ad._name){ab=ad._name}else{ab=ab||Date.parse(new Date())}var ac=this.copy(this.themes.Default._name,ab);H.jqplot.extend(ac,ad);return ac};function x(ad){if(ad==null||typeof(ad)!="object"){return ad}var ab=new ad.constructor();for(var ac in ad){ab[ac]=x(ad[ac])}return ab}H.jqplot.clone=x;function R(ad,ac){if(ac==null||typeof(ac)!="object"){return}for(var ab in ac){if(ab=="highlightColors"){ad[ab]=x(ac[ab])}if(ac[ab]!=null&&typeof(ac[ab])=="object"){if(!ad.hasOwnProperty(ab)){ad[ab]={}}R(ad[ab],ac[ab])}else{ad[ab]=ac[ab]}}}H.jqplot.merge=R;H.jqplot.extend=function(){var ag=arguments[0]||{},ae=1,af=arguments.length,ab=false,ad;if(typeof ag==="boolean"){ab=ag;ag=arguments[1]||{};ae=2}if(typeof ag!=="object"&&!toString.call(ag)==="[object Function]"){ag={}}for(;ae<af;ae++){if((ad=arguments[ae])!=null){for(var ac in ad){var ah=ag[ac],ai=ad[ac];if(ag===ai){continue}if(ab&&ai&&typeof ai==="object"&&!ai.nodeType){ag[ac]=H.jqplot.extend(ab,ah||(ai.length!=null?[]:{}),ai)}else{if(ai!==r){ag[ac]=ai}}}}}return ag};H.jqplot.ThemeEngine.prototype.rename=function(ac,ab){if(ac=="Default"||ab=="Default"){throw new Error("jqplot.ThemeEngine Error: Cannot rename from/to Default")}if(this.themes.hasOwnProperty(ab)){throw new Error("jqplot.ThemeEngine Error: New name already in use.")}else{if(this.themes.hasOwnProperty(ac)){var ad=this.copy(ac,ab);this.remove(ac);return ad}}throw new Error("jqplot.ThemeEngine Error: Old name or new name invalid")};H.jqplot.ThemeEngine.prototype.copy=function(ab,ad,af){if(ad=="Default"){throw new Error("jqplot.ThemeEngine Error: Cannot copy over Default theme")}if(!this.themes.hasOwnProperty(ab)){var ac="jqplot.ThemeEngine Error: Source name invalid";throw new Error(ac)}if(this.themes.hasOwnProperty(ad)){var ac="jqplot.ThemeEngine Error: Target name invalid";throw new Error(ac)}else{var ae=x(this.themes[ab]);ae._name=ad;H.jqplot.extend(true,ae,af);this._add(ae);return ae}};H.jqplot.Theme=function(ab,ac){if(typeof(ab)=="object"){ac=ac||ab;ab=null}ab=ab||Date.parse(new Date());this._name=ab;this.target={backgroundColor:null};this.legend={textColor:null,fontFamily:null,fontSize:null,border:null,background:null};this.title={textColor:null,fontFamily:null,fontSize:null,textAlign:null};this.seriesStyles={};this.series=[];this.grid={drawGridlines:null,gridLineColor:null,gridLineWidth:null,backgroundColor:null,borderColor:null,borderWidth:null,shadow:null};this.axesStyles={label:{},ticks:{}};this.axes={};if(typeof(ac)=="string"){this._name=ac}else{if(typeof(ac)=="object"){H.jqplot.extend(true,this,ac)}}};var L=function(){this.borderColor=null;this.borderWidth=null;this.ticks=new l();this.label=new q()};var l=function(){this.show=null;this.showGridline=null;this.showLabel=null;this.showMark=null;this.size=null;this.textColor=null;this.whiteSpace=null;this.fontSize=null;this.fontFamily=null};var q=function(){this.textColor=null;this.whiteSpace=null;this.fontSize=null;this.fontFamily=null;this.fontWeight=null};var m=function(){this.color=null;this.lineWidth=null;this.linePattern=null;this.shadow=null;this.fillColor=null;this.showMarker=null;this.markerOptions=new E()};var E=function(){this.show=null;this.style=null;this.lineWidth=null;this.size=null;this.color=null;this.shadow=null};var P=function(){this.color=null;this.seriesColors=null;this.lineWidth=null;this.shadow=null;this.barPadding=null;this.barMargin=null;this.barWidth=null;this.highlightColors=null};var e=function(){this.seriesColors=null;this.padding=null;this.sliceMargin=null;this.fill=null;this.shadow=null;this.startAngle=null;this.lineWidth=null;this.highlightColors=null};var C=function(){this.seriesColors=null;this.padding=null;this.sliceMargin=null;this.fill=null;this.shadow=null;this.startAngle=null;this.lineWidth=null;this.innerDiameter=null;this.thickness=null;this.ringMargin=null;this.highlightColors=null};var U=function(){this.color=null;this.lineWidth=null;this.shadow=null;this.padding=null;this.sectionMargin=null;this.seriesColors=null;this.highlightColors=null};var z=function(){this.padding=null;this.backgroundColor=null;this.ringColor=null;this.tickColor=null;this.ringWidth=null;this.intervalColors=null;this.intervalInnerRadius=null;this.intervalOuterRadius=null;this.hubRadius=null;this.needleThickness=null;this.needlePad=null};H.fn.jqplotChildText=function(){return H(this).contents().filter(function(){return this.nodeType==3}).text()};H.fn.jqplotGetComputedFontStyle=function(){var ae=window.getComputedStyle?window.getComputedStyle(this[0],""):this[0].currentStyle;var ac=ae["font-style"]?["font-style","font-weight","font-size","font-family"]:["fontStyle","fontWeight","fontSize","fontFamily"];var af=[];for(var ad=0;ad<ac.length;++ad){var ab=String(ae[ac[ad]]);if(ab&&ab!="normal"){af.push(ab)}}return af.join(" ")};H.fn.jqplotToImageCanvas=function(ad){ad=ad||{};var ao=(ad.x_offset==null)?0:ad.x_offset;var aq=(ad.y_offset==null)?0:ad.y_offset;var af=(ad.backgroundColor==null)?"rgb(255,255,255)":ad.backgroundColor;if(H(this).width()==0||H(this).height()==0){return null}if(H.jqplot.use_excanvas){return null}var ah=document.createElement("canvas");var au=H(this).outerHeight(true);var am=H(this).outerWidth(true);var ag=H(this).offset();var ai=ag.left;var ak=ag.top;var an=0,al=0;var ar=["jqplot-table-legend","jqplot-xaxis-tick","jqplot-x2axis-tick","jqplot-yaxis-tick","jqplot-y2axis-tick","jqplot-y3axis-tick","jqplot-y4axis-tick","jqplot-y5axis-tick","jqplot-y6axis-tick","jqplot-y7axis-tick","jqplot-y8axis-tick","jqplot-y9axis-tick","jqplot-xaxis-label","jqplot-x2axis-label","jqplot-yaxis-label","jqplot-y2axis-label","jqplot-y3axis-label","jqplot-y4axis-label","jqplot-y5axis-label","jqplot-y6axis-label","jqplot-y7axis-label","jqplot-y8axis-label","jqplot-y9axis-label"];var aj,ab,ac,av;for(var at=0;at<ar.length;at++){H(this).find("."+ar[at]).each(function(){aj=H(this).offset().top-ak;ab=H(this).offset().left-ai;av=ab+H(this).outerWidth(true)+an;ac=aj+H(this).outerHeight(true)+al;if(ab<-an){am=am-an-ab;an=-ab}if(aj<-al){au=au-al-aj;al=-aj}if(av>am){am=av}if(ac>au){au=ac}})}ah.width=am+Number(ao);ah.height=au+Number(aq);var ae=ah.getContext("2d");ae.save();ae.fillStyle=af;ae.fillRect(0,0,ah.width,ah.height);ae.restore();ae.translate(an,al);ae.textAlign="left";ae.textBaseline="top";function aw(ay){var az=parseInt(H(ay).css("line-height"),10);if(isNaN(az)){az=parseInt(H(ay).css("font-size"),10)*1.2}return az}function ax(az,ay,aM,aA,aI,aB){var aK=aw(az);var aE=H(az).innerWidth();var aF=H(az).innerHeight();var aH=aM.split(/\s+/);var aL=aH.length;var aJ="";var aG=[];var aO=aI;var aN=aA;for(var aD=0;aD<aL;aD++){aJ+=aH[aD];if(ay.measureText(aJ).width>aE){aG.push(aD);aJ="";aD--}}if(aG.length===0){if(H(az).css("textAlign")==="center"){aN=aA+(aB-ay.measureText(aJ).width)/2-an}ay.fillText(aM,aN,aI)}else{aJ=aH.slice(0,aG[0]).join(" ");if(H(az).css("textAlign")==="center"){aN=aA+(aB-ay.measureText(aJ).width)/2-an}ay.fillText(aJ,aN,aO);aO+=aK;for(var aD=1,aC=aG.length;aD<aC;aD++){aJ=aH.slice(aG[aD-1],aG[aD]).join(" ");if(H(az).css("textAlign")==="center"){aN=aA+(aB-ay.measureText(aJ).width)/2-an}ay.fillText(aJ,aN,aO);aO+=aK}aJ=aH.slice(aG[aD-1],aH.length).join(" ");if(H(az).css("textAlign")==="center"){aN=aA+(aB-ay.measureText(aJ).width)/2-an}ay.fillText(aJ,aN,aO)}}function ap(aA,aD,ay){var aH=aA.tagName.toLowerCase();var az=H(aA).position();var aE=window.getComputedStyle?window.getComputedStyle(aA,""):aA.currentStyle;var aC=aD+az.left+parseInt(aE.marginLeft,10)+parseInt(aE.borderLeftWidth,10)+parseInt(aE.paddingLeft,10);var aF=ay+az.top+parseInt(aE.marginTop,10)+parseInt(aE.borderTopWidth,10)+parseInt(aE.paddingTop,10);var aG=ah.width;if((aH=="div"||aH=="span")&&!H(aA).hasClass("jqplot-highlighter-tooltip")){H(aA).children().each(function(){ap(this,aC,aF)});var aI=H(aA).jqplotChildText();if(aI){ae.font=H(aA).jqplotGetComputedFontStyle();ae.fillStyle=H(aA).css("color");ax(aA,ae,aI,aC,aF,aG)}}else{if(aH==="table"&&H(aA).hasClass("jqplot-table-legend")){ae.strokeStyle=H(aA).css("border-top-color");ae.fillStyle=H(aA).css("background-color");ae.fillRect(aC,aF,H(aA).innerWidth(),H(aA).innerHeight());if(parseInt(H(aA).css("border-top-width"),10)>0){ae.strokeRect(aC,aF,H(aA).innerWidth(),H(aA).innerHeight())}H(aA).find("div.jqplot-table-legend-swatch-outline").each(function(){var aO=H(this);ae.strokeStyle=aO.css("border-top-color");var aK=aC+aO.position().left;var aL=aF+aO.position().top;ae.strokeRect(aK,aL,aO.innerWidth(),aO.innerHeight());aK+=parseInt(aO.css("padding-left"),10);aL+=parseInt(aO.css("padding-top"),10);var aN=aO.innerHeight()-2*parseInt(aO.css("padding-top"),10);var aJ=aO.innerWidth()-2*parseInt(aO.css("padding-left"),10);var aM=aO.children("div.jqplot-table-legend-swatch");ae.fillStyle=aM.css("background-color");ae.fillRect(aK,aL,aJ,aN)});H(aA).find("td.jqplot-table-legend-label").each(function(){var aL=H(this);var aJ=aC+aL.position().left;var aK=aF+aL.position().top+parseInt(aL.css("padding-top"),10);ae.font=aL.jqplotGetComputedFontStyle();ae.fillStyle=aL.css("color");ax(aL,ae,aL.text(),aJ,aK,aG)});var aB=null}else{if(aH=="canvas"){ae.drawImage(aA,aC,aF)}}}}H(this).children().each(function(){ap(this,ao,aq)});return ah};H.fn.jqplotToImageStr=function(ac){var ab=H(this).jqplotToImageCanvas(ac);if(ab){return ab.toDataURL("image/png")}else{return null}};H.fn.jqplotToImageElem=function(ab){var ac=document.createElement("img");var ad=H(this).jqplotToImageStr(ab);ac.src=ad;return ac};H.fn.jqplotToImageElemStr=function(ab){var ac="<img src="+H(this).jqplotToImageStr(ab)+" />";return ac};H.fn.jqplotSaveImage=function(){var ab=H(this).jqplotToImageStr({});if(ab){window.location.href=ab.replace("image/png","image/octet-stream")}};H.fn.jqplotViewImage=function(){var ac=H(this).jqplotToImageElemStr({});var ad=H(this).jqplotToImageStr({});if(ac){var ab=window.open("");ab.document.open("image/png");ab.document.write(ac);ab.document.close();ab=null}};var aa=function(){this.syntax=aa.config.syntax;this._type="jsDate";this.proxy=new Date();this.options={};this.locale=aa.regional.getLocale();this.formatString="";this.defaultCentury=aa.config.defaultCentury;switch(arguments.length){case 0:break;case 1:if(j(arguments[0])=="[object Object]"&&arguments[0]._type!="jsDate"){var ad=this.options=arguments[0];this.syntax=ad.syntax||this.syntax;this.defaultCentury=ad.defaultCentury||this.defaultCentury;this.proxy=aa.createDate(ad.date)}else{this.proxy=aa.createDate(arguments[0])}break;default:var ab=[];for(var ac=0;ac<arguments.length;ac++){ab.push(arguments[ac])}this.proxy=new Date();this.proxy.setFullYear.apply(this.proxy,ab.slice(0,3));if(ab.slice(3).length){this.proxy.setHours.apply(this.proxy,ab.slice(3))}break}};aa.config={defaultLocale:"en",syntax:"perl",defaultCentury:1900};aa.prototype.add=function(ad,ac){var ab=A[ac]||A.day;if(typeof ab=="number"){this.proxy.setTime(this.proxy.getTime()+(ab*ad))}else{ab.add(this,ad)}return this};aa.prototype.clone=function(){return new aa(this.proxy.getTime())};aa.prototype.getUtcOffset=function(){return this.proxy.getTimezoneOffset()*60000};aa.prototype.diff=function(ac,af,ab){ac=new aa(ac);if(ac===null){return null}var ad=A[af]||A.day;if(typeof ad=="number"){var ae=(this.proxy.getTime()-ac.proxy.getTime())/ad}else{var ae=ad.diff(this.proxy,ac.proxy)}return(ab?ae:Math[ae>0?"floor":"ceil"](ae))};aa.prototype.getAbbrDayName=function(){return aa.regional[this.locale]["dayNamesShort"][this.proxy.getDay()]};aa.prototype.getAbbrMonthName=function(){return aa.regional[this.locale]["monthNamesShort"][this.proxy.getMonth()]};aa.prototype.getAMPM=function(){return this.proxy.getHours()>=12?"PM":"AM"};aa.prototype.getAmPm=function(){return this.proxy.getHours()>=12?"pm":"am"};aa.prototype.getCentury=function(){return parseInt(this.proxy.getFullYear()/100,10)};aa.prototype.getDate=function(){return this.proxy.getDate()};aa.prototype.getDay=function(){return this.proxy.getDay()};aa.prototype.getDayOfWeek=function(){var ab=this.proxy.getDay();return ab===0?7:ab};aa.prototype.getDayOfYear=function(){var ac=this.proxy;var ab=ac-new Date(""+ac.getFullYear()+"/1/1 GMT");ab+=ac.getTimezoneOffset()*60000;ac=null;return parseInt(ab/60000/60/24,10)+1};aa.prototype.getDayName=function(){return aa.regional[this.locale]["dayNames"][this.proxy.getDay()]};aa.prototype.getFullWeekOfYear=function(){var ae=this.proxy;var ab=this.getDayOfYear();var ad=6-ae.getDay();var ac=parseInt((ab+ad)/7,10);return ac};aa.prototype.getFullYear=function(){return this.proxy.getFullYear()};aa.prototype.getGmtOffset=function(){var ab=this.proxy.getTimezoneOffset()/60;var ac=ab<0?"+":"-";ab=Math.abs(ab);return ac+J(Math.floor(ab),2)+":"+J((ab%1)*60,2)};aa.prototype.getHours=function(){return this.proxy.getHours()};aa.prototype.getHours12=function(){var ab=this.proxy.getHours();return ab>12?ab-12:(ab==0?12:ab)};aa.prototype.getIsoWeek=function(){var ae=this.proxy;var ad=ae.getWeekOfYear();var ab=(new Date(""+ae.getFullYear()+"/1/1")).getDay();var ac=ad+(ab>4||ab<=1?0:1);if(ac==53&&(new Date(""+ae.getFullYear()+"/12/31")).getDay()<4){ac=1}else{if(ac===0){ae=new aa(new Date(""+(ae.getFullYear()-1)+"/12/31"));ac=ae.getIsoWeek()}}ae=null;return ac};aa.prototype.getMilliseconds=function(){return this.proxy.getMilliseconds()};aa.prototype.getMinutes=function(){return this.proxy.getMinutes()};aa.prototype.getMonth=function(){return this.proxy.getMonth()};aa.prototype.getMonthName=function(){return aa.regional[this.locale]["monthNames"][this.proxy.getMonth()]};aa.prototype.getMonthNumber=function(){return this.proxy.getMonth()+1};aa.prototype.getSeconds=function(){return this.proxy.getSeconds()};aa.prototype.getShortYear=function(){return this.proxy.getYear()%100};aa.prototype.getTime=function(){return this.proxy.getTime()};aa.prototype.getTimezoneAbbr=function(){return this.proxy.toString().replace(/^.*\(([^)]+)\)$/,"$1")};aa.prototype.getTimezoneName=function(){var ab=/(?:\((.+)\)$| ([A-Z]{3}) )/.exec(this.toString());return ab[1]||ab[2]||"GMT"+this.getGmtOffset()};aa.prototype.getTimezoneOffset=function(){return this.proxy.getTimezoneOffset()};aa.prototype.getWeekOfYear=function(){var ab=this.getDayOfYear();var ad=7-this.getDayOfWeek();var ac=parseInt((ab+ad)/7,10);return ac};aa.prototype.getUnix=function(){return Math.round(this.proxy.getTime()/1000,0)};aa.prototype.getYear=function(){return this.proxy.getYear()};aa.prototype.next=function(ab){ab=ab||"day";return this.clone().add(1,ab)};aa.prototype.set=function(){switch(arguments.length){case 0:this.proxy=new Date();break;case 1:if(j(arguments[0])=="[object Object]"&&arguments[0]._type!="jsDate"){var ad=this.options=arguments[0];this.syntax=ad.syntax||this.syntax;this.defaultCentury=ad.defaultCentury||this.defaultCentury;this.proxy=aa.createDate(ad.date)}else{this.proxy=aa.createDate(arguments[0])}break;default:var ab=[];for(var ac=0;ac<arguments.length;ac++){ab.push(arguments[ac])}this.proxy=new Date();this.proxy.setFullYear.apply(this.proxy,ab.slice(0,3));if(ab.slice(3).length){this.proxy.setHours.apply(this.proxy,ab.slice(3))}break}return this};aa.prototype.setDate=function(ab){this.proxy.setDate(ab);return this};aa.prototype.setFullYear=function(){this.proxy.setFullYear.apply(this.proxy,arguments);return this};aa.prototype.setHours=function(){this.proxy.setHours.apply(this.proxy,arguments);return this};aa.prototype.setMilliseconds=function(ab){this.proxy.setMilliseconds(ab);return this};aa.prototype.setMinutes=function(){this.proxy.setMinutes.apply(this.proxy,arguments);return this};aa.prototype.setMonth=function(){this.proxy.setMonth.apply(this.proxy,arguments);return this};aa.prototype.setSeconds=function(){this.proxy.setSeconds.apply(this.proxy,arguments);return this};aa.prototype.setTime=function(ab){this.proxy.setTime(ab);return this};aa.prototype.setYear=function(){this.proxy.setYear.apply(this.proxy,arguments);return this};aa.prototype.strftime=function(ab){ab=ab||this.formatString||aa.regional[this.locale]["formatString"];return aa.strftime(this,ab,this.syntax)};aa.prototype.toString=function(){return this.proxy.toString()};aa.prototype.toYmdInt=function(){return(this.proxy.getFullYear()*10000)+(this.getMonthNumber()*100)+this.proxy.getDate()};aa.regional={en:{monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],formatString:"%Y-%m-%d %H:%M:%S"},fr:{monthNames:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],monthNamesShort:["Jan","Fév","Mar","Avr","Mai","Jun","Jul","Aoû","Sep","Oct","Nov","Déc"],dayNames:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],dayNamesShort:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"],formatString:"%Y-%m-%d %H:%M:%S"},de:{monthNames:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthNamesShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],dayNames:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],dayNamesShort:["So","Mo","Di","Mi","Do","Fr","Sa"],formatString:"%Y-%m-%d %H:%M:%S"},es:{monthNames:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthNamesShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],dayNames:["Domingo","Lunes","Martes","Mi&eacute;rcoles","Jueves","Viernes","S&aacute;bado"],dayNamesShort:["Dom","Lun","Mar","Mi&eacute;","Juv","Vie","S&aacute;b"],formatString:"%Y-%m-%d %H:%M:%S"},ru:{monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],dayNamesShort:["вск","пнд","втр","срд","чтв","птн","сбт"],formatString:"%Y-%m-%d %H:%M:%S"},ar:{monthNames:["كانون الثاني","شباط","آذار","نيسان","آذار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول"],monthNamesShort:["1","2","3","4","5","6","7","8","9","10","11","12"],dayNames:["السبت","الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة"],dayNamesShort:["سبت","أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة"],formatString:"%Y-%m-%d %H:%M:%S"},pt:{monthNames:["Janeiro","Fevereiro","Mar&ccedil;o","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Ter&ccedil;a-feira","Quarta-feira","Quinta-feira","Sexta-feira","S&aacute;bado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","S&aacute;b"],formatString:"%Y-%m-%d %H:%M:%S"},"pt-BR":{monthNames:["Janeiro","Fevereiro","Mar&ccedil;o","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthNamesShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],dayNames:["Domingo","Segunda-feira","Ter&ccedil;a-feira","Quarta-feira","Quinta-feira","Sexta-feira","S&aacute;bado"],dayNamesShort:["Dom","Seg","Ter","Qua","Qui","Sex","S&aacute;b"],formatString:"%Y-%m-%d %H:%M:%S"}};aa.regional["en-US"]=aa.regional["en-GB"]=aa.regional.en;aa.regional.getLocale=function(){var ab=aa.config.defaultLocale;if(document&&document.getElementsByTagName("html")&&document.getElementsByTagName("html")[0].lang){ab=document.getElementsByTagName("html")[0].lang;if(!aa.regional.hasOwnProperty(ab)){ab=aa.config.defaultLocale}}return ab};var y=24*60*60*1000;var J=function(ab,ae){ab=String(ab);var ac=ae-ab.length;var ad=String(Math.pow(10,ac)).slice(1);return ad.concat(ab)};var A={millisecond:1,second:1000,minute:60*1000,hour:60*60*1000,day:y,week:7*y,month:{add:function(ad,ab){A.year.add(ad,Math[ab>0?"floor":"ceil"](ab/12));var ac=ad.getMonth()+(ab%12);if(ac==12){ac=0;ad.setYear(ad.getFullYear()+1)}else{if(ac==-1){ac=11;ad.setYear(ad.getFullYear()-1)}}ad.setMonth(ac)},diff:function(af,ad){var ab=af.getFullYear()-ad.getFullYear();var ac=af.getMonth()-ad.getMonth()+(ab*12);var ae=af.getDate()-ad.getDate();return ac+(ae/30)}},year:{add:function(ac,ab){ac.setYear(ac.getFullYear()+Math[ab>0?"floor":"ceil"](ab))},diff:function(ac,ab){return A.month.diff(ac,ab)/12}}};for(var T in A){if(T.substring(T.length-1)!="s"){A[T+"s"]=A[T]}}var D=function(af,ae,ac){if(aa.formats[ac]["shortcuts"][ae]){return aa.strftime(af,aa.formats[ac]["shortcuts"][ae],ac)}else{var ab=(aa.formats[ac]["codes"][ae]||"").split(".");var ad=af["get"+ab[0]]?af["get"+ab[0]]():"";if(ab[1]){ad=J(ad,ab[1])}return ad}};aa.strftime=function(ah,ae,ad,ai){var ac="perl";var ag=aa.regional.getLocale();if(ad&&aa.formats.hasOwnProperty(ad)){ac=ad}else{if(ad&&aa.regional.hasOwnProperty(ad)){ag=ad}}if(ai&&aa.formats.hasOwnProperty(ai)){ac=ai}else{if(ai&&aa.regional.hasOwnProperty(ai)){ag=ai}}if(j(ah)!="[object Object]"||ah._type!="jsDate"){ah=new aa(ah);ah.locale=ag}if(!ae){ae=ah.formatString||aa.regional[ag]["formatString"]}var ab=ae||"%Y-%m-%d",aj="",af;while(ab.length>0){if(af=ab.match(aa.formats[ac].codes.matcher)){aj+=ab.slice(0,af.index);aj+=(af[1]||"")+D(ah,af[2],ac);ab=ab.slice(af.index+af[0].length)}else{aj+=ab;ab=""}}return aj};aa.formats={ISO:"%Y-%m-%dT%H:%M:%S.%N%G",SQL:"%Y-%m-%d %H:%M:%S"};aa.formats.perl={codes:{matcher:/()%(#?(%|[a-z]))/i,Y:"FullYear",y:"ShortYear.2",m:"MonthNumber.2","#m":"MonthNumber",B:"MonthName",b:"AbbrMonthName",d:"Date.2","#d":"Date",e:"Date",A:"DayName",a:"AbbrDayName",w:"Day",H:"Hours.2","#H":"Hours",I:"Hours12.2","#I":"Hours12",p:"AMPM",M:"Minutes.2","#M":"Minutes",S:"Seconds.2","#S":"Seconds",s:"Unix",N:"Milliseconds.3","#N":"Milliseconds",O:"TimezoneOffset",Z:"TimezoneName",G:"GmtOffset"},shortcuts:{F:"%Y-%m-%d",T:"%H:%M:%S",X:"%H:%M:%S",x:"%m/%d/%y",D:"%m/%d/%y","#c":"%a %b %e %H:%M:%S %Y",v:"%e-%b-%Y",R:"%H:%M",r:"%I:%M:%S %p",t:"\t",n:"\n","%":"%"}};aa.formats.php={codes:{matcher:/()%((%|[a-z]))/i,a:"AbbrDayName",A:"DayName",d:"Date.2",e:"Date",j:"DayOfYear.3",u:"DayOfWeek",w:"Day",U:"FullWeekOfYear.2",V:"IsoWeek.2",W:"WeekOfYear.2",b:"AbbrMonthName",B:"MonthName",m:"MonthNumber.2",h:"AbbrMonthName",C:"Century.2",y:"ShortYear.2",Y:"FullYear",H:"Hours.2",I:"Hours12.2",l:"Hours12",p:"AMPM",P:"AmPm",M:"Minutes.2",S:"Seconds.2",s:"Unix",O:"TimezoneOffset",z:"GmtOffset",Z:"TimezoneAbbr"},shortcuts:{D:"%m/%d/%y",F:"%Y-%m-%d",T:"%H:%M:%S",X:"%H:%M:%S",x:"%m/%d/%y",R:"%H:%M",r:"%I:%M:%S %p",t:"\t",n:"\n","%":"%"}};aa.createDate=function(ad){if(ad==null){return new Date()}if(ad instanceof Date){return ad}if(typeof ad=="number"){return new Date(ad)}var ai=String(ad).replace(/^\s*(.+)\s*$/g,"$1");ai=ai.replace(/^([0-9]{1,4})-([0-9]{1,2})-([0-9]{1,4})/,"$1/$2/$3");ai=ai.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{4})/i,"$1 $2 $3");var ah=ai.match(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i);if(ah&&ah.length>3){var am=parseFloat(ah[3]);var ag=aa.config.defaultCentury+am;ag=String(ag);ai=ai.replace(/^(3[01]|[0-2]?\d)[-\/]([a-z]{3,})[-\/](\d{2})\D*/i,ah[1]+" "+ah[2]+" "+ag)}ah=ai.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})[^0-9]/);function al(aq,ap){var aw=parseFloat(ap[1]);var av=parseFloat(ap[2]);var au=parseFloat(ap[3]);var at=aa.config.defaultCentury;var ao,an,ax,ar;if(aw>31){an=au;ax=av;ao=at+aw}else{an=av;ax=aw;ao=at+au}ar=ax+"/"+an+"/"+ao;return aq.replace(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})/,ar)}if(ah&&ah.length>3){ai=al(ai,ah)}var ah=ai.match(/^([0-9]{1,2})[-\/]([0-9]{1,2})[-\/]([0-9]{1,2})$/);if(ah&&ah.length>3){ai=al(ai,ah)}var af=0;var ac=aa.matchers.length;var ak,ab,aj=ai,ae;while(af<ac){ab=Date.parse(aj);if(!isNaN(ab)){return new Date(ab)}ak=aa.matchers[af];if(typeof ak=="function"){ae=ak.call(aa,aj);if(ae instanceof Date){return ae}}else{aj=ai.replace(ak[0],ak[1])}af++}return NaN};aa.daysInMonth=function(ab,ac){if(ac==2){return new Date(ab,1,29).getDate()==29?29:28}return[r,31,r,31,30,31,30,31,31,30,31,30,31][ac]};aa.matchers=[[/(3[01]|[0-2]\d)\s*\.\s*(1[0-2]|0\d)\s*\.\s*([1-9]\d{3})/,"$2/$1/$3"],[/([1-9]\d{3})\s*-\s*(1[0-2]|0\d)\s*-\s*(3[01]|[0-2]\d)/,"$2/$3/$1"],function(ae){var ac=ae.match(/^(?:(.+)\s+)?([012]?\d)(?:\s*\:\s*(\d\d))?(?:\s*\:\s*(\d\d(\.\d*)?))?\s*(am|pm)?\s*$/i);if(ac){if(ac[1]){var ad=this.createDate(ac[1]);if(isNaN(ad)){return}}else{var ad=new Date();ad.setMilliseconds(0)}var ab=parseFloat(ac[2]);if(ac[6]){ab=ac[6].toLowerCase()=="am"?(ab==12?0:ab):(ab==12?12:ab+12)}ad.setHours(ab,parseInt(ac[3]||0,10),parseInt(ac[4]||0,10),((parseFloat(ac[5]||0))||0)*1000);return ad}else{return ae}},function(ae){var ac=ae.match(/^(?:(.+))[T|\s+]([012]\d)(?:\:(\d\d))(?:\:(\d\d))(?:\.\d+)([\+\-]\d\d\:\d\d)$/i);if(ac){if(ac[1]){var ad=this.createDate(ac[1]);if(isNaN(ad)){return}}else{var ad=new Date();ad.setMilliseconds(0)}var ab=parseFloat(ac[2]);ad.setHours(ab,parseInt(ac[3],10),parseInt(ac[4],10),parseFloat(ac[5])*1000);return ad}else{return ae}},function(af){var ad=af.match(/^([0-3]?\d)\s*[-\/.\s]{1}\s*([a-zA-Z]{3,9})\s*[-\/.\s]{1}\s*([0-3]?\d)$/);if(ad){var ae=new Date();var ag=aa.config.defaultCentury;var ai=parseFloat(ad[1]);var ah=parseFloat(ad[3]);var ac,ab,aj;if(ai>31){ab=ah;ac=ag+ai}else{ab=ai;ac=ag+ah}var aj=W(ad[2],aa.regional[aa.regional.getLocale()]["monthNamesShort"]);if(aj==-1){aj=W(ad[2],aa.regional[aa.regional.getLocale()]["monthNames"])}ae.setFullYear(ac,aj,ab);ae.setHours(0,0,0,0);return ae}else{return af}}];function W(ad,ae){if(ae.indexOf){return ae.indexOf(ad)}for(var ab=0,ac=ae.length;ab<ac;ab++){if(ae[ab]===ad){return ab}}return -1}function j(ab){if(ab===null){return"[object Null]"}return Object.prototype.toString.call(ab)}H.jsDate=aa;H.jqplot.sprintf=function(){function ah(an,aj,ak,am){var al=(an.length>=aj)?"":Array(1+aj-an.length>>>0).join(ak);return am?an+al:al+an}function ae(al){var ak=new String(al);for(var aj=10;aj>0;aj--){if(ak==(ak=ak.replace(/^(\d+)(\d{3})/,"$1"+H.jqplot.sprintf.thousandsSeparator+"$2"))){break}}return ak}function ad(ao,an,aq,al,am,ak){var ap=al-ao.length;if(ap>0){var aj=" ";if(ak){aj="&nbsp;"}if(aq||!am){ao=ah(ao,al,aj,aq)}else{ao=ao.slice(0,an.length)+ah("",ap,"0",true)+ao.slice(an.length)}}return ao}function ai(ar,ak,ap,al,aj,ao,aq,an){var am=ar>>>0;ap=ap&&am&&{"2":"0b","8":"0","16":"0x"}[ak]||"";ar=ap+ah(am.toString(ak),ao||0,"0",false);return ad(ar,ap,al,aj,aq,an)}function ab(an,ao,al,aj,am,ak){if(aj!=null){an=an.slice(0,aj)}return ad(an,"",ao,al,am,ak)}var ac=arguments,af=0,ag=ac[af++];return ag.replace(H.jqplot.sprintf.regex,function(aG,aq,ar,av,aI,aD,ao){if(aG=="%%"){return"%"}var ax=false,at="",au=false,aF=false,ap=false,an=false;for(var aC=0;ar&&aC<ar.length;aC++){switch(ar.charAt(aC)){case" ":at=" ";break;case"+":at="+";break;case"-":ax=true;break;case"0":au=true;break;case"#":aF=true;break;case"&":ap=true;break;case"'":an=true;break}}if(!av){av=0}else{if(av=="*"){av=+ac[af++]}else{if(av.charAt(0)=="*"){av=+ac[av.slice(1,-1)]}else{av=+av}}}if(av<0){av=-av;ax=true}if(!isFinite(av)){throw new Error("$.jqplot.sprintf: (minimum-)width must be finite")}if(!aD){aD="fFeE".indexOf(ao)>-1?6:(ao=="d")?0:void (0)}else{if(aD=="*"){aD=+ac[af++]}else{if(aD.charAt(0)=="*"){aD=+ac[aD.slice(1,-1)]}else{aD=+aD}}}var az=aq?ac[aq.slice(0,-1)]:ac[af++];switch(ao){case"s":if(az==null){return""}return ab(String(az),ax,av,aD,au,ap);case"c":return ab(String.fromCharCode(+az),ax,av,aD,au,ap);case"b":return ai(az,2,aF,ax,av,aD,au,ap);case"o":return ai(az,8,aF,ax,av,aD,au,ap);case"x":return ai(az,16,aF,ax,av,aD,au,ap);case"X":return ai(az,16,aF,ax,av,aD,au,ap).toUpperCase();case"u":return ai(az,10,aF,ax,av,aD,au,ap);case"i":var al=parseInt(+az,10);if(isNaN(al)){return""}var aB=al<0?"-":at;var aE=an?ae(String(Math.abs(al))):String(Math.abs(al));az=aB+ah(aE,aD,"0",false);return ad(az,aB,ax,av,au,ap);case"d":var al=Math.round(+az);if(isNaN(al)){return""}var aB=al<0?"-":at;var aE=an?ae(String(Math.abs(al))):String(Math.abs(al));az=aB+ah(aE,aD,"0",false);return ad(az,aB,ax,av,au,ap);case"e":case"E":case"f":case"F":case"g":case"G":var al=+az;if(isNaN(al)){return""}var aB=al<0?"-":at;var am=["toExponential","toFixed","toPrecision"]["efg".indexOf(ao.toLowerCase())];var aH=["toString","toUpperCase"]["eEfFgG".indexOf(ao)%2];var aE=Math.abs(al)[am](aD);aE=an?ae(aE):aE;az=aB+aE;var aw=ad(az,aB,ax,av,au,ap)[aH]();if(H.jqplot.sprintf.decimalMark!=="."&&H.jqplot.sprintf.decimalMark!==H.jqplot.sprintf.thousandsSeparator){return aw.replace(/\./,H.jqplot.sprintf.decimalMark)}else{return aw}case"p":case"P":var al=+az;if(isNaN(al)){return""}var aB=al<0?"-":at;var ay=String(Number(Math.abs(al)).toExponential()).split(/e|E/);var ak=(ay[0].indexOf(".")!=-1)?ay[0].length-1:ay[0].length;var aA=(ay[1]<0)?-ay[1]-1:0;if(Math.abs(al)<1){if(ak+aA<=aD){az=aB+Math.abs(al).toPrecision(ak)}else{if(ak<=aD-1){az=aB+Math.abs(al).toExponential(ak-1)}else{az=aB+Math.abs(al).toExponential(aD-1)}}}else{var aj=(ak<=aD)?ak:aD;az=aB+Math.abs(al).toPrecision(aj)}var aH=["toString","toUpperCase"]["pP".indexOf(ao)%2];return ad(az,aB,ax,av,au,ap)[aH]();case"n":return"";default:return aG}})};H.jqplot.sprintf.thousandsSeparator=",";H.jqplot.sprintf.decimalMark=".";H.jqplot.sprintf.regex=/%%|%(\d+\$)?([-+#0&\' ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([nAscboxXuidfegpEGP])/g;H.jqplot.getSignificantFigures=function(af){var ah=String(Number(Math.abs(af)).toExponential()).split(/e|E/);var ag=(ah[0].indexOf(".")!=-1)?ah[0].length-1:ah[0].length;var ac=(ah[1]<0)?-ah[1]-1:0;var ab=parseInt(ah[1],10);var ad=(ab+1>0)?ab+1:0;var ae=(ag<=ad)?0:ag-ab-1;return{significantDigits:ag,digitsLeft:ad,digitsRight:ae,zeros:ac,exponent:ab}};H.jqplot.getPrecision=function(ab){return H.jqplot.getSignificantFigures(ab).digitsRight}})(jQuery);var backCompat=$.uiBackCompat!==false;$.jqplot.effects={effect:{}};var dataSpace="jqplot.storage.";$.extend($.jqplot.effects,{version:"1.9pre",save:function(b,c){for(var a=0;a<c.length;a++){if(c[a]!==null){b.data(dataSpace+c[a],b[0].style[c[a]])}}},restore:function(b,c){for(var a=0;a<c.length;a++){if(c[a]!==null){b.css(c[a],b.data(dataSpace+c[a]))}}},setMode:function(a,b){if(b==="toggle"){b=a.is(":hidden")?"show":"hide"}return b},createWrapper:function(b){if(b.parent().is(".ui-effects-wrapper")){return b.parent()}var c={width:b.outerWidth(true),height:b.outerHeight(true),"float":b.css("float")},e=$("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),a={width:b.width(),height:b.height()},d=document.activeElement;b.wrap(e);if(b[0]===d||$.contains(b[0],d)){$(d).focus()}e=b.parent();if(b.css("position")==="static"){e.css({position:"relative"});b.css({position:"relative"})}else{$.extend(c,{position:b.css("position"),zIndex:b.css("z-index")});$.each(["top","left","bottom","right"],function(f,g){c[g]=b.css(g);if(isNaN(parseInt(c[g],10))){c[g]="auto"}});b.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}b.css(a);return e.css(c).show()},removeWrapper:function(a){var b=document.activeElement;if(a.parent().is(".ui-effects-wrapper")){a.parent().replaceWith(a);if(a[0]===b||$.contains(a[0],b)){$(b).focus()}}return a}});function _normalizeArguments(b,a,c,d){if($.isPlainObject(b)){return b}b={effect:b};if(a===undefined){a={}}if($.isFunction(a)){d=a;c=null;a={}}if($.type(a)==="number"||$.fx.speeds[a]){d=c;c=a;a={}}if($.isFunction(c)){d=c;c=null}if(a){$.extend(b,a)}c=c||a.duration;b.duration=$.fx.off?0:typeof c==="number"?c:c in $.fx.speeds?$.fx.speeds[c]:$.fx.speeds._default;b.complete=d||a.complete;return b}function standardSpeed(a){if(!a||typeof a==="number"||$.fx.speeds[a]){return true}if(typeof a==="string"&&!$.jqplot.effects.effect[a]){if(backCompat&&$.jqplot.effects[a]){return false}return true}return false}$.fn.extend({jqplotEffect:function(i,j,b,h){var g=_normalizeArguments.apply(this,arguments),d=g.mode,e=g.queue,f=$.jqplot.effects.effect[g.effect],a=!f&&backCompat&&$.jqplot.effects[g.effect];if($.fx.off||!(f||a)){if(d){return this[d](g.duration,g.complete)}else{return this.each(function(){if(g.complete){g.complete.call(this)}})}}function c(m){var n=$(this),l=g.complete,o=g.mode;function k(){if($.isFunction(l)){l.call(n[0])}if($.isFunction(m)){m()}}if(n.is(":hidden")?o==="hide":o==="show"){k()}else{f.call(n[0],g,k)}}if(f){return e===false?this.each(c):this.queue(e||"fx",c)}else{return a.call(this,{options:g,duration:g.duration,callback:g.complete,mode:g.mode})}}});var rvertical=/up|down|vertical/,rpositivemotion=/up|left|vertical|horizontal/;$.jqplot.effects.effect.blind=function(c,h){var d=$(this),k=["position","top","bottom","left","right","height","width"],i=$.jqplot.effects.setMode(d,c.mode||"hide"),m=c.direction||"up",f=rvertical.test(m),e=f?"height":"width",j=f?"top":"left",p=rpositivemotion.test(m),g={},n=i==="show",b,a,l;if(d.parent().is(".ui-effects-wrapper")){$.jqplot.effects.save(d.parent(),k)}else{$.jqplot.effects.save(d,k)}d.show();l=parseInt(d.css("top"),10);b=$.jqplot.effects.createWrapper(d).css({overflow:"hidden"});a=f?b[e]()+l:b[e]();g[e]=n?String(a):"0";if(!p){d.css(f?"bottom":"right",0).css(f?"top":"left","").css({position:"absolute"});g[j]=n?"0":String(a)}if(n){b.css(e,0);if(!p){b.css(j,a)}}b.animate(g,{duration:c.duration,easing:c.easing,queue:false,complete:function(){if(i==="hide"){d.hide()}$.jqplot.effects.restore(d,k);$.jqplot.effects.removeWrapper(d);h()}})}; \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.js b/wqflask/wqflask/static/packages/jqplot/jquery.js
deleted file mode 100644
index 27914ea3..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.js
+++ /dev/null
@@ -1,9046 +0,0 @@
-/*!
- * jQuery JavaScript Library v1.6.4
- * http://jquery.com/
- *
- * Copyright 2011, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Mon Sep 12 18:54:48 2011 -0400
- */
-(function( window, undefined ) {
-
-// Use the correct document accordingly with window argument (sandbox)
-var document = window.document,
- navigator = window.navigator,
- location = window.location;
-var jQuery = (function() {
-
-// Define a local copy of jQuery
-var jQuery = function( selector, context ) {
- // The jQuery object is actually just the init constructor 'enhanced'
- return new jQuery.fn.init( selector, context, rootjQuery );
- },
-
- // Map over jQuery in case of overwrite
- _jQuery = window.jQuery,
-
- // Map over the $ in case of overwrite
- _$ = window.$,
-
- // A central reference to the root jQuery(document)
- rootjQuery,
-
- // A simple way to check for HTML strings or ID strings
- // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
- quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
-
- // Check if a string has a non-whitespace character in it
- rnotwhite = /\S/,
-
- // Used for trimming whitespace
- trimLeft = /^\s+/,
- trimRight = /\s+$/,
-
- // Check for digits
- rdigit = /\d/,
-
- // Match a standalone tag
- rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
-
- // JSON RegExp
- rvalidchars = /^[\],:{}\s]*$/,
- rvalidescape = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,
- rvalidtokens = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
- rvalidbraces = /(?:^|:|,)(?:\s*\[)+/g,
-
- // Useragent RegExp
- rwebkit = /(webkit)[ \/]([\w.]+)/,
- ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/,
- rmsie = /(msie) ([\w.]+)/,
- rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,
-
- // Matches dashed string for camelizing
- rdashAlpha = /-([a-z]|[0-9])/ig,
- rmsPrefix = /^-ms-/,
-
- // Used by jQuery.camelCase as callback to replace()
- fcamelCase = function( all, letter ) {
- return ( letter + "" ).toUpperCase();
- },
-
- // Keep a UserAgent string for use with jQuery.browser
- userAgent = navigator.userAgent,
-
- // For matching the engine and version of the browser
- browserMatch,
-
- // The deferred used on DOM ready
- readyList,
-
- // The ready event handler
- DOMContentLoaded,
-
- // Save a reference to some core methods
- toString = Object.prototype.toString,
- hasOwn = Object.prototype.hasOwnProperty,
- push = Array.prototype.push,
- slice = Array.prototype.slice,
- trim = String.prototype.trim,
- indexOf = Array.prototype.indexOf,
-
- // [[Class]] -> type pairs
- class2type = {};
-
-jQuery.fn = jQuery.prototype = {
- constructor: jQuery,
- init: function( selector, context, rootjQuery ) {
- var match, elem, ret, doc;
-
- // Handle $(""), $(null), or $(undefined)
- if ( !selector ) {
- return this;
- }
-
- // Handle $(DOMElement)
- if ( selector.nodeType ) {
- this.context = this[0] = selector;
- this.length = 1;
- return this;
- }
-
- // The body element only exists once, optimize finding it
- if ( selector === "body" && !context && document.body ) {
- this.context = document;
- this[0] = document.body;
- this.selector = selector;
- this.length = 1;
- return this;
- }
-
- // Handle HTML strings
- if ( typeof selector === "string" ) {
- // Are we dealing with HTML string or an ID?
- if ( selector.charAt(0) === "<" && selector.charAt( selector.length - 1 ) === ">" && selector.length >= 3 ) {
- // Assume that strings that start and end with <> are HTML and skip the regex check
- match = [ null, selector, null ];
-
- } else {
- match = quickExpr.exec( selector );
- }
-
- // Verify a match, and that no context was specified for #id
- if ( match && (match[1] || !context) ) {
-
- // HANDLE: $(html) -> $(array)
- if ( match[1] ) {
- context = context instanceof jQuery ? context[0] : context;
- doc = (context ? context.ownerDocument || context : document);
-
- // If a single string is passed in and it's a single tag
- // just do a createElement and skip the rest
- ret = rsingleTag.exec( selector );
-
- if ( ret ) {
- if ( jQuery.isPlainObject( context ) ) {
- selector = [ document.createElement( ret[1] ) ];
- jQuery.fn.attr.call( selector, context, true );
-
- } else {
- selector = [ doc.createElement( ret[1] ) ];
- }
-
- } else {
- ret = jQuery.buildFragment( [ match[1] ], [ doc ] );
- selector = (ret.cacheable ? jQuery.clone(ret.fragment) : ret.fragment).childNodes;
- }
-
- return jQuery.merge( this, selector );
-
- // HANDLE: $("#id")
- } else {
- elem = document.getElementById( match[2] );
-
- // Check parentNode to catch when Blackberry 4.6 returns
- // nodes that are no longer in the document #6963
- if ( elem && elem.parentNode ) {
- // Handle the case where IE and Opera return items
- // by name instead of ID
- if ( elem.id !== match[2] ) {
- return rootjQuery.find( selector );
- }
-
- // Otherwise, we inject the element directly into the jQuery object
- this.length = 1;
- this[0] = elem;
- }
-
- this.context = document;
- this.selector = selector;
- return this;
- }
-
- // HANDLE: $(expr, $(...))
- } else if ( !context || context.jquery ) {
- return (context || rootjQuery).find( selector );
-
- // HANDLE: $(expr, context)
- // (which is just equivalent to: $(context).find(expr)
- } else {
- return this.constructor( context ).find( selector );
- }
-
- // HANDLE: $(function)
- // Shortcut for document ready
- } else if ( jQuery.isFunction( selector ) ) {
- return rootjQuery.ready( selector );
- }
-
- if (selector.selector !== undefined) {
- this.selector = selector.selector;
- this.context = selector.context;
- }
-
- return jQuery.makeArray( selector, this );
- },
-
- // Start with an empty selector
- selector: "",
-
- // The current version of jQuery being used
- jquery: "1.6.4",
-
- // The default length of a jQuery object is 0
- length: 0,
-
- // The number of elements contained in the matched element set
- size: function() {
- return this.length;
- },
-
- toArray: function() {
- return slice.call( this, 0 );
- },
-
- // Get the Nth element in the matched element set OR
- // Get the whole matched element set as a clean array
- get: function( num ) {
- return num == null ?
-
- // Return a 'clean' array
- this.toArray() :
-
- // Return just the object
- ( num < 0 ? this[ this.length + num ] : this[ num ] );
- },
-
- // Take an array of elements and push it onto the stack
- // (returning the new matched element set)
- pushStack: function( elems, name, selector ) {
- // Build a new jQuery matched element set
- var ret = this.constructor();
-
- if ( jQuery.isArray( elems ) ) {
- push.apply( ret, elems );
-
- } else {
- jQuery.merge( ret, elems );
- }
-
- // Add the old object onto the stack (as a reference)
- ret.prevObject = this;
-
- ret.context = this.context;
-
- if ( name === "find" ) {
- ret.selector = this.selector + (this.selector ? " " : "") + selector;
- } else if ( name ) {
- ret.selector = this.selector + "." + name + "(" + selector + ")";
- }
-
- // Return the newly-formed element set
- return ret;
- },
-
- // Execute a callback for every element in the matched set.
- // (You can seed the arguments with an array of args, but this is
- // only used internally.)
- each: function( callback, args ) {
- return jQuery.each( this, callback, args );
- },
-
- ready: function( fn ) {
- // Attach the listeners
- jQuery.bindReady();
-
- // Add the callback
- readyList.done( fn );
-
- return this;
- },
-
- eq: function( i ) {
- return i === -1 ?
- this.slice( i ) :
- this.slice( i, +i + 1 );
- },
-
- first: function() {
- return this.eq( 0 );
- },
-
- last: function() {
- return this.eq( -1 );
- },
-
- slice: function() {
- return this.pushStack( slice.apply( this, arguments ),
- "slice", slice.call(arguments).join(",") );
- },
-
- map: function( callback ) {
- return this.pushStack( jQuery.map(this, function( elem, i ) {
- return callback.call( elem, i, elem );
- }));
- },
-
- end: function() {
- return this.prevObject || this.constructor(null);
- },
-
- // For internal use only.
- // Behaves like an Array's method, not like a jQuery method.
- push: push,
- sort: [].sort,
- splice: [].splice
-};
-
-// Give the init function the jQuery prototype for later instantiation
-jQuery.fn.init.prototype = jQuery.fn;
-
-jQuery.extend = jQuery.fn.extend = function() {
- var options, name, src, copy, copyIsArray, clone,
- target = arguments[0] || {},
- i = 1,
- length = arguments.length,
- deep = false;
-
- // Handle a deep copy situation
- if ( typeof target === "boolean" ) {
- deep = target;
- target = arguments[1] || {};
- // skip the boolean and the target
- i = 2;
- }
-
- // Handle case when target is a string or something (possible in deep copy)
- if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
- target = {};
- }
-
- // extend jQuery itself if only one argument is passed
- if ( length === i ) {
- target = this;
- --i;
- }
-
- for ( ; i < length; i++ ) {
- // Only deal with non-null/undefined values
- if ( (options = arguments[ i ]) != null ) {
- // Extend the base object
- for ( name in options ) {
- src = target[ name ];
- copy = options[ name ];
-
- // Prevent never-ending loop
- if ( target === copy ) {
- continue;
- }
-
- // Recurse if we're merging plain objects or arrays
- if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
- if ( copyIsArray ) {
- copyIsArray = false;
- clone = src && jQuery.isArray(src) ? src : [];
-
- } else {
- clone = src && jQuery.isPlainObject(src) ? src : {};
- }
-
- // Never move original objects, clone them
- target[ name ] = jQuery.extend( deep, clone, copy );
-
- // Don't bring in undefined values
- } else if ( copy !== undefined ) {
- target[ name ] = copy;
- }
- }
- }
- }
-
- // Return the modified object
- return target;
-};
-
-jQuery.extend({
- noConflict: function( deep ) {
- if ( window.$ === jQuery ) {
- window.$ = _$;
- }
-
- if ( deep && window.jQuery === jQuery ) {
- window.jQuery = _jQuery;
- }
-
- return jQuery;
- },
-
- // Is the DOM ready to be used? Set to true once it occurs.
- isReady: false,
-
- // A counter to track how many items to wait for before
- // the ready event fires. See #6781
- readyWait: 1,
-
- // Hold (or release) the ready event
- holdReady: function( hold ) {
- if ( hold ) {
- jQuery.readyWait++;
- } else {
- jQuery.ready( true );
- }
- },
-
- // Handle when the DOM is ready
- ready: function( wait ) {
- // Either a released hold or an DOMready/load event and not yet ready
- if ( (wait === true && !--jQuery.readyWait) || (wait !== true && !jQuery.isReady) ) {
- // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
- if ( !document.body ) {
- return setTimeout( jQuery.ready, 1 );
- }
-
- // Remember that the DOM is ready
- jQuery.isReady = true;
-
- // If a normal DOM Ready event fired, decrement, and wait if need be
- if ( wait !== true && --jQuery.readyWait > 0 ) {
- return;
- }
-
- // If there are functions bound, to execute
- readyList.resolveWith( document, [ jQuery ] );
-
- // Trigger any bound ready events
- if ( jQuery.fn.trigger ) {
- jQuery( document ).trigger( "ready" ).unbind( "ready" );
- }
- }
- },
-
- bindReady: function() {
- if ( readyList ) {
- return;
- }
-
- readyList = jQuery._Deferred();
-
- // Catch cases where $(document).ready() is called after the
- // browser event has already occurred.
- if ( document.readyState === "complete" ) {
- // Handle it asynchronously to allow scripts the opportunity to delay ready
- return setTimeout( jQuery.ready, 1 );
- }
-
- // Mozilla, Opera and webkit nightlies currently support this event
- if ( document.addEventListener ) {
- // Use the handy event callback
- document.addEventListener( "DOMContentLoaded", DOMContentLoaded, false );
-
- // A fallback to window.onload, that will always work
- window.addEventListener( "load", jQuery.ready, false );
-
- // If IE event model is used
- } else if ( document.attachEvent ) {
- // ensure firing before onload,
- // maybe late but safe also for iframes
- document.attachEvent( "onreadystatechange", DOMContentLoaded );
-
- // A fallback to window.onload, that will always work
- window.attachEvent( "onload", jQuery.ready );
-
- // If IE and not a frame
- // continually check to see if the document is ready
- var toplevel = false;
-
- try {
- toplevel = window.frameElement == null;
- } catch(e) {}
-
- if ( document.documentElement.doScroll && toplevel ) {
- doScrollCheck();
- }
- }
- },
-
- // See test/unit/core.js for details concerning isFunction.
- // Since version 1.3, DOM methods and functions like alert
- // aren't supported. They return false on IE (#2968).
- isFunction: function( obj ) {
- return jQuery.type(obj) === "function";
- },
-
- isArray: Array.isArray || function( obj ) {
- return jQuery.type(obj) === "array";
- },
-
- // A crude way of determining if an object is a window
- isWindow: function( obj ) {
- return obj && typeof obj === "object" && "setInterval" in obj;
- },
-
- isNaN: function( obj ) {
- return obj == null || !rdigit.test( obj ) || isNaN( obj );
- },
-
- type: function( obj ) {
- return obj == null ?
- String( obj ) :
- class2type[ toString.call(obj) ] || "object";
- },
-
- isPlainObject: function( obj ) {
- // Must be an Object.
- // Because of IE, we also have to check the presence of the constructor property.
- // Make sure that DOM nodes and window objects don't pass through, as well
- if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
- return false;
- }
-
- try {
- // Not own constructor property must be Object
- if ( obj.constructor &&
- !hasOwn.call(obj, "constructor") &&
- !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
- return false;
- }
- } catch ( e ) {
- // IE8,9 Will throw exceptions on certain host objects #9897
- return false;
- }
-
- // Own properties are enumerated firstly, so to speed up,
- // if last one is own, then all properties are own.
-
- var key;
- for ( key in obj ) {}
-
- return key === undefined || hasOwn.call( obj, key );
- },
-
- isEmptyObject: function( obj ) {
- for ( var name in obj ) {
- return false;
- }
- return true;
- },
-
- error: function( msg ) {
- throw msg;
- },
-
- parseJSON: function( data ) {
- if ( typeof data !== "string" || !data ) {
- return null;
- }
-
- // Make sure leading/trailing whitespace is removed (IE can't handle it)
- data = jQuery.trim( data );
-
- // Attempt to parse using the native JSON parser first
- if ( window.JSON && window.JSON.parse ) {
- return window.JSON.parse( data );
- }
-
- // Make sure the incoming data is actual JSON
- // Logic borrowed from http://json.org/json2.js
- if ( rvalidchars.test( data.replace( rvalidescape, "@" )
- .replace( rvalidtokens, "]" )
- .replace( rvalidbraces, "")) ) {
-
- return (new Function( "return " + data ))();
-
- }
- jQuery.error( "Invalid JSON: " + data );
- },
-
- // Cross-browser xml parsing
- parseXML: function( data ) {
- var xml, tmp;
- try {
- if ( window.DOMParser ) { // Standard
- tmp = new DOMParser();
- xml = tmp.parseFromString( data , "text/xml" );
- } else { // IE
- xml = new ActiveXObject( "Microsoft.XMLDOM" );
- xml.async = "false";
- xml.loadXML( data );
- }
- } catch( e ) {
- xml = undefined;
- }
- if ( !xml || !xml.documentElement || xml.getElementsByTagName( "parsererror" ).length ) {
- jQuery.error( "Invalid XML: " + data );
- }
- return xml;
- },
-
- noop: function() {},
-
- // Evaluates a script in a global context
- // Workarounds based on findings by Jim Driscoll
- // http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context
- globalEval: function( data ) {
- if ( data && rnotwhite.test( data ) ) {
- // We use execScript on Internet Explorer
- // We use an anonymous function so that context is window
- // rather than jQuery in Firefox
- ( window.execScript || function( data ) {
- window[ "eval" ].call( window, data );
- } )( data );
- }
- },
-
- // Convert dashed to camelCase; used by the css and data modules
- // Microsoft forgot to hump their vendor prefix (#9572)
- camelCase: function( string ) {
- return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
- },
-
- nodeName: function( elem, name ) {
- return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();
- },
-
- // args is for internal usage only
- each: function( object, callback, args ) {
- var name, i = 0,
- length = object.length,
- isObj = length === undefined || jQuery.isFunction( object );
-
- if ( args ) {
- if ( isObj ) {
- for ( name in object ) {
- if ( callback.apply( object[ name ], args ) === false ) {
- break;
- }
- }
- } else {
- for ( ; i < length; ) {
- if ( callback.apply( object[ i++ ], args ) === false ) {
- break;
- }
- }
- }
-
- // A special, fast, case for the most common use of each
- } else {
- if ( isObj ) {
- for ( name in object ) {
- if ( callback.call( object[ name ], name, object[ name ] ) === false ) {
- break;
- }
- }
- } else {
- for ( ; i < length; ) {
- if ( callback.call( object[ i ], i, object[ i++ ] ) === false ) {
- break;
- }
- }
- }
- }
-
- return object;
- },
-
- // Use native String.trim function wherever possible
- trim: trim ?
- function( text ) {
- return text == null ?
- "" :
- trim.call( text );
- } :
-
- // Otherwise use our own trimming functionality
- function( text ) {
- return text == null ?
- "" :
- text.toString().replace( trimLeft, "" ).replace( trimRight, "" );
- },
-
- // results is for internal usage only
- makeArray: function( array, results ) {
- var ret = results || [];
-
- if ( array != null ) {
- // The window, strings (and functions) also have 'length'
- // The extra typeof function check is to prevent crashes
- // in Safari 2 (See: #3039)
- // Tweaked logic slightly to handle Blackberry 4.7 RegExp issues #6930
- var type = jQuery.type( array );
-
- if ( array.length == null || type === "string" || type === "function" || type === "regexp" || jQuery.isWindow( array ) ) {
- push.call( ret, array );
- } else {
- jQuery.merge( ret, array );
- }
- }
-
- return ret;
- },
-
- inArray: function( elem, array ) {
- if ( !array ) {
- return -1;
- }
-
- if ( indexOf ) {
- return indexOf.call( array, elem );
- }
-
- for ( var i = 0, length = array.length; i < length; i++ ) {
- if ( array[ i ] === elem ) {
- return i;
- }
- }
-
- return -1;
- },
-
- merge: function( first, second ) {
- var i = first.length,
- j = 0;
-
- if ( typeof second.length === "number" ) {
- for ( var l = second.length; j < l; j++ ) {
- first[ i++ ] = second[ j ];
- }
-
- } else {
- while ( second[j] !== undefined ) {
- first[ i++ ] = second[ j++ ];
- }
- }
-
- first.length = i;
-
- return first;
- },
-
- grep: function( elems, callback, inv ) {
- var ret = [], retVal;
- inv = !!inv;
-
- // Go through the array, only saving the items
- // that pass the validator function
- for ( var i = 0, length = elems.length; i < length; i++ ) {
- retVal = !!callback( elems[ i ], i );
- if ( inv !== retVal ) {
- ret.push( elems[ i ] );
- }
- }
-
- return ret;
- },
-
- // arg is for internal usage only
- map: function( elems, callback, arg ) {
- var value, key, ret = [],
- i = 0,
- length = elems.length,
- // jquery objects are treated as arrays
- isArray = elems instanceof jQuery || length !== undefined && typeof length === "number" && ( ( length > 0 && elems[ 0 ] && elems[ length -1 ] ) || length === 0 || jQuery.isArray( elems ) ) ;
-
- // Go through the array, translating each of the items to their
- if ( isArray ) {
- for ( ; i < length; i++ ) {
- value = callback( elems[ i ], i, arg );
-
- if ( value != null ) {
- ret[ ret.length ] = value;
- }
- }
-
- // Go through every key on the object,
- } else {
- for ( key in elems ) {
- value = callback( elems[ key ], key, arg );
-
- if ( value != null ) {
- ret[ ret.length ] = value;
- }
- }
- }
-
- // Flatten any nested arrays
- return ret.concat.apply( [], ret );
- },
-
- // A global GUID counter for objects
- guid: 1,
-
- // Bind a function to a context, optionally partially applying any
- // arguments.
- proxy: function( fn, context ) {
- if ( typeof context === "string" ) {
- var tmp = fn[ context ];
- context = fn;
- fn = tmp;
- }
-
- // Quick check to determine if target is callable, in the spec
- // this throws a TypeError, but we will just return undefined.
- if ( !jQuery.isFunction( fn ) ) {
- return undefined;
- }
-
- // Simulated bind
- var args = slice.call( arguments, 2 ),
- proxy = function() {
- return fn.apply( context, args.concat( slice.call( arguments ) ) );
- };
-
- // Set the guid of unique handler to the same of original handler, so it can be removed
- proxy.guid = fn.guid = fn.guid || proxy.guid || jQuery.guid++;
-
- return proxy;
- },
-
- // Mutifunctional method to get and set values to a collection
- // The value/s can optionally be executed if it's a function
- access: function( elems, key, value, exec, fn, pass ) {
- var length = elems.length;
-
- // Setting many attributes
- if ( typeof key === "object" ) {
- for ( var k in key ) {
- jQuery.access( elems, k, key[k], exec, fn, value );
- }
- return elems;
- }
-
- // Setting one attribute
- if ( value !== undefined ) {
- // Optionally, function values get executed if exec is true
- exec = !pass && exec && jQuery.isFunction(value);
-
- for ( var i = 0; i < length; i++ ) {
- fn( elems[i], key, exec ? value.call( elems[i], i, fn( elems[i], key ) ) : value, pass );
- }
-
- return elems;
- }
-
- // Getting an attribute
- return length ? fn( elems[0], key ) : undefined;
- },
-
- now: function() {
- return (new Date()).getTime();
- },
-
- // Use of jQuery.browser is frowned upon.
- // More details: http://docs.jquery.com/Utilities/jQuery.browser
- uaMatch: function( ua ) {
- ua = ua.toLowerCase();
-
- var match = rwebkit.exec( ua ) ||
- ropera.exec( ua ) ||
- rmsie.exec( ua ) ||
- ua.indexOf("compatible") < 0 && rmozilla.exec( ua ) ||
- [];
-
- return { browser: match[1] || "", version: match[2] || "0" };
- },
-
- sub: function() {
- function jQuerySub( selector, context ) {
- return new jQuerySub.fn.init( selector, context );
- }
- jQuery.extend( true, jQuerySub, this );
- jQuerySub.superclass = this;
- jQuerySub.fn = jQuerySub.prototype = this();
- jQuerySub.fn.constructor = jQuerySub;
- jQuerySub.sub = this.sub;
- jQuerySub.fn.init = function init( selector, context ) {
- if ( context && context instanceof jQuery && !(context instanceof jQuerySub) ) {
- context = jQuerySub( context );
- }
-
- return jQuery.fn.init.call( this, selector, context, rootjQuerySub );
- };
- jQuerySub.fn.init.prototype = jQuerySub.fn;
- var rootjQuerySub = jQuerySub(document);
- return jQuerySub;
- },
-
- browser: {}
-});
-
-// Populate the class2type map
-jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(i, name) {
- class2type[ "[object " + name + "]" ] = name.toLowerCase();
-});
-
-browserMatch = jQuery.uaMatch( userAgent );
-if ( browserMatch.browser ) {
- jQuery.browser[ browserMatch.browser ] = true;
- jQuery.browser.version = browserMatch.version;
-}
-
-// Deprecated, use jQuery.browser.webkit instead
-if ( jQuery.browser.webkit ) {
- jQuery.browser.safari = true;
-}
-
-// IE doesn't match non-breaking spaces with \s
-if ( rnotwhite.test( "\xA0" ) ) {
- trimLeft = /^[\s\xA0]+/;
- trimRight = /[\s\xA0]+$/;
-}
-
-// All jQuery objects should point back to these
-rootjQuery = jQuery(document);
-
-// Cleanup functions for the document ready method
-if ( document.addEventListener ) {
- DOMContentLoaded = function() {
- document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );
- jQuery.ready();
- };
-
-} else if ( document.attachEvent ) {
- DOMContentLoaded = function() {
- // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443).
- if ( document.readyState === "complete" ) {
- document.detachEvent( "onreadystatechange", DOMContentLoaded );
- jQuery.ready();
- }
- };
-}
-
-// The DOM ready check for Internet Explorer
-function doScrollCheck() {
- if ( jQuery.isReady ) {
- return;
- }
-
- try {
- // If IE is used, use the trick by Diego Perini
- // http://javascript.nwbox.com/IEContentLoaded/
- document.documentElement.doScroll("left");
- } catch(e) {
- setTimeout( doScrollCheck, 1 );
- return;
- }
-
- // and execute any waiting functions
- jQuery.ready();
-}
-
-return jQuery;
-
-})();
-
-
-var // Promise methods
- promiseMethods = "done fail isResolved isRejected promise then always pipe".split( " " ),
- // Static reference to slice
- sliceDeferred = [].slice;
-
-jQuery.extend({
- // Create a simple deferred (one callbacks list)
- _Deferred: function() {
- var // callbacks list
- callbacks = [],
- // stored [ context , args ]
- fired,
- // to avoid firing when already doing so
- firing,
- // flag to know if the deferred has been cancelled
- cancelled,
- // the deferred itself
- deferred = {
-
- // done( f1, f2, ...)
- done: function() {
- if ( !cancelled ) {
- var args = arguments,
- i,
- length,
- elem,
- type,
- _fired;
- if ( fired ) {
- _fired = fired;
- fired = 0;
- }
- for ( i = 0, length = args.length; i < length; i++ ) {
- elem = args[ i ];
- type = jQuery.type( elem );
- if ( type === "array" ) {
- deferred.done.apply( deferred, elem );
- } else if ( type === "function" ) {
- callbacks.push( elem );
- }
- }
- if ( _fired ) {
- deferred.resolveWith( _fired[ 0 ], _fired[ 1 ] );
- }
- }
- return this;
- },
-
- // resolve with given context and args
- resolveWith: function( context, args ) {
- if ( !cancelled && !fired && !firing ) {
- // make sure args are available (#8421)
- args = args || [];
- firing = 1;
- try {
- while( callbacks[ 0 ] ) {
- callbacks.shift().apply( context, args );
- }
- }
- finally {
- fired = [ context, args ];
- firing = 0;
- }
- }
- return this;
- },
-
- // resolve with this as context and given arguments
- resolve: function() {
- deferred.resolveWith( this, arguments );
- return this;
- },
-
- // Has this deferred been resolved?
- isResolved: function() {
- return !!( firing || fired );
- },
-
- // Cancel
- cancel: function() {
- cancelled = 1;
- callbacks = [];
- return this;
- }
- };
-
- return deferred;
- },
-
- // Full fledged deferred (two callbacks list)
- Deferred: function( func ) {
- var deferred = jQuery._Deferred(),
- failDeferred = jQuery._Deferred(),
- promise;
- // Add errorDeferred methods, then and promise
- jQuery.extend( deferred, {
- then: function( doneCallbacks, failCallbacks ) {
- deferred.done( doneCallbacks ).fail( failCallbacks );
- return this;
- },
- always: function() {
- return deferred.done.apply( deferred, arguments ).fail.apply( this, arguments );
- },
- fail: failDeferred.done,
- rejectWith: failDeferred.resolveWith,
- reject: failDeferred.resolve,
- isRejected: failDeferred.isResolved,
- pipe: function( fnDone, fnFail ) {
- return jQuery.Deferred(function( newDefer ) {
- jQuery.each( {
- done: [ fnDone, "resolve" ],
- fail: [ fnFail, "reject" ]
- }, function( handler, data ) {
- var fn = data[ 0 ],
- action = data[ 1 ],
- returned;
- if ( jQuery.isFunction( fn ) ) {
- deferred[ handler ](function() {
- returned = fn.apply( this, arguments );
- if ( returned && jQuery.isFunction( returned.promise ) ) {
- returned.promise().then( newDefer.resolve, newDefer.reject );
- } else {
- newDefer[ action + "With" ]( this === deferred ? newDefer : this, [ returned ] );
- }
- });
- } else {
- deferred[ handler ]( newDefer[ action ] );
- }
- });
- }).promise();
- },
- // Get a promise for this deferred
- // If obj is provided, the promise aspect is added to the object
- promise: function( obj ) {
- if ( obj == null ) {
- if ( promise ) {
- return promise;
- }
- promise = obj = {};
- }
- var i = promiseMethods.length;
- while( i-- ) {
- obj[ promiseMethods[i] ] = deferred[ promiseMethods[i] ];
- }
- return obj;
- }
- });
- // Make sure only one callback list will be used
- deferred.done( failDeferred.cancel ).fail( deferred.cancel );
- // Unexpose cancel
- delete deferred.cancel;
- // Call given func if any
- if ( func ) {
- func.call( deferred, deferred );
- }
- return deferred;
- },
-
- // Deferred helper
- when: function( firstParam ) {
- var args = arguments,
- i = 0,
- length = args.length,
- count = length,
- deferred = length <= 1 && firstParam && jQuery.isFunction( firstParam.promise ) ?
- firstParam :
- jQuery.Deferred();
- function resolveFunc( i ) {
- return function( value ) {
- args[ i ] = arguments.length > 1 ? sliceDeferred.call( arguments, 0 ) : value;
- if ( !( --count ) ) {
- // Strange bug in FF4:
- // Values changed onto the arguments object sometimes end up as undefined values
- // outside the $.when method. Cloning the object into a fresh array solves the issue
- deferred.resolveWith( deferred, sliceDeferred.call( args, 0 ) );
- }
- };
- }
- if ( length > 1 ) {
- for( ; i < length; i++ ) {
- if ( args[ i ] && jQuery.isFunction( args[ i ].promise ) ) {
- args[ i ].promise().then( resolveFunc(i), deferred.reject );
- } else {
- --count;
- }
- }
- if ( !count ) {
- deferred.resolveWith( deferred, args );
- }
- } else if ( deferred !== firstParam ) {
- deferred.resolveWith( deferred, length ? [ firstParam ] : [] );
- }
- return deferred.promise();
- }
-});
-
-
-
-jQuery.support = (function() {
-
- var div = document.createElement( "div" ),
- documentElement = document.documentElement,
- all,
- a,
- select,
- opt,
- input,
- marginDiv,
- support,
- fragment,
- body,
- testElementParent,
- testElement,
- testElementStyle,
- tds,
- events,
- eventName,
- i,
- isSupported;
-
- // Preliminary tests
- div.setAttribute("className", "t");
- div.innerHTML = " <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
-
-
- all = div.getElementsByTagName( "*" );
- a = div.getElementsByTagName( "a" )[ 0 ];
-
- // Can't get basic test support
- if ( !all || !all.length || !a ) {
- return {};
- }
-
- // First batch of supports tests
- select = document.createElement( "select" );
- opt = select.appendChild( document.createElement("option") );
- input = div.getElementsByTagName( "input" )[ 0 ];
-
- support = {
- // IE strips leading whitespace when .innerHTML is used
- leadingWhitespace: ( div.firstChild.nodeType === 3 ),
-
- // Make sure that tbody elements aren't automatically inserted
- // IE will insert them into empty tables
- tbody: !div.getElementsByTagName( "tbody" ).length,
-
- // Make sure that link elements get serialized correctly by innerHTML
- // This requires a wrapper element in IE
- htmlSerialize: !!div.getElementsByTagName( "link" ).length,
-
- // Get the style information from getAttribute
- // (IE uses .cssText instead)
- style: /top/.test( a.getAttribute("style") ),
-
- // Make sure that URLs aren't manipulated
- // (IE normalizes it by default)
- hrefNormalized: ( a.getAttribute( "href" ) === "/a" ),
-
- // Make sure that element opacity exists
- // (IE uses filter instead)
- // Use a regex to work around a WebKit issue. See #5145
- opacity: /^0.55$/.test( a.style.opacity ),
-
- // Verify style float existence
- // (IE uses styleFloat instead of cssFloat)
- cssFloat: !!a.style.cssFloat,
-
- // Make sure that if no value is specified for a checkbox
- // that it defaults to "on".
- // (WebKit defaults to "" instead)
- checkOn: ( input.value === "on" ),
-
- // Make sure that a selected-by-default option has a working selected property.
- // (WebKit defaults to false instead of true, IE too, if it's in an optgroup)
- optSelected: opt.selected,
-
- // Test setAttribute on camelCase class. If it works, we need attrFixes when doing get/setAttribute (ie6/7)
- getSetAttribute: div.className !== "t",
-
- // Will be defined later
- submitBubbles: true,
- changeBubbles: true,
- focusinBubbles: false,
- deleteExpando: true,
- noCloneEvent: true,
- inlineBlockNeedsLayout: false,
- shrinkWrapBlocks: false,
- reliableMarginRight: true
- };
-
- // Make sure checked status is properly cloned
- input.checked = true;
- support.noCloneChecked = input.cloneNode( true ).checked;
-
- // Make sure that the options inside disabled selects aren't marked as disabled
- // (WebKit marks them as disabled)
- select.disabled = true;
- support.optDisabled = !opt.disabled;
-
- // Test to see if it's possible to delete an expando from an element
- // Fails in Internet Explorer
- try {
- delete div.test;
- } catch( e ) {
- support.deleteExpando = false;
- }
-
- if ( !div.addEventListener && div.attachEvent && div.fireEvent ) {
- div.attachEvent( "onclick", function() {
- // Cloning a node shouldn't copy over any
- // bound event handlers (IE does this)
- support.noCloneEvent = false;
- });
- div.cloneNode( true ).fireEvent( "onclick" );
- }
-
- // Check if a radio maintains it's value
- // after being appended to the DOM
- input = document.createElement("input");
- input.value = "t";
- input.setAttribute("type", "radio");
- support.radioValue = input.value === "t";
-
- input.setAttribute("checked", "checked");
- div.appendChild( input );
- fragment = document.createDocumentFragment();
- fragment.appendChild( div.firstChild );
-
- // WebKit doesn't clone checked state correctly in fragments
- support.checkClone = fragment.cloneNode( true ).cloneNode( true ).lastChild.checked;
-
- div.innerHTML = "";
-
- // Figure out if the W3C box model works as expected
- div.style.width = div.style.paddingLeft = "1px";
-
- body = document.getElementsByTagName( "body" )[ 0 ];
- // We use our own, invisible, body unless the body is already present
- // in which case we use a div (#9239)
- testElement = document.createElement( body ? "div" : "body" );
- testElementStyle = {
- visibility: "hidden",
- width: 0,
- height: 0,
- border: 0,
- margin: 0,
- background: "none"
- };
- if ( body ) {
- jQuery.extend( testElementStyle, {
- position: "absolute",
- left: "-1000px",
- top: "-1000px"
- });
- }
- for ( i in testElementStyle ) {
- testElement.style[ i ] = testElementStyle[ i ];
- }
- testElement.appendChild( div );
- testElementParent = body || documentElement;
- testElementParent.insertBefore( testElement, testElementParent.firstChild );
-
- // Check if a disconnected checkbox will retain its checked
- // value of true after appended to the DOM (IE6/7)
- support.appendChecked = input.checked;
-
- support.boxModel = div.offsetWidth === 2;
-
- if ( "zoom" in div.style ) {
- // Check if natively block-level elements act like inline-block
- // elements when setting their display to 'inline' and giving
- // them layout
- // (IE < 8 does this)
- div.style.display = "inline";
- div.style.zoom = 1;
- support.inlineBlockNeedsLayout = ( div.offsetWidth === 2 );
-
- // Check if elements with layout shrink-wrap their children
- // (IE 6 does this)
- div.style.display = "";
- div.innerHTML = "<div style='width:4px;'></div>";
- support.shrinkWrapBlocks = ( div.offsetWidth !== 2 );
- }
-
- div.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";
- tds = div.getElementsByTagName( "td" );
-
- // Check if table cells still have offsetWidth/Height when they are set
- // to display:none and there are still other visible table cells in a
- // table row; if so, offsetWidth/Height are not reliable for use when
- // determining if an element has been hidden directly using
- // display:none (it is still safe to use offsets if a parent element is
- // hidden; don safety goggles and see bug #4512 for more information).
- // (only IE 8 fails this test)
- isSupported = ( tds[ 0 ].offsetHeight === 0 );
-
- tds[ 0 ].style.display = "";
- tds[ 1 ].style.display = "none";
-
- // Check if empty table cells still have offsetWidth/Height
- // (IE < 8 fail this test)
- support.reliableHiddenOffsets = isSupported && ( tds[ 0 ].offsetHeight === 0 );
- div.innerHTML = "";
-
- // Check if div with explicit width and no margin-right incorrectly
- // gets computed margin-right based on width of container. For more
- // info see bug #3333
- // Fails in WebKit before Feb 2011 nightlies
- // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
- if ( document.defaultView && document.defaultView.getComputedStyle ) {
- marginDiv = document.createElement( "div" );
- marginDiv.style.width = "0";
- marginDiv.style.marginRight = "0";
- div.appendChild( marginDiv );
- support.reliableMarginRight =
- ( parseInt( ( document.defaultView.getComputedStyle( marginDiv, null ) || { marginRight: 0 } ).marginRight, 10 ) || 0 ) === 0;
- }
-
- // Remove the body element we added
- testElement.innerHTML = "";
- testElementParent.removeChild( testElement );
-
- // Technique from Juriy Zaytsev
- // http://thinkweb2.com/projects/prototype/detecting-event-support-without-browser-sniffing/
- // We only care about the case where non-standard event systems
- // are used, namely in IE. Short-circuiting here helps us to
- // avoid an eval call (in setAttribute) which can cause CSP
- // to go haywire. See: https://developer.mozilla.org/en/Security/CSP
- if ( div.attachEvent ) {
- for( i in {
- submit: 1,
- change: 1,
- focusin: 1
- } ) {
- eventName = "on" + i;
- isSupported = ( eventName in div );
- if ( !isSupported ) {
- div.setAttribute( eventName, "return;" );
- isSupported = ( typeof div[ eventName ] === "function" );
- }
- support[ i + "Bubbles" ] = isSupported;
- }
- }
-
- // Null connected elements to avoid leaks in IE
- testElement = fragment = select = opt = body = marginDiv = div = input = null;
-
- return support;
-})();
-
-// Keep track of boxModel
-jQuery.boxModel = jQuery.support.boxModel;
-
-
-
-
-var rbrace = /^(?:\{.*\}|\[.*\])$/,
- rmultiDash = /([A-Z])/g;
-
-jQuery.extend({
- cache: {},
-
- // Please use with caution
- uuid: 0,
-
- // Unique for each copy of jQuery on the page
- // Non-digits removed to match rinlinejQuery
- expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /\D/g, "" ),
-
- // The following elements throw uncatchable exceptions if you
- // attempt to add expando properties to them.
- noData: {
- "embed": true,
- // Ban all objects except for Flash (which handle expandos)
- "object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
- "applet": true
- },
-
- hasData: function( elem ) {
- elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ];
-
- return !!elem && !isEmptyDataObject( elem );
- },
-
- data: function( elem, name, data, pvt /* Internal Use Only */ ) {
- if ( !jQuery.acceptData( elem ) ) {
- return;
- }
-
- var thisCache, ret,
- internalKey = jQuery.expando,
- getByName = typeof name === "string",
-
- // We have to handle DOM nodes and JS objects differently because IE6-7
- // can't GC object references properly across the DOM-JS boundary
- isNode = elem.nodeType,
-
- // Only DOM nodes need the global jQuery cache; JS object data is
- // attached directly to the object so GC can occur automatically
- cache = isNode ? jQuery.cache : elem,
-
- // Only defining an ID for JS objects if its cache already exists allows
- // the code to shortcut on the same path as a DOM node with no cache
- id = isNode ? elem[ jQuery.expando ] : elem[ jQuery.expando ] && jQuery.expando;
-
- // Avoid doing any more work than we need to when trying to get data on an
- // object that has no data at all
- if ( (!id || (pvt && id && (cache[ id ] && !cache[ id ][ internalKey ]))) && getByName && data === undefined ) {
- return;
- }
-
- if ( !id ) {
- // Only DOM nodes need a new unique ID for each element since their data
- // ends up in the global cache
- if ( isNode ) {
- elem[ jQuery.expando ] = id = ++jQuery.uuid;
- } else {
- id = jQuery.expando;
- }
- }
-
- if ( !cache[ id ] ) {
- cache[ id ] = {};
-
- // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery
- // metadata on plain JS objects when the object is serialized using
- // JSON.stringify
- if ( !isNode ) {
- cache[ id ].toJSON = jQuery.noop;
- }
- }
-
- // An object can be passed to jQuery.data instead of a key/value pair; this gets
- // shallow copied over onto the existing cache
- if ( typeof name === "object" || typeof name === "function" ) {
- if ( pvt ) {
- cache[ id ][ internalKey ] = jQuery.extend(cache[ id ][ internalKey ], name);
- } else {
- cache[ id ] = jQuery.extend(cache[ id ], name);
- }
- }
-
- thisCache = cache[ id ];
-
- // Internal jQuery data is stored in a separate object inside the object's data
- // cache in order to avoid key collisions between internal data and user-defined
- // data
- if ( pvt ) {
- if ( !thisCache[ internalKey ] ) {
- thisCache[ internalKey ] = {};
- }
-
- thisCache = thisCache[ internalKey ];
- }
-
- if ( data !== undefined ) {
- thisCache[ jQuery.camelCase( name ) ] = data;
- }
-
- // TODO: This is a hack for 1.5 ONLY. It will be removed in 1.6. Users should
- // not attempt to inspect the internal events object using jQuery.data, as this
- // internal data object is undocumented and subject to change.
- if ( name === "events" && !thisCache[name] ) {
- return thisCache[ internalKey ] && thisCache[ internalKey ].events;
- }
-
- // Check for both converted-to-camel and non-converted data property names
- // If a data property was specified
- if ( getByName ) {
-
- // First Try to find as-is property data
- ret = thisCache[ name ];
-
- // Test for null|undefined property data
- if ( ret == null ) {
-
- // Try to find the camelCased property
- ret = thisCache[ jQuery.camelCase( name ) ];
- }
- } else {
- ret = thisCache;
- }
-
- return ret;
- },
-
- removeData: function( elem, name, pvt /* Internal Use Only */ ) {
- if ( !jQuery.acceptData( elem ) ) {
- return;
- }
-
- var thisCache,
-
- // Reference to internal data cache key
- internalKey = jQuery.expando,
-
- isNode = elem.nodeType,
-
- // See jQuery.data for more information
- cache = isNode ? jQuery.cache : elem,
-
- // See jQuery.data for more information
- id = isNode ? elem[ jQuery.expando ] : jQuery.expando;
-
- // If there is already no cache entry for this object, there is no
- // purpose in continuing
- if ( !cache[ id ] ) {
- return;
- }
-
- if ( name ) {
-
- thisCache = pvt ? cache[ id ][ internalKey ] : cache[ id ];
-
- if ( thisCache ) {
-
- // Support interoperable removal of hyphenated or camelcased keys
- if ( !thisCache[ name ] ) {
- name = jQuery.camelCase( name );
- }
-
- delete thisCache[ name ];
-
- // If there is no data left in the cache, we want to continue
- // and let the cache object itself get destroyed
- if ( !isEmptyDataObject(thisCache) ) {
- return;
- }
- }
- }
-
- // See jQuery.data for more information
- if ( pvt ) {
- delete cache[ id ][ internalKey ];
-
- // Don't destroy the parent cache unless the internal data object
- // had been the only thing left in it
- if ( !isEmptyDataObject(cache[ id ]) ) {
- return;
- }
- }
-
- var internalCache = cache[ id ][ internalKey ];
-
- // Browsers that fail expando deletion also refuse to delete expandos on
- // the window, but it will allow it on all other JS objects; other browsers
- // don't care
- // Ensure that `cache` is not a window object #10080
- if ( jQuery.support.deleteExpando || !cache.setInterval ) {
- delete cache[ id ];
- } else {
- cache[ id ] = null;
- }
-
- // We destroyed the entire user cache at once because it's faster than
- // iterating through each key, but we need to continue to persist internal
- // data if it existed
- if ( internalCache ) {
- cache[ id ] = {};
- // TODO: This is a hack for 1.5 ONLY. Avoids exposing jQuery
- // metadata on plain JS objects when the object is serialized using
- // JSON.stringify
- if ( !isNode ) {
- cache[ id ].toJSON = jQuery.noop;
- }
-
- cache[ id ][ internalKey ] = internalCache;
-
- // Otherwise, we need to eliminate the expando on the node to avoid
- // false lookups in the cache for entries that no longer exist
- } else if ( isNode ) {
- // IE does not allow us to delete expando properties from nodes,
- // nor does it have a removeAttribute function on Document nodes;
- // we must handle all of these cases
- if ( jQuery.support.deleteExpando ) {
- delete elem[ jQuery.expando ];
- } else if ( elem.removeAttribute ) {
- elem.removeAttribute( jQuery.expando );
- } else {
- elem[ jQuery.expando ] = null;
- }
- }
- },
-
- // For internal use only.
- _data: function( elem, name, data ) {
- return jQuery.data( elem, name, data, true );
- },
-
- // A method for determining if a DOM node can handle the data expando
- acceptData: function( elem ) {
- if ( elem.nodeName ) {
- var match = jQuery.noData[ elem.nodeName.toLowerCase() ];
-
- if ( match ) {
- return !(match === true || elem.getAttribute("classid") !== match);
- }
- }
-
- return true;
- }
-});
-
-jQuery.fn.extend({
- data: function( key, value ) {
- var data = null;
-
- if ( typeof key === "undefined" ) {
- if ( this.length ) {
- data = jQuery.data( this[0] );
-
- if ( this[0].nodeType === 1 ) {
- var attr = this[0].attributes, name;
- for ( var i = 0, l = attr.length; i < l; i++ ) {
- name = attr[i].name;
-
- if ( name.indexOf( "data-" ) === 0 ) {
- name = jQuery.camelCase( name.substring(5) );
-
- dataAttr( this[0], name, data[ name ] );
- }
- }
- }
- }
-
- return data;
-
- } else if ( typeof key === "object" ) {
- return this.each(function() {
- jQuery.data( this, key );
- });
- }
-
- var parts = key.split(".");
- parts[1] = parts[1] ? "." + parts[1] : "";
-
- if ( value === undefined ) {
- data = this.triggerHandler("getData" + parts[1] + "!", [parts[0]]);
-
- // Try to fetch any internally stored data first
- if ( data === undefined && this.length ) {
- data = jQuery.data( this[0], key );
- data = dataAttr( this[0], key, data );
- }
-
- return data === undefined && parts[1] ?
- this.data( parts[0] ) :
- data;
-
- } else {
- return this.each(function() {
- var $this = jQuery( this ),
- args = [ parts[0], value ];
-
- $this.triggerHandler( "setData" + parts[1] + "!", args );
- jQuery.data( this, key, value );
- $this.triggerHandler( "changeData" + parts[1] + "!", args );
- });
- }
- },
-
- removeData: function( key ) {
- return this.each(function() {
- jQuery.removeData( this, key );
- });
- }
-});
-
-function dataAttr( elem, key, data ) {
- // If nothing was found internally, try to fetch any
- // data from the HTML5 data-* attribute
- if ( data === undefined && elem.nodeType === 1 ) {
-
- var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
-
- data = elem.getAttribute( name );
-
- if ( typeof data === "string" ) {
- try {
- data = data === "true" ? true :
- data === "false" ? false :
- data === "null" ? null :
- !jQuery.isNaN( data ) ? parseFloat( data ) :
- rbrace.test( data ) ? jQuery.parseJSON( data ) :
- data;
- } catch( e ) {}
-
- // Make sure we set the data so it isn't changed later
- jQuery.data( elem, key, data );
-
- } else {
- data = undefined;
- }
- }
-
- return data;
-}
-
-// TODO: This is a hack for 1.5 ONLY to allow objects with a single toJSON
-// property to be considered empty objects; this property always exists in
-// order to make sure JSON.stringify does not expose internal metadata
-function isEmptyDataObject( obj ) {
- for ( var name in obj ) {
- if ( name !== "toJSON" ) {
- return false;
- }
- }
-
- return true;
-}
-
-
-
-
-function handleQueueMarkDefer( elem, type, src ) {
- var deferDataKey = type + "defer",
- queueDataKey = type + "queue",
- markDataKey = type + "mark",
- defer = jQuery.data( elem, deferDataKey, undefined, true );
- if ( defer &&
- ( src === "queue" || !jQuery.data( elem, queueDataKey, undefined, true ) ) &&
- ( src === "mark" || !jQuery.data( elem, markDataKey, undefined, true ) ) ) {
- // Give room for hard-coded callbacks to fire first
- // and eventually mark/queue something else on the element
- setTimeout( function() {
- if ( !jQuery.data( elem, queueDataKey, undefined, true ) &&
- !jQuery.data( elem, markDataKey, undefined, true ) ) {
- jQuery.removeData( elem, deferDataKey, true );
- defer.resolve();
- }
- }, 0 );
- }
-}
-
-jQuery.extend({
-
- _mark: function( elem, type ) {
- if ( elem ) {
- type = (type || "fx") + "mark";
- jQuery.data( elem, type, (jQuery.data(elem,type,undefined,true) || 0) + 1, true );
- }
- },
-
- _unmark: function( force, elem, type ) {
- if ( force !== true ) {
- type = elem;
- elem = force;
- force = false;
- }
- if ( elem ) {
- type = type || "fx";
- var key = type + "mark",
- count = force ? 0 : ( (jQuery.data( elem, key, undefined, true) || 1 ) - 1 );
- if ( count ) {
- jQuery.data( elem, key, count, true );
- } else {
- jQuery.removeData( elem, key, true );
- handleQueueMarkDefer( elem, type, "mark" );
- }
- }
- },
-
- queue: function( elem, type, data ) {
- if ( elem ) {
- type = (type || "fx") + "queue";
- var q = jQuery.data( elem, type, undefined, true );
- // Speed up dequeue by getting out quickly if this is just a lookup
- if ( data ) {
- if ( !q || jQuery.isArray(data) ) {
- q = jQuery.data( elem, type, jQuery.makeArray(data), true );
- } else {
- q.push( data );
- }
- }
- return q || [];
- }
- },
-
- dequeue: function( elem, type ) {
- type = type || "fx";
-
- var queue = jQuery.queue( elem, type ),
- fn = queue.shift(),
- defer;
-
- // If the fx queue is dequeued, always remove the progress sentinel
- if ( fn === "inprogress" ) {
- fn = queue.shift();
- }
-
- if ( fn ) {
- // Add a progress sentinel to prevent the fx queue from being
- // automatically dequeued
- if ( type === "fx" ) {
- queue.unshift("inprogress");
- }
-
- fn.call(elem, function() {
- jQuery.dequeue(elem, type);
- });
- }
-
- if ( !queue.length ) {
- jQuery.removeData( elem, type + "queue", true );
- handleQueueMarkDefer( elem, type, "queue" );
- }
- }
-});
-
-jQuery.fn.extend({
- queue: function( type, data ) {
- if ( typeof type !== "string" ) {
- data = type;
- type = "fx";
- }
-
- if ( data === undefined ) {
- return jQuery.queue( this[0], type );
- }
- return this.each(function() {
- var queue = jQuery.queue( this, type, data );
-
- if ( type === "fx" && queue[0] !== "inprogress" ) {
- jQuery.dequeue( this, type );
- }
- });
- },
- dequeue: function( type ) {
- return this.each(function() {
- jQuery.dequeue( this, type );
- });
- },
- // Based off of the plugin by Clint Helfers, with permission.
- // http://blindsignals.com/index.php/2009/07/jquery-delay/
- delay: function( time, type ) {
- time = jQuery.fx ? jQuery.fx.speeds[time] || time : time;
- type = type || "fx";
-
- return this.queue( type, function() {
- var elem = this;
- setTimeout(function() {
- jQuery.dequeue( elem, type );
- }, time );
- });
- },
- clearQueue: function( type ) {
- return this.queue( type || "fx", [] );
- },
- // Get a promise resolved when queues of a certain type
- // are emptied (fx is the type by default)
- promise: function( type, object ) {
- if ( typeof type !== "string" ) {
- object = type;
- type = undefined;
- }
- type = type || "fx";
- var defer = jQuery.Deferred(),
- elements = this,
- i = elements.length,
- count = 1,
- deferDataKey = type + "defer",
- queueDataKey = type + "queue",
- markDataKey = type + "mark",
- tmp;
- function resolve() {
- if ( !( --count ) ) {
- defer.resolveWith( elements, [ elements ] );
- }
- }
- while( i-- ) {
- if (( tmp = jQuery.data( elements[ i ], deferDataKey, undefined, true ) ||
- ( jQuery.data( elements[ i ], queueDataKey, undefined, true ) ||
- jQuery.data( elements[ i ], markDataKey, undefined, true ) ) &&
- jQuery.data( elements[ i ], deferDataKey, jQuery._Deferred(), true ) )) {
- count++;
- tmp.done( resolve );
- }
- }
- resolve();
- return defer.promise();
- }
-});
-
-
-
-
-var rclass = /[\n\t\r]/g,
- rspace = /\s+/,
- rreturn = /\r/g,
- rtype = /^(?:button|input)$/i,
- rfocusable = /^(?:button|input|object|select|textarea)$/i,
- rclickable = /^a(?:rea)?$/i,
- rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
- nodeHook, boolHook;
-
-jQuery.fn.extend({
- attr: function( name, value ) {
- return jQuery.access( this, name, value, true, jQuery.attr );
- },
-
- removeAttr: function( name ) {
- return this.each(function() {
- jQuery.removeAttr( this, name );
- });
- },
-
- prop: function( name, value ) {
- return jQuery.access( this, name, value, true, jQuery.prop );
- },
-
- removeProp: function( name ) {
- name = jQuery.propFix[ name ] || name;
- return this.each(function() {
- // try/catch handles cases where IE balks (such as removing a property on window)
- try {
- this[ name ] = undefined;
- delete this[ name ];
- } catch( e ) {}
- });
- },
-
- addClass: function( value ) {
- var classNames, i, l, elem,
- setClass, c, cl;
-
- if ( jQuery.isFunction( value ) ) {
- return this.each(function( j ) {
- jQuery( this ).addClass( value.call(this, j, this.className) );
- });
- }
-
- if ( value && typeof value === "string" ) {
- classNames = value.split( rspace );
-
- for ( i = 0, l = this.length; i < l; i++ ) {
- elem = this[ i ];
-
- if ( elem.nodeType === 1 ) {
- if ( !elem.className && classNames.length === 1 ) {
- elem.className = value;
-
- } else {
- setClass = " " + elem.className + " ";
-
- for ( c = 0, cl = classNames.length; c < cl; c++ ) {
- if ( !~setClass.indexOf( " " + classNames[ c ] + " " ) ) {
- setClass += classNames[ c ] + " ";
- }
- }
- elem.className = jQuery.trim( setClass );
- }
- }
- }
- }
-
- return this;
- },
-
- removeClass: function( value ) {
- var classNames, i, l, elem, className, c, cl;
-
- if ( jQuery.isFunction( value ) ) {
- return this.each(function( j ) {
- jQuery( this ).removeClass( value.call(this, j, this.className) );
- });
- }
-
- if ( (value && typeof value === "string") || value === undefined ) {
- classNames = (value || "").split( rspace );
-
- for ( i = 0, l = this.length; i < l; i++ ) {
- elem = this[ i ];
-
- if ( elem.nodeType === 1 && elem.className ) {
- if ( value ) {
- className = (" " + elem.className + " ").replace( rclass, " " );
- for ( c = 0, cl = classNames.length; c < cl; c++ ) {
- className = className.replace(" " + classNames[ c ] + " ", " ");
- }
- elem.className = jQuery.trim( className );
-
- } else {
- elem.className = "";
- }
- }
- }
- }
-
- return this;
- },
-
- toggleClass: function( value, stateVal ) {
- var type = typeof value,
- isBool = typeof stateVal === "boolean";
-
- if ( jQuery.isFunction( value ) ) {
- return this.each(function( i ) {
- jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
- });
- }
-
- return this.each(function() {
- if ( type === "string" ) {
- // toggle individual class names
- var className,
- i = 0,
- self = jQuery( this ),
- state = stateVal,
- classNames = value.split( rspace );
-
- while ( (className = classNames[ i++ ]) ) {
- // check each className given, space seperated list
- state = isBool ? state : !self.hasClass( className );
- self[ state ? "addClass" : "removeClass" ]( className );
- }
-
- } else if ( type === "undefined" || type === "boolean" ) {
- if ( this.className ) {
- // store className if set
- jQuery._data( this, "__className__", this.className );
- }
-
- // toggle whole className
- this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || "";
- }
- });
- },
-
- hasClass: function( selector ) {
- var className = " " + selector + " ";
- for ( var i = 0, l = this.length; i < l; i++ ) {
- if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
- return true;
- }
- }
-
- return false;
- },
-
- val: function( value ) {
- var hooks, ret,
- elem = this[0];
-
- if ( !arguments.length ) {
- if ( elem ) {
- hooks = jQuery.valHooks[ elem.nodeName.toLowerCase() ] || jQuery.valHooks[ elem.type ];
-
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
- return ret;
- }
-
- ret = elem.value;
-
- return typeof ret === "string" ?
- // handle most common string cases
- ret.replace(rreturn, "") :
- // handle cases where value is null/undef or number
- ret == null ? "" : ret;
- }
-
- return undefined;
- }
-
- var isFunction = jQuery.isFunction( value );
-
- return this.each(function( i ) {
- var self = jQuery(this), val;
-
- if ( this.nodeType !== 1 ) {
- return;
- }
-
- if ( isFunction ) {
- val = value.call( this, i, self.val() );
- } else {
- val = value;
- }
-
- // Treat null/undefined as ""; convert numbers to string
- if ( val == null ) {
- val = "";
- } else if ( typeof val === "number" ) {
- val += "";
- } else if ( jQuery.isArray( val ) ) {
- val = jQuery.map(val, function ( value ) {
- return value == null ? "" : value + "";
- });
- }
-
- hooks = jQuery.valHooks[ this.nodeName.toLowerCase() ] || jQuery.valHooks[ this.type ];
-
- // If set returns undefined, fall back to normal setting
- if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
- this.value = val;
- }
- });
- }
-});
-
-jQuery.extend({
- valHooks: {
- option: {
- get: function( elem ) {
- // attributes.value is undefined in Blackberry 4.7 but
- // uses .value. See #6932
- var val = elem.attributes.value;
- return !val || val.specified ? elem.value : elem.text;
- }
- },
- select: {
- get: function( elem ) {
- var value,
- index = elem.selectedIndex,
- values = [],
- options = elem.options,
- one = elem.type === "select-one";
-
- // Nothing was selected
- if ( index < 0 ) {
- return null;
- }
-
- // Loop through all the selected options
- for ( var i = one ? index : 0, max = one ? index + 1 : options.length; i < max; i++ ) {
- var option = options[ i ];
-
- // Don't return options that are disabled or in a disabled optgroup
- if ( option.selected && (jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null) &&
- (!option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" )) ) {
-
- // Get the specific value for the option
- value = jQuery( option ).val();
-
- // We don't need an array for one selects
- if ( one ) {
- return value;
- }
-
- // Multi-Selects return an array
- values.push( value );
- }
- }
-
- // Fixes Bug #2551 -- select.val() broken in IE after form.reset()
- if ( one && !values.length && options.length ) {
- return jQuery( options[ index ] ).val();
- }
-
- return values;
- },
-
- set: function( elem, value ) {
- var values = jQuery.makeArray( value );
-
- jQuery(elem).find("option").each(function() {
- this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
- });
-
- if ( !values.length ) {
- elem.selectedIndex = -1;
- }
- return values;
- }
- }
- },
-
- attrFn: {
- val: true,
- css: true,
- html: true,
- text: true,
- data: true,
- width: true,
- height: true,
- offset: true
- },
-
- attrFix: {
- // Always normalize to ensure hook usage
- tabindex: "tabIndex"
- },
-
- attr: function( elem, name, value, pass ) {
- var nType = elem.nodeType;
-
- // don't get/set attributes on text, comment and attribute nodes
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
- return undefined;
- }
-
- if ( pass && name in jQuery.attrFn ) {
- return jQuery( elem )[ name ]( value );
- }
-
- // Fallback to prop when attributes are not supported
- if ( !("getAttribute" in elem) ) {
- return jQuery.prop( elem, name, value );
- }
-
- var ret, hooks,
- notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
-
- // Normalize the name if needed
- if ( notxml ) {
- name = jQuery.attrFix[ name ] || name;
-
- hooks = jQuery.attrHooks[ name ];
-
- if ( !hooks ) {
- // Use boolHook for boolean attributes
- if ( rboolean.test( name ) ) {
- hooks = boolHook;
-
- // Use nodeHook if available( IE6/7 )
- } else if ( nodeHook ) {
- hooks = nodeHook;
- }
- }
- }
-
- if ( value !== undefined ) {
-
- if ( value === null ) {
- jQuery.removeAttr( elem, name );
- return undefined;
-
- } else if ( hooks && "set" in hooks && notxml && (ret = hooks.set( elem, value, name )) !== undefined ) {
- return ret;
-
- } else {
- elem.setAttribute( name, "" + value );
- return value;
- }
-
- } else if ( hooks && "get" in hooks && notxml && (ret = hooks.get( elem, name )) !== null ) {
- return ret;
-
- } else {
-
- ret = elem.getAttribute( name );
-
- // Non-existent attributes return null, we normalize to undefined
- return ret === null ?
- undefined :
- ret;
- }
- },
-
- removeAttr: function( elem, name ) {
- var propName;
- if ( elem.nodeType === 1 ) {
- name = jQuery.attrFix[ name ] || name;
-
- jQuery.attr( elem, name, "" );
- elem.removeAttribute( name );
-
- // Set corresponding property to false for boolean attributes
- if ( rboolean.test( name ) && (propName = jQuery.propFix[ name ] || name) in elem ) {
- elem[ propName ] = false;
- }
- }
- },
-
- attrHooks: {
- type: {
- set: function( elem, value ) {
- // We can't allow the type property to be changed (since it causes problems in IE)
- if ( rtype.test( elem.nodeName ) && elem.parentNode ) {
- jQuery.error( "type property can't be changed" );
- } else if ( !jQuery.support.radioValue && value === "radio" && jQuery.nodeName(elem, "input") ) {
- // Setting the type on a radio button after the value resets the value in IE6-9
- // Reset value to it's default in case type is set after value
- // This is for element creation
- var val = elem.value;
- elem.setAttribute( "type", value );
- if ( val ) {
- elem.value = val;
- }
- return value;
- }
- }
- },
- // Use the value property for back compat
- // Use the nodeHook for button elements in IE6/7 (#1954)
- value: {
- get: function( elem, name ) {
- if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
- return nodeHook.get( elem, name );
- }
- return name in elem ?
- elem.value :
- null;
- },
- set: function( elem, value, name ) {
- if ( nodeHook && jQuery.nodeName( elem, "button" ) ) {
- return nodeHook.set( elem, value, name );
- }
- // Does not return so that setAttribute is also used
- elem.value = value;
- }
- }
- },
-
- propFix: {
- tabindex: "tabIndex",
- readonly: "readOnly",
- "for": "htmlFor",
- "class": "className",
- maxlength: "maxLength",
- cellspacing: "cellSpacing",
- cellpadding: "cellPadding",
- rowspan: "rowSpan",
- colspan: "colSpan",
- usemap: "useMap",
- frameborder: "frameBorder",
- contenteditable: "contentEditable"
- },
-
- prop: function( elem, name, value ) {
- var nType = elem.nodeType;
-
- // don't get/set properties on text, comment and attribute nodes
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
- return undefined;
- }
-
- var ret, hooks,
- notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
-
- if ( notxml ) {
- // Fix name and attach hooks
- name = jQuery.propFix[ name ] || name;
- hooks = jQuery.propHooks[ name ];
- }
-
- if ( value !== undefined ) {
- if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
- return ret;
-
- } else {
- return (elem[ name ] = value);
- }
-
- } else {
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
- return ret;
-
- } else {
- return elem[ name ];
- }
- }
- },
-
- propHooks: {
- tabIndex: {
- get: function( elem ) {
- // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
- // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
- var attributeNode = elem.getAttributeNode("tabindex");
-
- return attributeNode && attributeNode.specified ?
- parseInt( attributeNode.value, 10 ) :
- rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
- 0 :
- undefined;
- }
- }
- }
-});
-
-// Add the tabindex propHook to attrHooks for back-compat
-jQuery.attrHooks.tabIndex = jQuery.propHooks.tabIndex;
-
-// Hook for boolean attributes
-boolHook = {
- get: function( elem, name ) {
- // Align boolean attributes with corresponding properties
- // Fall back to attribute presence where some booleans are not supported
- var attrNode;
- return jQuery.prop( elem, name ) === true || ( attrNode = elem.getAttributeNode( name ) ) && attrNode.nodeValue !== false ?
- name.toLowerCase() :
- undefined;
- },
- set: function( elem, value, name ) {
- var propName;
- if ( value === false ) {
- // Remove boolean attributes when set to false
- jQuery.removeAttr( elem, name );
- } else {
- // value is true since we know at this point it's type boolean and not false
- // Set boolean attributes to the same name and set the DOM property
- propName = jQuery.propFix[ name ] || name;
- if ( propName in elem ) {
- // Only set the IDL specifically if it already exists on the element
- elem[ propName ] = true;
- }
-
- elem.setAttribute( name, name.toLowerCase() );
- }
- return name;
- }
-};
-
-// IE6/7 do not support getting/setting some attributes with get/setAttribute
-if ( !jQuery.support.getSetAttribute ) {
-
- // Use this for any attribute in IE6/7
- // This fixes almost every IE6/7 issue
- nodeHook = jQuery.valHooks.button = {
- get: function( elem, name ) {
- var ret;
- ret = elem.getAttributeNode( name );
- // Return undefined if nodeValue is empty string
- return ret && ret.nodeValue !== "" ?
- ret.nodeValue :
- undefined;
- },
- set: function( elem, value, name ) {
- // Set the existing or create a new attribute node
- var ret = elem.getAttributeNode( name );
- if ( !ret ) {
- ret = document.createAttribute( name );
- elem.setAttributeNode( ret );
- }
- return (ret.nodeValue = value + "");
- }
- };
-
- // Set width and height to auto instead of 0 on empty string( Bug #8150 )
- // This is for removals
- jQuery.each([ "width", "height" ], function( i, name ) {
- jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
- set: function( elem, value ) {
- if ( value === "" ) {
- elem.setAttribute( name, "auto" );
- return value;
- }
- }
- });
- });
-}
-
-
-// Some attributes require a special call on IE
-if ( !jQuery.support.hrefNormalized ) {
- jQuery.each([ "href", "src", "width", "height" ], function( i, name ) {
- jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
- get: function( elem ) {
- var ret = elem.getAttribute( name, 2 );
- return ret === null ? undefined : ret;
- }
- });
- });
-}
-
-if ( !jQuery.support.style ) {
- jQuery.attrHooks.style = {
- get: function( elem ) {
- // Return undefined in the case of empty string
- // Normalize to lowercase since IE uppercases css property names
- return elem.style.cssText.toLowerCase() || undefined;
- },
- set: function( elem, value ) {
- return (elem.style.cssText = "" + value);
- }
- };
-}
-
-// Safari mis-reports the default selected property of an option
-// Accessing the parent's selectedIndex property fixes it
-if ( !jQuery.support.optSelected ) {
- jQuery.propHooks.selected = jQuery.extend( jQuery.propHooks.selected, {
- get: function( elem ) {
- var parent = elem.parentNode;
-
- if ( parent ) {
- parent.selectedIndex;
-
- // Make sure that it also works with optgroups, see #5701
- if ( parent.parentNode ) {
- parent.parentNode.selectedIndex;
- }
- }
- return null;
- }
- });
-}
-
-// Radios and checkboxes getter/setter
-if ( !jQuery.support.checkOn ) {
- jQuery.each([ "radio", "checkbox" ], function() {
- jQuery.valHooks[ this ] = {
- get: function( elem ) {
- // Handle the case where in Webkit "" is returned instead of "on" if a value isn't specified
- return elem.getAttribute("value") === null ? "on" : elem.value;
- }
- };
- });
-}
-jQuery.each([ "radio", "checkbox" ], function() {
- jQuery.valHooks[ this ] = jQuery.extend( jQuery.valHooks[ this ], {
- set: function( elem, value ) {
- if ( jQuery.isArray( value ) ) {
- return (elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0);
- }
- }
- });
-});
-
-
-
-
-var rnamespaces = /\.(.*)$/,
- rformElems = /^(?:textarea|input|select)$/i,
- rperiod = /\./g,
- rspaces = / /g,
- rescape = /[^\w\s.|`]/g,
- fcleanup = function( nm ) {
- return nm.replace(rescape, "\\$&");
- };
-
-/*
- * A number of helper functions used for managing events.
- * Many of the ideas behind this code originated from
- * Dean Edwards' addEvent library.
- */
-jQuery.event = {
-
- // Bind an event to an element
- // Original by Dean Edwards
- add: function( elem, types, handler, data ) {
- if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
- return;
- }
-
- if ( handler === false ) {
- handler = returnFalse;
- } else if ( !handler ) {
- // Fixes bug #7229. Fix recommended by jdalton
- return;
- }
-
- var handleObjIn, handleObj;
-
- if ( handler.handler ) {
- handleObjIn = handler;
- handler = handleObjIn.handler;
- }
-
- // Make sure that the function being executed has a unique ID
- if ( !handler.guid ) {
- handler.guid = jQuery.guid++;
- }
-
- // Init the element's event structure
- var elemData = jQuery._data( elem );
-
- // If no elemData is found then we must be trying to bind to one of the
- // banned noData elements
- if ( !elemData ) {
- return;
- }
-
- var events = elemData.events,
- eventHandle = elemData.handle;
-
- if ( !events ) {
- elemData.events = events = {};
- }
-
- if ( !eventHandle ) {
- elemData.handle = eventHandle = function( e ) {
- // Discard the second event of a jQuery.event.trigger() and
- // when an event is called after a page has unloaded
- return typeof jQuery !== "undefined" && (!e || jQuery.event.triggered !== e.type) ?
- jQuery.event.handle.apply( eventHandle.elem, arguments ) :
- undefined;
- };
- }
-
- // Add elem as a property of the handle function
- // This is to prevent a memory leak with non-native events in IE.
- eventHandle.elem = elem;
-
- // Handle multiple events separated by a space
- // jQuery(...).bind("mouseover mouseout", fn);
- types = types.split(" ");
-
- var type, i = 0, namespaces;
-
- while ( (type = types[ i++ ]) ) {
- handleObj = handleObjIn ?
- jQuery.extend({}, handleObjIn) :
- { handler: handler, data: data };
-
- // Namespaced event handlers
- if ( type.indexOf(".") > -1 ) {
- namespaces = type.split(".");
- type = namespaces.shift();
- handleObj.namespace = namespaces.slice(0).sort().join(".");
-
- } else {
- namespaces = [];
- handleObj.namespace = "";
- }
-
- handleObj.type = type;
- if ( !handleObj.guid ) {
- handleObj.guid = handler.guid;
- }
-
- // Get the current list of functions bound to this event
- var handlers = events[ type ],
- special = jQuery.event.special[ type ] || {};
-
- // Init the event handler queue
- if ( !handlers ) {
- handlers = events[ type ] = [];
-
- // Check for a special event handler
- // Only use addEventListener/attachEvent if the special
- // events handler returns false
- if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
- // Bind the global event handler to the element
- if ( elem.addEventListener ) {
- elem.addEventListener( type, eventHandle, false );
-
- } else if ( elem.attachEvent ) {
- elem.attachEvent( "on" + type, eventHandle );
- }
- }
- }
-
- if ( special.add ) {
- special.add.call( elem, handleObj );
-
- if ( !handleObj.handler.guid ) {
- handleObj.handler.guid = handler.guid;
- }
- }
-
- // Add the function to the element's handler list
- handlers.push( handleObj );
-
- // Keep track of which events have been used, for event optimization
- jQuery.event.global[ type ] = true;
- }
-
- // Nullify elem to prevent memory leaks in IE
- elem = null;
- },
-
- global: {},
-
- // Detach an event or set of events from an element
- remove: function( elem, types, handler, pos ) {
- // don't do events on text and comment nodes
- if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
- return;
- }
-
- if ( handler === false ) {
- handler = returnFalse;
- }
-
- var ret, type, fn, j, i = 0, all, namespaces, namespace, special, eventType, handleObj, origType,
- elemData = jQuery.hasData( elem ) && jQuery._data( elem ),
- events = elemData && elemData.events;
-
- if ( !elemData || !events ) {
- return;
- }
-
- // types is actually an event object here
- if ( types && types.type ) {
- handler = types.handler;
- types = types.type;
- }
-
- // Unbind all events for the element
- if ( !types || typeof types === "string" && types.charAt(0) === "." ) {
- types = types || "";
-
- for ( type in events ) {
- jQuery.event.remove( elem, type + types );
- }
-
- return;
- }
-
- // Handle multiple events separated by a space
- // jQuery(...).unbind("mouseover mouseout", fn);
- types = types.split(" ");
-
- while ( (type = types[ i++ ]) ) {
- origType = type;
- handleObj = null;
- all = type.indexOf(".") < 0;
- namespaces = [];
-
- if ( !all ) {
- // Namespaced event handlers
- namespaces = type.split(".");
- type = namespaces.shift();
-
- namespace = new RegExp("(^|\\.)" +
- jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(?:.*\\.)?") + "(\\.|$)");
- }
-
- eventType = events[ type ];
-
- if ( !eventType ) {
- continue;
- }
-
- if ( !handler ) {
- for ( j = 0; j < eventType.length; j++ ) {
- handleObj = eventType[ j ];
-
- if ( all || namespace.test( handleObj.namespace ) ) {
- jQuery.event.remove( elem, origType, handleObj.handler, j );
- eventType.splice( j--, 1 );
- }
- }
-
- continue;
- }
-
- special = jQuery.event.special[ type ] || {};
-
- for ( j = pos || 0; j < eventType.length; j++ ) {
- handleObj = eventType[ j ];
-
- if ( handler.guid === handleObj.guid ) {
- // remove the given handler for the given type
- if ( all || namespace.test( handleObj.namespace ) ) {
- if ( pos == null ) {
- eventType.splice( j--, 1 );
- }
-
- if ( special.remove ) {
- special.remove.call( elem, handleObj );
- }
- }
-
- if ( pos != null ) {
- break;
- }
- }
- }
-
- // remove generic event handler if no more handlers exist
- if ( eventType.length === 0 || pos != null && eventType.length === 1 ) {
- if ( !special.teardown || special.teardown.call( elem, namespaces ) === false ) {
- jQuery.removeEvent( elem, type, elemData.handle );
- }
-
- ret = null;
- delete events[ type ];
- }
- }
-
- // Remove the expando if it's no longer used
- if ( jQuery.isEmptyObject( events ) ) {
- var handle = elemData.handle;
- if ( handle ) {
- handle.elem = null;
- }
-
- delete elemData.events;
- delete elemData.handle;
-
- if ( jQuery.isEmptyObject( elemData ) ) {
- jQuery.removeData( elem, undefined, true );
- }
- }
- },
-
- // Events that are safe to short-circuit if no handlers are attached.
- // Native DOM events should not be added, they may have inline handlers.
- customEvent: {
- "getData": true,
- "setData": true,
- "changeData": true
- },
-
- trigger: function( event, data, elem, onlyHandlers ) {
- // Event object or event type
- var type = event.type || event,
- namespaces = [],
- exclusive;
-
- if ( type.indexOf("!") >= 0 ) {
- // Exclusive events trigger only for the exact event (no namespaces)
- type = type.slice(0, -1);
- exclusive = true;
- }
-
- if ( type.indexOf(".") >= 0 ) {
- // Namespaced trigger; create a regexp to match event type in handle()
- namespaces = type.split(".");
- type = namespaces.shift();
- namespaces.sort();
- }
-
- if ( (!elem || jQuery.event.customEvent[ type ]) && !jQuery.event.global[ type ] ) {
- // No jQuery handlers for this event type, and it can't have inline handlers
- return;
- }
-
- // Caller can pass in an Event, Object, or just an event type string
- event = typeof event === "object" ?
- // jQuery.Event object
- event[ jQuery.expando ] ? event :
- // Object literal
- new jQuery.Event( type, event ) :
- // Just the event type (string)
- new jQuery.Event( type );
-
- event.type = type;
- event.exclusive = exclusive;
- event.namespace = namespaces.join(".");
- event.namespace_re = new RegExp("(^|\\.)" + namespaces.join("\\.(?:.*\\.)?") + "(\\.|$)");
-
- // triggerHandler() and global events don't bubble or run the default action
- if ( onlyHandlers || !elem ) {
- event.preventDefault();
- event.stopPropagation();
- }
-
- // Handle a global trigger
- if ( !elem ) {
- // TODO: Stop taunting the data cache; remove global events and always attach to document
- jQuery.each( jQuery.cache, function() {
- // internalKey variable is just used to make it easier to find
- // and potentially change this stuff later; currently it just
- // points to jQuery.expando
- var internalKey = jQuery.expando,
- internalCache = this[ internalKey ];
- if ( internalCache && internalCache.events && internalCache.events[ type ] ) {
- jQuery.event.trigger( event, data, internalCache.handle.elem );
- }
- });
- return;
- }
-
- // Don't do events on text and comment nodes
- if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
- return;
- }
-
- // Clean up the event in case it is being reused
- event.result = undefined;
- event.target = elem;
-
- // Clone any incoming data and prepend the event, creating the handler arg list
- data = data != null ? jQuery.makeArray( data ) : [];
- data.unshift( event );
-
- var cur = elem,
- // IE doesn't like method names with a colon (#3533, #8272)
- ontype = type.indexOf(":") < 0 ? "on" + type : "";
-
- // Fire event on the current element, then bubble up the DOM tree
- do {
- var handle = jQuery._data( cur, "handle" );
-
- event.currentTarget = cur;
- if ( handle ) {
- handle.apply( cur, data );
- }
-
- // Trigger an inline bound script
- if ( ontype && jQuery.acceptData( cur ) && cur[ ontype ] && cur[ ontype ].apply( cur, data ) === false ) {
- event.result = false;
- event.preventDefault();
- }
-
- // Bubble up to document, then to window
- cur = cur.parentNode || cur.ownerDocument || cur === event.target.ownerDocument && window;
- } while ( cur && !event.isPropagationStopped() );
-
- // If nobody prevented the default action, do it now
- if ( !event.isDefaultPrevented() ) {
- var old,
- special = jQuery.event.special[ type ] || {};
-
- if ( (!special._default || special._default.call( elem.ownerDocument, event ) === false) &&
- !(type === "click" && jQuery.nodeName( elem, "a" )) && jQuery.acceptData( elem ) ) {
-
- // Call a native DOM method on the target with the same name name as the event.
- // Can't use an .isFunction)() check here because IE6/7 fails that test.
- // IE<9 dies on focus to hidden element (#1486), may want to revisit a try/catch.
- try {
- if ( ontype && elem[ type ] ) {
- // Don't re-trigger an onFOO event when we call its FOO() method
- old = elem[ ontype ];
-
- if ( old ) {
- elem[ ontype ] = null;
- }
-
- jQuery.event.triggered = type;
- elem[ type ]();
- }
- } catch ( ieError ) {}
-
- if ( old ) {
- elem[ ontype ] = old;
- }
-
- jQuery.event.triggered = undefined;
- }
- }
-
- return event.result;
- },
-
- handle: function( event ) {
- event = jQuery.event.fix( event || window.event );
- // Snapshot the handlers list since a called handler may add/remove events.
- var handlers = ((jQuery._data( this, "events" ) || {})[ event.type ] || []).slice(0),
- run_all = !event.exclusive && !event.namespace,
- args = Array.prototype.slice.call( arguments, 0 );
-
- // Use the fix-ed Event rather than the (read-only) native event
- args[0] = event;
- event.currentTarget = this;
-
- for ( var j = 0, l = handlers.length; j < l; j++ ) {
- var handleObj = handlers[ j ];
-
- // Triggered event must 1) be non-exclusive and have no namespace, or
- // 2) have namespace(s) a subset or equal to those in the bound event.
- if ( run_all || event.namespace_re.test( handleObj.namespace ) ) {
- // Pass in a reference to the handler function itself
- // So that we can later remove it
- event.handler = handleObj.handler;
- event.data = handleObj.data;
- event.handleObj = handleObj;
-
- var ret = handleObj.handler.apply( this, args );
-
- if ( ret !== undefined ) {
- event.result = ret;
- if ( ret === false ) {
- event.preventDefault();
- event.stopPropagation();
- }
- }
-
- if ( event.isImmediatePropagationStopped() ) {
- break;
- }
- }
- }
- return event.result;
- },
-
- props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
-
- fix: function( event ) {
- if ( event[ jQuery.expando ] ) {
- return event;
- }
-
- // store a copy of the original event object
- // and "clone" to set read-only properties
- var originalEvent = event;
- event = jQuery.Event( originalEvent );
-
- for ( var i = this.props.length, prop; i; ) {
- prop = this.props[ --i ];
- event[ prop ] = originalEvent[ prop ];
- }
-
- // Fix target property, if necessary
- if ( !event.target ) {
- // Fixes #1925 where srcElement might not be defined either
- event.target = event.srcElement || document;
- }
-
- // check if target is a textnode (safari)
- if ( event.target.nodeType === 3 ) {
- event.target = event.target.parentNode;
- }
-
- // Add relatedTarget, if necessary
- if ( !event.relatedTarget && event.fromElement ) {
- event.relatedTarget = event.fromElement === event.target ? event.toElement : event.fromElement;
- }
-
- // Calculate pageX/Y if missing and clientX/Y available
- if ( event.pageX == null && event.clientX != null ) {
- var eventDocument = event.target.ownerDocument || document,
- doc = eventDocument.documentElement,
- body = eventDocument.body;
-
- event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
- event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);
- }
-
- // Add which for key events
- if ( event.which == null && (event.charCode != null || event.keyCode != null) ) {
- event.which = event.charCode != null ? event.charCode : event.keyCode;
- }
-
- // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs)
- if ( !event.metaKey && event.ctrlKey ) {
- event.metaKey = event.ctrlKey;
- }
-
- // Add which for click: 1 === left; 2 === middle; 3 === right
- // Note: button is not normalized, so don't use it
- if ( !event.which && event.button !== undefined ) {
- event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));
- }
-
- return event;
- },
-
- // Deprecated, use jQuery.guid instead
- guid: 1E8,
-
- // Deprecated, use jQuery.proxy instead
- proxy: jQuery.proxy,
-
- special: {
- ready: {
- // Make sure the ready event is setup
- setup: jQuery.bindReady,
- teardown: jQuery.noop
- },
-
- live: {
- add: function( handleObj ) {
- jQuery.event.add( this,
- liveConvert( handleObj.origType, handleObj.selector ),
- jQuery.extend({}, handleObj, {handler: liveHandler, guid: handleObj.handler.guid}) );
- },
-
- remove: function( handleObj ) {
- jQuery.event.remove( this, liveConvert( handleObj.origType, handleObj.selector ), handleObj );
- }
- },
-
- beforeunload: {
- setup: function( data, namespaces, eventHandle ) {
- // We only want to do this special case on windows
- if ( jQuery.isWindow( this ) ) {
- this.onbeforeunload = eventHandle;
- }
- },
-
- teardown: function( namespaces, eventHandle ) {
- if ( this.onbeforeunload === eventHandle ) {
- this.onbeforeunload = null;
- }
- }
- }
- }
-};
-
-jQuery.removeEvent = document.removeEventListener ?
- function( elem, type, handle ) {
- if ( elem.removeEventListener ) {
- elem.removeEventListener( type, handle, false );
- }
- } :
- function( elem, type, handle ) {
- if ( elem.detachEvent ) {
- elem.detachEvent( "on" + type, handle );
- }
- };
-
-jQuery.Event = function( src, props ) {
- // Allow instantiation without the 'new' keyword
- if ( !this.preventDefault ) {
- return new jQuery.Event( src, props );
- }
-
- // Event object
- if ( src && src.type ) {
- this.originalEvent = src;
- this.type = src.type;
-
- // Events bubbling up the document may have been marked as prevented
- // by a handler lower down the tree; reflect the correct value.
- this.isDefaultPrevented = (src.defaultPrevented || src.returnValue === false ||
- src.getPreventDefault && src.getPreventDefault()) ? returnTrue : returnFalse;
-
- // Event type
- } else {
- this.type = src;
- }
-
- // Put explicitly provided properties onto the event object
- if ( props ) {
- jQuery.extend( this, props );
- }
-
- // timeStamp is buggy for some events on Firefox(#3843)
- // So we won't rely on the native value
- this.timeStamp = jQuery.now();
-
- // Mark it as fixed
- this[ jQuery.expando ] = true;
-};
-
-function returnFalse() {
- return false;
-}
-function returnTrue() {
- return true;
-}
-
-// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding
-// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html
-jQuery.Event.prototype = {
- preventDefault: function() {
- this.isDefaultPrevented = returnTrue;
-
- var e = this.originalEvent;
- if ( !e ) {
- return;
- }
-
- // if preventDefault exists run it on the original event
- if ( e.preventDefault ) {
- e.preventDefault();
-
- // otherwise set the returnValue property of the original event to false (IE)
- } else {
- e.returnValue = false;
- }
- },
- stopPropagation: function() {
- this.isPropagationStopped = returnTrue;
-
- var e = this.originalEvent;
- if ( !e ) {
- return;
- }
- // if stopPropagation exists run it on the original event
- if ( e.stopPropagation ) {
- e.stopPropagation();
- }
- // otherwise set the cancelBubble property of the original event to true (IE)
- e.cancelBubble = true;
- },
- stopImmediatePropagation: function() {
- this.isImmediatePropagationStopped = returnTrue;
- this.stopPropagation();
- },
- isDefaultPrevented: returnFalse,
- isPropagationStopped: returnFalse,
- isImmediatePropagationStopped: returnFalse
-};
-
-// Checks if an event happened on an element within another element
-// Used in jQuery.event.special.mouseenter and mouseleave handlers
-var withinElement = function( event ) {
-
- // Check if mouse(over|out) are still within the same parent element
- var related = event.relatedTarget,
- inside = false,
- eventType = event.type;
-
- event.type = event.data;
-
- if ( related !== this ) {
-
- if ( related ) {
- inside = jQuery.contains( this, related );
- }
-
- if ( !inside ) {
-
- jQuery.event.handle.apply( this, arguments );
-
- event.type = eventType;
- }
- }
-},
-
-// In case of event delegation, we only need to rename the event.type,
-// liveHandler will take care of the rest.
-delegate = function( event ) {
- event.type = event.data;
- jQuery.event.handle.apply( this, arguments );
-};
-
-// Create mouseenter and mouseleave events
-jQuery.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout"
-}, function( orig, fix ) {
- jQuery.event.special[ orig ] = {
- setup: function( data ) {
- jQuery.event.add( this, fix, data && data.selector ? delegate : withinElement, orig );
- },
- teardown: function( data ) {
- jQuery.event.remove( this, fix, data && data.selector ? delegate : withinElement );
- }
- };
-});
-
-// submit delegation
-if ( !jQuery.support.submitBubbles ) {
-
- jQuery.event.special.submit = {
- setup: function( data, namespaces ) {
- if ( !jQuery.nodeName( this, "form" ) ) {
- jQuery.event.add(this, "click.specialSubmit", function( e ) {
- // Avoid triggering error on non-existent type attribute in IE VML (#7071)
- var elem = e.target,
- type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : "";
-
- if ( (type === "submit" || type === "image") && jQuery( elem ).closest("form").length ) {
- trigger( "submit", this, arguments );
- }
- });
-
- jQuery.event.add(this, "keypress.specialSubmit", function( e ) {
- var elem = e.target,
- type = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.type : "";
-
- if ( (type === "text" || type === "password") && jQuery( elem ).closest("form").length && e.keyCode === 13 ) {
- trigger( "submit", this, arguments );
- }
- });
-
- } else {
- return false;
- }
- },
-
- teardown: function( namespaces ) {
- jQuery.event.remove( this, ".specialSubmit" );
- }
- };
-
-}
-
-// change delegation, happens here so we have bind.
-if ( !jQuery.support.changeBubbles ) {
-
- var changeFilters,
-
- getVal = function( elem ) {
- var type = jQuery.nodeName( elem, "input" ) ? elem.type : "",
- val = elem.value;
-
- if ( type === "radio" || type === "checkbox" ) {
- val = elem.checked;
-
- } else if ( type === "select-multiple" ) {
- val = elem.selectedIndex > -1 ?
- jQuery.map( elem.options, function( elem ) {
- return elem.selected;
- }).join("-") :
- "";
-
- } else if ( jQuery.nodeName( elem, "select" ) ) {
- val = elem.selectedIndex;
- }
-
- return val;
- },
-
- testChange = function testChange( e ) {
- var elem = e.target, data, val;
-
- if ( !rformElems.test( elem.nodeName ) || elem.readOnly ) {
- return;
- }
-
- data = jQuery._data( elem, "_change_data" );
- val = getVal(elem);
-
- // the current data will be also retrieved by beforeactivate
- if ( e.type !== "focusout" || elem.type !== "radio" ) {
- jQuery._data( elem, "_change_data", val );
- }
-
- if ( data === undefined || val === data ) {
- return;
- }
-
- if ( data != null || val ) {
- e.type = "change";
- e.liveFired = undefined;
- jQuery.event.trigger( e, arguments[1], elem );
- }
- };
-
- jQuery.event.special.change = {
- filters: {
- focusout: testChange,
-
- beforedeactivate: testChange,
-
- click: function( e ) {
- var elem = e.target, type = jQuery.nodeName( elem, "input" ) ? elem.type : "";
-
- if ( type === "radio" || type === "checkbox" || jQuery.nodeName( elem, "select" ) ) {
- testChange.call( this, e );
- }
- },
-
- // Change has to be called before submit
- // Keydown will be called before keypress, which is used in submit-event delegation
- keydown: function( e ) {
- var elem = e.target, type = jQuery.nodeName( elem, "input" ) ? elem.type : "";
-
- if ( (e.keyCode === 13 && !jQuery.nodeName( elem, "textarea" ) ) ||
- (e.keyCode === 32 && (type === "checkbox" || type === "radio")) ||
- type === "select-multiple" ) {
- testChange.call( this, e );
- }
- },
-
- // Beforeactivate happens also before the previous element is blurred
- // with this event you can't trigger a change event, but you can store
- // information
- beforeactivate: function( e ) {
- var elem = e.target;
- jQuery._data( elem, "_change_data", getVal(elem) );
- }
- },
-
- setup: function( data, namespaces ) {
- if ( this.type === "file" ) {
- return false;
- }
-
- for ( var type in changeFilters ) {
- jQuery.event.add( this, type + ".specialChange", changeFilters[type] );
- }
-
- return rformElems.test( this.nodeName );
- },
-
- teardown: function( namespaces ) {
- jQuery.event.remove( this, ".specialChange" );
-
- return rformElems.test( this.nodeName );
- }
- };
-
- changeFilters = jQuery.event.special.change.filters;
-
- // Handle when the input is .focus()'d
- changeFilters.focus = changeFilters.beforeactivate;
-}
-
-function trigger( type, elem, args ) {
- // Piggyback on a donor event to simulate a different one.
- // Fake originalEvent to avoid donor's stopPropagation, but if the
- // simulated event prevents default then we do the same on the donor.
- // Don't pass args or remember liveFired; they apply to the donor event.
- var event = jQuery.extend( {}, args[ 0 ] );
- event.type = type;
- event.originalEvent = {};
- event.liveFired = undefined;
- jQuery.event.handle.call( elem, event );
- if ( event.isDefaultPrevented() ) {
- args[ 0 ].preventDefault();
- }
-}
-
-// Create "bubbling" focus and blur events
-if ( !jQuery.support.focusinBubbles ) {
- jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
-
- // Attach a single capturing handler while someone wants focusin/focusout
- var attaches = 0;
-
- jQuery.event.special[ fix ] = {
- setup: function() {
- if ( attaches++ === 0 ) {
- document.addEventListener( orig, handler, true );
- }
- },
- teardown: function() {
- if ( --attaches === 0 ) {
- document.removeEventListener( orig, handler, true );
- }
- }
- };
-
- function handler( donor ) {
- // Donor event is always a native one; fix it and switch its type.
- // Let focusin/out handler cancel the donor focus/blur event.
- var e = jQuery.event.fix( donor );
- e.type = fix;
- e.originalEvent = {};
- jQuery.event.trigger( e, null, e.target );
- if ( e.isDefaultPrevented() ) {
- donor.preventDefault();
- }
- }
- });
-}
-
-jQuery.each(["bind", "one"], function( i, name ) {
- jQuery.fn[ name ] = function( type, data, fn ) {
- var handler;
-
- // Handle object literals
- if ( typeof type === "object" ) {
- for ( var key in type ) {
- this[ name ](key, data, type[key], fn);
- }
- return this;
- }
-
- if ( arguments.length === 2 || data === false ) {
- fn = data;
- data = undefined;
- }
-
- if ( name === "one" ) {
- handler = function( event ) {
- jQuery( this ).unbind( event, handler );
- return fn.apply( this, arguments );
- };
- handler.guid = fn.guid || jQuery.guid++;
- } else {
- handler = fn;
- }
-
- if ( type === "unload" && name !== "one" ) {
- this.one( type, data, fn );
-
- } else {
- for ( var i = 0, l = this.length; i < l; i++ ) {
- jQuery.event.add( this[i], type, handler, data );
- }
- }
-
- return this;
- };
-});
-
-jQuery.fn.extend({
- unbind: function( type, fn ) {
- // Handle object literals
- if ( typeof type === "object" && !type.preventDefault ) {
- for ( var key in type ) {
- this.unbind(key, type[key]);
- }
-
- } else {
- for ( var i = 0, l = this.length; i < l; i++ ) {
- jQuery.event.remove( this[i], type, fn );
- }
- }
-
- return this;
- },
-
- delegate: function( selector, types, data, fn ) {
- return this.live( types, data, fn, selector );
- },
-
- undelegate: function( selector, types, fn ) {
- if ( arguments.length === 0 ) {
- return this.unbind( "live" );
-
- } else {
- return this.die( types, null, fn, selector );
- }
- },
-
- trigger: function( type, data ) {
- return this.each(function() {
- jQuery.event.trigger( type, data, this );
- });
- },
-
- triggerHandler: function( type, data ) {
- if ( this[0] ) {
- return jQuery.event.trigger( type, data, this[0], true );
- }
- },
-
- toggle: function( fn ) {
- // Save reference to arguments for access in closure
- var args = arguments,
- guid = fn.guid || jQuery.guid++,
- i = 0,
- toggler = function( event ) {
- // Figure out which function to execute
- var lastToggle = ( jQuery.data( this, "lastToggle" + fn.guid ) || 0 ) % i;
- jQuery.data( this, "lastToggle" + fn.guid, lastToggle + 1 );
-
- // Make sure that clicks stop
- event.preventDefault();
-
- // and execute the function
- return args[ lastToggle ].apply( this, arguments ) || false;
- };
-
- // link all the functions, so any of them can unbind this click handler
- toggler.guid = guid;
- while ( i < args.length ) {
- args[ i++ ].guid = guid;
- }
-
- return this.click( toggler );
- },
-
- hover: function( fnOver, fnOut ) {
- return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
- }
-});
-
-var liveMap = {
- focus: "focusin",
- blur: "focusout",
- mouseenter: "mouseover",
- mouseleave: "mouseout"
-};
-
-jQuery.each(["live", "die"], function( i, name ) {
- jQuery.fn[ name ] = function( types, data, fn, origSelector /* Internal Use Only */ ) {
- var type, i = 0, match, namespaces, preType,
- selector = origSelector || this.selector,
- context = origSelector ? this : jQuery( this.context );
-
- if ( typeof types === "object" && !types.preventDefault ) {
- for ( var key in types ) {
- context[ name ]( key, data, types[key], selector );
- }
-
- return this;
- }
-
- if ( name === "die" && !types &&
- origSelector && origSelector.charAt(0) === "." ) {
-
- context.unbind( origSelector );
-
- return this;
- }
-
- if ( data === false || jQuery.isFunction( data ) ) {
- fn = data || returnFalse;
- data = undefined;
- }
-
- types = (types || "").split(" ");
-
- while ( (type = types[ i++ ]) != null ) {
- match = rnamespaces.exec( type );
- namespaces = "";
-
- if ( match ) {
- namespaces = match[0];
- type = type.replace( rnamespaces, "" );
- }
-
- if ( type === "hover" ) {
- types.push( "mouseenter" + namespaces, "mouseleave" + namespaces );
- continue;
- }
-
- preType = type;
-
- if ( liveMap[ type ] ) {
- types.push( liveMap[ type ] + namespaces );
- type = type + namespaces;
-
- } else {
- type = (liveMap[ type ] || type) + namespaces;
- }
-
- if ( name === "live" ) {
- // bind live handler
- for ( var j = 0, l = context.length; j < l; j++ ) {
- jQuery.event.add( context[j], "live." + liveConvert( type, selector ),
- { data: data, selector: selector, handler: fn, origType: type, origHandler: fn, preType: preType } );
- }
-
- } else {
- // unbind live handler
- context.unbind( "live." + liveConvert( type, selector ), fn );
- }
- }
-
- return this;
- };
-});
-
-function liveHandler( event ) {
- var stop, maxLevel, related, match, handleObj, elem, j, i, l, data, close, namespace, ret,
- elems = [],
- selectors = [],
- events = jQuery._data( this, "events" );
-
- // Make sure we avoid non-left-click bubbling in Firefox (#3861) and disabled elements in IE (#6911)
- if ( event.liveFired === this || !events || !events.live || event.target.disabled || event.button && event.type === "click" ) {
- return;
- }
-
- if ( event.namespace ) {
- namespace = new RegExp("(^|\\.)" + event.namespace.split(".").join("\\.(?:.*\\.)?") + "(\\.|$)");
- }
-
- event.liveFired = this;
-
- var live = events.live.slice(0);
-
- for ( j = 0; j < live.length; j++ ) {
- handleObj = live[j];
-
- if ( handleObj.origType.replace( rnamespaces, "" ) === event.type ) {
- selectors.push( handleObj.selector );
-
- } else {
- live.splice( j--, 1 );
- }
- }
-
- match = jQuery( event.target ).closest( selectors, event.currentTarget );
-
- for ( i = 0, l = match.length; i < l; i++ ) {
- close = match[i];
-
- for ( j = 0; j < live.length; j++ ) {
- handleObj = live[j];
-
- if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) && !close.elem.disabled ) {
- elem = close.elem;
- related = null;
-
- // Those two events require additional checking
- if ( handleObj.preType === "mouseenter" || handleObj.preType === "mouseleave" ) {
- event.type = handleObj.preType;
- related = jQuery( event.relatedTarget ).closest( handleObj.selector )[0];
-
- // Make sure not to accidentally match a child element with the same selector
- if ( related && jQuery.contains( elem, related ) ) {
- related = elem;
- }
- }
-
- if ( !related || related !== elem ) {
- elems.push({ elem: elem, handleObj: handleObj, level: close.level });
- }
- }
- }
- }
-
- for ( i = 0, l = elems.length; i < l; i++ ) {
- match = elems[i];
-
- if ( maxLevel && match.level > maxLevel ) {
- break;
- }
-
- event.currentTarget = match.elem;
- event.data = match.handleObj.data;
- event.handleObj = match.handleObj;
-
- ret = match.handleObj.origHandler.apply( match.elem, arguments );
-
- if ( ret === false || event.isPropagationStopped() ) {
- maxLevel = match.level;
-
- if ( ret === false ) {
- stop = false;
- }
- if ( event.isImmediatePropagationStopped() ) {
- break;
- }
- }
- }
-
- return stop;
-}
-
-function liveConvert( type, selector ) {
- return (type && type !== "*" ? type + "." : "") + selector.replace(rperiod, "`").replace(rspaces, "&");
-}
-
-jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblclick " +
- "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
- "change select submit keydown keypress keyup error").split(" "), function( i, name ) {
-
- // Handle event binding
- jQuery.fn[ name ] = function( data, fn ) {
- if ( fn == null ) {
- fn = data;
- data = null;
- }
-
- return arguments.length > 0 ?
- this.bind( name, data, fn ) :
- this.trigger( name );
- };
-
- if ( jQuery.attrFn ) {
- jQuery.attrFn[ name ] = true;
- }
-});
-
-
-
-/*!
- * Sizzle CSS Selector Engine
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- * More information: http://sizzlejs.com/
- */
-(function(){
-
-var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
- done = 0,
- toString = Object.prototype.toString,
- hasDuplicate = false,
- baseHasDuplicate = true,
- rBackslash = /\\/g,
- rNonWord = /\W/;
-
-// Here we check if the JavaScript engine is using some sort of
-// optimization where it does not always call our comparision
-// function. If that is the case, discard the hasDuplicate value.
-// Thus far that includes Google Chrome.
-[0, 0].sort(function() {
- baseHasDuplicate = false;
- return 0;
-});
-
-var Sizzle = function( selector, context, results, seed ) {
- results = results || [];
- context = context || document;
-
- var origContext = context;
-
- if ( context.nodeType !== 1 && context.nodeType !== 9 ) {
- return [];
- }
-
- if ( !selector || typeof selector !== "string" ) {
- return results;
- }
-
- var m, set, checkSet, extra, ret, cur, pop, i,
- prune = true,
- contextXML = Sizzle.isXML( context ),
- parts = [],
- soFar = selector;
-
- // Reset the position of the chunker regexp (start from head)
- do {
- chunker.exec( "" );
- m = chunker.exec( soFar );
-
- if ( m ) {
- soFar = m[3];
-
- parts.push( m[1] );
-
- if ( m[2] ) {
- extra = m[3];
- break;
- }
- }
- } while ( m );
-
- if ( parts.length > 1 && origPOS.exec( selector ) ) {
-
- if ( parts.length === 2 && Expr.relative[ parts[0] ] ) {
- set = posProcess( parts[0] + parts[1], context );
-
- } else {
- set = Expr.relative[ parts[0] ] ?
- [ context ] :
- Sizzle( parts.shift(), context );
-
- while ( parts.length ) {
- selector = parts.shift();
-
- if ( Expr.relative[ selector ] ) {
- selector += parts.shift();
- }
-
- set = posProcess( selector, set );
- }
- }
-
- } else {
- // Take a shortcut and set the context if the root selector is an ID
- // (but not if it'll be faster if the inner selector is an ID)
- if ( !seed && parts.length > 1 && context.nodeType === 9 && !contextXML &&
- Expr.match.ID.test(parts[0]) && !Expr.match.ID.test(parts[parts.length - 1]) ) {
-
- ret = Sizzle.find( parts.shift(), context, contextXML );
- context = ret.expr ?
- Sizzle.filter( ret.expr, ret.set )[0] :
- ret.set[0];
- }
-
- if ( context ) {
- ret = seed ?
- { expr: parts.pop(), set: makeArray(seed) } :
- Sizzle.find( parts.pop(), parts.length === 1 && (parts[0] === "~" || parts[0] === "+") && context.parentNode ? context.parentNode : context, contextXML );
-
- set = ret.expr ?
- Sizzle.filter( ret.expr, ret.set ) :
- ret.set;
-
- if ( parts.length > 0 ) {
- checkSet = makeArray( set );
-
- } else {
- prune = false;
- }
-
- while ( parts.length ) {
- cur = parts.pop();
- pop = cur;
-
- if ( !Expr.relative[ cur ] ) {
- cur = "";
- } else {
- pop = parts.pop();
- }
-
- if ( pop == null ) {
- pop = context;
- }
-
- Expr.relative[ cur ]( checkSet, pop, contextXML );
- }
-
- } else {
- checkSet = parts = [];
- }
- }
-
- if ( !checkSet ) {
- checkSet = set;
- }
-
- if ( !checkSet ) {
- Sizzle.error( cur || selector );
- }
-
- if ( toString.call(checkSet) === "[object Array]" ) {
- if ( !prune ) {
- results.push.apply( results, checkSet );
-
- } else if ( context && context.nodeType === 1 ) {
- for ( i = 0; checkSet[i] != null; i++ ) {
- if ( checkSet[i] && (checkSet[i] === true || checkSet[i].nodeType === 1 && Sizzle.contains(context, checkSet[i])) ) {
- results.push( set[i] );
- }
- }
-
- } else {
- for ( i = 0; checkSet[i] != null; i++ ) {
- if ( checkSet[i] && checkSet[i].nodeType === 1 ) {
- results.push( set[i] );
- }
- }
- }
-
- } else {
- makeArray( checkSet, results );
- }
-
- if ( extra ) {
- Sizzle( extra, origContext, results, seed );
- Sizzle.uniqueSort( results );
- }
-
- return results;
-};
-
-Sizzle.uniqueSort = function( results ) {
- if ( sortOrder ) {
- hasDuplicate = baseHasDuplicate;
- results.sort( sortOrder );
-
- if ( hasDuplicate ) {
- for ( var i = 1; i < results.length; i++ ) {
- if ( results[i] === results[ i - 1 ] ) {
- results.splice( i--, 1 );
- }
- }
- }
- }
-
- return results;
-};
-
-Sizzle.matches = function( expr, set ) {
- return Sizzle( expr, null, null, set );
-};
-
-Sizzle.matchesSelector = function( node, expr ) {
- return Sizzle( expr, null, null, [node] ).length > 0;
-};
-
-Sizzle.find = function( expr, context, isXML ) {
- var set;
-
- if ( !expr ) {
- return [];
- }
-
- for ( var i = 0, l = Expr.order.length; i < l; i++ ) {
- var match,
- type = Expr.order[i];
-
- if ( (match = Expr.leftMatch[ type ].exec( expr )) ) {
- var left = match[1];
- match.splice( 1, 1 );
-
- if ( left.substr( left.length - 1 ) !== "\\" ) {
- match[1] = (match[1] || "").replace( rBackslash, "" );
- set = Expr.find[ type ]( match, context, isXML );
-
- if ( set != null ) {
- expr = expr.replace( Expr.match[ type ], "" );
- break;
- }
- }
- }
- }
-
- if ( !set ) {
- set = typeof context.getElementsByTagName !== "undefined" ?
- context.getElementsByTagName( "*" ) :
- [];
- }
-
- return { set: set, expr: expr };
-};
-
-Sizzle.filter = function( expr, set, inplace, not ) {
- var match, anyFound,
- old = expr,
- result = [],
- curLoop = set,
- isXMLFilter = set && set[0] && Sizzle.isXML( set[0] );
-
- while ( expr && set.length ) {
- for ( var type in Expr.filter ) {
- if ( (match = Expr.leftMatch[ type ].exec( expr )) != null && match[2] ) {
- var found, item,
- filter = Expr.filter[ type ],
- left = match[1];
-
- anyFound = false;
-
- match.splice(1,1);
-
- if ( left.substr( left.length - 1 ) === "\\" ) {
- continue;
- }
-
- if ( curLoop === result ) {
- result = [];
- }
-
- if ( Expr.preFilter[ type ] ) {
- match = Expr.preFilter[ type ]( match, curLoop, inplace, result, not, isXMLFilter );
-
- if ( !match ) {
- anyFound = found = true;
-
- } else if ( match === true ) {
- continue;
- }
- }
-
- if ( match ) {
- for ( var i = 0; (item = curLoop[i]) != null; i++ ) {
- if ( item ) {
- found = filter( item, match, i, curLoop );
- var pass = not ^ !!found;
-
- if ( inplace && found != null ) {
- if ( pass ) {
- anyFound = true;
-
- } else {
- curLoop[i] = false;
- }
-
- } else if ( pass ) {
- result.push( item );
- anyFound = true;
- }
- }
- }
- }
-
- if ( found !== undefined ) {
- if ( !inplace ) {
- curLoop = result;
- }
-
- expr = expr.replace( Expr.match[ type ], "" );
-
- if ( !anyFound ) {
- return [];
- }
-
- break;
- }
- }
- }
-
- // Improper expression
- if ( expr === old ) {
- if ( anyFound == null ) {
- Sizzle.error( expr );
-
- } else {
- break;
- }
- }
-
- old = expr;
- }
-
- return curLoop;
-};
-
-Sizzle.error = function( msg ) {
- throw "Syntax error, unrecognized expression: " + msg;
-};
-
-var Expr = Sizzle.selectors = {
- order: [ "ID", "NAME", "TAG" ],
-
- match: {
- ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
- CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
- NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,
- ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,
- TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,
- CHILD: /:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,
- POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,
- PSEUDO: /:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/
- },
-
- leftMatch: {},
-
- attrMap: {
- "class": "className",
- "for": "htmlFor"
- },
-
- attrHandle: {
- href: function( elem ) {
- return elem.getAttribute( "href" );
- },
- type: function( elem ) {
- return elem.getAttribute( "type" );
- }
- },
-
- relative: {
- "+": function(checkSet, part){
- var isPartStr = typeof part === "string",
- isTag = isPartStr && !rNonWord.test( part ),
- isPartStrNotTag = isPartStr && !isTag;
-
- if ( isTag ) {
- part = part.toLowerCase();
- }
-
- for ( var i = 0, l = checkSet.length, elem; i < l; i++ ) {
- if ( (elem = checkSet[i]) ) {
- while ( (elem = elem.previousSibling) && elem.nodeType !== 1 ) {}
-
- checkSet[i] = isPartStrNotTag || elem && elem.nodeName.toLowerCase() === part ?
- elem || false :
- elem === part;
- }
- }
-
- if ( isPartStrNotTag ) {
- Sizzle.filter( part, checkSet, true );
- }
- },
-
- ">": function( checkSet, part ) {
- var elem,
- isPartStr = typeof part === "string",
- i = 0,
- l = checkSet.length;
-
- if ( isPartStr && !rNonWord.test( part ) ) {
- part = part.toLowerCase();
-
- for ( ; i < l; i++ ) {
- elem = checkSet[i];
-
- if ( elem ) {
- var parent = elem.parentNode;
- checkSet[i] = parent.nodeName.toLowerCase() === part ? parent : false;
- }
- }
-
- } else {
- for ( ; i < l; i++ ) {
- elem = checkSet[i];
-
- if ( elem ) {
- checkSet[i] = isPartStr ?
- elem.parentNode :
- elem.parentNode === part;
- }
- }
-
- if ( isPartStr ) {
- Sizzle.filter( part, checkSet, true );
- }
- }
- },
-
- "": function(checkSet, part, isXML){
- var nodeCheck,
- doneName = done++,
- checkFn = dirCheck;
-
- if ( typeof part === "string" && !rNonWord.test( part ) ) {
- part = part.toLowerCase();
- nodeCheck = part;
- checkFn = dirNodeCheck;
- }
-
- checkFn( "parentNode", part, doneName, checkSet, nodeCheck, isXML );
- },
-
- "~": function( checkSet, part, isXML ) {
- var nodeCheck,
- doneName = done++,
- checkFn = dirCheck;
-
- if ( typeof part === "string" && !rNonWord.test( part ) ) {
- part = part.toLowerCase();
- nodeCheck = part;
- checkFn = dirNodeCheck;
- }
-
- checkFn( "previousSibling", part, doneName, checkSet, nodeCheck, isXML );
- }
- },
-
- find: {
- ID: function( match, context, isXML ) {
- if ( typeof context.getElementById !== "undefined" && !isXML ) {
- var m = context.getElementById(match[1]);
- // Check parentNode to catch when Blackberry 4.6 returns
- // nodes that are no longer in the document #6963
- return m && m.parentNode ? [m] : [];
- }
- },
-
- NAME: function( match, context ) {
- if ( typeof context.getElementsByName !== "undefined" ) {
- var ret = [],
- results = context.getElementsByName( match[1] );
-
- for ( var i = 0, l = results.length; i < l; i++ ) {
- if ( results[i].getAttribute("name") === match[1] ) {
- ret.push( results[i] );
- }
- }
-
- return ret.length === 0 ? null : ret;
- }
- },
-
- TAG: function( match, context ) {
- if ( typeof context.getElementsByTagName !== "undefined" ) {
- return context.getElementsByTagName( match[1] );
- }
- }
- },
- preFilter: {
- CLASS: function( match, curLoop, inplace, result, not, isXML ) {
- match = " " + match[1].replace( rBackslash, "" ) + " ";
-
- if ( isXML ) {
- return match;
- }
-
- for ( var i = 0, elem; (elem = curLoop[i]) != null; i++ ) {
- if ( elem ) {
- if ( not ^ (elem.className && (" " + elem.className + " ").replace(/[\t\n\r]/g, " ").indexOf(match) >= 0) ) {
- if ( !inplace ) {
- result.push( elem );
- }
-
- } else if ( inplace ) {
- curLoop[i] = false;
- }
- }
- }
-
- return false;
- },
-
- ID: function( match ) {
- return match[1].replace( rBackslash, "" );
- },
-
- TAG: function( match, curLoop ) {
- return match[1].replace( rBackslash, "" ).toLowerCase();
- },
-
- CHILD: function( match ) {
- if ( match[1] === "nth" ) {
- if ( !match[2] ) {
- Sizzle.error( match[0] );
- }
-
- match[2] = match[2].replace(/^\+|\s*/g, '');
-
- // parse equations like 'even', 'odd', '5', '2n', '3n+2', '4n-1', '-n+6'
- var test = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec(
- match[2] === "even" && "2n" || match[2] === "odd" && "2n+1" ||
- !/\D/.test( match[2] ) && "0n+" + match[2] || match[2]);
-
- // calculate the numbers (first)n+(last) including if they are negative
- match[2] = (test[1] + (test[2] || 1)) - 0;
- match[3] = test[3] - 0;
- }
- else if ( match[2] ) {
- Sizzle.error( match[0] );
- }
-
- // TODO: Move to normal caching system
- match[0] = done++;
-
- return match;
- },
-
- ATTR: function( match, curLoop, inplace, result, not, isXML ) {
- var name = match[1] = match[1].replace( rBackslash, "" );
-
- if ( !isXML && Expr.attrMap[name] ) {
- match[1] = Expr.attrMap[name];
- }
-
- // Handle if an un-quoted value was used
- match[4] = ( match[4] || match[5] || "" ).replace( rBackslash, "" );
-
- if ( match[2] === "~=" ) {
- match[4] = " " + match[4] + " ";
- }
-
- return match;
- },
-
- PSEUDO: function( match, curLoop, inplace, result, not ) {
- if ( match[1] === "not" ) {
- // If we're dealing with a complex expression, or a simple one
- if ( ( chunker.exec(match[3]) || "" ).length > 1 || /^\w/.test(match[3]) ) {
- match[3] = Sizzle(match[3], null, null, curLoop);
-
- } else {
- var ret = Sizzle.filter(match[3], curLoop, inplace, true ^ not);
-
- if ( !inplace ) {
- result.push.apply( result, ret );
- }
-
- return false;
- }
-
- } else if ( Expr.match.POS.test( match[0] ) || Expr.match.CHILD.test( match[0] ) ) {
- return true;
- }
-
- return match;
- },
-
- POS: function( match ) {
- match.unshift( true );
-
- return match;
- }
- },
-
- filters: {
- enabled: function( elem ) {
- return elem.disabled === false && elem.type !== "hidden";
- },
-
- disabled: function( elem ) {
- return elem.disabled === true;
- },
-
- checked: function( elem ) {
- return elem.checked === true;
- },
-
- selected: function( elem ) {
- // Accessing this property makes selected-by-default
- // options in Safari work properly
- if ( elem.parentNode ) {
- elem.parentNode.selectedIndex;
- }
-
- return elem.selected === true;
- },
-
- parent: function( elem ) {
- return !!elem.firstChild;
- },
-
- empty: function( elem ) {
- return !elem.firstChild;
- },
-
- has: function( elem, i, match ) {
- return !!Sizzle( match[3], elem ).length;
- },
-
- header: function( elem ) {
- return (/h\d/i).test( elem.nodeName );
- },
-
- text: function( elem ) {
- var attr = elem.getAttribute( "type" ), type = elem.type;
- // IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc)
- // use getAttribute instead to test this case
- return elem.nodeName.toLowerCase() === "input" && "text" === type && ( attr === type || attr === null );
- },
-
- radio: function( elem ) {
- return elem.nodeName.toLowerCase() === "input" && "radio" === elem.type;
- },
-
- checkbox: function( elem ) {
- return elem.nodeName.toLowerCase() === "input" && "checkbox" === elem.type;
- },
-
- file: function( elem ) {
- return elem.nodeName.toLowerCase() === "input" && "file" === elem.type;
- },
-
- password: function( elem ) {
- return elem.nodeName.toLowerCase() === "input" && "password" === elem.type;
- },
-
- submit: function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return (name === "input" || name === "button") && "submit" === elem.type;
- },
-
- image: function( elem ) {
- return elem.nodeName.toLowerCase() === "input" && "image" === elem.type;
- },
-
- reset: function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return (name === "input" || name === "button") && "reset" === elem.type;
- },
-
- button: function( elem ) {
- var name = elem.nodeName.toLowerCase();
- return name === "input" && "button" === elem.type || name === "button";
- },
-
- input: function( elem ) {
- return (/input|select|textarea|button/i).test( elem.nodeName );
- },
-
- focus: function( elem ) {
- return elem === elem.ownerDocument.activeElement;
- }
- },
- setFilters: {
- first: function( elem, i ) {
- return i === 0;
- },
-
- last: function( elem, i, match, array ) {
- return i === array.length - 1;
- },
-
- even: function( elem, i ) {
- return i % 2 === 0;
- },
-
- odd: function( elem, i ) {
- return i % 2 === 1;
- },
-
- lt: function( elem, i, match ) {
- return i < match[3] - 0;
- },
-
- gt: function( elem, i, match ) {
- return i > match[3] - 0;
- },
-
- nth: function( elem, i, match ) {
- return match[3] - 0 === i;
- },
-
- eq: function( elem, i, match ) {
- return match[3] - 0 === i;
- }
- },
- filter: {
- PSEUDO: function( elem, match, i, array ) {
- var name = match[1],
- filter = Expr.filters[ name ];
-
- if ( filter ) {
- return filter( elem, i, match, array );
-
- } else if ( name === "contains" ) {
- return (elem.textContent || elem.innerText || Sizzle.getText([ elem ]) || "").indexOf(match[3]) >= 0;
-
- } else if ( name === "not" ) {
- var not = match[3];
-
- for ( var j = 0, l = not.length; j < l; j++ ) {
- if ( not[j] === elem ) {
- return false;
- }
- }
-
- return true;
-
- } else {
- Sizzle.error( name );
- }
- },
-
- CHILD: function( elem, match ) {
- var type = match[1],
- node = elem;
-
- switch ( type ) {
- case "only":
- case "first":
- while ( (node = node.previousSibling) ) {
- if ( node.nodeType === 1 ) {
- return false;
- }
- }
-
- if ( type === "first" ) {
- return true;
- }
-
- node = elem;
-
- case "last":
- while ( (node = node.nextSibling) ) {
- if ( node.nodeType === 1 ) {
- return false;
- }
- }
-
- return true;
-
- case "nth":
- var first = match[2],
- last = match[3];
-
- if ( first === 1 && last === 0 ) {
- return true;
- }
-
- var doneName = match[0],
- parent = elem.parentNode;
-
- if ( parent && (parent.sizcache !== doneName || !elem.nodeIndex) ) {
- var count = 0;
-
- for ( node = parent.firstChild; node; node = node.nextSibling ) {
- if ( node.nodeType === 1 ) {
- node.nodeIndex = ++count;
- }
- }
-
- parent.sizcache = doneName;
- }
-
- var diff = elem.nodeIndex - last;
-
- if ( first === 0 ) {
- return diff === 0;
-
- } else {
- return ( diff % first === 0 && diff / first >= 0 );
- }
- }
- },
-
- ID: function( elem, match ) {
- return elem.nodeType === 1 && elem.getAttribute("id") === match;
- },
-
- TAG: function( elem, match ) {
- return (match === "*" && elem.nodeType === 1) || elem.nodeName.toLowerCase() === match;
- },
-
- CLASS: function( elem, match ) {
- return (" " + (elem.className || elem.getAttribute("class")) + " ")
- .indexOf( match ) > -1;
- },
-
- ATTR: function( elem, match ) {
- var name = match[1],
- result = Expr.attrHandle[ name ] ?
- Expr.attrHandle[ name ]( elem ) :
- elem[ name ] != null ?
- elem[ name ] :
- elem.getAttribute( name ),
- value = result + "",
- type = match[2],
- check = match[4];
-
- return result == null ?
- type === "!=" :
- type === "=" ?
- value === check :
- type === "*=" ?
- value.indexOf(check) >= 0 :
- type === "~=" ?
- (" " + value + " ").indexOf(check) >= 0 :
- !check ?
- value && result !== false :
- type === "!=" ?
- value !== check :
- type === "^=" ?
- value.indexOf(check) === 0 :
- type === "$=" ?
- value.substr(value.length - check.length) === check :
- type === "|=" ?
- value === check || value.substr(0, check.length + 1) === check + "-" :
- false;
- },
-
- POS: function( elem, match, i, array ) {
- var name = match[2],
- filter = Expr.setFilters[ name ];
-
- if ( filter ) {
- return filter( elem, i, match, array );
- }
- }
- }
-};
-
-var origPOS = Expr.match.POS,
- fescape = function(all, num){
- return "\\" + (num - 0 + 1);
- };
-
-for ( var type in Expr.match ) {
- Expr.match[ type ] = new RegExp( Expr.match[ type ].source + (/(?![^\[]*\])(?![^\(]*\))/.source) );
- Expr.leftMatch[ type ] = new RegExp( /(^(?:.|\r|\n)*?)/.source + Expr.match[ type ].source.replace(/\\(\d+)/g, fescape) );
-}
-
-var makeArray = function( array, results ) {
- array = Array.prototype.slice.call( array, 0 );
-
- if ( results ) {
- results.push.apply( results, array );
- return results;
- }
-
- return array;
-};
-
-// Perform a simple check to determine if the browser is capable of
-// converting a NodeList to an array using builtin methods.
-// Also verifies that the returned array holds DOM nodes
-// (which is not the case in the Blackberry browser)
-try {
- Array.prototype.slice.call( document.documentElement.childNodes, 0 )[0].nodeType;
-
-// Provide a fallback method if it does not work
-} catch( e ) {
- makeArray = function( array, results ) {
- var i = 0,
- ret = results || [];
-
- if ( toString.call(array) === "[object Array]" ) {
- Array.prototype.push.apply( ret, array );
-
- } else {
- if ( typeof array.length === "number" ) {
- for ( var l = array.length; i < l; i++ ) {
- ret.push( array[i] );
- }
-
- } else {
- for ( ; array[i]; i++ ) {
- ret.push( array[i] );
- }
- }
- }
-
- return ret;
- };
-}
-
-var sortOrder, siblingCheck;
-
-if ( document.documentElement.compareDocumentPosition ) {
- sortOrder = function( a, b ) {
- if ( a === b ) {
- hasDuplicate = true;
- return 0;
- }
-
- if ( !a.compareDocumentPosition || !b.compareDocumentPosition ) {
- return a.compareDocumentPosition ? -1 : 1;
- }
-
- return a.compareDocumentPosition(b) & 4 ? -1 : 1;
- };
-
-} else {
- sortOrder = function( a, b ) {
- // The nodes are identical, we can exit early
- if ( a === b ) {
- hasDuplicate = true;
- return 0;
-
- // Fallback to using sourceIndex (in IE) if it's available on both nodes
- } else if ( a.sourceIndex && b.sourceIndex ) {
- return a.sourceIndex - b.sourceIndex;
- }
-
- var al, bl,
- ap = [],
- bp = [],
- aup = a.parentNode,
- bup = b.parentNode,
- cur = aup;
-
- // If the nodes are siblings (or identical) we can do a quick check
- if ( aup === bup ) {
- return siblingCheck( a, b );
-
- // If no parents were found then the nodes are disconnected
- } else if ( !aup ) {
- return -1;
-
- } else if ( !bup ) {
- return 1;
- }
-
- // Otherwise they're somewhere else in the tree so we need
- // to build up a full list of the parentNodes for comparison
- while ( cur ) {
- ap.unshift( cur );
- cur = cur.parentNode;
- }
-
- cur = bup;
-
- while ( cur ) {
- bp.unshift( cur );
- cur = cur.parentNode;
- }
-
- al = ap.length;
- bl = bp.length;
-
- // Start walking down the tree looking for a discrepancy
- for ( var i = 0; i < al && i < bl; i++ ) {
- if ( ap[i] !== bp[i] ) {
- return siblingCheck( ap[i], bp[i] );
- }
- }
-
- // We ended someplace up the tree so do a sibling check
- return i === al ?
- siblingCheck( a, bp[i], -1 ) :
- siblingCheck( ap[i], b, 1 );
- };
-
- siblingCheck = function( a, b, ret ) {
- if ( a === b ) {
- return ret;
- }
-
- var cur = a.nextSibling;
-
- while ( cur ) {
- if ( cur === b ) {
- return -1;
- }
-
- cur = cur.nextSibling;
- }
-
- return 1;
- };
-}
-
-// Utility function for retreiving the text value of an array of DOM nodes
-Sizzle.getText = function( elems ) {
- var ret = "", elem;
-
- for ( var i = 0; elems[i]; i++ ) {
- elem = elems[i];
-
- // Get the text from text nodes and CDATA nodes
- if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
- ret += elem.nodeValue;
-
- // Traverse everything else, except comment nodes
- } else if ( elem.nodeType !== 8 ) {
- ret += Sizzle.getText( elem.childNodes );
- }
- }
-
- return ret;
-};
-
-// Check to see if the browser returns elements by name when
-// querying by getElementById (and provide a workaround)
-(function(){
- // We're going to inject a fake input element with a specified name
- var form = document.createElement("div"),
- id = "script" + (new Date()).getTime(),
- root = document.documentElement;
-
- form.innerHTML = "<a name='" + id + "'/>";
-
- // Inject it into the root element, check its status, and remove it quickly
- root.insertBefore( form, root.firstChild );
-
- // The workaround has to do additional checks after a getElementById
- // Which slows things down for other browsers (hence the branching)
- if ( document.getElementById( id ) ) {
- Expr.find.ID = function( match, context, isXML ) {
- if ( typeof context.getElementById !== "undefined" && !isXML ) {
- var m = context.getElementById(match[1]);
-
- return m ?
- m.id === match[1] || typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id").nodeValue === match[1] ?
- [m] :
- undefined :
- [];
- }
- };
-
- Expr.filter.ID = function( elem, match ) {
- var node = typeof elem.getAttributeNode !== "undefined" && elem.getAttributeNode("id");
-
- return elem.nodeType === 1 && node && node.nodeValue === match;
- };
- }
-
- root.removeChild( form );
-
- // release memory in IE
- root = form = null;
-})();
-
-(function(){
- // Check to see if the browser returns only elements
- // when doing getElementsByTagName("*")
-
- // Create a fake element
- var div = document.createElement("div");
- div.appendChild( document.createComment("") );
-
- // Make sure no comments are found
- if ( div.getElementsByTagName("*").length > 0 ) {
- Expr.find.TAG = function( match, context ) {
- var results = context.getElementsByTagName( match[1] );
-
- // Filter out possible comments
- if ( match[1] === "*" ) {
- var tmp = [];
-
- for ( var i = 0; results[i]; i++ ) {
- if ( results[i].nodeType === 1 ) {
- tmp.push( results[i] );
- }
- }
-
- results = tmp;
- }
-
- return results;
- };
- }
-
- // Check to see if an attribute returns normalized href attributes
- div.innerHTML = "<a href='#'></a>";
-
- if ( div.firstChild && typeof div.firstChild.getAttribute !== "undefined" &&
- div.firstChild.getAttribute("href") !== "#" ) {
-
- Expr.attrHandle.href = function( elem ) {
- return elem.getAttribute( "href", 2 );
- };
- }
-
- // release memory in IE
- div = null;
-})();
-
-if ( document.querySelectorAll ) {
- (function(){
- var oldSizzle = Sizzle,
- div = document.createElement("div"),
- id = "__sizzle__";
-
- div.innerHTML = "<p class='TEST'></p>";
-
- // Safari can't handle uppercase or unicode characters when
- // in quirks mode.
- if ( div.querySelectorAll && div.querySelectorAll(".TEST").length === 0 ) {
- return;
- }
-
- Sizzle = function( query, context, extra, seed ) {
- context = context || document;
-
- // Only use querySelectorAll on non-XML documents
- // (ID selectors don't work in non-HTML documents)
- if ( !seed && !Sizzle.isXML(context) ) {
- // See if we find a selector to speed up
- var match = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec( query );
-
- if ( match && (context.nodeType === 1 || context.nodeType === 9) ) {
- // Speed-up: Sizzle("TAG")
- if ( match[1] ) {
- return makeArray( context.getElementsByTagName( query ), extra );
-
- // Speed-up: Sizzle(".CLASS")
- } else if ( match[2] && Expr.find.CLASS && context.getElementsByClassName ) {
- return makeArray( context.getElementsByClassName( match[2] ), extra );
- }
- }
-
- if ( context.nodeType === 9 ) {
- // Speed-up: Sizzle("body")
- // The body element only exists once, optimize finding it
- if ( query === "body" && context.body ) {
- return makeArray( [ context.body ], extra );
-
- // Speed-up: Sizzle("#ID")
- } else if ( match && match[3] ) {
- var elem = context.getElementById( match[3] );
-
- // Check parentNode to catch when Blackberry 4.6 returns
- // nodes that are no longer in the document #6963
- if ( elem && elem.parentNode ) {
- // Handle the case where IE and Opera return items
- // by name instead of ID
- if ( elem.id === match[3] ) {
- return makeArray( [ elem ], extra );
- }
-
- } else {
- return makeArray( [], extra );
- }
- }
-
- try {
- return makeArray( context.querySelectorAll(query), extra );
- } catch(qsaError) {}
-
- // qSA works strangely on Element-rooted queries
- // We can work around this by specifying an extra ID on the root
- // and working up from there (Thanks to Andrew Dupont for the technique)
- // IE 8 doesn't work on object elements
- } else if ( context.nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) {
- var oldContext = context,
- old = context.getAttribute( "id" ),
- nid = old || id,
- hasParent = context.parentNode,
- relativeHierarchySelector = /^\s*[+~]/.test( query );
-
- if ( !old ) {
- context.setAttribute( "id", nid );
- } else {
- nid = nid.replace( /'/g, "\\$&" );
- }
- if ( relativeHierarchySelector && hasParent ) {
- context = context.parentNode;
- }
-
- try {
- if ( !relativeHierarchySelector || hasParent ) {
- return makeArray( context.querySelectorAll( "[id='" + nid + "'] " + query ), extra );
- }
-
- } catch(pseudoError) {
- } finally {
- if ( !old ) {
- oldContext.removeAttribute( "id" );
- }
- }
- }
- }
-
- return oldSizzle(query, context, extra, seed);
- };
-
- for ( var prop in oldSizzle ) {
- Sizzle[ prop ] = oldSizzle[ prop ];
- }
-
- // release memory in IE
- div = null;
- })();
-}
-
-(function(){
- var html = document.documentElement,
- matches = html.matchesSelector || html.mozMatchesSelector || html.webkitMatchesSelector || html.msMatchesSelector;
-
- if ( matches ) {
- // Check to see if it's possible to do matchesSelector
- // on a disconnected node (IE 9 fails this)
- var disconnectedMatch = !matches.call( document.createElement( "div" ), "div" ),
- pseudoWorks = false;
-
- try {
- // This should fail with an exception
- // Gecko does not error, returns false instead
- matches.call( document.documentElement, "[test!='']:sizzle" );
-
- } catch( pseudoError ) {
- pseudoWorks = true;
- }
-
- Sizzle.matchesSelector = function( node, expr ) {
- // Make sure that attribute selectors are quoted
- expr = expr.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']");
-
- if ( !Sizzle.isXML( node ) ) {
- try {
- if ( pseudoWorks || !Expr.match.PSEUDO.test( expr ) && !/!=/.test( expr ) ) {
- var ret = matches.call( node, expr );
-
- // IE 9's matchesSelector returns false on disconnected nodes
- if ( ret || !disconnectedMatch ||
- // As well, disconnected nodes are said to be in a document
- // fragment in IE 9, so check for that
- node.document && node.document.nodeType !== 11 ) {
- return ret;
- }
- }
- } catch(e) {}
- }
-
- return Sizzle(expr, null, null, [node]).length > 0;
- };
- }
-})();
-
-(function(){
- var div = document.createElement("div");
-
- div.innerHTML = "<div class='test e'></div><div class='test'></div>";
-
- // Opera can't find a second classname (in 9.6)
- // Also, make sure that getElementsByClassName actually exists
- if ( !div.getElementsByClassName || div.getElementsByClassName("e").length === 0 ) {
- return;
- }
-
- // Safari caches class attributes, doesn't catch changes (in 3.2)
- div.lastChild.className = "e";
-
- if ( div.getElementsByClassName("e").length === 1 ) {
- return;
- }
-
- Expr.order.splice(1, 0, "CLASS");
- Expr.find.CLASS = function( match, context, isXML ) {
- if ( typeof context.getElementsByClassName !== "undefined" && !isXML ) {
- return context.getElementsByClassName(match[1]);
- }
- };
-
- // release memory in IE
- div = null;
-})();
-
-function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
- for ( var i = 0, l = checkSet.length; i < l; i++ ) {
- var elem = checkSet[i];
-
- if ( elem ) {
- var match = false;
-
- elem = elem[dir];
-
- while ( elem ) {
- if ( elem.sizcache === doneName ) {
- match = checkSet[elem.sizset];
- break;
- }
-
- if ( elem.nodeType === 1 && !isXML ){
- elem.sizcache = doneName;
- elem.sizset = i;
- }
-
- if ( elem.nodeName.toLowerCase() === cur ) {
- match = elem;
- break;
- }
-
- elem = elem[dir];
- }
-
- checkSet[i] = match;
- }
- }
-}
-
-function dirCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
- for ( var i = 0, l = checkSet.length; i < l; i++ ) {
- var elem = checkSet[i];
-
- if ( elem ) {
- var match = false;
-
- elem = elem[dir];
-
- while ( elem ) {
- if ( elem.sizcache === doneName ) {
- match = checkSet[elem.sizset];
- break;
- }
-
- if ( elem.nodeType === 1 ) {
- if ( !isXML ) {
- elem.sizcache = doneName;
- elem.sizset = i;
- }
-
- if ( typeof cur !== "string" ) {
- if ( elem === cur ) {
- match = true;
- break;
- }
-
- } else if ( Sizzle.filter( cur, [elem] ).length > 0 ) {
- match = elem;
- break;
- }
- }
-
- elem = elem[dir];
- }
-
- checkSet[i] = match;
- }
- }
-}
-
-if ( document.documentElement.contains ) {
- Sizzle.contains = function( a, b ) {
- return a !== b && (a.contains ? a.contains(b) : true);
- };
-
-} else if ( document.documentElement.compareDocumentPosition ) {
- Sizzle.contains = function( a, b ) {
- return !!(a.compareDocumentPosition(b) & 16);
- };
-
-} else {
- Sizzle.contains = function() {
- return false;
- };
-}
-
-Sizzle.isXML = function( elem ) {
- // documentElement is verified for cases where it doesn't yet exist
- // (such as loading iframes in IE - #4833)
- var documentElement = (elem ? elem.ownerDocument || elem : 0).documentElement;
-
- return documentElement ? documentElement.nodeName !== "HTML" : false;
-};
-
-var posProcess = function( selector, context ) {
- var match,
- tmpSet = [],
- later = "",
- root = context.nodeType ? [context] : context;
-
- // Position selectors must be done after the filter
- // And so must :not(positional) so we move all PSEUDOs to the end
- while ( (match = Expr.match.PSEUDO.exec( selector )) ) {
- later += match[0];
- selector = selector.replace( Expr.match.PSEUDO, "" );
- }
-
- selector = Expr.relative[selector] ? selector + "*" : selector;
-
- for ( var i = 0, l = root.length; i < l; i++ ) {
- Sizzle( selector, root[i], tmpSet );
- }
-
- return Sizzle.filter( later, tmpSet );
-};
-
-// EXPOSE
-jQuery.find = Sizzle;
-jQuery.expr = Sizzle.selectors;
-jQuery.expr[":"] = jQuery.expr.filters;
-jQuery.unique = Sizzle.uniqueSort;
-jQuery.text = Sizzle.getText;
-jQuery.isXMLDoc = Sizzle.isXML;
-jQuery.contains = Sizzle.contains;
-
-
-})();
-
-
-var runtil = /Until$/,
- rparentsprev = /^(?:parents|prevUntil|prevAll)/,
- // Note: This RegExp should be improved, or likely pulled from Sizzle
- rmultiselector = /,/,
- isSimple = /^.[^:#\[\.,]*$/,
- slice = Array.prototype.slice,
- POS = jQuery.expr.match.POS,
- // methods guaranteed to produce a unique set when starting from a unique set
- guaranteedUnique = {
- children: true,
- contents: true,
- next: true,
- prev: true
- };
-
-jQuery.fn.extend({
- find: function( selector ) {
- var self = this,
- i, l;
-
- if ( typeof selector !== "string" ) {
- return jQuery( selector ).filter(function() {
- for ( i = 0, l = self.length; i < l; i++ ) {
- if ( jQuery.contains( self[ i ], this ) ) {
- return true;
- }
- }
- });
- }
-
- var ret = this.pushStack( "", "find", selector ),
- length, n, r;
-
- for ( i = 0, l = this.length; i < l; i++ ) {
- length = ret.length;
- jQuery.find( selector, this[i], ret );
-
- if ( i > 0 ) {
- // Make sure that the results are unique
- for ( n = length; n < ret.length; n++ ) {
- for ( r = 0; r < length; r++ ) {
- if ( ret[r] === ret[n] ) {
- ret.splice(n--, 1);
- break;
- }
- }
- }
- }
- }
-
- return ret;
- },
-
- has: function( target ) {
- var targets = jQuery( target );
- return this.filter(function() {
- for ( var i = 0, l = targets.length; i < l; i++ ) {
- if ( jQuery.contains( this, targets[i] ) ) {
- return true;
- }
- }
- });
- },
-
- not: function( selector ) {
- return this.pushStack( winnow(this, selector, false), "not", selector);
- },
-
- filter: function( selector ) {
- return this.pushStack( winnow(this, selector, true), "filter", selector );
- },
-
- is: function( selector ) {
- return !!selector && ( typeof selector === "string" ?
- jQuery.filter( selector, this ).length > 0 :
- this.filter( selector ).length > 0 );
- },
-
- closest: function( selectors, context ) {
- var ret = [], i, l, cur = this[0];
-
- // Array
- if ( jQuery.isArray( selectors ) ) {
- var match, selector,
- matches = {},
- level = 1;
-
- if ( cur && selectors.length ) {
- for ( i = 0, l = selectors.length; i < l; i++ ) {
- selector = selectors[i];
-
- if ( !matches[ selector ] ) {
- matches[ selector ] = POS.test( selector ) ?
- jQuery( selector, context || this.context ) :
- selector;
- }
- }
-
- while ( cur && cur.ownerDocument && cur !== context ) {
- for ( selector in matches ) {
- match = matches[ selector ];
-
- if ( match.jquery ? match.index( cur ) > -1 : jQuery( cur ).is( match ) ) {
- ret.push({ selector: selector, elem: cur, level: level });
- }
- }
-
- cur = cur.parentNode;
- level++;
- }
- }
-
- return ret;
- }
-
- // String
- var pos = POS.test( selectors ) || typeof selectors !== "string" ?
- jQuery( selectors, context || this.context ) :
- 0;
-
- for ( i = 0, l = this.length; i < l; i++ ) {
- cur = this[i];
-
- while ( cur ) {
- if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
- ret.push( cur );
- break;
-
- } else {
- cur = cur.parentNode;
- if ( !cur || !cur.ownerDocument || cur === context || cur.nodeType === 11 ) {
- break;
- }
- }
- }
- }
-
- ret = ret.length > 1 ? jQuery.unique( ret ) : ret;
-
- return this.pushStack( ret, "closest", selectors );
- },
-
- // Determine the position of an element within
- // the matched set of elements
- index: function( elem ) {
-
- // No argument, return index in parent
- if ( !elem ) {
- return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1;
- }
-
- // index in selector
- if ( typeof elem === "string" ) {
- return jQuery.inArray( this[0], jQuery( elem ) );
- }
-
- // Locate the position of the desired element
- return jQuery.inArray(
- // If it receives a jQuery object, the first element is used
- elem.jquery ? elem[0] : elem, this );
- },
-
- add: function( selector, context ) {
- var set = typeof selector === "string" ?
- jQuery( selector, context ) :
- jQuery.makeArray( selector && selector.nodeType ? [ selector ] : selector ),
- all = jQuery.merge( this.get(), set );
-
- return this.pushStack( isDisconnected( set[0] ) || isDisconnected( all[0] ) ?
- all :
- jQuery.unique( all ) );
- },
-
- andSelf: function() {
- return this.add( this.prevObject );
- }
-});
-
-// A painfully simple check to see if an element is disconnected
-// from a document (should be improved, where feasible).
-function isDisconnected( node ) {
- return !node || !node.parentNode || node.parentNode.nodeType === 11;
-}
-
-jQuery.each({
- parent: function( elem ) {
- var parent = elem.parentNode;
- return parent && parent.nodeType !== 11 ? parent : null;
- },
- parents: function( elem ) {
- return jQuery.dir( elem, "parentNode" );
- },
- parentsUntil: function( elem, i, until ) {
- return jQuery.dir( elem, "parentNode", until );
- },
- next: function( elem ) {
- return jQuery.nth( elem, 2, "nextSibling" );
- },
- prev: function( elem ) {
- return jQuery.nth( elem, 2, "previousSibling" );
- },
- nextAll: function( elem ) {
- return jQuery.dir( elem, "nextSibling" );
- },
- prevAll: function( elem ) {
- return jQuery.dir( elem, "previousSibling" );
- },
- nextUntil: function( elem, i, until ) {
- return jQuery.dir( elem, "nextSibling", until );
- },
- prevUntil: function( elem, i, until ) {
- return jQuery.dir( elem, "previousSibling", until );
- },
- siblings: function( elem ) {
- return jQuery.sibling( elem.parentNode.firstChild, elem );
- },
- children: function( elem ) {
- return jQuery.sibling( elem.firstChild );
- },
- contents: function( elem ) {
- return jQuery.nodeName( elem, "iframe" ) ?
- elem.contentDocument || elem.contentWindow.document :
- jQuery.makeArray( elem.childNodes );
- }
-}, function( name, fn ) {
- jQuery.fn[ name ] = function( until, selector ) {
- var ret = jQuery.map( this, fn, until ),
- // The variable 'args' was introduced in
- // https://github.com/jquery/jquery/commit/52a0238
- // to work around a bug in Chrome 10 (Dev) and should be removed when the bug is fixed.
- // http://code.google.com/p/v8/issues/detail?id=1050
- args = slice.call(arguments);
-
- if ( !runtil.test( name ) ) {
- selector = until;
- }
-
- if ( selector && typeof selector === "string" ) {
- ret = jQuery.filter( selector, ret );
- }
-
- ret = this.length > 1 && !guaranteedUnique[ name ] ? jQuery.unique( ret ) : ret;
-
- if ( (this.length > 1 || rmultiselector.test( selector )) && rparentsprev.test( name ) ) {
- ret = ret.reverse();
- }
-
- return this.pushStack( ret, name, args.join(",") );
- };
-});
-
-jQuery.extend({
- filter: function( expr, elems, not ) {
- if ( not ) {
- expr = ":not(" + expr + ")";
- }
-
- return elems.length === 1 ?
- jQuery.find.matchesSelector(elems[0], expr) ? [ elems[0] ] : [] :
- jQuery.find.matches(expr, elems);
- },
-
- dir: function( elem, dir, until ) {
- var matched = [],
- cur = elem[ dir ];
-
- while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) {
- if ( cur.nodeType === 1 ) {
- matched.push( cur );
- }
- cur = cur[dir];
- }
- return matched;
- },
-
- nth: function( cur, result, dir, elem ) {
- result = result || 1;
- var num = 0;
-
- for ( ; cur; cur = cur[dir] ) {
- if ( cur.nodeType === 1 && ++num === result ) {
- break;
- }
- }
-
- return cur;
- },
-
- sibling: function( n, elem ) {
- var r = [];
-
- for ( ; n; n = n.nextSibling ) {
- if ( n.nodeType === 1 && n !== elem ) {
- r.push( n );
- }
- }
-
- return r;
- }
-});
-
-// Implement the identical functionality for filter and not
-function winnow( elements, qualifier, keep ) {
-
- // Can't pass null or undefined to indexOf in Firefox 4
- // Set to 0 to skip string check
- qualifier = qualifier || 0;
-
- if ( jQuery.isFunction( qualifier ) ) {
- return jQuery.grep(elements, function( elem, i ) {
- var retVal = !!qualifier.call( elem, i, elem );
- return retVal === keep;
- });
-
- } else if ( qualifier.nodeType ) {
- return jQuery.grep(elements, function( elem, i ) {
- return (elem === qualifier) === keep;
- });
-
- } else if ( typeof qualifier === "string" ) {
- var filtered = jQuery.grep(elements, function( elem ) {
- return elem.nodeType === 1;
- });
-
- if ( isSimple.test( qualifier ) ) {
- return jQuery.filter(qualifier, filtered, !keep);
- } else {
- qualifier = jQuery.filter( qualifier, filtered );
- }
- }
-
- return jQuery.grep(elements, function( elem, i ) {
- return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
- });
-}
-
-
-
-
-var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
- rleadingWhitespace = /^\s+/,
- rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,
- rtagName = /<([\w:]+)/,
- rtbody = /<tbody/i,
- rhtml = /<|&#?\w+;/,
- rnocache = /<(?:script|object|embed|option|style)/i,
- // checked="checked" or checked
- rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i,
- rscriptType = /\/(java|ecma)script/i,
- rcleanScript = /^\s*<!(?:\[CDATA\[|\-\-)/,
- wrapMap = {
- option: [ 1, "<select multiple='multiple'>", "</select>" ],
- legend: [ 1, "<fieldset>", "</fieldset>" ],
- thead: [ 1, "<table>", "</table>" ],
- tr: [ 2, "<table><tbody>", "</tbody></table>" ],
- td: [ 3, "<table><tbody><tr>", "</tr></tbody></table>" ],
- col: [ 2, "<table><tbody></tbody><colgroup>", "</colgroup></table>" ],
- area: [ 1, "<map>", "</map>" ],
- _default: [ 0, "", "" ]
- };
-
-wrapMap.optgroup = wrapMap.option;
-wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;
-wrapMap.th = wrapMap.td;
-
-// IE can't serialize <link> and <script> tags normally
-if ( !jQuery.support.htmlSerialize ) {
- wrapMap._default = [ 1, "div<div>", "</div>" ];
-}
-
-jQuery.fn.extend({
- text: function( text ) {
- if ( jQuery.isFunction(text) ) {
- return this.each(function(i) {
- var self = jQuery( this );
-
- self.text( text.call(this, i, self.text()) );
- });
- }
-
- if ( typeof text !== "object" && text !== undefined ) {
- return this.empty().append( (this[0] && this[0].ownerDocument || document).createTextNode( text ) );
- }
-
- return jQuery.text( this );
- },
-
- wrapAll: function( html ) {
- if ( jQuery.isFunction( html ) ) {
- return this.each(function(i) {
- jQuery(this).wrapAll( html.call(this, i) );
- });
- }
-
- if ( this[0] ) {
- // The elements to wrap the target around
- var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true);
-
- if ( this[0].parentNode ) {
- wrap.insertBefore( this[0] );
- }
-
- wrap.map(function() {
- var elem = this;
-
- while ( elem.firstChild && elem.firstChild.nodeType === 1 ) {
- elem = elem.firstChild;
- }
-
- return elem;
- }).append( this );
- }
-
- return this;
- },
-
- wrapInner: function( html ) {
- if ( jQuery.isFunction( html ) ) {
- return this.each(function(i) {
- jQuery(this).wrapInner( html.call(this, i) );
- });
- }
-
- return this.each(function() {
- var self = jQuery( this ),
- contents = self.contents();
-
- if ( contents.length ) {
- contents.wrapAll( html );
-
- } else {
- self.append( html );
- }
- });
- },
-
- wrap: function( html ) {
- return this.each(function() {
- jQuery( this ).wrapAll( html );
- });
- },
-
- unwrap: function() {
- return this.parent().each(function() {
- if ( !jQuery.nodeName( this, "body" ) ) {
- jQuery( this ).replaceWith( this.childNodes );
- }
- }).end();
- },
-
- append: function() {
- return this.domManip(arguments, true, function( elem ) {
- if ( this.nodeType === 1 ) {
- this.appendChild( elem );
- }
- });
- },
-
- prepend: function() {
- return this.domManip(arguments, true, function( elem ) {
- if ( this.nodeType === 1 ) {
- this.insertBefore( elem, this.firstChild );
- }
- });
- },
-
- before: function() {
- if ( this[0] && this[0].parentNode ) {
- return this.domManip(arguments, false, function( elem ) {
- this.parentNode.insertBefore( elem, this );
- });
- } else if ( arguments.length ) {
- var set = jQuery(arguments[0]);
- set.push.apply( set, this.toArray() );
- return this.pushStack( set, "before", arguments );
- }
- },
-
- after: function() {
- if ( this[0] && this[0].parentNode ) {
- return this.domManip(arguments, false, function( elem ) {
- this.parentNode.insertBefore( elem, this.nextSibling );
- });
- } else if ( arguments.length ) {
- var set = this.pushStack( this, "after", arguments );
- set.push.apply( set, jQuery(arguments[0]).toArray() );
- return set;
- }
- },
-
- // keepData is for internal use only--do not document
- remove: function( selector, keepData ) {
- for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
- if ( !selector || jQuery.filter( selector, [ elem ] ).length ) {
- if ( !keepData && elem.nodeType === 1 ) {
- jQuery.cleanData( elem.getElementsByTagName("*") );
- jQuery.cleanData( [ elem ] );
- }
-
- if ( elem.parentNode ) {
- elem.parentNode.removeChild( elem );
- }
- }
- }
-
- return this;
- },
-
- empty: function() {
- for ( var i = 0, elem; (elem = this[i]) != null; i++ ) {
- // Remove element nodes and prevent memory leaks
- if ( elem.nodeType === 1 ) {
- jQuery.cleanData( elem.getElementsByTagName("*") );
- }
-
- // Remove any remaining nodes
- while ( elem.firstChild ) {
- elem.removeChild( elem.firstChild );
- }
- }
-
- return this;
- },
-
- clone: function( dataAndEvents, deepDataAndEvents ) {
- dataAndEvents = dataAndEvents == null ? false : dataAndEvents;
- deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;
-
- return this.map( function () {
- return jQuery.clone( this, dataAndEvents, deepDataAndEvents );
- });
- },
-
- html: function( value ) {
- if ( value === undefined ) {
- return this[0] && this[0].nodeType === 1 ?
- this[0].innerHTML.replace(rinlinejQuery, "") :
- null;
-
- // See if we can take a shortcut and just use innerHTML
- } else if ( typeof value === "string" && !rnocache.test( value ) &&
- (jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value )) &&
- !wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {
-
- value = value.replace(rxhtmlTag, "<$1></$2>");
-
- try {
- for ( var i = 0, l = this.length; i < l; i++ ) {
- // Remove element nodes and prevent memory leaks
- if ( this[i].nodeType === 1 ) {
- jQuery.cleanData( this[i].getElementsByTagName("*") );
- this[i].innerHTML = value;
- }
- }
-
- // If using innerHTML throws an exception, use the fallback method
- } catch(e) {
- this.empty().append( value );
- }
-
- } else if ( jQuery.isFunction( value ) ) {
- this.each(function(i){
- var self = jQuery( this );
-
- self.html( value.call(this, i, self.html()) );
- });
-
- } else {
- this.empty().append( value );
- }
-
- return this;
- },
-
- replaceWith: function( value ) {
- if ( this[0] && this[0].parentNode ) {
- // Make sure that the elements are removed from the DOM before they are inserted
- // this can help fix replacing a parent with child elements
- if ( jQuery.isFunction( value ) ) {
- return this.each(function(i) {
- var self = jQuery(this), old = self.html();
- self.replaceWith( value.call( this, i, old ) );
- });
- }
-
- if ( typeof value !== "string" ) {
- value = jQuery( value ).detach();
- }
-
- return this.each(function() {
- var next = this.nextSibling,
- parent = this.parentNode;
-
- jQuery( this ).remove();
-
- if ( next ) {
- jQuery(next).before( value );
- } else {
- jQuery(parent).append( value );
- }
- });
- } else {
- return this.length ?
- this.pushStack( jQuery(jQuery.isFunction(value) ? value() : value), "replaceWith", value ) :
- this;
- }
- },
-
- detach: function( selector ) {
- return this.remove( selector, true );
- },
-
- domManip: function( args, table, callback ) {
- var results, first, fragment, parent,
- value = args[0],
- scripts = [];
-
- // We can't cloneNode fragments that contain checked, in WebKit
- if ( !jQuery.support.checkClone && arguments.length === 3 && typeof value === "string" && rchecked.test( value ) ) {
- return this.each(function() {
- jQuery(this).domManip( args, table, callback, true );
- });
- }
-
- if ( jQuery.isFunction(value) ) {
- return this.each(function(i) {
- var self = jQuery(this);
- args[0] = value.call(this, i, table ? self.html() : undefined);
- self.domManip( args, table, callback );
- });
- }
-
- if ( this[0] ) {
- parent = value && value.parentNode;
-
- // If we're in a fragment, just use that instead of building a new one
- if ( jQuery.support.parentNode && parent && parent.nodeType === 11 && parent.childNodes.length === this.length ) {
- results = { fragment: parent };
-
- } else {
- results = jQuery.buildFragment( args, this, scripts );
- }
-
- fragment = results.fragment;
-
- if ( fragment.childNodes.length === 1 ) {
- first = fragment = fragment.firstChild;
- } else {
- first = fragment.firstChild;
- }
-
- if ( first ) {
- table = table && jQuery.nodeName( first, "tr" );
-
- for ( var i = 0, l = this.length, lastIndex = l - 1; i < l; i++ ) {
- callback.call(
- table ?
- root(this[i], first) :
- this[i],
- // Make sure that we do not leak memory by inadvertently discarding
- // the original fragment (which might have attached data) instead of
- // using it; in addition, use the original fragment object for the last
- // item instead of first because it can end up being emptied incorrectly
- // in certain situations (Bug #8070).
- // Fragments from the fragment cache must always be cloned and never used
- // in place.
- results.cacheable || (l > 1 && i < lastIndex) ?
- jQuery.clone( fragment, true, true ) :
- fragment
- );
- }
- }
-
- if ( scripts.length ) {
- jQuery.each( scripts, evalScript );
- }
- }
-
- return this;
- }
-});
-
-function root( elem, cur ) {
- return jQuery.nodeName(elem, "table") ?
- (elem.getElementsByTagName("tbody")[0] ||
- elem.appendChild(elem.ownerDocument.createElement("tbody"))) :
- elem;
-}
-
-function cloneCopyEvent( src, dest ) {
-
- if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) {
- return;
- }
-
- var internalKey = jQuery.expando,
- oldData = jQuery.data( src ),
- curData = jQuery.data( dest, oldData );
-
- // Switch to use the internal data object, if it exists, for the next
- // stage of data copying
- if ( (oldData = oldData[ internalKey ]) ) {
- var events = oldData.events;
- curData = curData[ internalKey ] = jQuery.extend({}, oldData);
-
- if ( events ) {
- delete curData.handle;
- curData.events = {};
-
- for ( var type in events ) {
- for ( var i = 0, l = events[ type ].length; i < l; i++ ) {
- jQuery.event.add( dest, type + ( events[ type ][ i ].namespace ? "." : "" ) + events[ type ][ i ].namespace, events[ type ][ i ], events[ type ][ i ].data );
- }
- }
- }
- }
-}
-
-function cloneFixAttributes( src, dest ) {
- var nodeName;
-
- // We do not need to do anything for non-Elements
- if ( dest.nodeType !== 1 ) {
- return;
- }
-
- // clearAttributes removes the attributes, which we don't want,
- // but also removes the attachEvent events, which we *do* want
- if ( dest.clearAttributes ) {
- dest.clearAttributes();
- }
-
- // mergeAttributes, in contrast, only merges back on the
- // original attributes, not the events
- if ( dest.mergeAttributes ) {
- dest.mergeAttributes( src );
- }
-
- nodeName = dest.nodeName.toLowerCase();
-
- // IE6-8 fail to clone children inside object elements that use
- // the proprietary classid attribute value (rather than the type
- // attribute) to identify the type of content to display
- if ( nodeName === "object" ) {
- dest.outerHTML = src.outerHTML;
-
- } else if ( nodeName === "input" && (src.type === "checkbox" || src.type === "radio") ) {
- // IE6-8 fails to persist the checked state of a cloned checkbox
- // or radio button. Worse, IE6-7 fail to give the cloned element
- // a checked appearance if the defaultChecked value isn't also set
- if ( src.checked ) {
- dest.defaultChecked = dest.checked = src.checked;
- }
-
- // IE6-7 get confused and end up setting the value of a cloned
- // checkbox/radio button to an empty string instead of "on"
- if ( dest.value !== src.value ) {
- dest.value = src.value;
- }
-
- // IE6-8 fails to return the selected option to the default selected
- // state when cloning options
- } else if ( nodeName === "option" ) {
- dest.selected = src.defaultSelected;
-
- // IE6-8 fails to set the defaultValue to the correct value when
- // cloning other types of input fields
- } else if ( nodeName === "input" || nodeName === "textarea" ) {
- dest.defaultValue = src.defaultValue;
- }
-
- // Event data gets referenced instead of copied if the expando
- // gets copied too
- dest.removeAttribute( jQuery.expando );
-}
-
-jQuery.buildFragment = function( args, nodes, scripts ) {
- var fragment, cacheable, cacheresults, doc;
-
- // nodes may contain either an explicit document object,
- // a jQuery collection or context object.
- // If nodes[0] contains a valid object to assign to doc
- if ( nodes && nodes[0] ) {
- doc = nodes[0].ownerDocument || nodes[0];
- }
-
- // Ensure that an attr object doesn't incorrectly stand in as a document object
- // Chrome and Firefox seem to allow this to occur and will throw exception
- // Fixes #8950
- if ( !doc.createDocumentFragment ) {
- doc = document;
- }
-
- // Only cache "small" (1/2 KB) HTML strings that are associated with the main document
- // Cloning options loses the selected state, so don't cache them
- // IE 6 doesn't like it when you put <object> or <embed> elements in a fragment
- // Also, WebKit does not clone 'checked' attributes on cloneNode, so don't cache
- if ( args.length === 1 && typeof args[0] === "string" && args[0].length < 512 && doc === document &&
- args[0].charAt(0) === "<" && !rnocache.test( args[0] ) && (jQuery.support.checkClone || !rchecked.test( args[0] )) ) {
-
- cacheable = true;
-
- cacheresults = jQuery.fragments[ args[0] ];
- if ( cacheresults && cacheresults !== 1 ) {
- fragment = cacheresults;
- }
- }
-
- if ( !fragment ) {
- fragment = doc.createDocumentFragment();
- jQuery.clean( args, doc, fragment, scripts );
- }
-
- if ( cacheable ) {
- jQuery.fragments[ args[0] ] = cacheresults ? fragment : 1;
- }
-
- return { fragment: fragment, cacheable: cacheable };
-};
-
-jQuery.fragments = {};
-
-jQuery.each({
- appendTo: "append",
- prependTo: "prepend",
- insertBefore: "before",
- insertAfter: "after",
- replaceAll: "replaceWith"
-}, function( name, original ) {
- jQuery.fn[ name ] = function( selector ) {
- var ret = [],
- insert = jQuery( selector ),
- parent = this.length === 1 && this[0].parentNode;
-
- if ( parent && parent.nodeType === 11 && parent.childNodes.length === 1 && insert.length === 1 ) {
- insert[ original ]( this[0] );
- return this;
-
- } else {
- for ( var i = 0, l = insert.length; i < l; i++ ) {
- var elems = (i > 0 ? this.clone(true) : this).get();
- jQuery( insert[i] )[ original ]( elems );
- ret = ret.concat( elems );
- }
-
- return this.pushStack( ret, name, insert.selector );
- }
- };
-});
-
-function getAll( elem ) {
- if ( "getElementsByTagName" in elem ) {
- return elem.getElementsByTagName( "*" );
-
- } else if ( "querySelectorAll" in elem ) {
- return elem.querySelectorAll( "*" );
-
- } else {
- return [];
- }
-}
-
-// Used in clean, fixes the defaultChecked property
-function fixDefaultChecked( elem ) {
- if ( elem.type === "checkbox" || elem.type === "radio" ) {
- elem.defaultChecked = elem.checked;
- }
-}
-// Finds all inputs and passes them to fixDefaultChecked
-function findInputs( elem ) {
- if ( jQuery.nodeName( elem, "input" ) ) {
- fixDefaultChecked( elem );
- } else if ( "getElementsByTagName" in elem ) {
- jQuery.grep( elem.getElementsByTagName("input"), fixDefaultChecked );
- }
-}
-
-jQuery.extend({
- clone: function( elem, dataAndEvents, deepDataAndEvents ) {
- var clone = elem.cloneNode(true),
- srcElements,
- destElements,
- i;
-
- if ( (!jQuery.support.noCloneEvent || !jQuery.support.noCloneChecked) &&
- (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) {
- // IE copies events bound via attachEvent when using cloneNode.
- // Calling detachEvent on the clone will also remove the events
- // from the original. In order to get around this, we use some
- // proprietary methods to clear the events. Thanks to MooTools
- // guys for this hotness.
-
- cloneFixAttributes( elem, clone );
-
- // Using Sizzle here is crazy slow, so we use getElementsByTagName
- // instead
- srcElements = getAll( elem );
- destElements = getAll( clone );
-
- // Weird iteration because IE will replace the length property
- // with an element if you are cloning the body and one of the
- // elements on the page has a name or id of "length"
- for ( i = 0; srcElements[i]; ++i ) {
- // Ensure that the destination node is not null; Fixes #9587
- if ( destElements[i] ) {
- cloneFixAttributes( srcElements[i], destElements[i] );
- }
- }
- }
-
- // Copy the events from the original to the clone
- if ( dataAndEvents ) {
- cloneCopyEvent( elem, clone );
-
- if ( deepDataAndEvents ) {
- srcElements = getAll( elem );
- destElements = getAll( clone );
-
- for ( i = 0; srcElements[i]; ++i ) {
- cloneCopyEvent( srcElements[i], destElements[i] );
- }
- }
- }
-
- srcElements = destElements = null;
-
- // Return the cloned set
- return clone;
- },
-
- clean: function( elems, context, fragment, scripts ) {
- var checkScriptType;
-
- context = context || document;
-
- // !context.createElement fails in IE with an error but returns typeof 'object'
- if ( typeof context.createElement === "undefined" ) {
- context = context.ownerDocument || context[0] && context[0].ownerDocument || document;
- }
-
- var ret = [], j;
-
- for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
- if ( typeof elem === "number" ) {
- elem += "";
- }
-
- if ( !elem ) {
- continue;
- }
-
- // Convert html string into DOM nodes
- if ( typeof elem === "string" ) {
- if ( !rhtml.test( elem ) ) {
- elem = context.createTextNode( elem );
- } else {
- // Fix "XHTML"-style tags in all browsers
- elem = elem.replace(rxhtmlTag, "<$1></$2>");
-
- // Trim whitespace, otherwise indexOf won't work as expected
- var tag = (rtagName.exec( elem ) || ["", ""])[1].toLowerCase(),
- wrap = wrapMap[ tag ] || wrapMap._default,
- depth = wrap[0],
- div = context.createElement("div");
-
- // Go to html and back, then peel off extra wrappers
- div.innerHTML = wrap[1] + elem + wrap[2];
-
- // Move to the right depth
- while ( depth-- ) {
- div = div.lastChild;
- }
-
- // Remove IE's autoinserted <tbody> from table fragments
- if ( !jQuery.support.tbody ) {
-
- // String was a <table>, *may* have spurious <tbody>
- var hasBody = rtbody.test(elem),
- tbody = tag === "table" && !hasBody ?
- div.firstChild && div.firstChild.childNodes :
-
- // String was a bare <thead> or <tfoot>
- wrap[1] === "<table>" && !hasBody ?
- div.childNodes :
- [];
-
- for ( j = tbody.length - 1; j >= 0 ; --j ) {
- if ( jQuery.nodeName( tbody[ j ], "tbody" ) && !tbody[ j ].childNodes.length ) {
- tbody[ j ].parentNode.removeChild( tbody[ j ] );
- }
- }
- }
-
- // IE completely kills leading whitespace when innerHTML is used
- if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) {
- div.insertBefore( context.createTextNode( rleadingWhitespace.exec(elem)[0] ), div.firstChild );
- }
-
- elem = div.childNodes;
- }
- }
-
- // Resets defaultChecked for any radios and checkboxes
- // about to be appended to the DOM in IE 6/7 (#8060)
- var len;
- if ( !jQuery.support.appendChecked ) {
- if ( elem[0] && typeof (len = elem.length) === "number" ) {
- for ( j = 0; j < len; j++ ) {
- findInputs( elem[j] );
- }
- } else {
- findInputs( elem );
- }
- }
-
- if ( elem.nodeType ) {
- ret.push( elem );
- } else {
- ret = jQuery.merge( ret, elem );
- }
- }
-
- if ( fragment ) {
- checkScriptType = function( elem ) {
- return !elem.type || rscriptType.test( elem.type );
- };
- for ( i = 0; ret[i]; i++ ) {
- if ( scripts && jQuery.nodeName( ret[i], "script" ) && (!ret[i].type || ret[i].type.toLowerCase() === "text/javascript") ) {
- scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( ret[i] ) : ret[i] );
-
- } else {
- if ( ret[i].nodeType === 1 ) {
- var jsTags = jQuery.grep( ret[i].getElementsByTagName( "script" ), checkScriptType );
-
- ret.splice.apply( ret, [i + 1, 0].concat( jsTags ) );
- }
- fragment.appendChild( ret[i] );
- }
- }
- }
-
- return ret;
- },
-
- cleanData: function( elems ) {
- var data, id, cache = jQuery.cache, internalKey = jQuery.expando, special = jQuery.event.special,
- deleteExpando = jQuery.support.deleteExpando;
-
- for ( var i = 0, elem; (elem = elems[i]) != null; i++ ) {
- if ( elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()] ) {
- continue;
- }
-
- id = elem[ jQuery.expando ];
-
- if ( id ) {
- data = cache[ id ] && cache[ id ][ internalKey ];
-
- if ( data && data.events ) {
- for ( var type in data.events ) {
- if ( special[ type ] ) {
- jQuery.event.remove( elem, type );
-
- // This is a shortcut to avoid jQuery.event.remove's overhead
- } else {
- jQuery.removeEvent( elem, type, data.handle );
- }
- }
-
- // Null the DOM reference to avoid IE6/7/8 leak (#7054)
- if ( data.handle ) {
- data.handle.elem = null;
- }
- }
-
- if ( deleteExpando ) {
- delete elem[ jQuery.expando ];
-
- } else if ( elem.removeAttribute ) {
- elem.removeAttribute( jQuery.expando );
- }
-
- delete cache[ id ];
- }
- }
- }
-});
-
-function evalScript( i, elem ) {
- if ( elem.src ) {
- jQuery.ajax({
- url: elem.src,
- async: false,
- dataType: "script"
- });
- } else {
- jQuery.globalEval( ( elem.text || elem.textContent || elem.innerHTML || "" ).replace( rcleanScript, "/*$0*/" ) );
- }
-
- if ( elem.parentNode ) {
- elem.parentNode.removeChild( elem );
- }
-}
-
-
-
-
-var ralpha = /alpha\([^)]*\)/i,
- ropacity = /opacity=([^)]*)/,
- // fixed for IE9, see #8346
- rupper = /([A-Z]|^ms)/g,
- rnumpx = /^-?\d+(?:px)?$/i,
- rnum = /^-?\d/,
- rrelNum = /^([\-+])=([\-+.\de]+)/,
-
- cssShow = { position: "absolute", visibility: "hidden", display: "block" },
- cssWidth = [ "Left", "Right" ],
- cssHeight = [ "Top", "Bottom" ],
- curCSS,
-
- getComputedStyle,
- currentStyle;
-
-jQuery.fn.css = function( name, value ) {
- // Setting 'undefined' is a no-op
- if ( arguments.length === 2 && value === undefined ) {
- return this;
- }
-
- return jQuery.access( this, name, value, true, function( elem, name, value ) {
- return value !== undefined ?
- jQuery.style( elem, name, value ) :
- jQuery.css( elem, name );
- });
-};
-
-jQuery.extend({
- // Add in style property hooks for overriding the default
- // behavior of getting and setting a style property
- cssHooks: {
- opacity: {
- get: function( elem, computed ) {
- if ( computed ) {
- // We should always get a number back from opacity
- var ret = curCSS( elem, "opacity", "opacity" );
- return ret === "" ? "1" : ret;
-
- } else {
- return elem.style.opacity;
- }
- }
- }
- },
-
- // Exclude the following css properties to add px
- cssNumber: {
- "fillOpacity": true,
- "fontWeight": true,
- "lineHeight": true,
- "opacity": true,
- "orphans": true,
- "widows": true,
- "zIndex": true,
- "zoom": true
- },
-
- // Add in properties whose names you wish to fix before
- // setting or getting the value
- cssProps: {
- // normalize float css property
- "float": jQuery.support.cssFloat ? "cssFloat" : "styleFloat"
- },
-
- // Get and set the style property on a DOM Node
- style: function( elem, name, value, extra ) {
- // Don't set styles on text and comment nodes
- if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {
- return;
- }
-
- // Make sure that we're working with the right name
- var ret, type, origName = jQuery.camelCase( name ),
- style = elem.style, hooks = jQuery.cssHooks[ origName ];
-
- name = jQuery.cssProps[ origName ] || origName;
-
- // Check if we're setting a value
- if ( value !== undefined ) {
- type = typeof value;
-
- // convert relative number strings (+= or -=) to relative numbers. #7345
- if ( type === "string" && (ret = rrelNum.exec( value )) ) {
- value = ( +( ret[1] + 1) * +ret[2] ) + parseFloat( jQuery.css( elem, name ) );
- // Fixes bug #9237
- type = "number";
- }
-
- // Make sure that NaN and null values aren't set. See: #7116
- if ( value == null || type === "number" && isNaN( value ) ) {
- return;
- }
-
- // If a number was passed in, add 'px' to the (except for certain CSS properties)
- if ( type === "number" && !jQuery.cssNumber[ origName ] ) {
- value += "px";
- }
-
- // If a hook was provided, use that value, otherwise just set the specified value
- if ( !hooks || !("set" in hooks) || (value = hooks.set( elem, value )) !== undefined ) {
- // Wrapped to prevent IE from throwing errors when 'invalid' values are provided
- // Fixes bug #5509
- try {
- style[ name ] = value;
- } catch(e) {}
- }
-
- } else {
- // If a hook was provided get the non-computed value from there
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {
- return ret;
- }
-
- // Otherwise just get the value from the style object
- return style[ name ];
- }
- },
-
- css: function( elem, name, extra ) {
- var ret, hooks;
-
- // Make sure that we're working with the right name
- name = jQuery.camelCase( name );
- hooks = jQuery.cssHooks[ name ];
- name = jQuery.cssProps[ name ] || name;
-
- // cssFloat needs a special treatment
- if ( name === "cssFloat" ) {
- name = "float";
- }
-
- // If a hook was provided get the computed value from there
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, true, extra )) !== undefined ) {
- return ret;
-
- // Otherwise, if a way to get the computed value exists, use that
- } else if ( curCSS ) {
- return curCSS( elem, name );
- }
- },
-
- // A method for quickly swapping in/out CSS properties to get correct calculations
- swap: function( elem, options, callback ) {
- var old = {};
-
- // Remember the old values, and insert the new ones
- for ( var name in options ) {
- old[ name ] = elem.style[ name ];
- elem.style[ name ] = options[ name ];
- }
-
- callback.call( elem );
-
- // Revert the old values
- for ( name in options ) {
- elem.style[ name ] = old[ name ];
- }
- }
-});
-
-// DEPRECATED, Use jQuery.css() instead
-jQuery.curCSS = jQuery.css;
-
-jQuery.each(["height", "width"], function( i, name ) {
- jQuery.cssHooks[ name ] = {
- get: function( elem, computed, extra ) {
- var val;
-
- if ( computed ) {
- if ( elem.offsetWidth !== 0 ) {
- return getWH( elem, name, extra );
- } else {
- jQuery.swap( elem, cssShow, function() {
- val = getWH( elem, name, extra );
- });
- }
-
- return val;
- }
- },
-
- set: function( elem, value ) {
- if ( rnumpx.test( value ) ) {
- // ignore negative width and height values #1599
- value = parseFloat( value );
-
- if ( value >= 0 ) {
- return value + "px";
- }
-
- } else {
- return value;
- }
- }
- };
-});
-
-if ( !jQuery.support.opacity ) {
- jQuery.cssHooks.opacity = {
- get: function( elem, computed ) {
- // IE uses filters for opacity
- return ropacity.test( (computed && elem.currentStyle ? elem.currentStyle.filter : elem.style.filter) || "" ) ?
- ( parseFloat( RegExp.$1 ) / 100 ) + "" :
- computed ? "1" : "";
- },
-
- set: function( elem, value ) {
- var style = elem.style,
- currentStyle = elem.currentStyle,
- opacity = jQuery.isNaN( value ) ? "" : "alpha(opacity=" + value * 100 + ")",
- filter = currentStyle && currentStyle.filter || style.filter || "";
-
- // IE has trouble with opacity if it does not have layout
- // Force it by setting the zoom level
- style.zoom = 1;
-
- // if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652
- if ( value >= 1 && jQuery.trim( filter.replace( ralpha, "" ) ) === "" ) {
-
- // Setting style.filter to null, "" & " " still leave "filter:" in the cssText
- // if "filter:" is present at all, clearType is disabled, we want to avoid this
- // style.removeAttribute is IE Only, but so apparently is this code path...
- style.removeAttribute( "filter" );
-
- // if there there is no filter style applied in a css rule, we are done
- if ( currentStyle && !currentStyle.filter ) {
- return;
- }
- }
-
- // otherwise, set new filter values
- style.filter = ralpha.test( filter ) ?
- filter.replace( ralpha, opacity ) :
- filter + " " + opacity;
- }
- };
-}
-
-jQuery(function() {
- // This hook cannot be added until DOM ready because the support test
- // for it is not run until after DOM ready
- if ( !jQuery.support.reliableMarginRight ) {
- jQuery.cssHooks.marginRight = {
- get: function( elem, computed ) {
- // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
- // Work around by temporarily setting element display to inline-block
- var ret;
- jQuery.swap( elem, { "display": "inline-block" }, function() {
- if ( computed ) {
- ret = curCSS( elem, "margin-right", "marginRight" );
- } else {
- ret = elem.style.marginRight;
- }
- });
- return ret;
- }
- };
- }
-});
-
-if ( document.defaultView && document.defaultView.getComputedStyle ) {
- getComputedStyle = function( elem, name ) {
- var ret, defaultView, computedStyle;
-
- name = name.replace( rupper, "-$1" ).toLowerCase();
-
- if ( !(defaultView = elem.ownerDocument.defaultView) ) {
- return undefined;
- }
-
- if ( (computedStyle = defaultView.getComputedStyle( elem, null )) ) {
- ret = computedStyle.getPropertyValue( name );
- if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) {
- ret = jQuery.style( elem, name );
- }
- }
-
- return ret;
- };
-}
-
-if ( document.documentElement.currentStyle ) {
- currentStyle = function( elem, name ) {
- var left,
- ret = elem.currentStyle && elem.currentStyle[ name ],
- rsLeft = elem.runtimeStyle && elem.runtimeStyle[ name ],
- style = elem.style;
-
- // From the awesome hack by Dean Edwards
- // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
-
- // If we're not dealing with a regular pixel number
- // but a number that has a weird ending, we need to convert it to pixels
- if ( !rnumpx.test( ret ) && rnum.test( ret ) ) {
- // Remember the original values
- left = style.left;
-
- // Put in the new values to get a computed value out
- if ( rsLeft ) {
- elem.runtimeStyle.left = elem.currentStyle.left;
- }
- style.left = name === "fontSize" ? "1em" : (ret || 0);
- ret = style.pixelLeft + "px";
-
- // Revert the changed values
- style.left = left;
- if ( rsLeft ) {
- elem.runtimeStyle.left = rsLeft;
- }
- }
-
- return ret === "" ? "auto" : ret;
- };
-}
-
-curCSS = getComputedStyle || currentStyle;
-
-function getWH( elem, name, extra ) {
-
- // Start with offset property
- var val = name === "width" ? elem.offsetWidth : elem.offsetHeight,
- which = name === "width" ? cssWidth : cssHeight;
-
- if ( val > 0 ) {
- if ( extra !== "border" ) {
- jQuery.each( which, function() {
- if ( !extra ) {
- val -= parseFloat( jQuery.css( elem, "padding" + this ) ) || 0;
- }
- if ( extra === "margin" ) {
- val += parseFloat( jQuery.css( elem, extra + this ) ) || 0;
- } else {
- val -= parseFloat( jQuery.css( elem, "border" + this + "Width" ) ) || 0;
- }
- });
- }
-
- return val + "px";
- }
-
- // Fall back to computed then uncomputed css if necessary
- val = curCSS( elem, name, name );
- if ( val < 0 || val == null ) {
- val = elem.style[ name ] || 0;
- }
- // Normalize "", auto, and prepare for extra
- val = parseFloat( val ) || 0;
-
- // Add padding, border, margin
- if ( extra ) {
- jQuery.each( which, function() {
- val += parseFloat( jQuery.css( elem, "padding" + this ) ) || 0;
- if ( extra !== "padding" ) {
- val += parseFloat( jQuery.css( elem, "border" + this + "Width" ) ) || 0;
- }
- if ( extra === "margin" ) {
- val += parseFloat( jQuery.css( elem, extra + this ) ) || 0;
- }
- });
- }
-
- return val + "px";
-}
-
-if ( jQuery.expr && jQuery.expr.filters ) {
- jQuery.expr.filters.hidden = function( elem ) {
- var width = elem.offsetWidth,
- height = elem.offsetHeight;
-
- return (width === 0 && height === 0) || (!jQuery.support.reliableHiddenOffsets && (elem.style.display || jQuery.css( elem, "display" )) === "none");
- };
-
- jQuery.expr.filters.visible = function( elem ) {
- return !jQuery.expr.filters.hidden( elem );
- };
-}
-
-
-
-
-var r20 = /%20/g,
- rbracket = /\[\]$/,
- rCRLF = /\r?\n/g,
- rhash = /#.*$/,
- rheaders = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg, // IE leaves an \r character at EOL
- rinput = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
- // #7653, #8125, #8152: local protocol detection
- rlocalProtocol = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
- rnoContent = /^(?:GET|HEAD)$/,
- rprotocol = /^\/\//,
- rquery = /\?/,
- rscript = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
- rselectTextarea = /^(?:select|textarea)/i,
- rspacesAjax = /\s+/,
- rts = /([?&])_=[^&]*/,
- rurl = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,
-
- // Keep a copy of the old load method
- _load = jQuery.fn.load,
-
- /* Prefilters
- * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
- * 2) These are called:
- * - BEFORE asking for a transport
- * - AFTER param serialization (s.data is a string if s.processData is true)
- * 3) key is the dataType
- * 4) the catchall symbol "*" can be used
- * 5) execution will start with transport dataType and THEN continue down to "*" if needed
- */
- prefilters = {},
-
- /* Transports bindings
- * 1) key is the dataType
- * 2) the catchall symbol "*" can be used
- * 3) selection will start with transport dataType and THEN go to "*" if needed
- */
- transports = {},
-
- // Document location
- ajaxLocation,
-
- // Document location segments
- ajaxLocParts,
-
- // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
- allTypes = ["*/"] + ["*"];
-
-// #8138, IE may throw an exception when accessing
-// a field from window.location if document.domain has been set
-try {
- ajaxLocation = location.href;
-} catch( e ) {
- // Use the href attribute of an A element
- // since IE will modify it given document.location
- ajaxLocation = document.createElement( "a" );
- ajaxLocation.href = "";
- ajaxLocation = ajaxLocation.href;
-}
-
-// Segment location into parts
-ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
-
-// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
-function addToPrefiltersOrTransports( structure ) {
-
- // dataTypeExpression is optional and defaults to "*"
- return function( dataTypeExpression, func ) {
-
- if ( typeof dataTypeExpression !== "string" ) {
- func = dataTypeExpression;
- dataTypeExpression = "*";
- }
-
- if ( jQuery.isFunction( func ) ) {
- var dataTypes = dataTypeExpression.toLowerCase().split( rspacesAjax ),
- i = 0,
- length = dataTypes.length,
- dataType,
- list,
- placeBefore;
-
- // For each dataType in the dataTypeExpression
- for(; i < length; i++ ) {
- dataType = dataTypes[ i ];
- // We control if we're asked to add before
- // any existing element
- placeBefore = /^\+/.test( dataType );
- if ( placeBefore ) {
- dataType = dataType.substr( 1 ) || "*";
- }
- list = structure[ dataType ] = structure[ dataType ] || [];
- // then we add to the structure accordingly
- list[ placeBefore ? "unshift" : "push" ]( func );
- }
- }
- };
-}
-
-// Base inspection function for prefilters and transports
-function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR,
- dataType /* internal */, inspected /* internal */ ) {
-
- dataType = dataType || options.dataTypes[ 0 ];
- inspected = inspected || {};
-
- inspected[ dataType ] = true;
-
- var list = structure[ dataType ],
- i = 0,
- length = list ? list.length : 0,
- executeOnly = ( structure === prefilters ),
- selection;
-
- for(; i < length && ( executeOnly || !selection ); i++ ) {
- selection = list[ i ]( options, originalOptions, jqXHR );
- // If we got redirected to another dataType
- // we try there if executing only and not done already
- if ( typeof selection === "string" ) {
- if ( !executeOnly || inspected[ selection ] ) {
- selection = undefined;
- } else {
- options.dataTypes.unshift( selection );
- selection = inspectPrefiltersOrTransports(
- structure, options, originalOptions, jqXHR, selection, inspected );
- }
- }
- }
- // If we're only executing or nothing was selected
- // we try the catchall dataType if not done already
- if ( ( executeOnly || !selection ) && !inspected[ "*" ] ) {
- selection = inspectPrefiltersOrTransports(
- structure, options, originalOptions, jqXHR, "*", inspected );
- }
- // unnecessary when only executing (prefilters)
- // but it'll be ignored by the caller in that case
- return selection;
-}
-
-// A special extend for ajax options
-// that takes "flat" options (not to be deep extended)
-// Fixes #9887
-function ajaxExtend( target, src ) {
- var key, deep,
- flatOptions = jQuery.ajaxSettings.flatOptions || {};
- for( key in src ) {
- if ( src[ key ] !== undefined ) {
- ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ];
- }
- }
- if ( deep ) {
- jQuery.extend( true, target, deep );
- }
-}
-
-jQuery.fn.extend({
- load: function( url, params, callback ) {
- if ( typeof url !== "string" && _load ) {
- return _load.apply( this, arguments );
-
- // Don't do a request if no elements are being requested
- } else if ( !this.length ) {
- return this;
- }
-
- var off = url.indexOf( " " );
- if ( off >= 0 ) {
- var selector = url.slice( off, url.length );
- url = url.slice( 0, off );
- }
-
- // Default to a GET request
- var type = "GET";
-
- // If the second parameter was provided
- if ( params ) {
- // If it's a function
- if ( jQuery.isFunction( params ) ) {
- // We assume that it's the callback
- callback = params;
- params = undefined;
-
- // Otherwise, build a param string
- } else if ( typeof params === "object" ) {
- params = jQuery.param( params, jQuery.ajaxSettings.traditional );
- type = "POST";
- }
- }
-
- var self = this;
-
- // Request the remote document
- jQuery.ajax({
- url: url,
- type: type,
- dataType: "html",
- data: params,
- // Complete callback (responseText is used internally)
- complete: function( jqXHR, status, responseText ) {
- // Store the response as specified by the jqXHR object
- responseText = jqXHR.responseText;
- // If successful, inject the HTML into all the matched elements
- if ( jqXHR.isResolved() ) {
- // #4825: Get the actual response in case
- // a dataFilter is present in ajaxSettings
- jqXHR.done(function( r ) {
- responseText = r;
- });
- // See if a selector was specified
- self.html( selector ?
- // Create a dummy div to hold the results
- jQuery("<div>")
- // inject the contents of the document in, removing the scripts
- // to avoid any 'Permission Denied' errors in IE
- .append(responseText.replace(rscript, ""))
-
- // Locate the specified elements
- .find(selector) :
-
- // If not, just inject the full result
- responseText );
- }
-
- if ( callback ) {
- self.each( callback, [ responseText, status, jqXHR ] );
- }
- }
- });
-
- return this;
- },
-
- serialize: function() {
- return jQuery.param( this.serializeArray() );
- },
-
- serializeArray: function() {
- return this.map(function(){
- return this.elements ? jQuery.makeArray( this.elements ) : this;
- })
- .filter(function(){
- return this.name && !this.disabled &&
- ( this.checked || rselectTextarea.test( this.nodeName ) ||
- rinput.test( this.type ) );
- })
- .map(function( i, elem ){
- var val = jQuery( this ).val();
-
- return val == null ?
- null :
- jQuery.isArray( val ) ?
- jQuery.map( val, function( val, i ){
- return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
- }) :
- { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
- }).get();
- }
-});
-
-// Attach a bunch of functions for handling common AJAX events
-jQuery.each( "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split( " " ), function( i, o ){
- jQuery.fn[ o ] = function( f ){
- return this.bind( o, f );
- };
-});
-
-jQuery.each( [ "get", "post" ], function( i, method ) {
- jQuery[ method ] = function( url, data, callback, type ) {
- // shift arguments if data argument was omitted
- if ( jQuery.isFunction( data ) ) {
- type = type || callback;
- callback = data;
- data = undefined;
- }
-
- return jQuery.ajax({
- type: method,
- url: url,
- data: data,
- success: callback,
- dataType: type
- });
- };
-});
-
-jQuery.extend({
-
- getScript: function( url, callback ) {
- return jQuery.get( url, undefined, callback, "script" );
- },
-
- getJSON: function( url, data, callback ) {
- return jQuery.get( url, data, callback, "json" );
- },
-
- // Creates a full fledged settings object into target
- // with both ajaxSettings and settings fields.
- // If target is omitted, writes into ajaxSettings.
- ajaxSetup: function( target, settings ) {
- if ( settings ) {
- // Building a settings object
- ajaxExtend( target, jQuery.ajaxSettings );
- } else {
- // Extending ajaxSettings
- settings = target;
- target = jQuery.ajaxSettings;
- }
- ajaxExtend( target, settings );
- return target;
- },
-
- ajaxSettings: {
- url: ajaxLocation,
- isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
- global: true,
- type: "GET",
- contentType: "application/x-www-form-urlencoded",
- processData: true,
- async: true,
- /*
- timeout: 0,
- data: null,
- dataType: null,
- username: null,
- password: null,
- cache: null,
- traditional: false,
- headers: {},
- */
-
- accepts: {
- xml: "application/xml, text/xml",
- html: "text/html",
- text: "text/plain",
- json: "application/json, text/javascript",
- "*": allTypes
- },
-
- contents: {
- xml: /xml/,
- html: /html/,
- json: /json/
- },
-
- responseFields: {
- xml: "responseXML",
- text: "responseText"
- },
-
- // List of data converters
- // 1) key format is "source_type destination_type" (a single space in-between)
- // 2) the catchall symbol "*" can be used for source_type
- converters: {
-
- // Convert anything to text
- "* text": window.String,
-
- // Text to html (true = no transformation)
- "text html": true,
-
- // Evaluate text as a json expression
- "text json": jQuery.parseJSON,
-
- // Parse text as xml
- "text xml": jQuery.parseXML
- },
-
- // For options that shouldn't be deep extended:
- // you can add your own custom options here if
- // and when you create one that shouldn't be
- // deep extended (see ajaxExtend)
- flatOptions: {
- context: true,
- url: true
- }
- },
-
- ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
- ajaxTransport: addToPrefiltersOrTransports( transports ),
-
- // Main method
- ajax: function( url, options ) {
-
- // If url is an object, simulate pre-1.5 signature
- if ( typeof url === "object" ) {
- options = url;
- url = undefined;
- }
-
- // Force options to be an object
- options = options || {};
-
- var // Create the final options object
- s = jQuery.ajaxSetup( {}, options ),
- // Callbacks context
- callbackContext = s.context || s,
- // Context for global events
- // It's the callbackContext if one was provided in the options
- // and if it's a DOM node or a jQuery collection
- globalEventContext = callbackContext !== s &&
- ( callbackContext.nodeType || callbackContext instanceof jQuery ) ?
- jQuery( callbackContext ) : jQuery.event,
- // Deferreds
- deferred = jQuery.Deferred(),
- completeDeferred = jQuery._Deferred(),
- // Status-dependent callbacks
- statusCode = s.statusCode || {},
- // ifModified key
- ifModifiedKey,
- // Headers (they are sent all at once)
- requestHeaders = {},
- requestHeadersNames = {},
- // Response headers
- responseHeadersString,
- responseHeaders,
- // transport
- transport,
- // timeout handle
- timeoutTimer,
- // Cross-domain detection vars
- parts,
- // The jqXHR state
- state = 0,
- // To know if global events are to be dispatched
- fireGlobals,
- // Loop variable
- i,
- // Fake xhr
- jqXHR = {
-
- readyState: 0,
-
- // Caches the header
- setRequestHeader: function( name, value ) {
- if ( !state ) {
- var lname = name.toLowerCase();
- name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
- requestHeaders[ name ] = value;
- }
- return this;
- },
-
- // Raw string
- getAllResponseHeaders: function() {
- return state === 2 ? responseHeadersString : null;
- },
-
- // Builds headers hashtable if needed
- getResponseHeader: function( key ) {
- var match;
- if ( state === 2 ) {
- if ( !responseHeaders ) {
- responseHeaders = {};
- while( ( match = rheaders.exec( responseHeadersString ) ) ) {
- responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
- }
- }
- match = responseHeaders[ key.toLowerCase() ];
- }
- return match === undefined ? null : match;
- },
-
- // Overrides response content-type header
- overrideMimeType: function( type ) {
- if ( !state ) {
- s.mimeType = type;
- }
- return this;
- },
-
- // Cancel the request
- abort: function( statusText ) {
- statusText = statusText || "abort";
- if ( transport ) {
- transport.abort( statusText );
- }
- done( 0, statusText );
- return this;
- }
- };
-
- // Callback for when everything is done
- // It is defined here because jslint complains if it is declared
- // at the end of the function (which would be more logical and readable)
- function done( status, nativeStatusText, responses, headers ) {
-
- // Called once
- if ( state === 2 ) {
- return;
- }
-
- // State is "done" now
- state = 2;
-
- // Clear timeout if it exists
- if ( timeoutTimer ) {
- clearTimeout( timeoutTimer );
- }
-
- // Dereference transport for early garbage collection
- // (no matter how long the jqXHR object will be used)
- transport = undefined;
-
- // Cache response headers
- responseHeadersString = headers || "";
-
- // Set readyState
- jqXHR.readyState = status > 0 ? 4 : 0;
-
- var isSuccess,
- success,
- error,
- statusText = nativeStatusText,
- response = responses ? ajaxHandleResponses( s, jqXHR, responses ) : undefined,
- lastModified,
- etag;
-
- // If successful, handle type chaining
- if ( status >= 200 && status < 300 || status === 304 ) {
-
- // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
- if ( s.ifModified ) {
-
- if ( ( lastModified = jqXHR.getResponseHeader( "Last-Modified" ) ) ) {
- jQuery.lastModified[ ifModifiedKey ] = lastModified;
- }
- if ( ( etag = jqXHR.getResponseHeader( "Etag" ) ) ) {
- jQuery.etag[ ifModifiedKey ] = etag;
- }
- }
-
- // If not modified
- if ( status === 304 ) {
-
- statusText = "notmodified";
- isSuccess = true;
-
- // If we have data
- } else {
-
- try {
- success = ajaxConvert( s, response );
- statusText = "success";
- isSuccess = true;
- } catch(e) {
- // We have a parsererror
- statusText = "parsererror";
- error = e;
- }
- }
- } else {
- // We extract error from statusText
- // then normalize statusText and status for non-aborts
- error = statusText;
- if( !statusText || status ) {
- statusText = "error";
- if ( status < 0 ) {
- status = 0;
- }
- }
- }
-
- // Set data for the fake xhr object
- jqXHR.status = status;
- jqXHR.statusText = "" + ( nativeStatusText || statusText );
-
- // Success/Error
- if ( isSuccess ) {
- deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
- } else {
- deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
- }
-
- // Status-dependent callbacks
- jqXHR.statusCode( statusCode );
- statusCode = undefined;
-
- if ( fireGlobals ) {
- globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ),
- [ jqXHR, s, isSuccess ? success : error ] );
- }
-
- // Complete
- completeDeferred.resolveWith( callbackContext, [ jqXHR, statusText ] );
-
- if ( fireGlobals ) {
- globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
- // Handle the global AJAX counter
- if ( !( --jQuery.active ) ) {
- jQuery.event.trigger( "ajaxStop" );
- }
- }
- }
-
- // Attach deferreds
- deferred.promise( jqXHR );
- jqXHR.success = jqXHR.done;
- jqXHR.error = jqXHR.fail;
- jqXHR.complete = completeDeferred.done;
-
- // Status-dependent callbacks
- jqXHR.statusCode = function( map ) {
- if ( map ) {
- var tmp;
- if ( state < 2 ) {
- for( tmp in map ) {
- statusCode[ tmp ] = [ statusCode[tmp], map[tmp] ];
- }
- } else {
- tmp = map[ jqXHR.status ];
- jqXHR.then( tmp, tmp );
- }
- }
- return this;
- };
-
- // Remove hash character (#7531: and string promotion)
- // Add protocol if not provided (#5866: IE7 issue with protocol-less urls)
- // We also use the url parameter if available
- s.url = ( ( url || s.url ) + "" ).replace( rhash, "" ).replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
-
- // Extract dataTypes list
- s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().split( rspacesAjax );
-
- // Determine if a cross-domain request is in order
- if ( s.crossDomain == null ) {
- parts = rurl.exec( s.url.toLowerCase() );
- s.crossDomain = !!( parts &&
- ( parts[ 1 ] != ajaxLocParts[ 1 ] || parts[ 2 ] != ajaxLocParts[ 2 ] ||
- ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? 80 : 443 ) ) !=
- ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) ) )
- );
- }
-
- // Convert data if not already a string
- if ( s.data && s.processData && typeof s.data !== "string" ) {
- s.data = jQuery.param( s.data, s.traditional );
- }
-
- // Apply prefilters
- inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
-
- // If request was aborted inside a prefiler, stop there
- if ( state === 2 ) {
- return false;
- }
-
- // We can fire global events as of now if asked to
- fireGlobals = s.global;
-
- // Uppercase the type
- s.type = s.type.toUpperCase();
-
- // Determine if request has content
- s.hasContent = !rnoContent.test( s.type );
-
- // Watch for a new set of requests
- if ( fireGlobals && jQuery.active++ === 0 ) {
- jQuery.event.trigger( "ajaxStart" );
- }
-
- // More options handling for requests with no content
- if ( !s.hasContent ) {
-
- // If data is available, append data to url
- if ( s.data ) {
- s.url += ( rquery.test( s.url ) ? "&" : "?" ) + s.data;
- // #9682: remove data so that it's not used in an eventual retry
- delete s.data;
- }
-
- // Get ifModifiedKey before adding the anti-cache parameter
- ifModifiedKey = s.url;
-
- // Add anti-cache in url if needed
- if ( s.cache === false ) {
-
- var ts = jQuery.now(),
- // try replacing _= if it is there
- ret = s.url.replace( rts, "$1_=" + ts );
-
- // if nothing was replaced, add timestamp to the end
- s.url = ret + ( (ret === s.url ) ? ( rquery.test( s.url ) ? "&" : "?" ) + "_=" + ts : "" );
- }
- }
-
- // Set the correct header, if data is being sent
- if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
- jqXHR.setRequestHeader( "Content-Type", s.contentType );
- }
-
- // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
- if ( s.ifModified ) {
- ifModifiedKey = ifModifiedKey || s.url;
- if ( jQuery.lastModified[ ifModifiedKey ] ) {
- jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ ifModifiedKey ] );
- }
- if ( jQuery.etag[ ifModifiedKey ] ) {
- jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ ifModifiedKey ] );
- }
- }
-
- // Set the Accepts header for the server, depending on the dataType
- jqXHR.setRequestHeader(
- "Accept",
- s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
- s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
- s.accepts[ "*" ]
- );
-
- // Check for headers option
- for ( i in s.headers ) {
- jqXHR.setRequestHeader( i, s.headers[ i ] );
- }
-
- // Allow custom headers/mimetypes and early abort
- if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
- // Abort if not done already
- jqXHR.abort();
- return false;
-
- }
-
- // Install callbacks on deferreds
- for ( i in { success: 1, error: 1, complete: 1 } ) {
- jqXHR[ i ]( s[ i ] );
- }
-
- // Get transport
- transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
-
- // If no transport, we auto-abort
- if ( !transport ) {
- done( -1, "No Transport" );
- } else {
- jqXHR.readyState = 1;
- // Send global event
- if ( fireGlobals ) {
- globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
- }
- // Timeout
- if ( s.async && s.timeout > 0 ) {
- timeoutTimer = setTimeout( function(){
- jqXHR.abort( "timeout" );
- }, s.timeout );
- }
-
- try {
- state = 1;
- transport.send( requestHeaders, done );
- } catch (e) {
- // Propagate exception as error if not done
- if ( state < 2 ) {
- done( -1, e );
- // Simply rethrow otherwise
- } else {
- jQuery.error( e );
- }
- }
- }
-
- return jqXHR;
- },
-
- // Serialize an array of form elements or a set of
- // key/values into a query string
- param: function( a, traditional ) {
- var s = [],
- add = function( key, value ) {
- // If value is a function, invoke it and return its value
- value = jQuery.isFunction( value ) ? value() : value;
- s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
- };
-
- // Set traditional to true for jQuery <= 1.3.2 behavior.
- if ( traditional === undefined ) {
- traditional = jQuery.ajaxSettings.traditional;
- }
-
- // If an array was passed in, assume that it is an array of form elements.
- if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
- // Serialize the form elements
- jQuery.each( a, function() {
- add( this.name, this.value );
- });
-
- } else {
- // If traditional, encode the "old" way (the way 1.3.2 or older
- // did it), otherwise encode params recursively.
- for ( var prefix in a ) {
- buildParams( prefix, a[ prefix ], traditional, add );
- }
- }
-
- // Return the resulting serialization
- return s.join( "&" ).replace( r20, "+" );
- }
-});
-
-function buildParams( prefix, obj, traditional, add ) {
- if ( jQuery.isArray( obj ) ) {
- // Serialize array item.
- jQuery.each( obj, function( i, v ) {
- if ( traditional || rbracket.test( prefix ) ) {
- // Treat each array item as a scalar.
- add( prefix, v );
-
- } else {
- // If array item is non-scalar (array or object), encode its
- // numeric index to resolve deserialization ambiguity issues.
- // Note that rack (as of 1.0.0) can't currently deserialize
- // nested arrays properly, and attempting to do so may cause
- // a server error. Possible fixes are to modify rack's
- // deserialization algorithm or to provide an option or flag
- // to force array serialization to be shallow.
- buildParams( prefix + "[" + ( typeof v === "object" || jQuery.isArray(v) ? i : "" ) + "]", v, traditional, add );
- }
- });
-
- } else if ( !traditional && obj != null && typeof obj === "object" ) {
- // Serialize object item.
- for ( var name in obj ) {
- buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
- }
-
- } else {
- // Serialize scalar item.
- add( prefix, obj );
- }
-}
-
-// This is still on the jQuery object... for now
-// Want to move this to jQuery.ajax some day
-jQuery.extend({
-
- // Counter for holding the number of active queries
- active: 0,
-
- // Last-Modified header cache for next request
- lastModified: {},
- etag: {}
-
-});
-
-/* Handles responses to an ajax request:
- * - sets all responseXXX fields accordingly
- * - finds the right dataType (mediates between content-type and expected dataType)
- * - returns the corresponding response
- */
-function ajaxHandleResponses( s, jqXHR, responses ) {
-
- var contents = s.contents,
- dataTypes = s.dataTypes,
- responseFields = s.responseFields,
- ct,
- type,
- finalDataType,
- firstDataType;
-
- // Fill responseXXX fields
- for( type in responseFields ) {
- if ( type in responses ) {
- jqXHR[ responseFields[type] ] = responses[ type ];
- }
- }
-
- // Remove auto dataType and get content-type in the process
- while( dataTypes[ 0 ] === "*" ) {
- dataTypes.shift();
- if ( ct === undefined ) {
- ct = s.mimeType || jqXHR.getResponseHeader( "content-type" );
- }
- }
-
- // Check if we're dealing with a known content-type
- if ( ct ) {
- for ( type in contents ) {
- if ( contents[ type ] && contents[ type ].test( ct ) ) {
- dataTypes.unshift( type );
- break;
- }
- }
- }
-
- // Check to see if we have a response for the expected dataType
- if ( dataTypes[ 0 ] in responses ) {
- finalDataType = dataTypes[ 0 ];
- } else {
- // Try convertible dataTypes
- for ( type in responses ) {
- if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
- finalDataType = type;
- break;
- }
- if ( !firstDataType ) {
- firstDataType = type;
- }
- }
- // Or just use first one
- finalDataType = finalDataType || firstDataType;
- }
-
- // If we found a dataType
- // We add the dataType to the list if needed
- // and return the corresponding response
- if ( finalDataType ) {
- if ( finalDataType !== dataTypes[ 0 ] ) {
- dataTypes.unshift( finalDataType );
- }
- return responses[ finalDataType ];
- }
-}
-
-// Chain conversions given the request and the original response
-function ajaxConvert( s, response ) {
-
- // Apply the dataFilter if provided
- if ( s.dataFilter ) {
- response = s.dataFilter( response, s.dataType );
- }
-
- var dataTypes = s.dataTypes,
- converters = {},
- i,
- key,
- length = dataTypes.length,
- tmp,
- // Current and previous dataTypes
- current = dataTypes[ 0 ],
- prev,
- // Conversion expression
- conversion,
- // Conversion function
- conv,
- // Conversion functions (transitive conversion)
- conv1,
- conv2;
-
- // For each dataType in the chain
- for( i = 1; i < length; i++ ) {
-
- // Create converters map
- // with lowercased keys
- if ( i === 1 ) {
- for( key in s.converters ) {
- if( typeof key === "string" ) {
- converters[ key.toLowerCase() ] = s.converters[ key ];
- }
- }
- }
-
- // Get the dataTypes
- prev = current;
- current = dataTypes[ i ];
-
- // If current is auto dataType, update it to prev
- if( current === "*" ) {
- current = prev;
- // If no auto and dataTypes are actually different
- } else if ( prev !== "*" && prev !== current ) {
-
- // Get the converter
- conversion = prev + " " + current;
- conv = converters[ conversion ] || converters[ "* " + current ];
-
- // If there is no direct converter, search transitively
- if ( !conv ) {
- conv2 = undefined;
- for( conv1 in converters ) {
- tmp = conv1.split( " " );
- if ( tmp[ 0 ] === prev || tmp[ 0 ] === "*" ) {
- conv2 = converters[ tmp[1] + " " + current ];
- if ( conv2 ) {
- conv1 = converters[ conv1 ];
- if ( conv1 === true ) {
- conv = conv2;
- } else if ( conv2 === true ) {
- conv = conv1;
- }
- break;
- }
- }
- }
- }
- // If we found no converter, dispatch an error
- if ( !( conv || conv2 ) ) {
- jQuery.error( "No conversion from " + conversion.replace(" "," to ") );
- }
- // If found converter is not an equivalence
- if ( conv !== true ) {
- // Convert with 1 or 2 converters accordingly
- response = conv ? conv( response ) : conv2( conv1(response) );
- }
- }
- }
- return response;
-}
-
-
-
-
-var jsc = jQuery.now(),
- jsre = /(\=)\?(&|$)|\?\?/i;
-
-// Default jsonp settings
-jQuery.ajaxSetup({
- jsonp: "callback",
- jsonpCallback: function() {
- return jQuery.expando + "_" + ( jsc++ );
- }
-});
-
-// Detect, normalize options and install callbacks for jsonp requests
-jQuery.ajaxPrefilter( "json jsonp", function( s, originalSettings, jqXHR ) {
-
- var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
- ( typeof s.data === "string" );
-
- if ( s.dataTypes[ 0 ] === "jsonp" ||
- s.jsonp !== false && ( jsre.test( s.url ) ||
- inspectData && jsre.test( s.data ) ) ) {
-
- var responseContainer,
- jsonpCallback = s.jsonpCallback =
- jQuery.isFunction( s.jsonpCallback ) ? s.jsonpCallback() : s.jsonpCallback,
- previous = window[ jsonpCallback ],
- url = s.url,
- data = s.data,
- replace = "$1" + jsonpCallback + "$2";
-
- if ( s.jsonp !== false ) {
- url = url.replace( jsre, replace );
- if ( s.url === url ) {
- if ( inspectData ) {
- data = data.replace( jsre, replace );
- }
- if ( s.data === data ) {
- // Add callback manually
- url += (/\?/.test( url ) ? "&" : "?") + s.jsonp + "=" + jsonpCallback;
- }
- }
- }
-
- s.url = url;
- s.data = data;
-
- // Install callback
- window[ jsonpCallback ] = function( response ) {
- responseContainer = [ response ];
- };
-
- // Clean-up function
- jqXHR.always(function() {
- // Set callback back to previous value
- window[ jsonpCallback ] = previous;
- // Call if it was a function and we have a response
- if ( responseContainer && jQuery.isFunction( previous ) ) {
- window[ jsonpCallback ]( responseContainer[ 0 ] );
- }
- });
-
- // Use data converter to retrieve json after script execution
- s.converters["script json"] = function() {
- if ( !responseContainer ) {
- jQuery.error( jsonpCallback + " was not called" );
- }
- return responseContainer[ 0 ];
- };
-
- // force json dataType
- s.dataTypes[ 0 ] = "json";
-
- // Delegate to script
- return "script";
- }
-});
-
-
-
-
-// Install script dataType
-jQuery.ajaxSetup({
- accepts: {
- script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
- },
- contents: {
- script: /javascript|ecmascript/
- },
- converters: {
- "text script": function( text ) {
- jQuery.globalEval( text );
- return text;
- }
- }
-});
-
-// Handle cache's special case and global
-jQuery.ajaxPrefilter( "script", function( s ) {
- if ( s.cache === undefined ) {
- s.cache = false;
- }
- if ( s.crossDomain ) {
- s.type = "GET";
- s.global = false;
- }
-});
-
-// Bind script tag hack transport
-jQuery.ajaxTransport( "script", function(s) {
-
- // This transport only deals with cross domain requests
- if ( s.crossDomain ) {
-
- var script,
- head = document.head || document.getElementsByTagName( "head" )[0] || document.documentElement;
-
- return {
-
- send: function( _, callback ) {
-
- script = document.createElement( "script" );
-
- script.async = "async";
-
- if ( s.scriptCharset ) {
- script.charset = s.scriptCharset;
- }
-
- script.src = s.url;
-
- // Attach handlers for all browsers
- script.onload = script.onreadystatechange = function( _, isAbort ) {
-
- if ( isAbort || !script.readyState || /loaded|complete/.test( script.readyState ) ) {
-
- // Handle memory leak in IE
- script.onload = script.onreadystatechange = null;
-
- // Remove the script
- if ( head && script.parentNode ) {
- head.removeChild( script );
- }
-
- // Dereference the script
- script = undefined;
-
- // Callback if not abort
- if ( !isAbort ) {
- callback( 200, "success" );
- }
- }
- };
- // Use insertBefore instead of appendChild to circumvent an IE6 bug.
- // This arises when a base node is used (#2709 and #4378).
- head.insertBefore( script, head.firstChild );
- },
-
- abort: function() {
- if ( script ) {
- script.onload( 0, 1 );
- }
- }
- };
- }
-});
-
-
-
-
-var // #5280: Internet Explorer will keep connections alive if we don't abort on unload
- xhrOnUnloadAbort = window.ActiveXObject ? function() {
- // Abort all pending requests
- for ( var key in xhrCallbacks ) {
- xhrCallbacks[ key ]( 0, 1 );
- }
- } : false,
- xhrId = 0,
- xhrCallbacks;
-
-// Functions to create xhrs
-function createStandardXHR() {
- try {
- return new window.XMLHttpRequest();
- } catch( e ) {}
-}
-
-function createActiveXHR() {
- try {
- return new window.ActiveXObject( "Microsoft.XMLHTTP" );
- } catch( e ) {}
-}
-
-// Create the request object
-// (This is still attached to ajaxSettings for backward compatibility)
-jQuery.ajaxSettings.xhr = window.ActiveXObject ?
- /* Microsoft failed to properly
- * implement the XMLHttpRequest in IE7 (can't request local files),
- * so we use the ActiveXObject when it is available
- * Additionally XMLHttpRequest can be disabled in IE7/IE8 so
- * we need a fallback.
- */
- function() {
- return !this.isLocal && createStandardXHR() || createActiveXHR();
- } :
- // For all other browsers, use the standard XMLHttpRequest object
- createStandardXHR;
-
-// Determine support properties
-(function( xhr ) {
- jQuery.extend( jQuery.support, {
- ajax: !!xhr,
- cors: !!xhr && ( "withCredentials" in xhr )
- });
-})( jQuery.ajaxSettings.xhr() );
-
-// Create transport if the browser can provide an xhr
-if ( jQuery.support.ajax ) {
-
- jQuery.ajaxTransport(function( s ) {
- // Cross domain only allowed if supported through XMLHttpRequest
- if ( !s.crossDomain || jQuery.support.cors ) {
-
- var callback;
-
- return {
- send: function( headers, complete ) {
-
- // Get a new xhr
- var xhr = s.xhr(),
- handle,
- i;
-
- // Open the socket
- // Passing null username, generates a login popup on Opera (#2865)
- if ( s.username ) {
- xhr.open( s.type, s.url, s.async, s.username, s.password );
- } else {
- xhr.open( s.type, s.url, s.async );
- }
-
- // Apply custom fields if provided
- if ( s.xhrFields ) {
- for ( i in s.xhrFields ) {
- xhr[ i ] = s.xhrFields[ i ];
- }
- }
-
- // Override mime type if needed
- if ( s.mimeType && xhr.overrideMimeType ) {
- xhr.overrideMimeType( s.mimeType );
- }
-
- // X-Requested-With header
- // For cross-domain requests, seeing as conditions for a preflight are
- // akin to a jigsaw puzzle, we simply never set it to be sure.
- // (it can always be set on a per-request basis or even using ajaxSetup)
- // For same-domain requests, won't change header if already provided.
- if ( !s.crossDomain && !headers["X-Requested-With"] ) {
- headers[ "X-Requested-With" ] = "XMLHttpRequest";
- }
-
- // Need an extra try/catch for cross domain requests in Firefox 3
- try {
- for ( i in headers ) {
- xhr.setRequestHeader( i, headers[ i ] );
- }
- } catch( _ ) {}
-
- // Do send the request
- // This may raise an exception which is actually
- // handled in jQuery.ajax (so no try/catch here)
- xhr.send( ( s.hasContent && s.data ) || null );
-
- // Listener
- callback = function( _, isAbort ) {
-
- var status,
- statusText,
- responseHeaders,
- responses,
- xml;
-
- // Firefox throws exceptions when accessing properties
- // of an xhr when a network error occured
- // http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:_0x80040111_(NS_ERROR_NOT_AVAILABLE)
- try {
-
- // Was never called and is aborted or complete
- if ( callback && ( isAbort || xhr.readyState === 4 ) ) {
-
- // Only called once
- callback = undefined;
-
- // Do not keep as active anymore
- if ( handle ) {
- xhr.onreadystatechange = jQuery.noop;
- if ( xhrOnUnloadAbort ) {
- delete xhrCallbacks[ handle ];
- }
- }
-
- // If it's an abort
- if ( isAbort ) {
- // Abort it manually if needed
- if ( xhr.readyState !== 4 ) {
- xhr.abort();
- }
- } else {
- status = xhr.status;
- responseHeaders = xhr.getAllResponseHeaders();
- responses = {};
- xml = xhr.responseXML;
-
- // Construct response list
- if ( xml && xml.documentElement /* #4958 */ ) {
- responses.xml = xml;
- }
- responses.text = xhr.responseText;
-
- // Firefox throws an exception when accessing
- // statusText for faulty cross-domain requests
- try {
- statusText = xhr.statusText;
- } catch( e ) {
- // We normalize with Webkit giving an empty statusText
- statusText = "";
- }
-
- // Filter status for non standard behaviors
-
- // If the request is local and we have data: assume a success
- // (success with no data won't get notified, that's the best we
- // can do given current implementations)
- if ( !status && s.isLocal && !s.crossDomain ) {
- status = responses.text ? 200 : 404;
- // IE - #1450: sometimes returns 1223 when it should be 204
- } else if ( status === 1223 ) {
- status = 204;
- }
- }
- }
- } catch( firefoxAccessException ) {
- if ( !isAbort ) {
- complete( -1, firefoxAccessException );
- }
- }
-
- // Call complete if needed
- if ( responses ) {
- complete( status, statusText, responses, responseHeaders );
- }
- };
-
- // if we're in sync mode or it's in cache
- // and has been retrieved directly (IE6 & IE7)
- // we need to manually fire the callback
- if ( !s.async || xhr.readyState === 4 ) {
- callback();
- } else {
- handle = ++xhrId;
- if ( xhrOnUnloadAbort ) {
- // Create the active xhrs callbacks list if needed
- // and attach the unload handler
- if ( !xhrCallbacks ) {
- xhrCallbacks = {};
- jQuery( window ).unload( xhrOnUnloadAbort );
- }
- // Add to list of active xhrs callbacks
- xhrCallbacks[ handle ] = callback;
- }
- xhr.onreadystatechange = callback;
- }
- },
-
- abort: function() {
- if ( callback ) {
- callback(0,1);
- }
- }
- };
- }
- });
-}
-
-
-
-
-var elemdisplay = {},
- iframe, iframeDoc,
- rfxtypes = /^(?:toggle|show|hide)$/,
- rfxnum = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,
- timerId,
- fxAttrs = [
- // height animations
- [ "height", "marginTop", "marginBottom", "paddingTop", "paddingBottom" ],
- // width animations
- [ "width", "marginLeft", "marginRight", "paddingLeft", "paddingRight" ],
- // opacity animations
- [ "opacity" ]
- ],
- fxNow;
-
-jQuery.fn.extend({
- show: function( speed, easing, callback ) {
- var elem, display;
-
- if ( speed || speed === 0 ) {
- return this.animate( genFx("show", 3), speed, easing, callback);
-
- } else {
- for ( var i = 0, j = this.length; i < j; i++ ) {
- elem = this[i];
-
- if ( elem.style ) {
- display = elem.style.display;
-
- // Reset the inline display of this element to learn if it is
- // being hidden by cascaded rules or not
- if ( !jQuery._data(elem, "olddisplay") && display === "none" ) {
- display = elem.style.display = "";
- }
-
- // Set elements which have been overridden with display: none
- // in a stylesheet to whatever the default browser style is
- // for such an element
- if ( display === "" && jQuery.css( elem, "display" ) === "none" ) {
- jQuery._data(elem, "olddisplay", defaultDisplay(elem.nodeName));
- }
- }
- }
-
- // Set the display of most of the elements in a second loop
- // to avoid the constant reflow
- for ( i = 0; i < j; i++ ) {
- elem = this[i];
-
- if ( elem.style ) {
- display = elem.style.display;
-
- if ( display === "" || display === "none" ) {
- elem.style.display = jQuery._data(elem, "olddisplay") || "";
- }
- }
- }
-
- return this;
- }
- },
-
- hide: function( speed, easing, callback ) {
- if ( speed || speed === 0 ) {
- return this.animate( genFx("hide", 3), speed, easing, callback);
-
- } else {
- for ( var i = 0, j = this.length; i < j; i++ ) {
- if ( this[i].style ) {
- var display = jQuery.css( this[i], "display" );
-
- if ( display !== "none" && !jQuery._data( this[i], "olddisplay" ) ) {
- jQuery._data( this[i], "olddisplay", display );
- }
- }
- }
-
- // Set the display of the elements in a second loop
- // to avoid the constant reflow
- for ( i = 0; i < j; i++ ) {
- if ( this[i].style ) {
- this[i].style.display = "none";
- }
- }
-
- return this;
- }
- },
-
- // Save the old toggle function
- _toggle: jQuery.fn.toggle,
-
- toggle: function( fn, fn2, callback ) {
- var bool = typeof fn === "boolean";
-
- if ( jQuery.isFunction(fn) && jQuery.isFunction(fn2) ) {
- this._toggle.apply( this, arguments );
-
- } else if ( fn == null || bool ) {
- this.each(function() {
- var state = bool ? fn : jQuery(this).is(":hidden");
- jQuery(this)[ state ? "show" : "hide" ]();
- });
-
- } else {
- this.animate(genFx("toggle", 3), fn, fn2, callback);
- }
-
- return this;
- },
-
- fadeTo: function( speed, to, easing, callback ) {
- return this.filter(":hidden").css("opacity", 0).show().end()
- .animate({opacity: to}, speed, easing, callback);
- },
-
- animate: function( prop, speed, easing, callback ) {
- var optall = jQuery.speed(speed, easing, callback);
-
- if ( jQuery.isEmptyObject( prop ) ) {
- return this.each( optall.complete, [ false ] );
- }
-
- // Do not change referenced properties as per-property easing will be lost
- prop = jQuery.extend( {}, prop );
-
- return this[ optall.queue === false ? "each" : "queue" ](function() {
- // XXX 'this' does not always have a nodeName when running the
- // test suite
-
- if ( optall.queue === false ) {
- jQuery._mark( this );
- }
-
- var opt = jQuery.extend( {}, optall ),
- isElement = this.nodeType === 1,
- hidden = isElement && jQuery(this).is(":hidden"),
- name, val, p,
- display, e,
- parts, start, end, unit;
-
- // will store per property easing and be used to determine when an animation is complete
- opt.animatedProperties = {};
-
- for ( p in prop ) {
-
- // property name normalization
- name = jQuery.camelCase( p );
- if ( p !== name ) {
- prop[ name ] = prop[ p ];
- delete prop[ p ];
- }
-
- val = prop[ name ];
-
- // easing resolution: per property > opt.specialEasing > opt.easing > 'swing' (default)
- if ( jQuery.isArray( val ) ) {
- opt.animatedProperties[ name ] = val[ 1 ];
- val = prop[ name ] = val[ 0 ];
- } else {
- opt.animatedProperties[ name ] = opt.specialEasing && opt.specialEasing[ name ] || opt.easing || 'swing';
- }
-
- if ( val === "hide" && hidden || val === "show" && !hidden ) {
- return opt.complete.call( this );
- }
-
- if ( isElement && ( name === "height" || name === "width" ) ) {
- // Make sure that nothing sneaks out
- // Record all 3 overflow attributes because IE does not
- // change the overflow attribute when overflowX and
- // overflowY are set to the same value
- opt.overflow = [ this.style.overflow, this.style.overflowX, this.style.overflowY ];
-
- // Set display property to inline-block for height/width
- // animations on inline elements that are having width/height
- // animated
- if ( jQuery.css( this, "display" ) === "inline" &&
- jQuery.css( this, "float" ) === "none" ) {
- if ( !jQuery.support.inlineBlockNeedsLayout ) {
- this.style.display = "inline-block";
-
- } else {
- display = defaultDisplay( this.nodeName );
-
- // inline-level elements accept inline-block;
- // block-level elements need to be inline with layout
- if ( display === "inline" ) {
- this.style.display = "inline-block";
-
- } else {
- this.style.display = "inline";
- this.style.zoom = 1;
- }
- }
- }
- }
- }
-
- if ( opt.overflow != null ) {
- this.style.overflow = "hidden";
- }
-
- for ( p in prop ) {
- e = new jQuery.fx( this, opt, p );
- val = prop[ p ];
-
- if ( rfxtypes.test(val) ) {
- e[ val === "toggle" ? hidden ? "show" : "hide" : val ]();
-
- } else {
- parts = rfxnum.exec( val );
- start = e.cur();
-
- if ( parts ) {
- end = parseFloat( parts[2] );
- unit = parts[3] || ( jQuery.cssNumber[ p ] ? "" : "px" );
-
- // We need to compute starting value
- if ( unit !== "px" ) {
- jQuery.style( this, p, (end || 1) + unit);
- start = ((end || 1) / e.cur()) * start;
- jQuery.style( this, p, start + unit);
- }
-
- // If a +=/-= token was provided, we're doing a relative animation
- if ( parts[1] ) {
- end = ( (parts[ 1 ] === "-=" ? -1 : 1) * end ) + start;
- }
-
- e.custom( start, end, unit );
-
- } else {
- e.custom( start, val, "" );
- }
- }
- }
-
- // For JS strict compliance
- return true;
- });
- },
-
- stop: function( clearQueue, gotoEnd ) {
- if ( clearQueue ) {
- this.queue([]);
- }
-
- this.each(function() {
- var timers = jQuery.timers,
- i = timers.length;
- // clear marker counters if we know they won't be
- if ( !gotoEnd ) {
- jQuery._unmark( true, this );
- }
- while ( i-- ) {
- if ( timers[i].elem === this ) {
- if (gotoEnd) {
- // force the next step to be the last
- timers[i](true);
- }
-
- timers.splice(i, 1);
- }
- }
- });
-
- // start the next in the queue if the last step wasn't forced
- if ( !gotoEnd ) {
- this.dequeue();
- }
-
- return this;
- }
-
-});
-
-// Animations created synchronously will run synchronously
-function createFxNow() {
- setTimeout( clearFxNow, 0 );
- return ( fxNow = jQuery.now() );
-}
-
-function clearFxNow() {
- fxNow = undefined;
-}
-
-// Generate parameters to create a standard animation
-function genFx( type, num ) {
- var obj = {};
-
- jQuery.each( fxAttrs.concat.apply([], fxAttrs.slice(0,num)), function() {
- obj[ this ] = type;
- });
-
- return obj;
-}
-
-// Generate shortcuts for custom animations
-jQuery.each({
- slideDown: genFx("show", 1),
- slideUp: genFx("hide", 1),
- slideToggle: genFx("toggle", 1),
- fadeIn: { opacity: "show" },
- fadeOut: { opacity: "hide" },
- fadeToggle: { opacity: "toggle" }
-}, function( name, props ) {
- jQuery.fn[ name ] = function( speed, easing, callback ) {
- return this.animate( props, speed, easing, callback );
- };
-});
-
-jQuery.extend({
- speed: function( speed, easing, fn ) {
- var opt = speed && typeof speed === "object" ? jQuery.extend({}, speed) : {
- complete: fn || !fn && easing ||
- jQuery.isFunction( speed ) && speed,
- duration: speed,
- easing: fn && easing || easing && !jQuery.isFunction(easing) && easing
- };
-
- opt.duration = jQuery.fx.off ? 0 : typeof opt.duration === "number" ? opt.duration :
- opt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[opt.duration] : jQuery.fx.speeds._default;
-
- // Queueing
- opt.old = opt.complete;
- opt.complete = function( noUnmark ) {
- if ( jQuery.isFunction( opt.old ) ) {
- opt.old.call( this );
- }
-
- if ( opt.queue !== false ) {
- jQuery.dequeue( this );
- } else if ( noUnmark !== false ) {
- jQuery._unmark( this );
- }
- };
-
- return opt;
- },
-
- easing: {
- linear: function( p, n, firstNum, diff ) {
- return firstNum + diff * p;
- },
- swing: function( p, n, firstNum, diff ) {
- return ((-Math.cos(p*Math.PI)/2) + 0.5) * diff + firstNum;
- }
- },
-
- timers: [],
-
- fx: function( elem, options, prop ) {
- this.options = options;
- this.elem = elem;
- this.prop = prop;
-
- options.orig = options.orig || {};
- }
-
-});
-
-jQuery.fx.prototype = {
- // Simple function for setting a style value
- update: function() {
- if ( this.options.step ) {
- this.options.step.call( this.elem, this.now, this );
- }
-
- (jQuery.fx.step[this.prop] || jQuery.fx.step._default)( this );
- },
-
- // Get the current size
- cur: function() {
- if ( this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null) ) {
- return this.elem[ this.prop ];
- }
-
- var parsed,
- r = jQuery.css( this.elem, this.prop );
- // Empty strings, null, undefined and "auto" are converted to 0,
- // complex values such as "rotate(1rad)" are returned as is,
- // simple values such as "10px" are parsed to Float.
- return isNaN( parsed = parseFloat( r ) ) ? !r || r === "auto" ? 0 : r : parsed;
- },
-
- // Start an animation from one number to another
- custom: function( from, to, unit ) {
- var self = this,
- fx = jQuery.fx;
-
- this.startTime = fxNow || createFxNow();
- this.start = from;
- this.end = to;
- this.unit = unit || this.unit || ( jQuery.cssNumber[ this.prop ] ? "" : "px" );
- this.now = this.start;
- this.pos = this.state = 0;
-
- function t( gotoEnd ) {
- return self.step(gotoEnd);
- }
-
- t.elem = this.elem;
-
- if ( t() && jQuery.timers.push(t) && !timerId ) {
- timerId = setInterval( fx.tick, fx.interval );
- }
- },
-
- // Simple 'show' function
- show: function() {
- // Remember where we started, so that we can go back to it later
- this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
- this.options.show = true;
-
- // Begin the animation
- // Make sure that we start at a small width/height to avoid any
- // flash of content
- this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur());
-
- // Start by showing the element
- jQuery( this.elem ).show();
- },
-
- // Simple 'hide' function
- hide: function() {
- // Remember where we started, so that we can go back to it later
- this.options.orig[this.prop] = jQuery.style( this.elem, this.prop );
- this.options.hide = true;
-
- // Begin the animation
- this.custom(this.cur(), 0);
- },
-
- // Each step of an animation
- step: function( gotoEnd ) {
- var t = fxNow || createFxNow(),
- done = true,
- elem = this.elem,
- options = this.options,
- i, n;
-
- if ( gotoEnd || t >= options.duration + this.startTime ) {
- this.now = this.end;
- this.pos = this.state = 1;
- this.update();
-
- options.animatedProperties[ this.prop ] = true;
-
- for ( i in options.animatedProperties ) {
- if ( options.animatedProperties[i] !== true ) {
- done = false;
- }
- }
-
- if ( done ) {
- // Reset the overflow
- if ( options.overflow != null && !jQuery.support.shrinkWrapBlocks ) {
-
- jQuery.each( [ "", "X", "Y" ], function (index, value) {
- elem.style[ "overflow" + value ] = options.overflow[index];
- });
- }
-
- // Hide the element if the "hide" operation was done
- if ( options.hide ) {
- jQuery(elem).hide();
- }
-
- // Reset the properties, if the item has been hidden or shown
- if ( options.hide || options.show ) {
- for ( var p in options.animatedProperties ) {
- jQuery.style( elem, p, options.orig[p] );
- }
- }
-
- // Execute the complete function
- options.complete.call( elem );
- }
-
- return false;
-
- } else {
- // classical easing cannot be used with an Infinity duration
- if ( options.duration == Infinity ) {
- this.now = t;
- } else {
- n = t - this.startTime;
- this.state = n / options.duration;
-
- // Perform the easing function, defaults to swing
- this.pos = jQuery.easing[ options.animatedProperties[ this.prop ] ]( this.state, n, 0, 1, options.duration );
- this.now = this.start + ((this.end - this.start) * this.pos);
- }
- // Perform the next step of the animation
- this.update();
- }
-
- return true;
- }
-};
-
-jQuery.extend( jQuery.fx, {
- tick: function() {
- for ( var timers = jQuery.timers, i = 0 ; i < timers.length ; ++i ) {
- if ( !timers[i]() ) {
- timers.splice(i--, 1);
- }
- }
-
- if ( !timers.length ) {
- jQuery.fx.stop();
- }
- },
-
- interval: 13,
-
- stop: function() {
- clearInterval( timerId );
- timerId = null;
- },
-
- speeds: {
- slow: 600,
- fast: 200,
- // Default speed
- _default: 400
- },
-
- step: {
- opacity: function( fx ) {
- jQuery.style( fx.elem, "opacity", fx.now );
- },
-
- _default: function( fx ) {
- if ( fx.elem.style && fx.elem.style[ fx.prop ] != null ) {
- fx.elem.style[ fx.prop ] = (fx.prop === "width" || fx.prop === "height" ? Math.max(0, fx.now) : fx.now) + fx.unit;
- } else {
- fx.elem[ fx.prop ] = fx.now;
- }
- }
- }
-});
-
-if ( jQuery.expr && jQuery.expr.filters ) {
- jQuery.expr.filters.animated = function( elem ) {
- return jQuery.grep(jQuery.timers, function( fn ) {
- return elem === fn.elem;
- }).length;
- };
-}
-
-// Try to restore the default display value of an element
-function defaultDisplay( nodeName ) {
-
- if ( !elemdisplay[ nodeName ] ) {
-
- var body = document.body,
- elem = jQuery( "<" + nodeName + ">" ).appendTo( body ),
- display = elem.css( "display" );
-
- elem.remove();
-
- // If the simple way fails,
- // get element's real default display by attaching it to a temp iframe
- if ( display === "none" || display === "" ) {
- // No iframe to use yet, so create it
- if ( !iframe ) {
- iframe = document.createElement( "iframe" );
- iframe.frameBorder = iframe.width = iframe.height = 0;
- }
-
- body.appendChild( iframe );
-
- // Create a cacheable copy of the iframe document on first call.
- // IE and Opera will allow us to reuse the iframeDoc without re-writing the fake HTML
- // document to it; WebKit & Firefox won't allow reusing the iframe document.
- if ( !iframeDoc || !iframe.createElement ) {
- iframeDoc = ( iframe.contentWindow || iframe.contentDocument ).document;
- iframeDoc.write( ( document.compatMode === "CSS1Compat" ? "<!doctype html>" : "" ) + "<html><body>" );
- iframeDoc.close();
- }
-
- elem = iframeDoc.createElement( nodeName );
-
- iframeDoc.body.appendChild( elem );
-
- display = jQuery.css( elem, "display" );
-
- body.removeChild( iframe );
- }
-
- // Store the correct default display
- elemdisplay[ nodeName ] = display;
- }
-
- return elemdisplay[ nodeName ];
-}
-
-
-
-
-var rtable = /^t(?:able|d|h)$/i,
- rroot = /^(?:body|html)$/i;
-
-if ( "getBoundingClientRect" in document.documentElement ) {
- jQuery.fn.offset = function( options ) {
- var elem = this[0], box;
-
- if ( options ) {
- return this.each(function( i ) {
- jQuery.offset.setOffset( this, options, i );
- });
- }
-
- if ( !elem || !elem.ownerDocument ) {
- return null;
- }
-
- if ( elem === elem.ownerDocument.body ) {
- return jQuery.offset.bodyOffset( elem );
- }
-
- try {
- box = elem.getBoundingClientRect();
- } catch(e) {}
-
- var doc = elem.ownerDocument,
- docElem = doc.documentElement;
-
- // Make sure we're not dealing with a disconnected DOM node
- if ( !box || !jQuery.contains( docElem, elem ) ) {
- return box ? { top: box.top, left: box.left } : { top: 0, left: 0 };
- }
-
- var body = doc.body,
- win = getWindow(doc),
- clientTop = docElem.clientTop || body.clientTop || 0,
- clientLeft = docElem.clientLeft || body.clientLeft || 0,
- scrollTop = win.pageYOffset || jQuery.support.boxModel && docElem.scrollTop || body.scrollTop,
- scrollLeft = win.pageXOffset || jQuery.support.boxModel && docElem.scrollLeft || body.scrollLeft,
- top = box.top + scrollTop - clientTop,
- left = box.left + scrollLeft - clientLeft;
-
- return { top: top, left: left };
- };
-
-} else {
- jQuery.fn.offset = function( options ) {
- var elem = this[0];
-
- if ( options ) {
- return this.each(function( i ) {
- jQuery.offset.setOffset( this, options, i );
- });
- }
-
- if ( !elem || !elem.ownerDocument ) {
- return null;
- }
-
- if ( elem === elem.ownerDocument.body ) {
- return jQuery.offset.bodyOffset( elem );
- }
-
- jQuery.offset.initialize();
-
- var computedStyle,
- offsetParent = elem.offsetParent,
- prevOffsetParent = elem,
- doc = elem.ownerDocument,
- docElem = doc.documentElement,
- body = doc.body,
- defaultView = doc.defaultView,
- prevComputedStyle = defaultView ? defaultView.getComputedStyle( elem, null ) : elem.currentStyle,
- top = elem.offsetTop,
- left = elem.offsetLeft;
-
- while ( (elem = elem.parentNode) && elem !== body && elem !== docElem ) {
- if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
- break;
- }
-
- computedStyle = defaultView ? defaultView.getComputedStyle(elem, null) : elem.currentStyle;
- top -= elem.scrollTop;
- left -= elem.scrollLeft;
-
- if ( elem === offsetParent ) {
- top += elem.offsetTop;
- left += elem.offsetLeft;
-
- if ( jQuery.offset.doesNotAddBorder && !(jQuery.offset.doesAddBorderForTableAndCells && rtable.test(elem.nodeName)) ) {
- top += parseFloat( computedStyle.borderTopWidth ) || 0;
- left += parseFloat( computedStyle.borderLeftWidth ) || 0;
- }
-
- prevOffsetParent = offsetParent;
- offsetParent = elem.offsetParent;
- }
-
- if ( jQuery.offset.subtractsBorderForOverflowNotVisible && computedStyle.overflow !== "visible" ) {
- top += parseFloat( computedStyle.borderTopWidth ) || 0;
- left += parseFloat( computedStyle.borderLeftWidth ) || 0;
- }
-
- prevComputedStyle = computedStyle;
- }
-
- if ( prevComputedStyle.position === "relative" || prevComputedStyle.position === "static" ) {
- top += body.offsetTop;
- left += body.offsetLeft;
- }
-
- if ( jQuery.offset.supportsFixedPosition && prevComputedStyle.position === "fixed" ) {
- top += Math.max( docElem.scrollTop, body.scrollTop );
- left += Math.max( docElem.scrollLeft, body.scrollLeft );
- }
-
- return { top: top, left: left };
- };
-}
-
-jQuery.offset = {
- initialize: function() {
- var body = document.body, container = document.createElement("div"), innerDiv, checkDiv, table, td, bodyMarginTop = parseFloat( jQuery.css(body, "marginTop") ) || 0,
- html = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
-
- jQuery.extend( container.style, { position: "absolute", top: 0, left: 0, margin: 0, border: 0, width: "1px", height: "1px", visibility: "hidden" } );
-
- container.innerHTML = html;
- body.insertBefore( container, body.firstChild );
- innerDiv = container.firstChild;
- checkDiv = innerDiv.firstChild;
- td = innerDiv.nextSibling.firstChild.firstChild;
-
- this.doesNotAddBorder = (checkDiv.offsetTop !== 5);
- this.doesAddBorderForTableAndCells = (td.offsetTop === 5);
-
- checkDiv.style.position = "fixed";
- checkDiv.style.top = "20px";
-
- // safari subtracts parent border width here which is 5px
- this.supportsFixedPosition = (checkDiv.offsetTop === 20 || checkDiv.offsetTop === 15);
- checkDiv.style.position = checkDiv.style.top = "";
-
- innerDiv.style.overflow = "hidden";
- innerDiv.style.position = "relative";
-
- this.subtractsBorderForOverflowNotVisible = (checkDiv.offsetTop === -5);
-
- this.doesNotIncludeMarginInBodyOffset = (body.offsetTop !== bodyMarginTop);
-
- body.removeChild( container );
- jQuery.offset.initialize = jQuery.noop;
- },
-
- bodyOffset: function( body ) {
- var top = body.offsetTop,
- left = body.offsetLeft;
-
- jQuery.offset.initialize();
-
- if ( jQuery.offset.doesNotIncludeMarginInBodyOffset ) {
- top += parseFloat( jQuery.css(body, "marginTop") ) || 0;
- left += parseFloat( jQuery.css(body, "marginLeft") ) || 0;
- }
-
- return { top: top, left: left };
- },
-
- setOffset: function( elem, options, i ) {
- var position = jQuery.css( elem, "position" );
-
- // set position first, in-case top/left are set even on static elem
- if ( position === "static" ) {
- elem.style.position = "relative";
- }
-
- var curElem = jQuery( elem ),
- curOffset = curElem.offset(),
- curCSSTop = jQuery.css( elem, "top" ),
- curCSSLeft = jQuery.css( elem, "left" ),
- calculatePosition = (position === "absolute" || position === "fixed") && jQuery.inArray("auto", [curCSSTop, curCSSLeft]) > -1,
- props = {}, curPosition = {}, curTop, curLeft;
-
- // need to be able to calculate position if either top or left is auto and position is either absolute or fixed
- if ( calculatePosition ) {
- curPosition = curElem.position();
- curTop = curPosition.top;
- curLeft = curPosition.left;
- } else {
- curTop = parseFloat( curCSSTop ) || 0;
- curLeft = parseFloat( curCSSLeft ) || 0;
- }
-
- if ( jQuery.isFunction( options ) ) {
- options = options.call( elem, i, curOffset );
- }
-
- if (options.top != null) {
- props.top = (options.top - curOffset.top) + curTop;
- }
- if (options.left != null) {
- props.left = (options.left - curOffset.left) + curLeft;
- }
-
- if ( "using" in options ) {
- options.using.call( elem, props );
- } else {
- curElem.css( props );
- }
- }
-};
-
-
-jQuery.fn.extend({
- position: function() {
- if ( !this[0] ) {
- return null;
- }
-
- var elem = this[0],
-
- // Get *real* offsetParent
- offsetParent = this.offsetParent(),
-
- // Get correct offsets
- offset = this.offset(),
- parentOffset = rroot.test(offsetParent[0].nodeName) ? { top: 0, left: 0 } : offsetParent.offset();
-
- // Subtract element margins
- // note: when an element has margin: auto the offsetLeft and marginLeft
- // are the same in Safari causing offset.left to incorrectly be 0
- offset.top -= parseFloat( jQuery.css(elem, "marginTop") ) || 0;
- offset.left -= parseFloat( jQuery.css(elem, "marginLeft") ) || 0;
-
- // Add offsetParent borders
- parentOffset.top += parseFloat( jQuery.css(offsetParent[0], "borderTopWidth") ) || 0;
- parentOffset.left += parseFloat( jQuery.css(offsetParent[0], "borderLeftWidth") ) || 0;
-
- // Subtract the two offsets
- return {
- top: offset.top - parentOffset.top,
- left: offset.left - parentOffset.left
- };
- },
-
- offsetParent: function() {
- return this.map(function() {
- var offsetParent = this.offsetParent || document.body;
- while ( offsetParent && (!rroot.test(offsetParent.nodeName) && jQuery.css(offsetParent, "position") === "static") ) {
- offsetParent = offsetParent.offsetParent;
- }
- return offsetParent;
- });
- }
-});
-
-
-// Create scrollLeft and scrollTop methods
-jQuery.each( ["Left", "Top"], function( i, name ) {
- var method = "scroll" + name;
-
- jQuery.fn[ method ] = function( val ) {
- var elem, win;
-
- if ( val === undefined ) {
- elem = this[ 0 ];
-
- if ( !elem ) {
- return null;
- }
-
- win = getWindow( elem );
-
- // Return the scroll offset
- return win ? ("pageXOffset" in win) ? win[ i ? "pageYOffset" : "pageXOffset" ] :
- jQuery.support.boxModel && win.document.documentElement[ method ] ||
- win.document.body[ method ] :
- elem[ method ];
- }
-
- // Set the scroll offset
- return this.each(function() {
- win = getWindow( this );
-
- if ( win ) {
- win.scrollTo(
- !i ? val : jQuery( win ).scrollLeft(),
- i ? val : jQuery( win ).scrollTop()
- );
-
- } else {
- this[ method ] = val;
- }
- });
- };
-});
-
-function getWindow( elem ) {
- return jQuery.isWindow( elem ) ?
- elem :
- elem.nodeType === 9 ?
- elem.defaultView || elem.parentWindow :
- false;
-}
-
-
-
-
-// Create width, height, innerHeight, innerWidth, outerHeight and outerWidth methods
-jQuery.each([ "Height", "Width" ], function( i, name ) {
-
- var type = name.toLowerCase();
-
- // innerHeight and innerWidth
- jQuery.fn[ "inner" + name ] = function() {
- var elem = this[0];
- return elem && elem.style ?
- parseFloat( jQuery.css( elem, type, "padding" ) ) :
- null;
- };
-
- // outerHeight and outerWidth
- jQuery.fn[ "outer" + name ] = function( margin ) {
- var elem = this[0];
- return elem && elem.style ?
- parseFloat( jQuery.css( elem, type, margin ? "margin" : "border" ) ) :
- null;
- };
-
- jQuery.fn[ type ] = function( size ) {
- // Get window width or height
- var elem = this[0];
- if ( !elem ) {
- return size == null ? null : this;
- }
-
- if ( jQuery.isFunction( size ) ) {
- return this.each(function( i ) {
- var self = jQuery( this );
- self[ type ]( size.call( this, i, self[ type ]() ) );
- });
- }
-
- if ( jQuery.isWindow( elem ) ) {
- // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
- // 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat
- var docElemProp = elem.document.documentElement[ "client" + name ],
- body = elem.document.body;
- return elem.document.compatMode === "CSS1Compat" && docElemProp ||
- body && body[ "client" + name ] || docElemProp;
-
- // Get document width or height
- } else if ( elem.nodeType === 9 ) {
- // Either scroll[Width/Height] or offset[Width/Height], whichever is greater
- return Math.max(
- elem.documentElement["client" + name],
- elem.body["scroll" + name], elem.documentElement["scroll" + name],
- elem.body["offset" + name], elem.documentElement["offset" + name]
- );
-
- // Get or set width or height on the element
- } else if ( size === undefined ) {
- var orig = jQuery.css( elem, type ),
- ret = parseFloat( orig );
-
- return jQuery.isNaN( ret ) ? orig : ret;
-
- // Set the width or height on the element (default to pixels if value is unitless)
- } else {
- return this.css( type, typeof size === "string" ? size : size + "px" );
- }
- };
-
-});
-
-
-// Expose jQuery to the global object
-window.jQuery = window.$ = jQuery;
-})(window);
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.min.js b/wqflask/wqflask/static/packages/jqplot/jquery.min.js
deleted file mode 100644
index b6b6e46e..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! jQuery v1.6.4 http://jquery.com/ | http://jquery.org/license */
-(function(a,b){function cu(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cr(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cq(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cp(){cn=b}function co(){setTimeout(cp,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bA.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bW(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bP,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bW(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bW(a,c,d,e,"*",g));return l}function bV(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bL),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function by(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bt:bu;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bv(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bl(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bd,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bk(a){f.nodeName(a,"input")?bj(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bj)}function bj(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bi(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bh(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bg(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bf(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function V(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(Q.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function U(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function M(a,b){return(a&&a!=="*"?a+".":"")+b.replace(y,"`").replace(z,"&")}function L(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(w,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function J(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function D(){return!0}function C(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function K(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(K,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.4",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;B.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:H?function(a){return a==null?"":H.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?F.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(!b)return-1;if(I)return I.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=G.call(arguments,2),g=function(){return a.apply(c,f.concat(G.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){J["[object "+b+"]"]=b.toLowerCase()}),A=e.uaMatch(z),A.browser&&(e.browser[A.browser]=!0,e.browser.version=A.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?C=function(){c.removeEventListener("DOMContentLoaded",C,!1),e.ready()}:c.attachEvent&&(C=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",C),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g+"With"](this===b?d:this,[h])}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-1000px",top:"-1000px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i=f.expando,j=typeof c=="string",k=a.nodeType,l=k?f.cache:a,m=k?a[f.expando]:a[f.expando]&&f.expando;if((!m||e&&m&&l[m]&&!l[m][i])&&j&&d===b)return;m||(k?a[f.expando]=m=++f.uuid:m=f.expando),l[m]||(l[m]={},k||(l[m].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?l[m][i]=f.extend(l[m][i],c):l[m]=f.extend(l[m],c);g=l[m],e&&(g[i]||(g[i]={}),g=g[i]),d!==b&&(g[f.camelCase(c)]=d);if(c==="events"&&!g[c])return g[i]&&g[i].events;j?(h=g[c],h==null&&(h=g[f.camelCase(c)])):h=g;return h}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e=f.expando,g=a.nodeType,h=g?f.cache:a,i=g?a[f.expando]:f.expando;if(!h[i])return;if(b){d=c?h[i][e]:h[i];if(d){d[b]||(b=f.camelCase(b)),delete d[b];if(!l(d))return}}if(c){delete h[i][e];if(!l(h[i]))return}var j=h[i][e];f.support.deleteExpando||!h.setInterval?delete h[i]:h[i]=null,j?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=j):g&&(f.support.deleteExpando?delete a[f.expando]:a.removeAttribute?a.removeAttribute(f.expando):a[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u,v;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=v:u&&(i=u)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.attr(a,b,""),a.removeAttribute(b),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(u&&f.nodeName(a,"button"))return u.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(u&&f.nodeName(a,"button"))return u.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==null?g:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabIndex=f.propHooks.tabIndex,v={get:function(a,c){var d;return f.prop(a,c)===!0||(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(u=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var w=/\.(.*)$/,x=/^(?:textarea|input|select)$/i,y=/\./g,z=/ /g,A=/[^\w\s.|`]/g,B=function(a){return a.replace(A,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=C;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=C);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),B).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete
-t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,M(a.origType,a.selector),f.extend({},a,{handler:L,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,M(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?D:C):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=D;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=D;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=D,this.stopPropagation()},isDefaultPrevented:C,isPropagationStopped:C,isImmediatePropagationStopped:C};var E=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},F=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?F:E,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?F:E)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="submit"||c==="image")&&f(b).closest("form").length&&J("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")||f.nodeName(b,"button")?b.type:"";(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&J("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var G,H=function(a){var b=f.nodeName(a,"input")?a.type:"",c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},I=function(c){var d=c.target,e,g;if(!!x.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=H(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:I,beforedeactivate:I,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&I.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&I.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",H(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in G)f.event.add(this,c+".specialChange",G[c]);return x.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return x.test(this.nodeName)}},G=f.event.special.change.filters,G.focus=G.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var K={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||C,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=w.exec(h),k="",j&&(k=j[0],h=h.replace(w,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,K[h]?(a.push(K[h]+k),h=h+k):h=(K[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+M(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+M(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var N=/Until$/,O=/^(?:parents|prevUntil|prevAll)/,P=/,/,Q=/^.[^:#\[\.,]*$/,R=Array.prototype.slice,S=f.expr.match.POS,T={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(V(this,a,!1),"not",a)},filter:function(a){return this.pushStack(V(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=S.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=S.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(U(c[0])||U(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=R.call(arguments);N.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!T[a]?f.unique(e):e,(this.length>1||P.test(d))&&O.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|object|embed|option|style)/i,bb=/checked\s*(?:[^=]|=\s*.checked.)/i,bc=/\/(java|ecma)script/i,bd=/^\s*<!(?:\[CDATA\[|\-\-)/,be={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};be.optgroup=be.option,be.tbody=be.tfoot=be.colgroup=be.caption=be.thead,be.th=be.td,f.support.htmlSerialize||(be._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!be[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bb.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bf(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bl)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!ba.test(a[0])&&(f.support.checkClone||!bb.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean
-(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bh(a,d),e=bi(a),g=bi(d);for(h=0;e[h];++h)g[h]&&bh(e[h],g[h])}if(b){bg(a,d);if(c){e=bi(a),g=bi(d);for(h=0;e[h];++h)bg(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=be[l]||be._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bk(k[i]);else bk(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bc.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bm=/alpha\([^)]*\)/i,bn=/opacity=([^)]*)/,bo=/([A-Z]|^ms)/g,bp=/^-?\d+(?:px)?$/i,bq=/^-?\d/,br=/^([\-+])=([\-+.\de]+)/,bs={position:"absolute",visibility:"hidden",display:"block"},bt=["Left","Right"],bu=["Top","Bottom"],bv,bw,bx;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bv(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=br.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bv)return bv(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return by(a,b,d);f.swap(a,bs,function(){e=by(a,b,d)});return e}},set:function(a,b){if(!bp.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bn.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bm,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bm.test(g)?g.replace(bm,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bv(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bw=function(a,c){var d,e,g;c=c.replace(bo,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bx=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bp.test(d)&&bq.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bv=bw||bx,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bz=/%20/g,bA=/\[\]$/,bB=/\r?\n/g,bC=/#.*$/,bD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bE=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bF=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bG=/^(?:GET|HEAD)$/,bH=/^\/\//,bI=/\?/,bJ=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bK=/^(?:select|textarea)/i,bL=/\s+/,bM=/([?&])_=[^&]*/,bN=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bO=f.fn.load,bP={},bQ={},bR,bS,bT=["*/"]+["*"];try{bR=e.href}catch(bU){bR=c.createElement("a"),bR.href="",bR=bR.href}bS=bN.exec(bR.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bO)return bO.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bJ,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bK.test(this.nodeName)||bE.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bB,"\r\n")}}):{name:b.name,value:c.replace(bB,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?bX(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),bX(a,b);return a},ajaxSettings:{url:bR,isLocal:bF.test(bS[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bT},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bV(bP),ajaxTransport:bV(bQ),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?bZ(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=b$(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bD.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bC,"").replace(bH,bS[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bL),d.crossDomain==null&&(r=bN.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bS[1]&&r[2]==bS[2]&&(r[3]||(r[1]==="http:"?80:443))==(bS[3]||(bS[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bW(bP,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bG.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bI.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bM,"$1_="+x);d.url=y+(y===d.url?(bI.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bT+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bW(bQ,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){s<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bz,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cq("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cr(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cq("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cq("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cr(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cq("show",1),slideUp:cq("hide",1),slideToggle:cq("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function g(a){return d.step(a)}var d=this,e=f.fx;this.startTime=cn||co(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&f.timers.push(g)&&!cl&&(cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||co(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cs=/^t(?:able|d|h)$/i,ct=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cu(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cs.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=ct.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!ct.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cu(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cu(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNaN(j)?i:j}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.validate.js b/wqflask/wqflask/static/packages/jqplot/jquery.validate.js
deleted file mode 100644
index 794e9017..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.validate.js
+++ /dev/null
@@ -1,1248 +0,0 @@
-/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
-* https://github.com/jzaefferer/jquery-validation
-* Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
-
-(function($) {
-
-$.extend($.fn, {
- // http://docs.jquery.com/Plugins/Validation/validate
- validate: function( options ) {
-
- // if nothing is selected, return nothing; can't chain anyway
- if (!this.length) {
- if (options && options.debug && window.console) {
- console.warn( "nothing selected, can't validate, returning nothing" );
- }
- return;
- }
-
- // check if a validator for this form was already created
- var validator = $.data(this[0], 'validator');
- if ( validator ) {
- return validator;
- }
-
- // Add novalidate tag if HTML5.
- this.attr('novalidate', 'novalidate');
-
- validator = new $.validator( options, this[0] );
- $.data(this[0], 'validator', validator);
-
- if ( validator.settings.onsubmit ) {
-
- this.validateDelegate( ":submit", "click", function(ev) {
- if ( validator.settings.submitHandler ) {
- validator.submitButton = ev.target;
- }
- // allow suppressing validation by adding a cancel class to the submit button
- if ( $(ev.target).hasClass('cancel') ) {
- validator.cancelSubmit = true;
- }
- });
-
- // validate the form on submit
- this.submit( function( event ) {
- if ( validator.settings.debug ) {
- // prevent form submit to be able to see console output
- event.preventDefault();
- }
- function handle() {
- var hidden;
- if ( validator.settings.submitHandler ) {
- if (validator.submitButton) {
- // insert a hidden input as a replacement for the missing submit button
- hidden = $("<input type='hidden'/>").attr("name", validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);
- }
- validator.settings.submitHandler.call( validator, validator.currentForm, event );
- if (validator.submitButton) {
- // and clean up afterwards; thanks to no-block-scope, hidden can be referenced
- hidden.remove();
- }
- return false;
- }
- return true;
- }
-
- // prevent submit for invalid forms or custom submit handlers
- if ( validator.cancelSubmit ) {
- validator.cancelSubmit = false;
- return handle();
- }
- if ( validator.form() ) {
- if ( validator.pendingRequest ) {
- validator.formSubmitted = true;
- return false;
- }
- return handle();
- } else {
- validator.focusInvalid();
- return false;
- }
- });
- }
-
- return validator;
- },
- // http://docs.jquery.com/Plugins/Validation/valid
- valid: function() {
- if ( $(this[0]).is('form')) {
- return this.validate().form();
- } else {
- var valid = true;
- var validator = $(this[0].form).validate();
- this.each(function() {
- valid &= validator.element(this);
- });
- return valid;
- }
- },
- // attributes: space seperated list of attributes to retrieve and remove
- removeAttrs: function(attributes) {
- var result = {},
- $element = this;
- $.each(attributes.split(/\s/), function(index, value) {
- result[value] = $element.attr(value);
- $element.removeAttr(value);
- });
- return result;
- },
- // http://docs.jquery.com/Plugins/Validation/rules
- rules: function(command, argument) {
- var element = this[0];
-
- if (command) {
- var settings = $.data(element.form, 'validator').settings;
- var staticRules = settings.rules;
- var existingRules = $.validator.staticRules(element);
- switch(command) {
- case "add":
- $.extend(existingRules, $.validator.normalizeRule(argument));
- staticRules[element.name] = existingRules;
- if (argument.messages) {
- settings.messages[element.name] = $.extend( settings.messages[element.name], argument.messages );
- }
- break;
- case "remove":
- if (!argument) {
- delete staticRules[element.name];
- return existingRules;
- }
- var filtered = {};
- $.each(argument.split(/\s/), function(index, method) {
- filtered[method] = existingRules[method];
- delete existingRules[method];
- });
- return filtered;
- }
- }
-
- var data = $.validator.normalizeRules(
- $.extend(
- {},
- $.validator.metadataRules(element),
- $.validator.classRules(element),
- $.validator.attributeRules(element),
- $.validator.staticRules(element)
- ), element);
-
- // make sure required is at front
- if (data.required) {
- var param = data.required;
- delete data.required;
- data = $.extend({required: param}, data);
- }
-
- return data;
- }
-});
-
-// Custom selectors
-$.extend($.expr[":"], {
- // http://docs.jquery.com/Plugins/Validation/blank
- blank: function(a) {return !$.trim("" + a.value);},
- // http://docs.jquery.com/Plugins/Validation/filled
- filled: function(a) {return !!$.trim("" + a.value);},
- // http://docs.jquery.com/Plugins/Validation/unchecked
- unchecked: function(a) {return !a.checked;}
-});
-
-// constructor for validator
-$.validator = function( options, form ) {
- this.settings = $.extend( true, {}, $.validator.defaults, options );
- this.currentForm = form;
- this.init();
-};
-
-$.validator.format = function(source, params) {
- if ( arguments.length === 1 ) {
- return function() {
- var args = $.makeArray(arguments);
- args.unshift(source);
- return $.validator.format.apply( this, args );
- };
- }
- if ( arguments.length > 2 && params.constructor !== Array ) {
- params = $.makeArray(arguments).slice(1);
- }
- if ( params.constructor !== Array ) {
- params = [ params ];
- }
- $.each(params, function(i, n) {
- source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
- });
- return source;
-};
-
-$.extend($.validator, {
-
- defaults: {
- messages: {},
- groups: {},
- rules: {},
- errorClass: "error",
- validClass: "valid",
- errorElement: "label",
- focusInvalid: true,
- errorContainer: $( [] ),
- errorLabelContainer: $( [] ),
- onsubmit: true,
- ignore: ":hidden",
- ignoreTitle: false,
- onfocusin: function(element, event) {
- this.lastActive = element;
-
- // hide error label and remove error class on focus if enabled
- if ( this.settings.focusCleanup && !this.blockFocusCleanup ) {
- if ( this.settings.unhighlight ) {
- this.settings.unhighlight.call( this, element, this.settings.errorClass, this.settings.validClass );
- }
- this.addWrapper(this.errorsFor(element)).hide();
- }
- },
- onfocusout: function(element, event) {
- if ( !this.checkable(element) && (element.name in this.submitted || !this.optional(element)) ) {
- this.element(element);
- }
- },
- onkeyup: function(element, event) {
- if ( event.which === 9 && this.elementValue(element) === '' ) {
- return;
- } else if ( element.name in this.submitted || element === this.lastActive ) {
- this.element(element);
- }
- },
- onclick: function(element, event) {
- // click on selects, radiobuttons and checkboxes
- if ( element.name in this.submitted ) {
- this.element(element);
- }
- // or option elements, check parent select in that case
- else if (element.parentNode.name in this.submitted) {
- this.element(element.parentNode);
- }
- },
- highlight: function(element, errorClass, validClass) {
- if (element.type === 'radio') {
- this.findByName(element.name).addClass(errorClass).removeClass(validClass);
- } else {
- $(element).addClass(errorClass).removeClass(validClass);
- }
- },
- unhighlight: function(element, errorClass, validClass) {
- if (element.type === 'radio') {
- this.findByName(element.name).removeClass(errorClass).addClass(validClass);
- } else {
- $(element).removeClass(errorClass).addClass(validClass);
- }
- }
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/setDefaults
- setDefaults: function(settings) {
- $.extend( $.validator.defaults, settings );
- },
-
- messages: {
- required: "This field is required.",
- remote: "Please fix this field.",
- email: "Please enter a valid email address.",
- url: "Please enter a valid URL.",
- date: "Please enter a valid date.",
- dateISO: "Please enter a valid date (ISO).",
- number: "Please enter a valid number.",
- digits: "Please enter only digits.",
- creditcard: "Please enter a valid credit card number.",
- equalTo: "Please enter the same value again.",
- maxlength: $.validator.format("Please enter no more than {0} characters."),
- minlength: $.validator.format("Please enter at least {0} characters."),
- rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
- range: $.validator.format("Please enter a value between {0} and {1}."),
- max: $.validator.format("Please enter a value less than or equal to {0}."),
- min: $.validator.format("Please enter a value greater than or equal to {0}.")
- },
-
- autoCreateRanges: false,
-
- prototype: {
-
- init: function() {
- this.labelContainer = $(this.settings.errorLabelContainer);
- this.errorContext = this.labelContainer.length && this.labelContainer || $(this.currentForm);
- this.containers = $(this.settings.errorContainer).add( this.settings.errorLabelContainer );
- this.submitted = {};
- this.valueCache = {};
- this.pendingRequest = 0;
- this.pending = {};
- this.invalid = {};
- this.reset();
-
- var groups = (this.groups = {});
- $.each(this.settings.groups, function(key, value) {
- $.each(value.split(/\s/), function(index, name) {
- groups[name] = key;
- });
- });
- var rules = this.settings.rules;
- $.each(rules, function(key, value) {
- rules[key] = $.validator.normalizeRule(value);
- });
-
- function delegate(event) {
- var validator = $.data(this[0].form, "validator"),
- eventType = "on" + event.type.replace(/^validate/, "");
- if (validator.settings[eventType]) {
- validator.settings[eventType].call(validator, this[0], event);
- }
- }
- $(this.currentForm)
- .validateDelegate(":text, [type='password'], [type='file'], select, textarea, " +
- "[type='number'], [type='search'] ,[type='tel'], [type='url'], " +
- "[type='email'], [type='datetime'], [type='date'], [type='month'], " +
- "[type='week'], [type='time'], [type='datetime-local'], " +
- "[type='range'], [type='color'] ",
- "focusin focusout keyup", delegate)
- .validateDelegate("[type='radio'], [type='checkbox'], select, option", "click", delegate);
-
- if (this.settings.invalidHandler) {
- $(this.currentForm).bind("invalid-form.validate", this.settings.invalidHandler);
- }
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/form
- form: function() {
- this.checkForm();
- $.extend(this.submitted, this.errorMap);
- this.invalid = $.extend({}, this.errorMap);
- if (!this.valid()) {
- $(this.currentForm).triggerHandler("invalid-form", [this]);
- }
- this.showErrors();
- return this.valid();
- },
-
- checkForm: function() {
- this.prepareForm();
- for ( var i = 0, elements = (this.currentElements = this.elements()); elements[i]; i++ ) {
- this.check( elements[i] );
- }
- return this.valid();
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/element
- element: function( element ) {
- element = this.validationTargetFor( this.clean( element ) );
- this.lastElement = element;
- this.prepareElement( element );
- this.currentElements = $(element);
- var result = this.check( element ) !== false;
- if (result) {
- delete this.invalid[element.name];
- } else {
- this.invalid[element.name] = true;
- }
- if ( !this.numberOfInvalids() ) {
- // Hide error containers on last error
- this.toHide = this.toHide.add( this.containers );
- }
- this.showErrors();
- return result;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/showErrors
- showErrors: function(errors) {
- if(errors) {
- // add items to error list and map
- $.extend( this.errorMap, errors );
- this.errorList = [];
- for ( var name in errors ) {
- this.errorList.push({
- message: errors[name],
- element: this.findByName(name)[0]
- });
- }
- // remove items from success list
- this.successList = $.grep( this.successList, function(element) {
- return !(element.name in errors);
- });
- }
- if (this.settings.showErrors) {
- this.settings.showErrors.call( this, this.errorMap, this.errorList );
- } else {
- this.defaultShowErrors();
- }
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/resetForm
- resetForm: function() {
- if ( $.fn.resetForm ) {
- $( this.currentForm ).resetForm();
- }
- this.submitted = {};
- this.lastElement = null;
- this.prepareForm();
- this.hideErrors();
- this.elements().removeClass( this.settings.errorClass ).removeData( "previousValue" );
- },
-
- numberOfInvalids: function() {
- return this.objectLength(this.invalid);
- },
-
- objectLength: function( obj ) {
- var count = 0;
- for ( var i in obj ) {
- count++;
- }
- return count;
- },
-
- hideErrors: function() {
- this.addWrapper( this.toHide ).hide();
- },
-
- valid: function() {
- return this.size() === 0;
- },
-
- size: function() {
- return this.errorList.length;
- },
-
- focusInvalid: function() {
- if( this.settings.focusInvalid ) {
- try {
- $(this.findLastActive() || this.errorList.length && this.errorList[0].element || [])
- .filter(":visible")
- .focus()
- // manually trigger focusin event; without it, focusin handler isn't called, findLastActive won't have anything to find
- .trigger("focusin");
- } catch(e) {
- // ignore IE throwing errors when focusing hidden elements
- }
- }
- },
-
- findLastActive: function() {
- var lastActive = this.lastActive;
- return lastActive && $.grep(this.errorList, function(n) {
- return n.element.name === lastActive.name;
- }).length === 1 && lastActive;
- },
-
- elements: function() {
- var validator = this,
- rulesCache = {};
-
- // select all valid inputs inside the form (no submit or reset buttons)
- return $(this.currentForm)
- .find("input, select, textarea")
- .not(":submit, :reset, :image, [disabled]")
- .not( this.settings.ignore )
- .filter(function() {
- if ( !this.name && validator.settings.debug && window.console ) {
- console.error( "%o has no name assigned", this);
- }
-
- // select only the first element for each name, and only those with rules specified
- if ( this.name in rulesCache || !validator.objectLength($(this).rules()) ) {
- return false;
- }
-
- rulesCache[this.name] = true;
- return true;
- });
- },
-
- clean: function( selector ) {
- return $( selector )[0];
- },
-
- errors: function() {
- var errorClass = this.settings.errorClass.replace(' ', '.');
- return $( this.settings.errorElement + "." + errorClass, this.errorContext );
- },
-
- reset: function() {
- this.successList = [];
- this.errorList = [];
- this.errorMap = {};
- this.toShow = $([]);
- this.toHide = $([]);
- this.currentElements = $([]);
- },
-
- prepareForm: function() {
- this.reset();
- this.toHide = this.errors().add( this.containers );
- },
-
- prepareElement: function( element ) {
- this.reset();
- this.toHide = this.errorsFor(element);
- },
-
- elementValue: function( element ) {
- var type = $(element).attr('type'),
- val = $(element).val();
-
- if ( type === 'radio' || type === 'checkbox' ) {
- return $('input[name="' + $(element).attr('name') + '"]:checked').val();
- }
-
- if ( typeof val === 'string' ) {
- return val.replace(/\r/g, "");
- }
- return val;
- },
-
- check: function( element ) {
- element = this.validationTargetFor( this.clean( element ) );
-
- var rules = $(element).rules();
- var dependencyMismatch = false;
- var val = this.elementValue(element);
- var result;
-
- for (var method in rules ) {
- var rule = { method: method, parameters: rules[method] };
- try {
-
- result = $.validator.methods[method].call( this, val, element, rule.parameters );
-
- // if a method indicates that the field is optional and therefore valid,
- // don't mark it as valid when there are no other rules
- if ( result === "dependency-mismatch" ) {
- dependencyMismatch = true;
- continue;
- }
- dependencyMismatch = false;
-
- if ( result === "pending" ) {
- this.toHide = this.toHide.not( this.errorsFor(element) );
- return;
- }
-
- if( !result ) {
- this.formatAndAdd( element, rule );
- return false;
- }
- } catch(e) {
- if ( this.settings.debug && window.console ) {
- console.log("exception occured when checking element " + element.id + ", check the '" + rule.method + "' method", e);
- }
- throw e;
- }
- }
- if (dependencyMismatch) {
- return;
- }
- if ( this.objectLength(rules) ) {
- this.successList.push(element);
- }
- return true;
- },
-
- // return the custom message for the given element and validation method
- // specified in the element's "messages" metadata
- customMetaMessage: function(element, method) {
- if (!$.metadata) {
- return;
- }
- var meta = this.settings.meta ? $(element).metadata()[this.settings.meta] : $(element).metadata();
- return meta && meta.messages && meta.messages[method];
- },
-
- // return the custom message for the given element and validation method
- // specified in the element's HTML5 data attribute
- customDataMessage: function(element, method) {
- return $(element).data('msg-' + method.toLowerCase()) || (element.attributes && $(element).attr('data-msg-' + method.toLowerCase()));
- },
-
- // return the custom message for the given element name and validation method
- customMessage: function( name, method ) {
- var m = this.settings.messages[name];
- return m && (m.constructor === String ? m : m[method]);
- },
-
- // return the first defined argument, allowing empty strings
- findDefined: function() {
- for(var i = 0; i < arguments.length; i++) {
- if (arguments[i] !== undefined) {
- return arguments[i];
- }
- }
- return undefined;
- },
-
- defaultMessage: function( element, method) {
- return this.findDefined(
- this.customMessage( element.name, method ),
- this.customDataMessage( element, method ),
- this.customMetaMessage( element, method ),
- // title is never undefined, so handle empty string as undefined
- !this.settings.ignoreTitle && element.title || undefined,
- $.validator.messages[method],
- "<strong>Warning: No message defined for " + element.name + "</strong>"
- );
- },
-
- formatAndAdd: function( element, rule ) {
- var message = this.defaultMessage( element, rule.method ),
- theregex = /\$?\{(\d+)\}/g;
- if ( typeof message === "function" ) {
- message = message.call(this, rule.parameters, element);
- } else if (theregex.test(message)) {
- message = $.validator.format(message.replace(theregex, '{$1}'), rule.parameters);
- }
- this.errorList.push({
- message: message,
- element: element
- });
-
- this.errorMap[element.name] = message;
- this.submitted[element.name] = message;
- },
-
- addWrapper: function(toToggle) {
- if ( this.settings.wrapper ) {
- toToggle = toToggle.add( toToggle.parent( this.settings.wrapper ) );
- }
- return toToggle;
- },
-
- defaultShowErrors: function() {
- var i, elements;
- for ( i = 0; this.errorList[i]; i++ ) {
- var error = this.errorList[i];
- if ( this.settings.highlight ) {
- this.settings.highlight.call( this, error.element, this.settings.errorClass, this.settings.validClass );
- }
- this.showLabel( error.element, error.message );
- }
- if( this.errorList.length ) {
- this.toShow = this.toShow.add( this.containers );
- }
- if (this.settings.success) {
- for ( i = 0; this.successList[i]; i++ ) {
- this.showLabel( this.successList[i] );
- }
- }
- if (this.settings.unhighlight) {
- for ( i = 0, elements = this.validElements(); elements[i]; i++ ) {
- this.settings.unhighlight.call( this, elements[i], this.settings.errorClass, this.settings.validClass );
- }
- }
- this.toHide = this.toHide.not( this.toShow );
- this.hideErrors();
- this.addWrapper( this.toShow ).show();
- },
-
- validElements: function() {
- return this.currentElements.not(this.invalidElements());
- },
-
- invalidElements: function() {
- return $(this.errorList).map(function() {
- return this.element;
- });
- },
-
- showLabel: function(element, message) {
- var label = this.errorsFor( element );
- if ( label.length ) {
- // refresh error/success class
- label.removeClass( this.settings.validClass ).addClass( this.settings.errorClass );
-
- // check if we have a generated label, replace the message then
- if ( label.attr("generated") ) {
- label.html(message);
- }
- } else {
- // create label
- label = $("<" + this.settings.errorElement + "/>")
- .attr({"for": this.idOrName(element), generated: true})
- .addClass(this.settings.errorClass)
- .html(message || "");
- if ( this.settings.wrapper ) {
- // make sure the element is visible, even in IE
- // actually showing the wrapped element is handled elsewhere
- label = label.hide().show().wrap("<" + this.settings.wrapper + "/>").parent();
- }
- if ( !this.labelContainer.append(label).length ) {
- if ( this.settings.errorPlacement ) {
- this.settings.errorPlacement(label, $(element) );
- } else {
- label.insertAfter(element);
- }
- }
- }
- if ( !message && this.settings.success ) {
- label.text("");
- if ( typeof this.settings.success === "string" ) {
- label.addClass( this.settings.success );
- } else {
- this.settings.success( label, element );
- }
- }
- this.toShow = this.toShow.add(label);
- },
-
- errorsFor: function(element) {
- var name = this.idOrName(element);
- return this.errors().filter(function() {
- return $(this).attr('for') === name;
- });
- },
-
- idOrName: function(element) {
- return this.groups[element.name] || (this.checkable(element) ? element.name : element.id || element.name);
- },
-
- validationTargetFor: function(element) {
- // if radio/checkbox, validate first element in group instead
- if (this.checkable(element)) {
- element = this.findByName( element.name ).not(this.settings.ignore)[0];
- }
- return element;
- },
-
- checkable: function( element ) {
- return (/radio|checkbox/i).test(element.type);
- },
-
- findByName: function( name ) {
- return $(this.currentForm).find('[name="' + name + '"]');
- },
-
- getLength: function(value, element) {
- switch( element.nodeName.toLowerCase() ) {
- case 'select':
- return $("option:selected", element).length;
- case 'input':
- if( this.checkable( element) ) {
- return this.findByName(element.name).filter(':checked').length;
- }
- }
- return value.length;
- },
-
- depend: function(param, element) {
- return this.dependTypes[typeof param] ? this.dependTypes[typeof param](param, element) : true;
- },
-
- dependTypes: {
- "boolean": function(param, element) {
- return param;
- },
- "string": function(param, element) {
- return !!$(param, element.form).length;
- },
- "function": function(param, element) {
- return param(element);
- }
- },
-
- optional: function(element) {
- var val = this.elementValue(element);
- return !$.validator.methods.required.call(this, val, element) && "dependency-mismatch";
- },
-
- startRequest: function(element) {
- if (!this.pending[element.name]) {
- this.pendingRequest++;
- this.pending[element.name] = true;
- }
- },
-
- stopRequest: function(element, valid) {
- this.pendingRequest--;
- // sometimes synchronization fails, make sure pendingRequest is never < 0
- if (this.pendingRequest < 0) {
- this.pendingRequest = 0;
- }
- delete this.pending[element.name];
- if ( valid && this.pendingRequest === 0 && this.formSubmitted && this.form() ) {
- $(this.currentForm).submit();
- this.formSubmitted = false;
- } else if (!valid && this.pendingRequest === 0 && this.formSubmitted) {
- $(this.currentForm).triggerHandler("invalid-form", [this]);
- this.formSubmitted = false;
- }
- },
-
- previousValue: function(element) {
- return $.data(element, "previousValue") || $.data(element, "previousValue", {
- old: null,
- valid: true,
- message: this.defaultMessage( element, "remote" )
- });
- }
-
- },
-
- classRuleSettings: {
- required: {required: true},
- email: {email: true},
- url: {url: true},
- date: {date: true},
- dateISO: {dateISO: true},
- number: {number: true},
- digits: {digits: true},
- creditcard: {creditcard: true}
- },
-
- addClassRules: function(className, rules) {
- if ( className.constructor === String ) {
- this.classRuleSettings[className] = rules;
- } else {
- $.extend(this.classRuleSettings, className);
- }
- },
-
- classRules: function(element) {
- var rules = {};
- var classes = $(element).attr('class');
- if ( classes ) {
- $.each(classes.split(' '), function() {
- if (this in $.validator.classRuleSettings) {
- $.extend(rules, $.validator.classRuleSettings[this]);
- }
- });
- }
- return rules;
- },
-
- attributeRules: function(element) {
- var rules = {};
- var $element = $(element);
-
- for (var method in $.validator.methods) {
- var value;
-
- // support for <input required> in both html5 and older browsers
- if (method === 'required') {
- value = $element.get(0).getAttribute(method);
- // Some browsers return an empty string for the required attribute
- // and non-HTML5 browsers might have required="" markup
- if (value === "") {
- value = true;
- }
- // force non-HTML5 browsers to return bool
- value = !!value;
- } else {
- value = $element.attr(method);
- }
-
- if (value) {
- rules[method] = value;
- } else if ($element[0].getAttribute("type") === method) {
- rules[method] = true;
- }
- }
-
- // maxlength may be returned as -1, 2147483647 (IE) and 524288 (safari) for text inputs
- if (rules.maxlength && /-1|2147483647|524288/.test(rules.maxlength)) {
- delete rules.maxlength;
- }
-
- return rules;
- },
-
- metadataRules: function(element) {
- if (!$.metadata) {
- return {};
- }
-
- var meta = $.data(element.form, 'validator').settings.meta;
- return meta ?
- $(element).metadata()[meta] :
- $(element).metadata();
- },
-
- staticRules: function(element) {
- var rules = {};
- var validator = $.data(element.form, 'validator');
- if (validator.settings.rules) {
- rules = $.validator.normalizeRule(validator.settings.rules[element.name]) || {};
- }
- return rules;
- },
-
- normalizeRules: function(rules, element) {
- // handle dependency check
- $.each(rules, function(prop, val) {
- // ignore rule when param is explicitly false, eg. required:false
- if (val === false) {
- delete rules[prop];
- return;
- }
- if (val.param || val.depends) {
- var keepRule = true;
- switch (typeof val.depends) {
- case "string":
- keepRule = !!$(val.depends, element.form).length;
- break;
- case "function":
- keepRule = val.depends.call(element, element);
- break;
- }
- if (keepRule) {
- rules[prop] = val.param !== undefined ? val.param : true;
- } else {
- delete rules[prop];
- }
- }
- });
-
- // evaluate parameters
- $.each(rules, function(rule, parameter) {
- rules[rule] = $.isFunction(parameter) ? parameter(element) : parameter;
- });
-
- // clean number parameters
- $.each(['minlength', 'maxlength', 'min', 'max'], function() {
- if (rules[this]) {
- rules[this] = Number(rules[this]);
- }
- });
- $.each(['rangelength', 'range'], function() {
- if (rules[this]) {
- rules[this] = [Number(rules[this][0]), Number(rules[this][1])];
- }
- });
-
- if ($.validator.autoCreateRanges) {
- // auto-create ranges
- if (rules.min && rules.max) {
- rules.range = [rules.min, rules.max];
- delete rules.min;
- delete rules.max;
- }
- if (rules.minlength && rules.maxlength) {
- rules.rangelength = [rules.minlength, rules.maxlength];
- delete rules.minlength;
- delete rules.maxlength;
- }
- }
-
- // To support custom messages in metadata ignore rule methods titled "messages"
- if (rules.messages) {
- delete rules.messages;
- }
-
- return rules;
- },
-
- // Converts a simple string to a {string: true} rule, e.g., "required" to {required:true}
- normalizeRule: function(data) {
- if( typeof data === "string" ) {
- var transformed = {};
- $.each(data.split(/\s/), function() {
- transformed[this] = true;
- });
- data = transformed;
- }
- return data;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Validator/addMethod
- addMethod: function(name, method, message) {
- $.validator.methods[name] = method;
- $.validator.messages[name] = message !== undefined ? message : $.validator.messages[name];
- if (method.length < 3) {
- $.validator.addClassRules(name, $.validator.normalizeRule(name));
- }
- },
-
- methods: {
-
- // http://docs.jquery.com/Plugins/Validation/Methods/required
- required: function(value, element, param) {
- // check if dependency is met
- if ( !this.depend(param, element) ) {
- return "dependency-mismatch";
- }
- if ( element.nodeName.toLowerCase() === "select" ) {
- // could be an array for select-multiple or a string, both are fine this way
- var val = $(element).val();
- return val && val.length > 0;
- }
- if ( this.checkable(element) ) {
- return this.getLength(value, element) > 0;
- }
- return $.trim(value).length > 0;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/remote
- remote: function(value, element, param) {
- if ( this.optional(element) ) {
- return "dependency-mismatch";
- }
-
- var previous = this.previousValue(element);
- if (!this.settings.messages[element.name] ) {
- this.settings.messages[element.name] = {};
- }
- previous.originalMessage = this.settings.messages[element.name].remote;
- this.settings.messages[element.name].remote = previous.message;
-
- param = typeof param === "string" && {url:param} || param;
-
- if ( this.pending[element.name] ) {
- return "pending";
- }
- if ( previous.old === value ) {
- return previous.valid;
- }
-
- previous.old = value;
- var validator = this;
- this.startRequest(element);
- var data = {};
- data[element.name] = value;
- $.ajax($.extend(true, {
- url: param,
- mode: "abort",
- port: "validate" + element.name,
- dataType: "json",
- data: data,
- success: function(response) {
- validator.settings.messages[element.name].remote = previous.originalMessage;
- var valid = response === true || response === "true";
- if ( valid ) {
- var submitted = validator.formSubmitted;
- validator.prepareElement(element);
- validator.formSubmitted = submitted;
- validator.successList.push(element);
- delete validator.invalid[element.name];
- validator.showErrors();
- } else {
- var errors = {};
- var message = response || validator.defaultMessage( element, "remote" );
- errors[element.name] = previous.message = $.isFunction(message) ? message(value) : message;
- validator.invalid[element.name] = true;
- validator.showErrors(errors);
- }
- previous.valid = valid;
- validator.stopRequest(element, valid);
- }
- }, param));
- return "pending";
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/minlength
- minlength: function(value, element, param) {
- var length = $.isArray( value ) ? value.length : this.getLength($.trim(value), element);
- return this.optional(element) || length >= param;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/maxlength
- maxlength: function(value, element, param) {
- var length = $.isArray( value ) ? value.length : this.getLength($.trim(value), element);
- return this.optional(element) || length <= param;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/rangelength
- rangelength: function(value, element, param) {
- var length = $.isArray( value ) ? value.length : this.getLength($.trim(value), element);
- return this.optional(element) || ( length >= param[0] && length <= param[1] );
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/min
- min: function( value, element, param ) {
- return this.optional(element) || value >= param;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/max
- max: function( value, element, param ) {
- return this.optional(element) || value <= param;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/range
- range: function( value, element, param ) {
- return this.optional(element) || ( value >= param[0] && value <= param[1] );
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/email
- email: function(value, element) {
- // contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/
- return this.optional(element) || /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(value);
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/url
- url: function(value, element) {
- // contributed by Scott Gonzalez: http://projects.scottsplayground.com/iri/
- return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/date
- date: function(value, element) {
- return this.optional(element) || !/Invalid|NaN/.test(new Date(value));
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/dateISO
- dateISO: function(value, element) {
- return this.optional(element) || /^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(value);
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/number
- number: function(value, element) {
- return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(value);
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/digits
- digits: function(value, element) {
- return this.optional(element) || /^\d+$/.test(value);
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/creditcard
- // based on http://en.wikipedia.org/wiki/Luhn
- creditcard: function(value, element) {
- if ( this.optional(element) ) {
- return "dependency-mismatch";
- }
- // accept only spaces, digits and dashes
- if (/[^0-9 \-]+/.test(value)) {
- return false;
- }
- var nCheck = 0,
- nDigit = 0,
- bEven = false;
-
- value = value.replace(/\D/g, "");
-
- for (var n = value.length - 1; n >= 0; n--) {
- var cDigit = value.charAt(n);
- nDigit = parseInt(cDigit, 10);
- if (bEven) {
- if ((nDigit *= 2) > 9) {
- nDigit -= 9;
- }
- }
- nCheck += nDigit;
- bEven = !bEven;
- }
-
- return (nCheck % 10) === 0;
- },
-
- // http://docs.jquery.com/Plugins/Validation/Methods/equalTo
- equalTo: function(value, element, param) {
- // bind to the blur event of the target in order to revalidate whenever the target field is updated
- // TODO find a way to bind the event just once, avoiding the unbind-rebind overhead
- var target = $(param);
- if (this.settings.onfocusout) {
- target.unbind(".validate-equalTo").bind("blur.validate-equalTo", function() {
- $(element).valid();
- });
- }
- return value === target.val();
- }
-
- }
-
-});
-
-// deprecated, use $.validator.format instead
-$.format = $.validator.format;
-
-}(jQuery));
-
-// ajax mode: abort
-// usage: $.ajax({ mode: "abort"[, port: "uniqueport"]});
-// if mode:"abort" is used, the previous request on that port (port can be undefined) is aborted via XMLHttpRequest.abort()
-(function($) {
- var pendingRequests = {};
- // Use a prefilter if available (1.5+)
- if ( $.ajaxPrefilter ) {
- $.ajaxPrefilter(function(settings, _, xhr) {
- var port = settings.port;
- if (settings.mode === "abort") {
- if ( pendingRequests[port] ) {
- pendingRequests[port].abort();
- }
- pendingRequests[port] = xhr;
- }
- });
- } else {
- // Proxy ajax
- var ajax = $.ajax;
- $.ajax = function(settings) {
- var mode = ( "mode" in settings ? settings : $.ajaxSettings ).mode,
- port = ( "port" in settings ? settings : $.ajaxSettings ).port;
- if (mode === "abort") {
- if ( pendingRequests[port] ) {
- pendingRequests[port].abort();
- }
- return (pendingRequests[port] = ajax.apply(this, arguments));
- }
- return ajax.apply(this, arguments);
- };
- }
-}(jQuery));
-
-// provides cross-browser focusin and focusout events
-// IE has native support, in other browsers, use event caputuring (neither bubbles)
-
-// provides delegate(type: String, delegate: Selector, handler: Callback) plugin for easier event delegation
-// handler is only called when $(event.target).is(delegate), in the scope of the jquery-object for event.target
-(function($) {
- // only implement if not provided by jQuery core (since 1.4)
- // TODO verify if jQuery 1.4's implementation is compatible with older jQuery special-event APIs
- if (!jQuery.event.special.focusin && !jQuery.event.special.focusout && document.addEventListener) {
- $.each({
- focus: 'focusin',
- blur: 'focusout'
- }, function( original, fix ){
- $.event.special[fix] = {
- setup:function() {
- this.addEventListener( original, handler, true );
- },
- teardown:function() {
- this.removeEventListener( original, handler, true );
- },
- handler: function(e) {
- var args = arguments;
- args[0] = $.event.fix(e);
- args[0].type = fix;
- return $.event.handle.apply(this, args);
- }
- };
- function handler(e) {
- e = $.event.fix(e);
- e.type = fix;
- return $.event.handle.call(this, e);
- }
- });
- }
- $.extend($.fn, {
- validateDelegate: function(delegate, type, handler) {
- return this.bind(type, function(event) {
- var target = $(event.target);
- if (target.is(delegate)) {
- return handler.apply(target, arguments);
- }
- });
- }
- });
-}(jQuery));
diff --git a/wqflask/wqflask/static/packages/jqplot/jquery.validate.min.js b/wqflask/wqflask/static/packages/jqplot/jquery.validate.min.js
deleted file mode 100644
index 85afad53..00000000
--- a/wqflask/wqflask/static/packages/jqplot/jquery.validate.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! jQuery Validation Plugin - v1.10.0 - 9/7/2012
-* https://github.com/jzaefferer/jquery-validation
-* Copyright (c) 2012 Jörn Zaefferer; Licensed MIT, GPL */
-(function(a){a.extend(a.fn,{validate:function(b){if(!this.length){b&&b.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return}var c=a.data(this[0],"validator");return c?c:(this.attr("novalidate","novalidate"),c=new a.validator(b,this[0]),a.data(this[0],"validator",c),c.settings.onsubmit&&(this.validateDelegate(":submit","click",function(b){c.settings.submitHandler&&(c.submitButton=b.target),a(b.target).hasClass("cancel")&&(c.cancelSubmit=!0)}),this.submit(function(b){function d(){var d;return c.settings.submitHandler?(c.submitButton&&(d=a("<input type='hidden'/>").attr("name",c.submitButton.name).val(c.submitButton.value).appendTo(c.currentForm)),c.settings.submitHandler.call(c,c.currentForm,b),c.submitButton&&d.remove(),!1):!0}return c.settings.debug&&b.preventDefault(),c.cancelSubmit?(c.cancelSubmit=!1,d()):c.form()?c.pendingRequest?(c.formSubmitted=!0,!1):d():(c.focusInvalid(),!1)})),c)},valid:function(){if(a(this[0]).is("form"))return this.validate().form();var b=!0,c=a(this[0].form).validate();return this.each(function(){b&=c.element(this)}),b},removeAttrs:function(b){var c={},d=this;return a.each(b.split(/\s/),function(a,b){c[b]=d.attr(b),d.removeAttr(b)}),c},rules:function(b,c){var d=this[0];if(b){var e=a.data(d.form,"validator").settings,f=e.rules,g=a.validator.staticRules(d);switch(b){case"add":a.extend(g,a.validator.normalizeRule(c)),f[d.name]=g,c.messages&&(e.messages[d.name]=a.extend(e.messages[d.name],c.messages));break;case"remove":if(!c)return delete f[d.name],g;var h={};return a.each(c.split(/\s/),function(a,b){h[b]=g[b],delete g[b]}),h}}var i=a.validator.normalizeRules(a.extend({},a.validator.metadataRules(d),a.validator.classRules(d),a.validator.attributeRules(d),a.validator.staticRules(d)),d);if(i.required){var j=i.required;delete i.required,i=a.extend({required:j},i)}return i}}),a.extend(a.expr[":"],{blank:function(b){return!a.trim(""+b.value)},filled:function(b){return!!a.trim(""+b.value)},unchecked:function(a){return!a.checked}}),a.validator=function(b,c){this.settings=a.extend(!0,{},a.validator.defaults,b),this.currentForm=c,this.init()},a.validator.format=function(b,c){return arguments.length===1?function(){var c=a.makeArray(arguments);return c.unshift(b),a.validator.format.apply(this,c)}:(arguments.length>2&&c.constructor!==Array&&(c=a.makeArray(arguments).slice(1)),c.constructor!==Array&&(c=[c]),a.each(c,function(a,c){b=b.replace(new RegExp("\\{"+a+"\\}","g"),c)}),b)},a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:!0,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:!0,ignore:":hidden",ignoreTitle:!1,onfocusin:function(a,b){this.lastActive=a,this.settings.focusCleanup&&!this.blockFocusCleanup&&(this.settings.unhighlight&&this.settings.unhighlight.call(this,a,this.settings.errorClass,this.settings.validClass),this.addWrapper(this.errorsFor(a)).hide())},onfocusout:function(a,b){!this.checkable(a)&&(a.name in this.submitted||!this.optional(a))&&this.element(a)},onkeyup:function(a,b){if(b.which===9&&this.elementValue(a)==="")return;(a.name in this.submitted||a===this.lastActive)&&this.element(a)},onclick:function(a,b){a.name in this.submitted?this.element(a):a.parentNode.name in this.submitted&&this.element(a.parentNode)},highlight:function(b,c,d){b.type==="radio"?this.findByName(b.name).addClass(c).removeClass(d):a(b).addClass(c).removeClass(d)},unhighlight:function(b,c,d){b.type==="radio"?this.findByName(b.name).removeClass(c).addClass(d):a(b).removeClass(c).addClass(d)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",maxlength:a.validator.format("Please enter no more than {0} characters."),minlength:a.validator.format("Please enter at least {0} characters."),rangelength:a.validator.format("Please enter a value between {0} and {1} characters long."),range:a.validator.format("Please enter a value between {0} and {1}."),max:a.validator.format("Please enter a value less than or equal to {0}."),min:a.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:!1,prototype:{init:function(){function d(b){var c=a.data(this[0].form,"validator"),d="on"+b.type.replace(/^validate/,"");c.settings[d]&&c.settings[d].call(c,this[0],b)}this.labelContainer=a(this.settings.errorLabelContainer),this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm),this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer),this.submitted={},this.valueCache={},this.pendingRequest=0,this.pending={},this.invalid={},this.reset();var b=this.groups={};a.each(this.settings.groups,function(c,d){a.each(d.split(/\s/),function(a,d){b[d]=c})});var c=this.settings.rules;a.each(c,function(b,d){c[b]=a.validator.normalizeRule(d)}),a(this.currentForm).validateDelegate(":text, [type='password'], [type='file'], select, textarea, [type='number'], [type='search'] ,[type='tel'], [type='url'], [type='email'], [type='datetime'], [type='date'], [type='month'], [type='week'], [type='time'], [type='datetime-local'], [type='range'], [type='color'] ","focusin focusout keyup",d).validateDelegate("[type='radio'], [type='checkbox'], select, option","click",d),this.settings.invalidHandler&&a(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)},form:function(){return this.checkForm(),a.extend(this.submitted,this.errorMap),this.invalid=a.extend({},this.errorMap),this.valid()||a(this.currentForm).triggerHandler("invalid-form",[this]),this.showErrors(),this.valid()},checkForm:function(){this.prepareForm();for(var a=0,b=this.currentElements=this.elements();b[a];a++)this.check(b[a]);return this.valid()},element:function(b){b=this.validationTargetFor(this.clean(b)),this.lastElement=b,this.prepareElement(b),this.currentElements=a(b);var c=this.check(b)!==!1;return c?delete this.invalid[b.name]:this.invalid[b.name]=!0,this.numberOfInvalids()||(this.toHide=this.toHide.add(this.containers)),this.showErrors(),c},showErrors:function(b){if(b){a.extend(this.errorMap,b),this.errorList=[];for(var c in b)this.errorList.push({message:b[c],element:this.findByName(c)[0]});this.successList=a.grep(this.successList,function(a){return!(a.name in b)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){a.fn.resetForm&&a(this.currentForm).resetForm(),this.submitted={},this.lastElement=null,this.prepareForm(),this.hideErrors(),this.elements().removeClass(this.settings.errorClass).removeData("previousValue")},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(a){var b=0;for(var c in a)b++;return b},hideErrors:function(){this.addWrapper(this.toHide).hide()},valid:function(){return this.size()===0},size:function(){return this.errorList.length},focusInvalid:function(){if(this.settings.focusInvalid)try{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin")}catch(b){}},findLastActive:function(){var b=this.lastActive;return b&&a.grep(this.errorList,function(a){return a.element.name===b.name}).length===1&&b},elements:function(){var b=this,c={};return a(this.currentForm).find("input, select, textarea").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){return!this.name&&b.settings.debug&&window.console&&console.error("%o has no name assigned",this),this.name in c||!b.objectLength(a(this).rules())?!1:(c[this.name]=!0,!0)})},clean:function(b){return a(b)[0]},errors:function(){var b=this.settings.errorClass.replace(" ",".");return a(this.settings.errorElement+"."+b,this.errorContext)},reset:function(){this.successList=[],this.errorList=[],this.errorMap={},this.toShow=a([]),this.toHide=a([]),this.currentElements=a([])},prepareForm:function(){this.reset(),this.toHide=this.errors().add(this.containers)},prepareElement:function(a){this.reset(),this.toHide=this.errorsFor(a)},elementValue:function(b){var c=a(b).attr("type"),d=a(b).val();return c==="radio"||c==="checkbox"?a('input[name="'+a(b).attr("name")+'"]:checked').val():typeof d=="string"?d.replace(/\r/g,""):d},check:function(b){b=this.validationTargetFor(this.clean(b));var c=a(b).rules(),d=!1,e=this.elementValue(b),f;for(var g in c){var h={method:g,parameters:c[g]};try{f=a.validator.methods[g].call(this,e,b,h.parameters);if(f==="dependency-mismatch"){d=!0;continue}d=!1;if(f==="pending"){this.toHide=this.toHide.not(this.errorsFor(b));return}if(!f)return this.formatAndAdd(b,h),!1}catch(i){throw this.settings.debug&&window.console&&console.log("exception occured when checking element "+b.id+", check the '"+h.method+"' method",i),i}}if(d)return;return this.objectLength(c)&&this.successList.push(b),!0},customMetaMessage:function(b,c){if(!a.metadata)return;var d=this.settings.meta?a(b).metadata()[this.settings.meta]:a(b).metadata();return d&&d.messages&&d.messages[c]},customDataMessage:function(b,c){return a(b).data("msg-"+c.toLowerCase())||b.attributes&&a(b).attr("data-msg-"+c.toLowerCase())},customMessage:function(a,b){var c=this.settings.messages[a];return c&&(c.constructor===String?c:c[b])},findDefined:function(){for(var a=0;a<arguments.length;a++)if(arguments[a]!==undefined)return arguments[a];return undefined},defaultMessage:function(b,c){return this.findDefined(this.customMessage(b.name,c),this.customDataMessage(b,c),this.customMetaMessage(b,c),!this.settings.ignoreTitle&&b.title||undefined,a.validator.messages[c],"<strong>Warning: No message defined for "+b.name+"</strong>")},formatAndAdd:function(b,c){var d=this.defaultMessage(b,c.method),e=/\$?\{(\d+)\}/g;typeof d=="function"?d=d.call(this,c.parameters,b):e.test(d)&&(d=a.validator.format(d.replace(e,"{$1}"),c.parameters)),this.errorList.push({message:d,element:b}),this.errorMap[b.name]=d,this.submitted[b.name]=d},addWrapper:function(a){return this.settings.wrapper&&(a=a.add(a.parent(this.settings.wrapper))),a},defaultShowErrors:function(){var a,b;for(a=0;this.errorList[a];a++){var c=this.errorList[a];this.settings.highlight&&this.settings.highlight.call(this,c.element,this.settings.errorClass,this.settings.validClass),this.showLabel(c.element,c.message)}this.errorList.length&&(this.toShow=this.toShow.add(this.containers));if(this.settings.success)for(a=0;this.successList[a];a++)this.showLabel(this.successList[a]);if(this.settings.unhighlight)for(a=0,b=this.validElements();b[a];a++)this.settings.unhighlight.call(this,b[a],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return a(this.errorList).map(function(){return this.element})},showLabel:function(b,c){var d=this.errorsFor(b);d.length?(d.removeClass(this.settings.validClass).addClass(this.settings.errorClass),d.attr("generated")&&d.html(c)):(d=a("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(b),generated:!0}).addClass(this.settings.errorClass).html(c||""),this.settings.wrapper&&(d=d.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.append(d).length||(this.settings.errorPlacement?this.settings.errorPlacement(d,a(b)):d.insertAfter(b))),!c&&this.settings.success&&(d.text(""),typeof this.settings.success=="string"?d.addClass(this.settings.success):this.settings.success(d,b)),this.toShow=this.toShow.add(d)},errorsFor:function(b){var c=this.idOrName(b);return this.errors().filter(function(){return a(this).attr("for")===c})},idOrName:function(a){return this.groups[a.name]||(this.checkable(a)?a.name:a.id||a.name)},validationTargetFor:function(a){return this.checkable(a)&&(a=this.findByName(a.name).not(this.settings.ignore)[0]),a},checkable:function(a){return/radio|checkbox/i.test(a.type)},findByName:function(b){return a(this.currentForm).find('[name="'+b+'"]')},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c))return this.findByName(c.name).filter(":checked").length}return b.length},depend:function(a,b){return this.dependTypes[typeof a]?this.dependTypes[typeof a](a,b):!0},dependTypes:{"boolean":function(a,b){return a},string:function(b,c){return!!a(b,c.form).length},"function":function(a,b){return a(b)}},optional:function(b){var c=this.elementValue(b);return!a.validator.methods.required.call(this,c,b)&&"dependency-mismatch"},startRequest:function(a){this.pending[a.name]||(this.pendingRequest++,this.pending[a.name]=!0)},stopRequest:function(b,c){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[b.name],c&&this.pendingRequest===0&&this.formSubmitted&&this.form()?(a(this.currentForm).submit(),this.formSubmitted=!1):!c&&this.pendingRequest===0&&this.formSubmitted&&(a(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(b){return a.data(b,"previousValue")||a.data(b,"previousValue",{old:null,valid:!0,message:this.defaultMessage(b,"remote")})}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(b,c){b.constructor===String?this.classRuleSettings[b]=c:a.extend(this.classRuleSettings,b)},classRules:function(b){var c={},d=a(b).attr("class");return d&&a.each(d.split(" "),function(){this in a.validator.classRuleSettings&&a.extend(c,a.validator.classRuleSettings[this])}),c},attributeRules:function(b){var c={},d=a(b);for(var e in a.validator.methods){var f;e==="required"?(f=d.get(0).getAttribute(e),f===""&&(f=!0),f=!!f):f=d.attr(e),f?c[e]=f:d[0].getAttribute("type")===e&&(c[e]=!0)}return c.maxlength&&/-1|2147483647|524288/.test(c.maxlength)&&delete c.maxlength,c},metadataRules:function(b){if(!a.metadata)return{};var c=a.data(b.form,"validator").settings.meta;return c?a(b).metadata()[c]:a(b).metadata()},staticRules:function(b){var c={},d=a.data(b.form,"validator");return d.settings.rules&&(c=a.validator.normalizeRule(d.settings.rules[b.name])||{}),c},normalizeRules:function(b,c){return a.each(b,function(d,e){if(e===!1){delete b[d];return}if(e.param||e.depends){var f=!0;switch(typeof e.depends){case"string":f=!!a(e.depends,c.form).length;break;case"function":f=e.depends.call(c,c)}f?b[d]=e.param!==undefined?e.param:!0:delete b[d]}}),a.each(b,function(d,e){b[d]=a.isFunction(e)?e(c):e}),a.each(["minlength","maxlength","min","max"],function(){b[this]&&(b[this]=Number(b[this]))}),a.each(["rangelength","range"],function(){b[this]&&(b[this]=[Number(b[this][0]),Number(b[this][1])])}),a.validator.autoCreateRanges&&(b.min&&b.max&&(b.range=[b.min,b.max],delete b.min,delete b.max),b.minlength&&b.maxlength&&(b.rangelength=[b.minlength,b.maxlength],delete b.minlength,delete b.maxlength)),b.messages&&delete b.messages,b},normalizeRule:function(b){if(typeof b=="string"){var c={};a.each(b.split(/\s/),function(){c[this]=!0}),b=c}return b},addMethod:function(b,c,d){a.validator.methods[b]=c,a.validator.messages[b]=d!==undefined?d:a.validator.messages[b],c.length<3&&a.validator.addClassRules(b,a.validator.normalizeRule(b))},methods:{required:function(b,c,d){if(!this.depend(d,c))return"dependency-mismatch";if(c.nodeName.toLowerCase()==="select"){var e=a(c).val();return e&&e.length>0}return this.checkable(c)?this.getLength(b,c)>0:a.trim(b).length>0},remote:function(b,c,d){if(this.optional(c))return"dependency-mismatch";var e=this.previousValue(c);this.settings.messages[c.name]||(this.settings.messages[c.name]={}),e.originalMessage=this.settings.messages[c.name].remote,this.settings.messages[c.name].remote=e.message,d=typeof d=="string"&&{url:d}||d;if(this.pending[c.name])return"pending";if(e.old===b)return e.valid;e.old=b;var f=this;this.startRequest(c);var g={};return g[c.name]=b,a.ajax(a.extend(!0,{url:d,mode:"abort",port:"validate"+c.name,dataType:"json",data:g,success:function(d){f.settings.messages[c.name].remote=e.originalMessage;var g=d===!0||d==="true";if(g){var h=f.formSubmitted;f.prepareElement(c),f.formSubmitted=h,f.successList.push(c),delete f.invalid[c.name],f.showErrors()}else{var i={},j=d||f.defaultMessage(c,"remote");i[c.name]=e.message=a.isFunction(j)?j(b):j,f.invalid[c.name]=!0,f.showErrors(i)}e.valid=g,f.stopRequest(c,g)}},d)),"pending"},minlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d},maxlength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e<=d},rangelength:function(b,c,d){var e=a.isArray(b)?b.length:this.getLength(a.trim(b),c);return this.optional(c)||e>=d[0]&&e<=d[1]},min:function(a,b,c){return this.optional(b)||a>=c},max:function(a,b,c){return this.optional(b)||a<=c},range:function(a,b,c){return this.optional(b)||a>=c[0]&&a<=c[1]},email:function(a,b){return this.optional(b)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(a)},url:function(a,b){return this.optional(b)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(a)},date:function(a,b){return this.optional(b)||!/Invalid|NaN/.test(new Date(a))},dateISO:function(a,b){return this.optional(b)||/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(a)},digits:function(a,b){return this.optional(b)||/^\d+$/.test(a)},creditcard:function(a,b){if(this.optional(b))return"dependency-mismatch";if(/[^0-9 \-]+/.test(a))return!1;var c=0,d=0,e=!1;a=a.replace(/\D/g,"");for(var f=a.length-1;f>=0;f--){var g=a.charAt(f);d=parseInt(g,10),e&&(d*=2)>9&&(d-=9),c+=d,e=!e}return c%10===0},equalTo:function(b,c,d){var e=a(d);return this.settings.onfocusout&&e.unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){a(c).valid()}),b===e.val()}}}),a.format=a.validator.format})(jQuery),function(a){var b={};if(a.ajaxPrefilter)a.ajaxPrefilter(function(a,c,d){var e=a.port;a.mode==="abort"&&(b[e]&&b[e].abort(),b[e]=d)});else{var c=a.ajax;a.ajax=function(d){var e=("mode"in d?d:a.ajaxSettings).mode,f=("port"in d?d:a.ajaxSettings).port;return e==="abort"?(b[f]&&b[f].abort(),b[f]=c.apply(this,arguments)):c.apply(this,arguments)}}}(jQuery),function(a){!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener&&a.each({focus:"focusin",blur:"focusout"},function(b,c){function d(b){return b=a.event.fix(b),b.type=c,a.event.handle.call(this,b)}a.event.special[c]={setup:function(){this.addEventListener(b,d,!0)},teardown:function(){this.removeEventListener(b,d,!0)},handler:function(b){var d=arguments;return d[0]=a.event.fix(b),d[0].type=c,a.event.handle.apply(this,d)}}}),a.extend(a.fn,{validateDelegate:function(b,c,d){return this.bind(c,function(c){var e=a(c.target);if(e.is(b))return d.apply(e,arguments)})}})}(jQuery) \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/optionsTutorial.txt b/wqflask/wqflask/static/packages/jqplot/optionsTutorial.txt
deleted file mode 100644
index 4ec4fe9b..00000000
--- a/wqflask/wqflask/static/packages/jqplot/optionsTutorial.txt
+++ /dev/null
@@ -1,240 +0,0 @@
-Title: Options Tutorial
-
-This document will help you understand how jqPlot's options
-relate to the API documentation and the jqPlot object
-itself. For a listing of options available to jqPlot,
-see <jqPlot Options> in the jqPlotOptions.txt file.
-
-The key to effectively using jqPlot is understanding jqPlot's
-options. The online documentation is API documentation. While
-it explains what attributes and methods various objects posses,
-it doesn't explain how to use or set those attributes through
-options. This tutorial will help explain that.
-
-Lets assume you are creating a plot
-like this:
-
-> chart = $.jqplot('chart', dataSeries, optionsObj);
-
-First, note that you shouldn't try to directly set attributes on the
-"chart" object (like chart.grid.shadow) after your call to $.jqplot().
-At best this won't do anything **(see below). You should pass options in via
-the "optionsObj".
-
-the optionsObj really represents the plot object (jqPlot object, not
-to be confused with the $.jqplot function which will create a jqPlot
-object). Attributes you specify on that object will be merged with
-attributes in the jqPlot object. The axes, legend, series, etc. are
-attributes on the jqPlot object. The jqPlot/optionsObj object looks
-something like (only some attributes shown):
-
-> jqPlot-|
-> |-seriesColors
-> |-textColor
-> |-fontFamily
-> |-fontSize
-> |-stackSeries
-> |-series(Array)-|
-> | |-Series1-|
-> | | |-lineWidth
-> | | |-linePattern
-> | | |-shadow
-> | | |-showLine
-> | | |-showMarker
-> | | |-color
-> | |-Series2...
-> | |-...
-> | |-SeriesN
-> |
-> |-grid(Object)-|
-> | |-drawGridLines
-> | |-background
-> | |-borderColor
-> | |-borderWidth
-> | |-shadow
-> |
-> |-title(Object)-|
-> | |-text
-> | |-show
-> | |-fontFamily
-> | |-fontSize
-> | |-textAlign
-> | |-textColor
-> |
-> |-axes(Object)-|
-> | |-xais-|
-> | | |-min
-> | | |-max
-> | | |-numberTicks
-> | | |-showTicks
-> | | |-showTickMarks
-> | | |-pad
-> |
-> | ... and so on
-
-The optionsObj should follow the same construction as if it were a
-jqPlot object (with some exceptions/shortcuts I'll mention in a
-moment). So generally, when you see something like
-"this.drawGridLines" in the grid properties in the docs, just replace
-"this" with "grid" in your options object. So it becomes
-optionsObj.grid.drawGridLines. Do likewise with the other objects in
-the plot, replacing "this", with the respective attribute on the plot
-like "legend" or "title". Series and Axes are handled a little
-different, because series is an array and axes has 4 distinct children
-"xaxis", "yaxis", "x2axis" and "y2axis".
-
-So, to remove the shadow from the grid and change the grid border size
-you would do:
-
-> optionObj = {grid:{shadow:false, borderWidth:9.0}};
-
-To do the same as above but also make all the text in the plot red you
-would do:
-
-> optionObj = {
-> textColor:"#ff0000",
-> grid:{shadow:false, borderWidth:9.0}
-> }
-
-Here is a more deeply nested example. Say you want to specify a min
-and max on your y axis and use a specific color for your second
-series. That would look like:
-
-> optionsObj = {
-> axes:{yaxis:{min:5, max:230}},
-> series:[{},{color:"#33ff66"}]
-> }
-
-Note that series options are an array in order of the series data you
-sent in to your plot. To get to the second series, you have to put an
-object (even if empty) in place of the first series.
-
-There is a handy shortcut to assign options to all axes or all series
-at one go. Use axesDefaults and seriesDefaults. So, if you wanted
-both x and y axes to start at 0 and you wanted all series to not show
-markers, you could do:
-
-> optionsObj = {axesDefaults:{min:0}, seriesDefaults:{showMarker:false}}
-
-Another shortcut is for the plot title. Normally, you would assign
-options to the title as an object. If you specify a title option as a
-string, it will assign that to the title.text property automatically.
-So these two are equivalent:
-
-> optionsObj = {title:{text:"My Plot"}}
-
-and
-
-> optionsObj = {title:"My Plot"}
-
-Where things need more explaination is with renderers, plugins and
-their options. Briefly, what's renderer, what's a plugin.
-
-A renderer is an object that is used to draw something and gets
-attached to an existing object in the plot in order to draw it. A
-plugin does more than just provide drawing functionality to an
-object. It will do more like calculate a trend line, change the
-cursor, provide event driven functionality, etc. I consider renderers
-plugins, but plugins don't have to be renderers.
-
-So, how do you use renderers, plugins, and specify their options?
-Some common renderes are for bar charts and category axes. If you
-want to render your series as a bar chart with each set of bars
-showing up in a category on the x axis, you do:
-
-> optionsObj = {
-> seriesDefaults:{renderer:$.jqplot.BarRenderer},
-> axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}
-> }
-
-This replaces the default renderer used for all series in the plot
-with a bar renderer and the x axis default renderer (but not any other
-axis) with a category renderer.
-
-Now, how would I assign options to those renderers? The renderer's
-attributes may not be present in the pre-existing jqPlot object, they
-may be specific to the renderer. This is done through the
-"rendererOptions" option on the appropriate object. So, if I wanted my
-bars to be 25 pixels wide, I would do:
-
-
-> optionsObj = {
-> seriesDefaults:{
-> renderer:$.jqplot.BarRenderer},
-> rendererOptions:{
-> barWidth:25
-> },
-> axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}
-> }
-
-Again, this is using the "seriesDefaults" option, which will apply
-options to all series in the plot. You could do the same on any
-particular series in the plot through the "series" options array.
-
-Plugins are free to add their own options. For example, the
-highlighter plugin has it's own set of options that are unique to it.
-As a result, it responds to options placed in the "highlighter"
-attribute of your options object. So, if I wanted to change the
-highlighter tooltip to fade in and out slowly and be positioned
-directly above the point I'm highlighting:
-
-> optionsObj = {
-> highlighter:{tooltipFadeSpeed:'slow', tooltipLocation:'n'}
-> }
-
-Other plugins, like dragable and trendlines, add their options in with
-the series. This is because both of those plugins can have different
-options for different series in the plot. So, if you wanted to specify the
-color of the dragable and constrain it to drag only on the x axis as well
-as specify the color of the trend line you could do:
-
-> series:[{
-> dragable: {
-> color: '#ff3366',
-> constrainTo: 'x'
-> },
-> trendline: {
-> color: '#cccccc'
-> }
-> }]
-
-This would apply those options to the first series only. If you had 2 series
-and wanted to turn off dragging and trend lines on the second series, you could do:
-
-> series:[{
-> dragable: {
-> color: '#ff3366',
-> constrainTo: 'x'
-> },
-> trendline: {
-> color: '#cccccc'
-> }
-> }, {
-> isDragable: false,
-> trendline:{
-> show: false
-> }
-> }]
-
-Note, series dragability is turned off with the "isDragable" option directly on
-the series itself, not with a suboption of "dragable". This may be improved
-in the future.
-
-I hope this is helpful.
-A few key points to remember:
-
-- When you see "this" in the api docs, you generally replace it with
-the name of the object (in lowercase) you are looking at in your
-options object.
-- seriesDefaults and axesDefaults are convenient shortcuts.
-- to assign options to a renderer, generally use the "rendererOptions"
-- plugins may add their own options attribute, like "highlighter" or
-"cursor".
-
-** Note: you can set attributes after the plot is created (like
-plot.grid.shadow = false), but you'll have to issue the appropriate
-calls to possibly reinitialize and redraw the plot. jqPlot can
-definitely handle this to change the plot after creation (this is how
-the dragable plugin updates the plot data and the trend line plugin
-recomputes itself when data changes). This hasn't been documented
-yet, however. \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.js
deleted file mode 100644
index f089a705..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.js
+++ /dev/null
@@ -1,313 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- // Class: $.jqplot.BezierCurveRenderer.js
- // Renderer which draws lines as stacked bezier curves.
- // Data for the line will not be specified as an array of
- // [x, y] data point values, but as a an array of [start piont, bezier curve]
- // So, the line is specified as: [[xstart, ystart], [cp1x, cp1y, cp2x, cp2y, xend, yend]].
- $.jqplot.BezierCurveRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.BezierCurveRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.BezierCurveRenderer.prototype.constructor = $.jqplot.BezierCurveRenderer;
-
-
- // Method: setGridData
- // converts the user data values to grid coordinates and stores them
- // in the gridData array.
- // Called with scope of a series.
- $.jqplot.BezierCurveRenderer.prototype.setGridData = function(plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- // this._plotData should be same as this.data
- var data = this.data;
- this.gridData = [];
- this._prevGridData = [];
- // if seriesIndex = 0, fill to x axis.
- // if seriesIndex > 0, fill to previous series data.
- var idx = this.index;
- if (data.length == 2) {
- if (idx == 0) {
- this.gridData = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]),
- xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])],
- [xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, this._yaxis.min)],
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)]
- ];
- }
- else {
- var psd = plot.series[idx-1].data;
- this.gridData = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]),
- xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])],
- [xp.call(this._xaxis, psd[1][4]), yp.call(this._yaxis, psd[1][5])],
- [xp.call(this._xaxis, psd[1][2]), yp.call(this._yaxis, psd[1][3]),
- xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]),
- xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])]
- ];
- }
- }
- else {
- if (idx == 0) {
- this.gridData = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]),
- xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])],
- [xp.call(this._xaxis, data[3][1]), yp.call(this._yaxis, this._yaxis.min)],
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)]
- ];
- }
- else {
- var psd = plot.series[idx-1].data;
- this.gridData = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]),
- xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])],
- [xp.call(this._xaxis, psd[3][0]), yp.call(this._yaxis, psd[3][1])],
- [xp.call(this._xaxis, psd[2][0]), yp.call(this._yaxis, psd[2][1]),
- xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]),
- xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])]
- ];
- }
- }
- };
-
- // Method: makeGridData
- // converts any arbitrary data values to grid coordinates and
- // returns them. This method exists so that plugins can use a series'
- // linerenderer to generate grid data points without overwriting the
- // grid data associated with that series.
- // Called with scope of a series.
- $.jqplot.BezierCurveRenderer.prototype.makeGridData = function(data, plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var gd = [];
- var pgd = [];
- // if seriesIndex = 0, fill to x axis.
- // if seriesIndex > 0, fill to previous series data.
- var idx = this.index;
- if (data.length == 2) {
- if (idx == 0) {
- gd = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]),
- xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])],
- [xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, this._yaxis.min)],
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)]
- ];
- }
- else {
- var psd = plot.series[idx-1].data;
- gd = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[1][2]), yp.call(this._yaxis, data[1][3]),
- xp.call(this._xaxis, data[1][4]), yp.call(this._yaxis, data[1][5])],
- [xp.call(this._xaxis, psd[1][4]), yp.call(this._yaxis, psd[1][5])],
- [xp.call(this._xaxis, psd[1][2]), yp.call(this._yaxis, psd[1][3]),
- xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]),
- xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])]
- ];
- }
- }
- else {
- if (idx == 0) {
- gd = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]),
- xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])],
- [xp.call(this._xaxis, data[3][1]), yp.call(this._yaxis, this._yaxis.min)],
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, this._yaxis.min)]
- ];
- }
- else {
- var psd = plot.series[idx-1].data;
- gd = [
- [xp.call(this._xaxis, data[0][0]), yp.call(this._yaxis, data[0][1])],
- [xp.call(this._xaxis, data[1][0]), yp.call(this._yaxis, data[1][1]),
- xp.call(this._xaxis, data[2][0]), yp.call(this._yaxis, data[2][1]),
- xp.call(this._xaxis, data[3][0]), yp.call(this._yaxis, data[3][1])],
- [xp.call(this._xaxis, psd[3][0]), yp.call(this._yaxis, psd[3][1])],
- [xp.call(this._xaxis, psd[2][0]), yp.call(this._yaxis, psd[2][1]),
- xp.call(this._xaxis, psd[1][0]), yp.call(this._yaxis, psd[1][1]),
- xp.call(this._xaxis, psd[0][0]), yp.call(this._yaxis, psd[0][1])]
- ];
- }
- }
- return gd;
- };
-
-
- // called within scope of series.
- $.jqplot.BezierCurveRenderer.prototype.draw = function(ctx, gd, options) {
- var i;
- ctx.save();
- if (gd.length) {
- if (this.showLine) {
- ctx.save();
- var opts = (options != null) ? options : {};
- ctx.fillStyle = opts.fillStyle || this.color;
- ctx.beginPath();
- ctx.moveTo(gd[0][0], gd[0][1]);
- ctx.bezierCurveTo(gd[1][0], gd[1][1], gd[1][2], gd[1][3], gd[1][4], gd[1][5]);
- ctx.lineTo(gd[2][0], gd[2][1]);
- if (gd[3].length == 2) {
- ctx.lineTo(gd[3][0], gd[3][1]);
- }
- else {
- ctx.bezierCurveTo(gd[3][0], gd[3][1], gd[3][2], gd[3][3], gd[3][4], gd[3][5]);
- }
- ctx.closePath();
- ctx.fill();
- ctx.restore();
- }
- }
-
- ctx.restore();
- };
-
- $.jqplot.BezierCurveRenderer.prototype.drawShadow = function(ctx, gd, options) {
- // This is a no-op, shadows drawn with lines.
- };
-
- $.jqplot.BezierAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.BezierAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.BezierAxisRenderer.prototype.constructor = $.jqplot.BezierAxisRenderer;
-
-
- // Axes on a plot with Bezier Curves
- $.jqplot.BezierAxisRenderer.prototype.init = function(options){
- $.extend(true, this, options);
- var db = this._dataBounds;
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- var d = s.data;
- if (d.length == 4) {
- for (var j=0; j<d.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- if (d[j][0] < db.min || db.min == null) {
- db.min = d[j][0];
- }
- if (d[j][0] > db.max || db.max == null) {
- db.max = d[j][0];
- }
- }
- else {
- if (d[j][1] < db.min || db.min == null) {
- db.min = d[j][1];
- }
- if (d[j][1] > db.max || db.max == null) {
- db.max = d[j][1];
- }
- }
- }
- }
- else {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- if (d[0][0] < db.min || db.min == null) {
- db.min = d[0][0];
- }
- if (d[0][0] > db.max || db.max == null) {
- db.max = d[0][0];
- }
- for (var j=0; j<5; j+=2) {
- if (d[1][j] < db.min || db.min == null) {
- db.min = d[1][j];
- }
- if (d[1][j] > db.max || db.max == null) {
- db.max = d[1][j];
- }
- }
- }
- else {
- if (d[0][1] < db.min || db.min == null) {
- db.min = d[0][1];
- }
- if (d[0][1] > db.max || db.max == null) {
- db.max = d[0][1];
- }
- for (var j=1; j<6; j+=2) {
- if (d[1][j] < db.min || db.min == null) {
- db.min = d[1][j];
- }
- if (d[1][j] > db.max || db.max == null) {
- db.max = d[1][j];
- }
- }
- }
- }
- }
- };
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = $.extend(true, {pad:0}, options.axesDefaults);
- options.legend = $.extend(true, {placement:'outside'}, options.legend);
- // only set these if there is a pie series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.BezierCurveRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.BezierCurveRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.BezierAxisRenderer;
- }
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.min.js
deleted file mode 100644
index 77ec27b9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.BezierCurveRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(b){b.jqplot.BezierCurveRenderer=function(){b.jqplot.LineRenderer.call(this)};b.jqplot.BezierCurveRenderer.prototype=new b.jqplot.LineRenderer();b.jqplot.BezierCurveRenderer.prototype.constructor=b.jqplot.BezierCurveRenderer;b.jqplot.BezierCurveRenderer.prototype.setGridData=function(h){var e=this._xaxis.series_u2p;var g=this._yaxis.series_u2p;var f=this.data;this.gridData=[];this._prevGridData=[];var d=this.index;if(f.length==2){if(d==0){this.gridData=[[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,f[0][1])],[e.call(this._xaxis,f[1][0]),g.call(this._yaxis,f[1][1]),e.call(this._xaxis,f[1][2]),g.call(this._yaxis,f[1][3]),e.call(this._xaxis,f[1][4]),g.call(this._yaxis,f[1][5])],[e.call(this._xaxis,f[1][4]),g.call(this._yaxis,this._yaxis.min)],[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,this._yaxis.min)]]}else{var c=h.series[d-1].data;this.gridData=[[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,f[0][1])],[e.call(this._xaxis,f[1][0]),g.call(this._yaxis,f[1][1]),e.call(this._xaxis,f[1][2]),g.call(this._yaxis,f[1][3]),e.call(this._xaxis,f[1][4]),g.call(this._yaxis,f[1][5])],[e.call(this._xaxis,c[1][4]),g.call(this._yaxis,c[1][5])],[e.call(this._xaxis,c[1][2]),g.call(this._yaxis,c[1][3]),e.call(this._xaxis,c[1][0]),g.call(this._yaxis,c[1][1]),e.call(this._xaxis,c[0][0]),g.call(this._yaxis,c[0][1])]]}}else{if(d==0){this.gridData=[[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,f[0][1])],[e.call(this._xaxis,f[1][0]),g.call(this._yaxis,f[1][1]),e.call(this._xaxis,f[2][0]),g.call(this._yaxis,f[2][1]),e.call(this._xaxis,f[3][0]),g.call(this._yaxis,f[3][1])],[e.call(this._xaxis,f[3][1]),g.call(this._yaxis,this._yaxis.min)],[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,this._yaxis.min)]]}else{var c=h.series[d-1].data;this.gridData=[[e.call(this._xaxis,f[0][0]),g.call(this._yaxis,f[0][1])],[e.call(this._xaxis,f[1][0]),g.call(this._yaxis,f[1][1]),e.call(this._xaxis,f[2][0]),g.call(this._yaxis,f[2][1]),e.call(this._xaxis,f[3][0]),g.call(this._yaxis,f[3][1])],[e.call(this._xaxis,c[3][0]),g.call(this._yaxis,c[3][1])],[e.call(this._xaxis,c[2][0]),g.call(this._yaxis,c[2][1]),e.call(this._xaxis,c[1][0]),g.call(this._yaxis,c[1][1]),e.call(this._xaxis,c[0][0]),g.call(this._yaxis,c[0][1])]]}}};b.jqplot.BezierCurveRenderer.prototype.makeGridData=function(g,i){var f=this._xaxis.series_u2p;var h=this._yaxis.series_u2p;var e=[];var j=[];var d=this.index;if(g.length==2){if(d==0){e=[[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,g[0][1])],[f.call(this._xaxis,g[1][0]),h.call(this._yaxis,g[1][1]),f.call(this._xaxis,g[1][2]),h.call(this._yaxis,g[1][3]),f.call(this._xaxis,g[1][4]),h.call(this._yaxis,g[1][5])],[f.call(this._xaxis,g[1][4]),h.call(this._yaxis,this._yaxis.min)],[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,this._yaxis.min)]]}else{var c=i.series[d-1].data;e=[[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,g[0][1])],[f.call(this._xaxis,g[1][0]),h.call(this._yaxis,g[1][1]),f.call(this._xaxis,g[1][2]),h.call(this._yaxis,g[1][3]),f.call(this._xaxis,g[1][4]),h.call(this._yaxis,g[1][5])],[f.call(this._xaxis,c[1][4]),h.call(this._yaxis,c[1][5])],[f.call(this._xaxis,c[1][2]),h.call(this._yaxis,c[1][3]),f.call(this._xaxis,c[1][0]),h.call(this._yaxis,c[1][1]),f.call(this._xaxis,c[0][0]),h.call(this._yaxis,c[0][1])]]}}else{if(d==0){e=[[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,g[0][1])],[f.call(this._xaxis,g[1][0]),h.call(this._yaxis,g[1][1]),f.call(this._xaxis,g[2][0]),h.call(this._yaxis,g[2][1]),f.call(this._xaxis,g[3][0]),h.call(this._yaxis,g[3][1])],[f.call(this._xaxis,g[3][1]),h.call(this._yaxis,this._yaxis.min)],[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,this._yaxis.min)]]}else{var c=i.series[d-1].data;e=[[f.call(this._xaxis,g[0][0]),h.call(this._yaxis,g[0][1])],[f.call(this._xaxis,g[1][0]),h.call(this._yaxis,g[1][1]),f.call(this._xaxis,g[2][0]),h.call(this._yaxis,g[2][1]),f.call(this._xaxis,g[3][0]),h.call(this._yaxis,g[3][1])],[f.call(this._xaxis,c[3][0]),h.call(this._yaxis,c[3][1])],[f.call(this._xaxis,c[2][0]),h.call(this._yaxis,c[2][1]),f.call(this._xaxis,c[1][0]),h.call(this._yaxis,c[1][1]),f.call(this._xaxis,c[0][0]),h.call(this._yaxis,c[0][1])]]}}return e};b.jqplot.BezierCurveRenderer.prototype.draw=function(c,g,d){var e;c.save();if(g.length){if(this.showLine){c.save();var f=(d!=null)?d:{};c.fillStyle=f.fillStyle||this.color;c.beginPath();c.moveTo(g[0][0],g[0][1]);c.bezierCurveTo(g[1][0],g[1][1],g[1][2],g[1][3],g[1][4],g[1][5]);c.lineTo(g[2][0],g[2][1]);if(g[3].length==2){c.lineTo(g[3][0],g[3][1])}else{c.bezierCurveTo(g[3][0],g[3][1],g[3][2],g[3][3],g[3][4],g[3][5])}c.closePath();c.fill();c.restore()}}c.restore()};b.jqplot.BezierCurveRenderer.prototype.drawShadow=function(c,e,d){};b.jqplot.BezierAxisRenderer=function(){b.jqplot.LinearAxisRenderer.call(this)};b.jqplot.BezierAxisRenderer.prototype=new b.jqplot.LinearAxisRenderer();b.jqplot.BezierAxisRenderer.prototype.constructor=b.jqplot.BezierAxisRenderer;b.jqplot.BezierAxisRenderer.prototype.init=function(f){b.extend(true,this,f);var c=this._dataBounds;for(var g=0;g<this._series.length;g++){var h=this._series[g];var k=h.data;if(k.length==4){for(var e=0;e<k.length;e++){if(this.name=="xaxis"||this.name=="x2axis"){if(k[e][0]<c.min||c.min==null){c.min=k[e][0]}if(k[e][0]>c.max||c.max==null){c.max=k[e][0]}}else{if(k[e][1]<c.min||c.min==null){c.min=k[e][1]}if(k[e][1]>c.max||c.max==null){c.max=k[e][1]}}}}else{if(this.name=="xaxis"||this.name=="x2axis"){if(k[0][0]<c.min||c.min==null){c.min=k[0][0]}if(k[0][0]>c.max||c.max==null){c.max=k[0][0]}for(var e=0;e<5;e+=2){if(k[1][e]<c.min||c.min==null){c.min=k[1][e]}if(k[1][e]>c.max||c.max==null){c.max=k[1][e]}}}else{if(k[0][1]<c.min||c.min==null){c.min=k[0][1]}if(k[0][1]>c.max||c.max==null){c.max=k[0][1]}for(var e=1;e<6;e+=2){if(k[1][e]<c.min||c.min==null){c.min=k[1][e]}if(k[1][e]>c.max||c.max==null){c.max=k[1][e]}}}}}};function a(g,f,d){d=d||{};d.axesDefaults=b.extend(true,{pad:0},d.axesDefaults);d.legend=b.extend(true,{placement:"outside"},d.legend);var c=false;if(d.seriesDefaults.renderer==b.jqplot.BezierCurveRenderer){c=true}else{if(d.series){for(var e=0;e<d.series.length;e++){if(d.series[e].renderer==b.jqplot.BezierCurveRenderer){c=true}}}}if(c){d.axesDefaults.renderer=b.jqplot.BezierAxisRenderer}}b.jqplot.preInitHooks.push(a)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.js
deleted file mode 100644
index 623e8efb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.js
+++ /dev/null
@@ -1,797 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- // Class: $.jqplot.BarRenderer
- // A plugin renderer for jqPlot to draw a bar plot.
- // Draws series as a line.
-
- $.jqplot.BarRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.BarRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.BarRenderer.prototype.constructor = $.jqplot.BarRenderer;
-
- // called with scope of series.
- $.jqplot.BarRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- // prop: barPadding
- // Number of pixels between adjacent bars at the same axis value.
- this.barPadding = 8;
- // prop: barMargin
- // Number of pixels between groups of bars at adjacent axis values.
- this.barMargin = 10;
- // prop: barDirection
- // 'vertical' = up and down bars, 'horizontal' = side to side bars
- this.barDirection = 'vertical';
- // prop: barWidth
- // Width of the bar in pixels (auto by devaul). null = calculated automatically.
- this.barWidth = null;
- // prop: shadowOffset
- // offset of the shadow from the slice and offset of
- // each succesive stroke of the shadow from the last.
- this.shadowOffset = 2;
- // prop: shadowDepth
- // number of strokes to apply to the shadow,
- // each stroke offset shadowOffset from the last.
- this.shadowDepth = 5;
- // prop: shadowAlpha
- // transparency of the shadow (0 = transparent, 1 = opaque)
- this.shadowAlpha = 0.08;
- // prop: waterfall
- // true to enable waterfall plot.
- this.waterfall = false;
- // prop: groups
- // group bars into this many groups
- this.groups = 1;
- // prop: varyBarColor
- // true to color each bar of a series separately rather than
- // have every bar of a given series the same color.
- // If used for non-stacked multiple series bar plots, user should
- // specify a separate 'seriesColors' array for each series.
- // Otherwise, each series will set their bars to the same color array.
- // This option has no Effect for stacked bar charts and is disabled.
- this.varyBarColor = false;
- // prop: highlightMouseOver
- // True to highlight slice when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a slice.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a slice.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // an array of colors to use when highlighting a bar.
- this.highlightColors = [];
- // prop: transposedData
- // NOT IMPLEMENTED YET. True if this is a horizontal bar plot and
- // x and y values are "transposed". Tranposed, or "swapped", data is
- // required prior to rev. 894 builds of jqPlot with horizontal bars.
- // Allows backward compatability of bar renderer horizontal bars with
- // old style data sets.
- this.transposedData = true;
- this.renderer.animation = {
- show: false,
- direction: 'down',
- speed: 3000,
- _supported: true
- };
- this._type = 'bar';
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- //////
- // This is probably wrong here.
- // After going back and forth on wether renderer should be the thing
- // or extend the thing, it seems that it it best if it is a property
- // on the thing. This should be something that is commonized
- // among series renderers in the future.
- //////
- $.extend(true, this, options);
-
- // really should probably do this
- $.extend(true, this.renderer, options);
- // fill is still needed to properly draw the legend.
- // bars have to be filled.
- this.fill = true;
-
- // if horizontal bar and animating, reset the default direction
- if (this.barDirection === 'horizontal' && this.rendererOptions.animation && this.rendererOptions.animation.direction == null) {
- this.renderer.animation.direction = 'left';
- }
-
- if (this.waterfall) {
- this.fillToZero = false;
- this.disableStack = true;
- }
-
- if (this.barDirection == 'vertical' ) {
- this._primaryAxis = '_xaxis';
- this._stackAxis = 'y';
- this.fillAxis = 'y';
- }
- else {
- this._primaryAxis = '_yaxis';
- this._stackAxis = 'x';
- this.fillAxis = 'x';
- }
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
- // total number of values for all bar series, total number of bar series, and position of this series
- this._plotSeriesInfo = null;
- // Array of actual data colors used for each data point.
- this._dataColors = [];
- this._barPoints = [];
-
- // set the shape renderer options
- var opts = {lineJoin:'miter', lineCap:'round', fill:true, isarc:false, strokeStyle:this.color, fillStyle:this.color, closePath:this.fill};
- this.renderer.shapeRenderer.init(opts);
- // set the shadow renderer options
- var sopts = {lineJoin:'miter', lineCap:'round', fill:true, isarc:false, angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, depth:this.shadowDepth, closePath:this.fill};
- this.renderer.shadowRenderer.init(sopts);
-
- plot.postInitHooks.addOnce(postInit);
- plot.postDrawHooks.addOnce(postPlotDraw);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- };
-
- // called with scope of series
- function barPreInit(target, data, seriesDefaults, options) {
- if (this.rendererOptions.barDirection == 'horizontal') {
- this._stackAxis = 'x';
- this._primaryAxis = '_yaxis';
- }
- if (this.rendererOptions.waterfall == true) {
- this._data = $.extend(true, [], this.data);
- var sum = 0;
- var pos = (!this.rendererOptions.barDirection || this.rendererOptions.barDirection === 'vertical' || this.transposedData === false) ? 1 : 0;
- for(var i=0; i<this.data.length; i++) {
- sum += this.data[i][pos];
- if (i>0) {
- this.data[i][pos] += this.data[i-1][pos];
- }
- }
- this.data[this.data.length] = (pos == 1) ? [this.data.length+1, sum] : [sum, this.data.length+1];
- this._data[this._data.length] = (pos == 1) ? [this._data.length+1, sum] : [sum, this._data.length+1];
- }
- if (this.rendererOptions.groups > 1) {
- this.breakOnNull = true;
- var l = this.data.length;
- var skip = parseInt(l/this.rendererOptions.groups, 10);
- var count = 0;
- for (var i=skip; i<l; i+=skip) {
- this.data.splice(i+count, 0, [null, null]);
- this._plotData.splice(i+count, 0, [null, null]);
- this._stackData.splice(i+count, 0, [null, null]);
- count++;
- }
- for (i=0; i<this.data.length; i++) {
- if (this._primaryAxis == '_xaxis') {
- this.data[i][0] = i+1;
- this._plotData[i][0] = i+1;
- this._stackData[i][0] = i+1;
- }
- else {
- this.data[i][1] = i+1;
- this._plotData[i][1] = i+1;
- this._stackData[i][1] = i+1;
- }
- }
- }
- }
-
- $.jqplot.preSeriesInitHooks.push(barPreInit);
-
- // needs to be called with scope of series, not renderer.
- $.jqplot.BarRenderer.prototype.calcSeriesNumbers = function() {
- var nvals = 0;
- var nseries = 0;
- var paxis = this[this._primaryAxis];
- var s, series, pos;
- // loop through all series on this axis
- for (var i=0; i < paxis._series.length; i++) {
- series = paxis._series[i];
- if (series === this) {
- pos = i;
- }
- // is the series rendered as a bar?
- if (series.renderer.constructor == $.jqplot.BarRenderer) {
- // gridData may not be computed yet, use data length insted
- nvals += series.data.length;
- nseries += 1;
- }
- }
- // return total number of values for all bar series, total number of bar series, and position of this series
- return [nvals, nseries, pos];
- };
-
- $.jqplot.BarRenderer.prototype.setBarWidth = function() {
- // need to know how many data values we have on the approprate axis and figure it out.
- var i;
- var nvals = 0;
- var nseries = 0;
- var paxis = this[this._primaryAxis];
- var s, series, pos;
- var temp = this._plotSeriesInfo = this.renderer.calcSeriesNumbers.call(this);
- nvals = temp[0];
- nseries = temp[1];
- var nticks = paxis.numberTicks;
- var nbins = (nticks-1)/2;
- // so, now we have total number of axis values.
- if (paxis.name == 'xaxis' || paxis.name == 'x2axis') {
- if (this._stack) {
- this.barWidth = (paxis._offsets.max - paxis._offsets.min) / nvals * nseries - this.barMargin;
- }
- else {
- this.barWidth = ((paxis._offsets.max - paxis._offsets.min)/nbins - this.barPadding * (nseries-1) - this.barMargin*2)/nseries;
- // this.barWidth = (paxis._offsets.max - paxis._offsets.min) / nvals - this.barPadding - this.barMargin/nseries;
- }
- }
- else {
- if (this._stack) {
- this.barWidth = (paxis._offsets.min - paxis._offsets.max) / nvals * nseries - this.barMargin;
- }
- else {
- this.barWidth = ((paxis._offsets.min - paxis._offsets.max)/nbins - this.barPadding * (nseries-1) - this.barMargin*2)/nseries;
- // this.barWidth = (paxis._offsets.min - paxis._offsets.max) / nvals - this.barPadding - this.barMargin/nseries;
- }
- }
- return [nvals, nseries];
- };
-
- function computeHighlightColors (colors) {
- var ret = [];
- for (var i=0; i<colors.length; i++){
- var rgba = $.jqplot.getColorComponents(colors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]);
- newrgb[j] = parseInt(newrgb[j], 10);
- }
- ret.push('rgb('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+')');
- }
- return ret;
- }
-
- function getStart(sidx, didx, comp, plot, axis) {
- // check if sign change
- var seriesIndex = sidx,
- prevSeriesIndex = sidx - 1,
- start,
- prevVal,
- aidx = (axis === 'x') ? 0 : 1;
-
- // is this not the first series?
- if (seriesIndex > 0) {
- prevVal = plot.series[prevSeriesIndex]._plotData[didx][aidx];
-
- // is there a sign change
- if ((comp * prevVal) < 0) {
- start = getStart(prevSeriesIndex, didx, comp, plot, axis);
- }
-
- // no sign change.
- else {
- start = plot.series[prevSeriesIndex].gridData[didx][aidx];
- }
-
- }
-
- // if first series, return value at 0
- else {
-
- start = (aidx === 0) ? plot.series[seriesIndex]._xaxis.series_u2p(0) : plot.series[seriesIndex]._yaxis.series_u2p(0);
- }
-
- return start;
- }
-
-
- $.jqplot.BarRenderer.prototype.draw = function(ctx, gridData, options, plot) {
- var i;
- // Ughhh, have to make a copy of options b/c it may be modified later.
- var opts = $.extend({}, options);
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var xaxis = this.xaxis;
- var yaxis = this.yaxis;
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var pointx, pointy;
- // clear out data colors.
- this._dataColors = [];
- this._barPoints = [];
-
- if (this.barWidth == null) {
- this.renderer.setBarWidth.call(this);
- }
-
- var temp = this._plotSeriesInfo = this.renderer.calcSeriesNumbers.call(this);
- var nvals = temp[0];
- var nseries = temp[1];
- var pos = temp[2];
- var points = [];
-
- if (this._stack) {
- this._barNudge = 0;
- }
- else {
- this._barNudge = (-Math.abs(nseries/2 - 0.5) + pos) * (this.barWidth + this.barPadding);
- }
- if (showLine) {
- var negativeColors = new $.jqplot.ColorGenerator(this.negativeSeriesColors);
- var positiveColors = new $.jqplot.ColorGenerator(this.seriesColors);
- var negativeColor = negativeColors.get(this.index);
- if (! this.useNegativeColors) {
- negativeColor = opts.fillStyle;
- }
- var positiveColor = opts.fillStyle;
- var base;
- var xstart;
- var ystart;
-
- if (this.barDirection == 'vertical') {
- for (var i=0; i<gridData.length; i++) {
- if (!this._stack && this.data[i][1] == null) {
- continue;
- }
- points = [];
- base = gridData[i][0] + this._barNudge;
-
- // stacked
- if (this._stack && this._prevGridData.length) {
- ystart = getStart(this.index, i, this._plotData[i][1], plot, 'y');
- }
-
- // not stacked
- else {
- if (this.fillToZero) {
- ystart = this._yaxis.series_u2p(0);
- }
- else if (this.waterfall && i > 0 && i < this.gridData.length-1) {
- ystart = this.gridData[i-1][1];
- }
- else if (this.waterfall && i == 0 && i < this.gridData.length-1) {
- if (this._yaxis.min <= 0 && this._yaxis.max >= 0) {
- ystart = this._yaxis.series_u2p(0);
- }
- else if (this._yaxis.min > 0) {
- ystart = ctx.canvas.height;
- }
- else {
- ystart = 0;
- }
- }
- else if (this.waterfall && i == this.gridData.length - 1) {
- if (this._yaxis.min <= 0 && this._yaxis.max >= 0) {
- ystart = this._yaxis.series_u2p(0);
- }
- else if (this._yaxis.min > 0) {
- ystart = ctx.canvas.height;
- }
- else {
- ystart = 0;
- }
- }
- else {
- ystart = ctx.canvas.height;
- }
- }
- if ((this.fillToZero && this._plotData[i][1] < 0) || (this.waterfall && this._data[i][1] < 0)) {
- if (this.varyBarColor && !this._stack) {
- if (this.useNegativeColors) {
- opts.fillStyle = negativeColors.next();
- }
- else {
- opts.fillStyle = positiveColors.next();
- }
- }
- else {
- opts.fillStyle = negativeColor;
- }
- }
- else {
- if (this.varyBarColor && !this._stack) {
- opts.fillStyle = positiveColors.next();
- }
- else {
- opts.fillStyle = positiveColor;
- }
- }
-
- if (!this.fillToZero || this._plotData[i][1] >= 0) {
- points.push([base-this.barWidth/2, ystart]);
- points.push([base-this.barWidth/2, gridData[i][1]]);
- points.push([base+this.barWidth/2, gridData[i][1]]);
- points.push([base+this.barWidth/2, ystart]);
- }
- // for negative bars make sure points are always ordered clockwise
- else {
- points.push([base-this.barWidth/2, gridData[i][1]]);
- points.push([base-this.barWidth/2, ystart]);
- points.push([base+this.barWidth/2, ystart]);
- points.push([base+this.barWidth/2, gridData[i][1]]);
- }
- this._barPoints.push(points);
- // now draw the shadows if not stacked.
- // for stacked plots, they are predrawn by drawShadow
- if (shadow && !this._stack) {
- var sopts = $.extend(true, {}, opts);
- // need to get rid of fillStyle on shadow.
- delete sopts.fillStyle;
- this.renderer.shadowRenderer.draw(ctx, points, sopts);
- }
- var clr = opts.fillStyle || this.color;
- this._dataColors.push(clr);
- this.renderer.shapeRenderer.draw(ctx, points, opts);
- }
- }
-
- else if (this.barDirection == 'horizontal'){
- for (var i=0; i<gridData.length; i++) {
- if (!this._stack && this.data[i][0] == null) {
- continue;
- }
- points = [];
- base = gridData[i][1] - this._barNudge;
- xstart;
-
- if (this._stack && this._prevGridData.length) {
- xstart = getStart(this.index, i, this._plotData[i][0], plot, 'x');
- }
- // not stacked
- else {
- if (this.fillToZero) {
- xstart = this._xaxis.series_u2p(0);
- }
- else if (this.waterfall && i > 0 && i < this.gridData.length-1) {
- xstart = this.gridData[i-1][0];
- }
- else if (this.waterfall && i == 0 && i < this.gridData.length-1) {
- if (this._xaxis.min <= 0 && this._xaxis.max >= 0) {
- xstart = this._xaxis.series_u2p(0);
- }
- else if (this._xaxis.min > 0) {
- xstart = 0;
- }
- else {
- xstart = 0;
- }
- }
- else if (this.waterfall && i == this.gridData.length - 1) {
- if (this._xaxis.min <= 0 && this._xaxis.max >= 0) {
- xstart = this._xaxis.series_u2p(0);
- }
- else if (this._xaxis.min > 0) {
- xstart = 0;
- }
- else {
- xstart = ctx.canvas.width;
- }
- }
- else {
- xstart = 0;
- }
- }
- if ((this.fillToZero && this._plotData[i][1] < 0) || (this.waterfall && this._data[i][1] < 0)) {
- if (this.varyBarColor && !this._stack) {
- if (this.useNegativeColors) {
- opts.fillStyle = negativeColors.next();
- }
- else {
- opts.fillStyle = positiveColors.next();
- }
- }
- }
- else {
- if (this.varyBarColor && !this._stack) {
- opts.fillStyle = positiveColors.next();
- }
- else {
- opts.fillStyle = positiveColor;
- }
- }
-
-
- if (!this.fillToZero || this._plotData[i][0] >= 0) {
- points.push([xstart, base + this.barWidth / 2]);
- points.push([xstart, base - this.barWidth / 2]);
- points.push([gridData[i][0], base - this.barWidth / 2]);
- points.push([gridData[i][0], base + this.barWidth / 2]);
- }
- else {
- points.push([gridData[i][0], base + this.barWidth / 2]);
- points.push([gridData[i][0], base - this.barWidth / 2]);
- points.push([xstart, base - this.barWidth / 2]);
- points.push([xstart, base + this.barWidth / 2]);
- }
-
- this._barPoints.push(points);
- // now draw the shadows if not stacked.
- // for stacked plots, they are predrawn by drawShadow
- if (shadow && !this._stack) {
- var sopts = $.extend(true, {}, opts);
- delete sopts.fillStyle;
- this.renderer.shadowRenderer.draw(ctx, points, sopts);
- }
- var clr = opts.fillStyle || this.color;
- this._dataColors.push(clr);
- this.renderer.shapeRenderer.draw(ctx, points, opts);
- }
- }
- }
-
- if (this.highlightColors.length == 0) {
- this.highlightColors = $.jqplot.computeHighlightColors(this._dataColors);
- }
-
- else if (typeof(this.highlightColors) == 'string') {
- var temp = this.highlightColors;
- this.highlightColors = [];
- for (var i=0; i<this._dataColors.length; i++) {
- this.highlightColors.push(temp);
- }
- }
-
- };
-
-
- // for stacked plots, shadows will be pre drawn by drawShadow.
- $.jqplot.BarRenderer.prototype.drawShadow = function(ctx, gridData, options, plot) {
- var i;
- var opts = (options != undefined) ? options : {};
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var xaxis = this.xaxis;
- var yaxis = this.yaxis;
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var pointx, points, pointy, nvals, nseries, pos;
-
- if (this._stack && this.shadow) {
- if (this.barWidth == null) {
- this.renderer.setBarWidth.call(this);
- }
-
- var temp = this._plotSeriesInfo = this.renderer.calcSeriesNumbers.call(this);
- nvals = temp[0];
- nseries = temp[1];
- pos = temp[2];
-
- if (this._stack) {
- this._barNudge = 0;
- }
- else {
- this._barNudge = (-Math.abs(nseries/2 - 0.5) + pos) * (this.barWidth + this.barPadding);
- }
- if (showLine) {
-
- if (this.barDirection == 'vertical') {
- for (var i=0; i<gridData.length; i++) {
- if (this.data[i][1] == null) {
- continue;
- }
- points = [];
- var base = gridData[i][0] + this._barNudge;
- var ystart;
-
- if (this._stack && this._prevGridData.length) {
- ystart = getStart(this.index, i, this._plotData[i][1], plot, 'y');
- }
- else {
- if (this.fillToZero) {
- ystart = this._yaxis.series_u2p(0);
- }
- else {
- ystart = ctx.canvas.height;
- }
- }
-
- points.push([base-this.barWidth/2, ystart]);
- points.push([base-this.barWidth/2, gridData[i][1]]);
- points.push([base+this.barWidth/2, gridData[i][1]]);
- points.push([base+this.barWidth/2, ystart]);
- this.renderer.shadowRenderer.draw(ctx, points, opts);
- }
- }
-
- else if (this.barDirection == 'horizontal'){
- for (var i=0; i<gridData.length; i++) {
- if (this.data[i][0] == null) {
- continue;
- }
- points = [];
- var base = gridData[i][1] - this._barNudge;
- var xstart;
-
- if (this._stack && this._prevGridData.length) {
- xstart = getStart(this.index, i, this._plotData[i][0], plot, 'x');
- }
- else {
- if (this.fillToZero) {
- xstart = this._xaxis.series_u2p(0);
- }
- else {
- xstart = 0;
- }
- }
-
- points.push([xstart, base+this.barWidth/2]);
- points.push([gridData[i][0], base+this.barWidth/2]);
- points.push([gridData[i][0], base-this.barWidth/2]);
- points.push([xstart, base-this.barWidth/2]);
- this.renderer.shadowRenderer.draw(ctx, points, opts);
- }
- }
- }
-
- }
- };
-
- function postInit(target, data, options) {
- for (var i=0; i<this.series.length; i++) {
- if (this.series[i].renderer.constructor == $.jqplot.BarRenderer) {
- // don't allow mouseover and mousedown at same time.
- if (this.series[i].highlightMouseOver) {
- this.series[i].highlightMouseDown = false;
- }
- }
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.barRenderer && this.plugins.barRenderer.highlightCanvas) {
-
- this.plugins.barRenderer.highlightCanvas.resetCanvas();
- this.plugins.barRenderer.highlightCanvas = null;
- }
-
- this.plugins.barRenderer = {highlightedSeriesIndex:null};
- this.plugins.barRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
-
- this.eventCanvas._elem.before(this.plugins.barRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-barRenderer-highlight-canvas', this._plotDimensions, this));
- this.plugins.barRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- function highlight (plot, sidx, pidx, points) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.barRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.barRenderer.highlightedSeriesIndex = sidx;
- var opts = {fillStyle: s.highlightColors[pidx]};
- s.renderer.shapeRenderer.draw(canvas._ctx, points, opts);
- canvas = null;
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.barRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.barRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- canvas = null;
- }
-
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.barRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, neighbor.seriesIndex, neighbor.pointIndex, neighbor.points);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.barRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, neighbor.seriesIndex, neighbor.pointIndex, neighbor.points);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.barRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var idx = plot.plugins.barRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.min.js
deleted file mode 100644
index 47f85dd8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.barRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(d){d.jqplot.BarRenderer=function(){d.jqplot.LineRenderer.call(this)};d.jqplot.BarRenderer.prototype=new d.jqplot.LineRenderer();d.jqplot.BarRenderer.prototype.constructor=d.jqplot.BarRenderer;d.jqplot.BarRenderer.prototype.init=function(o,q){this.barPadding=8;this.barMargin=10;this.barDirection="vertical";this.barWidth=null;this.shadowOffset=2;this.shadowDepth=5;this.shadowAlpha=0.08;this.waterfall=false;this.groups=1;this.varyBarColor=false;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.transposedData=true;this.renderer.animation={show:false,direction:"down",speed:3000,_supported:true};this._type="bar";if(o.highlightMouseDown&&o.highlightMouseOver==null){o.highlightMouseOver=false}d.extend(true,this,o);d.extend(true,this.renderer,o);this.fill=true;if(this.barDirection==="horizontal"&&this.rendererOptions.animation&&this.rendererOptions.animation.direction==null){this.renderer.animation.direction="left"}if(this.waterfall){this.fillToZero=false;this.disableStack=true}if(this.barDirection=="vertical"){this._primaryAxis="_xaxis";this._stackAxis="y";this.fillAxis="y"}else{this._primaryAxis="_yaxis";this._stackAxis="x";this.fillAxis="x"}this._highlightedPoint=null;this._plotSeriesInfo=null;this._dataColors=[];this._barPoints=[];var p={lineJoin:"miter",lineCap:"round",fill:true,isarc:false,strokeStyle:this.color,fillStyle:this.color,closePath:this.fill};this.renderer.shapeRenderer.init(p);var n={lineJoin:"miter",lineCap:"round",fill:true,isarc:false,angle:this.shadowAngle,offset:this.shadowOffset,alpha:this.shadowAlpha,depth:this.shadowDepth,closePath:this.fill};this.renderer.shadowRenderer.init(n);q.postInitHooks.addOnce(h);q.postDrawHooks.addOnce(j);q.eventListenerHooks.addOnce("jqplotMouseMove",b);q.eventListenerHooks.addOnce("jqplotMouseDown",a);q.eventListenerHooks.addOnce("jqplotMouseUp",l);q.eventListenerHooks.addOnce("jqplotClick",e);q.eventListenerHooks.addOnce("jqplotRightClick",m)};function g(t,p,o,w){if(this.rendererOptions.barDirection=="horizontal"){this._stackAxis="x";this._primaryAxis="_yaxis"}if(this.rendererOptions.waterfall==true){this._data=d.extend(true,[],this.data);var s=0;var u=(!this.rendererOptions.barDirection||this.rendererOptions.barDirection==="vertical"||this.transposedData===false)?1:0;for(var q=0;q<this.data.length;q++){s+=this.data[q][u];if(q>0){this.data[q][u]+=this.data[q-1][u]}}this.data[this.data.length]=(u==1)?[this.data.length+1,s]:[s,this.data.length+1];this._data[this._data.length]=(u==1)?[this._data.length+1,s]:[s,this._data.length+1]}if(this.rendererOptions.groups>1){this.breakOnNull=true;var n=this.data.length;var v=parseInt(n/this.rendererOptions.groups,10);var r=0;for(var q=v;q<n;q+=v){this.data.splice(q+r,0,[null,null]);this._plotData.splice(q+r,0,[null,null]);this._stackData.splice(q+r,0,[null,null]);r++}for(q=0;q<this.data.length;q++){if(this._primaryAxis=="_xaxis"){this.data[q][0]=q+1;this._plotData[q][0]=q+1;this._stackData[q][0]=q+1}else{this.data[q][1]=q+1;this._plotData[q][1]=q+1;this._stackData[q][1]=q+1}}}}d.jqplot.preSeriesInitHooks.push(g);d.jqplot.BarRenderer.prototype.calcSeriesNumbers=function(){var r=0;var t=0;var q=this[this._primaryAxis];var p,o,u;for(var n=0;n<q._series.length;n++){o=q._series[n];if(o===this){u=n}if(o.renderer.constructor==d.jqplot.BarRenderer){r+=o.data.length;t+=1}}return[r,t,u]};d.jqplot.BarRenderer.prototype.setBarWidth=function(){var q;var n=0;var o=0;var t=this[this._primaryAxis];var x,r,v;var w=this._plotSeriesInfo=this.renderer.calcSeriesNumbers.call(this);n=w[0];o=w[1];var u=t.numberTicks;var p=(u-1)/2;if(t.name=="xaxis"||t.name=="x2axis"){if(this._stack){this.barWidth=(t._offsets.max-t._offsets.min)/n*o-this.barMargin}else{this.barWidth=((t._offsets.max-t._offsets.min)/p-this.barPadding*(o-1)-this.barMargin*2)/o}}else{if(this._stack){this.barWidth=(t._offsets.min-t._offsets.max)/n*o-this.barMargin}else{this.barWidth=((t._offsets.min-t._offsets.max)/p-this.barPadding*(o-1)-this.barMargin*2)/o}}return[n,o]};function f(o){var q=[];for(var s=0;s<o.length;s++){var r=d.jqplot.getColorComponents(o[s]);var n=[r[0],r[1],r[2]];var t=n[0]+n[1]+n[2];for(var p=0;p<3;p++){n[p]=(t>570)?n[p]*0.8:n[p]+0.3*(255-n[p]);n[p]=parseInt(n[p],10)}q.push("rgb("+n[0]+","+n[1]+","+n[2]+")")}return q}function i(v,u,s,t,o){var q=v,w=v-1,n,p,r=(o==="x")?0:1;if(q>0){p=t.series[w]._plotData[u][r];if((s*p)<0){n=i(w,u,s,t,o)}else{n=t.series[w].gridData[u][r]}}else{n=(r===0)?t.series[q]._xaxis.series_u2p(0):t.series[q]._yaxis.series_u2p(0)}return n}d.jqplot.BarRenderer.prototype.draw=function(E,L,q,G){var I;var A=d.extend({},q);var w=(A.shadow!=undefined)?A.shadow:this.shadow;var O=(A.showLine!=undefined)?A.showLine:this.showLine;var F=(A.fill!=undefined)?A.fill:this.fill;var p=this.xaxis;var J=this.yaxis;var y=this._xaxis.series_u2p;var K=this._yaxis.series_u2p;var D,C;this._dataColors=[];this._barPoints=[];if(this.barWidth==null){this.renderer.setBarWidth.call(this)}var N=this._plotSeriesInfo=this.renderer.calcSeriesNumbers.call(this);var x=N[0];var v=N[1];var s=N[2];var H=[];if(this._stack){this._barNudge=0}else{this._barNudge=(-Math.abs(v/2-0.5)+s)*(this.barWidth+this.barPadding)}if(O){var u=new d.jqplot.ColorGenerator(this.negativeSeriesColors);var B=new d.jqplot.ColorGenerator(this.seriesColors);var M=u.get(this.index);if(!this.useNegativeColors){M=A.fillStyle}var t=A.fillStyle;var r;var P;var o;if(this.barDirection=="vertical"){for(var I=0;I<L.length;I++){if(!this._stack&&this.data[I][1]==null){continue}H=[];r=L[I][0]+this._barNudge;if(this._stack&&this._prevGridData.length){o=i(this.index,I,this._plotData[I][1],G,"y")}else{if(this.fillToZero){o=this._yaxis.series_u2p(0)}else{if(this.waterfall&&I>0&&I<this.gridData.length-1){o=this.gridData[I-1][1]}else{if(this.waterfall&&I==0&&I<this.gridData.length-1){if(this._yaxis.min<=0&&this._yaxis.max>=0){o=this._yaxis.series_u2p(0)}else{if(this._yaxis.min>0){o=E.canvas.height}else{o=0}}}else{if(this.waterfall&&I==this.gridData.length-1){if(this._yaxis.min<=0&&this._yaxis.max>=0){o=this._yaxis.series_u2p(0)}else{if(this._yaxis.min>0){o=E.canvas.height}else{o=0}}}else{o=E.canvas.height}}}}}if((this.fillToZero&&this._plotData[I][1]<0)||(this.waterfall&&this._data[I][1]<0)){if(this.varyBarColor&&!this._stack){if(this.useNegativeColors){A.fillStyle=u.next()}else{A.fillStyle=B.next()}}else{A.fillStyle=M}}else{if(this.varyBarColor&&!this._stack){A.fillStyle=B.next()}else{A.fillStyle=t}}if(!this.fillToZero||this._plotData[I][1]>=0){H.push([r-this.barWidth/2,o]);H.push([r-this.barWidth/2,L[I][1]]);H.push([r+this.barWidth/2,L[I][1]]);H.push([r+this.barWidth/2,o])}else{H.push([r-this.barWidth/2,L[I][1]]);H.push([r-this.barWidth/2,o]);H.push([r+this.barWidth/2,o]);H.push([r+this.barWidth/2,L[I][1]])}this._barPoints.push(H);if(w&&!this._stack){var z=d.extend(true,{},A);delete z.fillStyle;this.renderer.shadowRenderer.draw(E,H,z)}var n=A.fillStyle||this.color;this._dataColors.push(n);this.renderer.shapeRenderer.draw(E,H,A)}}else{if(this.barDirection=="horizontal"){for(var I=0;I<L.length;I++){if(!this._stack&&this.data[I][0]==null){continue}H=[];r=L[I][1]-this._barNudge;P;if(this._stack&&this._prevGridData.length){P=i(this.index,I,this._plotData[I][0],G,"x")}else{if(this.fillToZero){P=this._xaxis.series_u2p(0)}else{if(this.waterfall&&I>0&&I<this.gridData.length-1){P=this.gridData[I-1][0]}else{if(this.waterfall&&I==0&&I<this.gridData.length-1){if(this._xaxis.min<=0&&this._xaxis.max>=0){P=this._xaxis.series_u2p(0)}else{if(this._xaxis.min>0){P=0}else{P=0}}}else{if(this.waterfall&&I==this.gridData.length-1){if(this._xaxis.min<=0&&this._xaxis.max>=0){P=this._xaxis.series_u2p(0)}else{if(this._xaxis.min>0){P=0}else{P=E.canvas.width}}}else{P=0}}}}}if((this.fillToZero&&this._plotData[I][1]<0)||(this.waterfall&&this._data[I][1]<0)){if(this.varyBarColor&&!this._stack){if(this.useNegativeColors){A.fillStyle=u.next()}else{A.fillStyle=B.next()}}}else{if(this.varyBarColor&&!this._stack){A.fillStyle=B.next()}else{A.fillStyle=t}}if(!this.fillToZero||this._plotData[I][0]>=0){H.push([P,r+this.barWidth/2]);H.push([P,r-this.barWidth/2]);H.push([L[I][0],r-this.barWidth/2]);H.push([L[I][0],r+this.barWidth/2])}else{H.push([L[I][0],r+this.barWidth/2]);H.push([L[I][0],r-this.barWidth/2]);H.push([P,r-this.barWidth/2]);H.push([P,r+this.barWidth/2])}this._barPoints.push(H);if(w&&!this._stack){var z=d.extend(true,{},A);delete z.fillStyle;this.renderer.shadowRenderer.draw(E,H,z)}var n=A.fillStyle||this.color;this._dataColors.push(n);this.renderer.shapeRenderer.draw(E,H,A)}}}}if(this.highlightColors.length==0){this.highlightColors=d.jqplot.computeHighlightColors(this._dataColors)}else{if(typeof(this.highlightColors)=="string"){var N=this.highlightColors;this.highlightColors=[];for(var I=0;I<this._dataColors.length;I++){this.highlightColors.push(N)}}}};d.jqplot.BarRenderer.prototype.drawShadow=function(z,G,p,B){var D;var w=(p!=undefined)?p:{};var t=(w.shadow!=undefined)?w.shadow:this.shadow;var I=(w.showLine!=undefined)?w.showLine:this.showLine;var A=(w.fill!=undefined)?w.fill:this.fill;var o=this.xaxis;var E=this.yaxis;var v=this._xaxis.series_u2p;var F=this._yaxis.series_u2p;var y,C,x,u,s,r;if(this._stack&&this.shadow){if(this.barWidth==null){this.renderer.setBarWidth.call(this)}var H=this._plotSeriesInfo=this.renderer.calcSeriesNumbers.call(this);u=H[0];s=H[1];r=H[2];if(this._stack){this._barNudge=0}else{this._barNudge=(-Math.abs(s/2-0.5)+r)*(this.barWidth+this.barPadding)}if(I){if(this.barDirection=="vertical"){for(var D=0;D<G.length;D++){if(this.data[D][1]==null){continue}C=[];var q=G[D][0]+this._barNudge;var n;if(this._stack&&this._prevGridData.length){n=i(this.index,D,this._plotData[D][1],B,"y")}else{if(this.fillToZero){n=this._yaxis.series_u2p(0)}else{n=z.canvas.height}}C.push([q-this.barWidth/2,n]);C.push([q-this.barWidth/2,G[D][1]]);C.push([q+this.barWidth/2,G[D][1]]);C.push([q+this.barWidth/2,n]);this.renderer.shadowRenderer.draw(z,C,w)}}else{if(this.barDirection=="horizontal"){for(var D=0;D<G.length;D++){if(this.data[D][0]==null){continue}C=[];var q=G[D][1]-this._barNudge;var J;if(this._stack&&this._prevGridData.length){J=i(this.index,D,this._plotData[D][0],B,"x")}else{if(this.fillToZero){J=this._xaxis.series_u2p(0)}else{J=0}}C.push([J,q+this.barWidth/2]);C.push([G[D][0],q+this.barWidth/2]);C.push([G[D][0],q-this.barWidth/2]);C.push([J,q-this.barWidth/2]);this.renderer.shadowRenderer.draw(z,C,w)}}}}}};function h(q,p,n){for(var o=0;o<this.series.length;o++){if(this.series[o].renderer.constructor==d.jqplot.BarRenderer){if(this.series[o].highlightMouseOver){this.series[o].highlightMouseDown=false}}}}function j(){if(this.plugins.barRenderer&&this.plugins.barRenderer.highlightCanvas){this.plugins.barRenderer.highlightCanvas.resetCanvas();this.plugins.barRenderer.highlightCanvas=null}this.plugins.barRenderer={highlightedSeriesIndex:null};this.plugins.barRenderer.highlightCanvas=new d.jqplot.GenericCanvas();this.eventCanvas._elem.before(this.plugins.barRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-barRenderer-highlight-canvas",this._plotDimensions,this));this.plugins.barRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(n){k(n.data.plot)})}function c(u,t,q,p){var o=u.series[t];var n=u.plugins.barRenderer.highlightCanvas;n._ctx.clearRect(0,0,n._ctx.canvas.width,n._ctx.canvas.height);o._highlightedPoint=q;u.plugins.barRenderer.highlightedSeriesIndex=t;var r={fillStyle:o.highlightColors[q]};o.renderer.shapeRenderer.draw(n._ctx,p,r);n=null}function k(p){var n=p.plugins.barRenderer.highlightCanvas;n._ctx.clearRect(0,0,n._ctx.canvas.width,n._ctx.canvas.height);for(var o=0;o<p.series.length;o++){p.series[o]._highlightedPoint=null}p.plugins.barRenderer.highlightedSeriesIndex=null;p.target.trigger("jqplotDataUnhighlight");n=null}function b(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];var o=jQuery.Event("jqplotDataMouseOver");o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p);if(s.series[p[0]].highlightMouseOver&&!(p[0]==s.plugins.barRenderer.highlightedSeriesIndex&&p[1]==s.series[p[0]]._highlightedPoint)){var n=jQuery.Event("jqplotDataHighlight");n.which=r.which;n.pageX=r.pageX;n.pageY=r.pageY;s.target.trigger(n,p);c(s,t.seriesIndex,t.pointIndex,t.points)}}else{if(t==null){k(s)}}}function a(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];if(r.series[o[0]].highlightMouseDown&&!(o[0]==r.plugins.barRenderer.highlightedSeriesIndex&&o[1]==r.series[o[0]]._highlightedPoint)){var n=jQuery.Event("jqplotDataHighlight");n.which=q.which;n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o);c(r,s.seriesIndex,s.pointIndex,s.points)}}else{if(s==null){k(r)}}}function l(p,o,s,r,q){var n=q.plugins.barRenderer.highlightedSeriesIndex;if(n!=null&&q.series[n].highlightMouseDown){k(q)}}function e(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];var n=jQuery.Event("jqplotDataClick");n.which=q.which;n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o)}}function m(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];var n=s.plugins.barRenderer.highlightedSeriesIndex;if(n!=null&&s.series[n].highlightMouseDown){k(s)}var o=jQuery.Event("jqplotDataRightClick");o.which=r.which;o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p)}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.js
deleted file mode 100644
index f2447058..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.js
+++ /dev/null
@@ -1,234 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.BlockRenderer
- * Plugin renderer to draw a x-y block chart. A Block chart has data points displayed as
- * colored squares with a text label inside. Data must be supplied in the form:
- *
- * > [[x1, y1, "label 1", {css}], [x2, y2, "label 2", {css}], ...]
- *
- * The label and css object are optional. If the label is ommitted, the
- * box will collapse unless a css height and/or width is specified.
- *
- * The css object is an object specifying css properties
- * such as:
- *
- * > {background:'#4f98a5', border:'3px solid gray', padding:'1px'}
- *
- * Note that css properties specified with the data point override defaults
- * specified with the series.
- *
- */
- $.jqplot.BlockRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.BlockRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.BlockRenderer.prototype.constructor = $.jqplot.BlockRenderer;
-
- // called with scope of a series
- $.jqplot.BlockRenderer.prototype.init = function(options) {
- // Group: Properties
- //
- // prop: css
- // default css styles that will be applied to all data blocks.
- // these values will be overridden by css styles supplied with the
- // individulal data points.
- this.css = {padding:'2px', border:'1px solid #999', textAlign:'center'};
- // prop: escapeHtml
- // true to escape html in the box label.
- this.escapeHtml = false;
- // prop: insertBreaks
- // true to turn spaces in data block label into html breaks <br />.
- this.insertBreaks = true;
- // prop: varyBlockColors
- // true to vary the color of each block in this series according to
- // the seriesColors array. False to set each block to the color
- // specified on this series. This has no effect if a css background color
- // option is specified in the renderer css options.
- this.varyBlockColors = false;
- $.extend(true, this, options);
- if (this.css.backgroundColor) {
- this.color = this.css.backgroundColor;
- }
- else if (this.css.background) {
- this.color = this.css.background;
- }
- else if (!this.varyBlockColors) {
- this.css.background = this.color;
- }
- this.canvas = new $.jqplot.BlockCanvas();
- this.shadowCanvas = new $.jqplot.BlockCanvas();
- this.canvas._plotDimensions = this._plotDimensions;
- this.shadowCanvas._plotDimensions = this._plotDimensions;
- this._type = 'block';
-
- // group: Methods
- //
- // Method: moveBlock
- // Moves an individual block. More efficient than redrawing
- // the whole series by calling plot.drawSeries().
- // Properties:
- // idx - the 0 based index of the block or point in this series.
- // x - the x coordinate in data units (value on x axis) to move the block to.
- // y - the y coordinate in data units (value on the y axis) to move the block to.
- // duration - optional parameter to create an animated movement. Can be a
- // number (higher is slower animation) or 'fast', 'normal' or 'slow'. If not
- // provided, the element is moved without any animation.
- this.moveBlock = function (idx, x, y, duration) {
- // update plotData, stackData, data and gridData
- // x and y are in data coordinates.
- var el = this.canvas._elem.children(':eq('+idx+')');
- this.data[idx][0] = x;
- this.data[idx][1] = y;
- this._plotData[idx][0] = x;
- this._plotData[idx][1] = y;
- this._stackData[idx][0] = x;
- this._stackData[idx][1] = y;
- this.gridData[idx][0] = this._xaxis.series_u2p(x);
- this.gridData[idx][1] = this._yaxis.series_u2p(y);
- var w = el.outerWidth();
- var h = el.outerHeight();
- var left = this.gridData[idx][0] - w/2 + 'px';
- var top = this.gridData[idx][1] - h/2 + 'px';
- if (duration) {
- if (parseInt(duration, 10)) {
- duration = parseInt(duration, 10);
- }
- el.animate({left:left, top:top}, duration);
- }
- else {
- el.css({left:left, top:top});
- }
- el = null;
- };
- };
-
- // called with scope of series
- $.jqplot.BlockRenderer.prototype.draw = function (ctx, gd, options) {
- if (this.plugins.pointLabels) {
- this.plugins.pointLabels.show = false;
- }
- var i, el, d, gd, t, css, w, h, left, top;
- var opts = (options != undefined) ? options : {};
- var colorGenerator = new $.jqplot.ColorGenerator(this.seriesColors);
- this.canvas._elem.empty();
- for (i=0; i<this.gridData.length; i++) {
- d = this.data[i];
- gd = this.gridData[i];
- t = '';
- css = {};
- if (typeof d[2] == 'string') {
- t = d[2];
- }
- else if (typeof d[2] == 'object') {
- css = d[2];
- }
- if (typeof d[3] == 'object') {
- css = d[3];
- }
- if (this.insertBreaks){
- t = t.replace(/ /g, '<br />');
- }
- css = $.extend(true, {}, this.css, css);
- // create a div
- el = $('<div style="position:absolute;margin-left:auto;margin-right:auto;"></div>');
- this.canvas._elem.append(el);
- // set text
- this.escapeHtml ? el.text(t) : el.html(t);
- // style it
- // remove styles we don't want overridden.
- delete css.position;
- delete css.marginRight;
- delete css.marginLeft;
- if (!css.background && !css.backgroundColor && !css.backgroundImage){
- css.background = colorGenerator.next();
- }
- el.css(css);
- w = el.outerWidth();
- h = el.outerHeight();
- left = gd[0] - w/2 + 'px';
- top = gd[1] - h/2 + 'px';
- el.css({left:left, top:top});
- el = null;
- }
- };
-
- $.jqplot.BlockCanvas = function() {
- $.jqplot.ElemContainer.call(this);
- this._ctx;
- };
-
- $.jqplot.BlockCanvas.prototype = new $.jqplot.ElemContainer();
- $.jqplot.BlockCanvas.prototype.constructor = $.jqplot.BlockCanvas;
-
- $.jqplot.BlockCanvas.prototype.createElement = function(offsets, clss, plotDimensions) {
- this._offsets = offsets;
- var klass = 'jqplot-blockCanvas';
- if (clss != undefined) {
- klass = clss;
- }
- var elem;
- // if this canvas already has a dom element, don't make a new one.
- if (this._elem) {
- elem = this._elem.get(0);
- }
- else {
- elem = document.createElement('div');
- }
- // if new plotDimensions supplied, use them.
- if (plotDimensions != undefined) {
- this._plotDimensions = plotDimensions;
- }
-
- var w = this._plotDimensions.width - this._offsets.left - this._offsets.right + 'px';
- var h = this._plotDimensions.height - this._offsets.top - this._offsets.bottom + 'px';
- this._elem = $(elem);
- this._elem.css({ position: 'absolute', width:w, height:h, left: this._offsets.left, top: this._offsets.top });
-
- this._elem.addClass(klass);
- return this._elem;
- };
-
- $.jqplot.BlockCanvas.prototype.setContext = function() {
- this._ctx = {
- canvas:{
- width:0,
- height:0
- },
- clearRect:function(){return null;}
- };
- return this._ctx;
- };
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.min.js
deleted file mode 100644
index 62cfd0b8..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.blockRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.BlockRenderer=function(){a.jqplot.LineRenderer.call(this)};a.jqplot.BlockRenderer.prototype=new a.jqplot.LineRenderer();a.jqplot.BlockRenderer.prototype.constructor=a.jqplot.BlockRenderer;a.jqplot.BlockRenderer.prototype.init=function(b){this.css={padding:"2px",border:"1px solid #999",textAlign:"center"};this.escapeHtml=false;this.insertBreaks=true;this.varyBlockColors=false;a.extend(true,this,b);if(this.css.backgroundColor){this.color=this.css.backgroundColor}else{if(this.css.background){this.color=this.css.background}else{if(!this.varyBlockColors){this.css.background=this.color}}}this.canvas=new a.jqplot.BlockCanvas();this.shadowCanvas=new a.jqplot.BlockCanvas();this.canvas._plotDimensions=this._plotDimensions;this.shadowCanvas._plotDimensions=this._plotDimensions;this._type="block";this.moveBlock=function(l,j,i,e){var c=this.canvas._elem.children(":eq("+l+")");this.data[l][0]=j;this.data[l][1]=i;this._plotData[l][0]=j;this._plotData[l][1]=i;this._stackData[l][0]=j;this._stackData[l][1]=i;this.gridData[l][0]=this._xaxis.series_u2p(j);this.gridData[l][1]=this._yaxis.series_u2p(i);var k=c.outerWidth();var f=c.outerHeight();var d=this.gridData[l][0]-k/2+"px";var g=this.gridData[l][1]-f/2+"px";if(e){if(parseInt(e,10)){e=parseInt(e,10)}c.animate({left:d,top:g},e)}else{c.css({left:d,top:g})}c=null}};a.jqplot.BlockRenderer.prototype.draw=function(q,o,r){if(this.plugins.pointLabels){this.plugins.pointLabels.show=false}var f,c,l,o,p,k,n,g,e,m;var b=(r!=undefined)?r:{};var j=new a.jqplot.ColorGenerator(this.seriesColors);this.canvas._elem.empty();for(f=0;f<this.gridData.length;f++){l=this.data[f];o=this.gridData[f];p="";k={};if(typeof l[2]=="string"){p=l[2]}else{if(typeof l[2]=="object"){k=l[2]}}if(typeof l[3]=="object"){k=l[3]}if(this.insertBreaks){p=p.replace(/ /g,"<br />")}k=a.extend(true,{},this.css,k);c=a('<div style="position:absolute;margin-left:auto;margin-right:auto;"></div>');this.canvas._elem.append(c);this.escapeHtml?c.text(p):c.html(p);delete k.position;delete k.marginRight;delete k.marginLeft;if(!k.background&&!k.backgroundColor&&!k.backgroundImage){k.background=j.next()}c.css(k);n=c.outerWidth();g=c.outerHeight();e=o[0]-n/2+"px";m=o[1]-g/2+"px";c.css({left:e,top:m});c=null}};a.jqplot.BlockCanvas=function(){a.jqplot.ElemContainer.call(this);this._ctx};a.jqplot.BlockCanvas.prototype=new a.jqplot.ElemContainer();a.jqplot.BlockCanvas.prototype.constructor=a.jqplot.BlockCanvas;a.jqplot.BlockCanvas.prototype.createElement=function(i,e,c){this._offsets=i;var b="jqplot-blockCanvas";if(e!=undefined){b=e}var g;if(this._elem){g=this._elem.get(0)}else{g=document.createElement("div")}if(c!=undefined){this._plotDimensions=c}var d=this._plotDimensions.width-this._offsets.left-this._offsets.right+"px";var f=this._plotDimensions.height-this._offsets.top-this._offsets.bottom+"px";this._elem=a(g);this._elem.css({position:"absolute",width:d,height:f,left:this._offsets.left,top:this._offsets.top});this._elem.addClass(b);return this._elem};a.jqplot.BlockCanvas.prototype.setContext=function(){this._ctx={canvas:{width:0,height:0},clearRect:function(){return null}};return this._ctx}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.js
deleted file mode 100644
index 3793d6de..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.js
+++ /dev/null
@@ -1,758 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- var arrayMax = function( array ){
- return Math.max.apply( Math, array );
- };
- var arrayMin = function( array ){
- return Math.min.apply( Math, array );
- };
-
- /**
- * Class: $.jqplot.BubbleRenderer
- * Plugin renderer to draw a bubble chart. A Bubble chart has data points displayed as
- * colored circles with an optional text label inside. To use
- * the bubble renderer, you must include the bubble renderer like:
- *
- * > <script language="javascript" type="text/javascript" src="../src/plugins/jqplot.bubbleRenderer.js"></script>
- *
- * Data must be supplied in
- * the form:
- *
- * > [[x1, y1, r1, <label or {label:'text', color:color}>], ...]
- *
- * where the label or options
- * object is optional.
- *
- * Note that all bubble colors will be the same
- * unless the "varyBubbleColors" option is set to true. Colors can be specified in the data array
- * or in the seriesColors array option on the series. If no colors are defined, the default jqPlot
- * series of 16 colors are used. Colors are automatically cycled around again if there are more
- * bubbles than colors.
- *
- * Bubbles are autoscaled by default to fit within the chart area while maintaining
- * relative sizes. If the "autoscaleBubbles" option is set to false, the r(adius) values
- * in the data array a treated as literal pixel values for the radii of the bubbles.
- *
- * Properties are passed into the bubble renderer in the rendererOptions object of
- * the series options like:
- *
- * > seriesDefaults: {
- * > renderer: $.jqplot.BubbleRenderer,
- * > rendererOptions: {
- * > bubbleAlpha: 0.7,
- * > varyBubbleColors: false
- * > }
- * > }
- *
- */
- $.jqplot.BubbleRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.BubbleRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.BubbleRenderer.prototype.constructor = $.jqplot.BubbleRenderer;
-
- // called with scope of a series
- $.jqplot.BubbleRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- // prop: varyBubbleColors
- // True to vary the color of each bubble in this series according to
- // the seriesColors array. False to set each bubble to the color
- // specified on this series. This has no effect if a css background color
- // option is specified in the renderer css options.
- this.varyBubbleColors = true;
- // prop: autoscaleBubbles
- // True to scale the bubble radius based on plot size.
- // False will use the radius value as provided as a raw pixel value for
- // bubble radius.
- this.autoscaleBubbles = true;
- // prop: autoscaleMultiplier
- // Multiplier the bubble size if autoscaleBubbles is true.
- this.autoscaleMultiplier = 1.0;
- // prop: autoscalePointsFactor
- // Factor which decreases bubble size based on how many bubbles on on the chart.
- // 0 means no adjustment for number of bubbles. Negative values will decrease
- // size of bubbles as more bubbles are added. Values between 0 and -0.2
- // should work well.
- this.autoscalePointsFactor = -0.07;
- // prop: escapeHtml
- // True to escape html in bubble label text.
- this.escapeHtml = true;
- // prop: highlightMouseOver
- // True to highlight bubbles when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a slice.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a bubble.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // An array of colors to use when highlighting a slice. Calculated automatically
- // if not supplied.
- this.highlightColors = [];
- // prop: bubbleAlpha
- // Alpha transparency to apply to all bubbles in this series.
- this.bubbleAlpha = 1.0;
- // prop: highlightAlpha
- // Alpha transparency to apply when highlighting bubble.
- // Set to value of bubbleAlpha by default.
- this.highlightAlpha = null;
- // prop: bubbleGradients
- // True to color the bubbles with gradient fills instead of flat colors.
- // NOT AVAILABLE IN IE due to lack of excanvas support for radial gradient fills.
- // will be ignored in IE.
- this.bubbleGradients = false;
- // prop: showLabels
- // True to show labels on bubbles (if any), false to not show.
- this.showLabels = true;
- // array of [point index, radius] which will be sorted in descending order to plot
- // largest points below smaller points.
- this.radii = [];
- this.maxRadius = 0;
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
- // array of jQuery labels.
- this.labels = [];
- this.bubbleCanvases = [];
- this._type = 'bubble';
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- $.extend(true, this, options);
-
- if (this.highlightAlpha == null) {
- this.highlightAlpha = this.bubbleAlpha;
- if (this.bubbleGradients) {
- this.highlightAlpha = 0.35;
- }
- }
-
- this.autoscaleMultiplier = this.autoscaleMultiplier * Math.pow(this.data.length, this.autoscalePointsFactor);
-
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
-
- // adjust the series colors for options colors passed in with data or for alpha.
- // note, this can leave undefined holes in the seriesColors array.
- var comps;
- for (var i=0; i<this.data.length; i++) {
- var color = null;
- var d = this.data[i];
- this.maxRadius = Math.max(this.maxRadius, d[2]);
- if (d[3]) {
- if (typeof(d[3]) == 'object') {
- color = d[3]['color'];
- }
- }
-
- if (color == null) {
- if (this.seriesColors[i] != null) {
- color = this.seriesColors[i];
- }
- }
-
- if (color && this.bubbleAlpha < 1.0) {
- comps = $.jqplot.getColorComponents(color);
- color = 'rgba('+comps[0]+', '+comps[1]+', '+comps[2]+', '+this.bubbleAlpha+')';
- }
-
- if (color) {
- this.seriesColors[i] = color;
- }
- }
-
- if (!this.varyBubbleColors) {
- this.seriesColors = [this.color];
- }
-
- this.colorGenerator = new $.jqplot.ColorGenerator(this.seriesColors);
-
- // set highlight colors if none provided
- if (this.highlightColors.length == 0) {
- for (var i=0; i<this.seriesColors.length; i++){
- var rgba = $.jqplot.getColorComponents(this.seriesColors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]);
- newrgb[j] = parseInt(newrgb[j], 10);
- }
- this.highlightColors.push('rgba('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+', '+this.highlightAlpha+')');
- }
- }
-
- this.highlightColorGenerator = new $.jqplot.ColorGenerator(this.highlightColors);
-
- var sopts = {fill:true, isarc:true, angle:this.shadowAngle, alpha:this.shadowAlpha, closePath:true};
-
- this.renderer.shadowRenderer.init(sopts);
-
- this.canvas = new $.jqplot.DivCanvas();
- this.canvas._plotDimensions = this._plotDimensions;
-
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- plot.postDrawHooks.addOnce(postPlotDraw);
-
- };
-
-
- // converts the user data values to grid coordinates and stores them
- // in the gridData array.
- // Called with scope of a series.
- $.jqplot.BubbleRenderer.prototype.setGridData = function(plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var data = this._plotData;
- this.gridData = [];
- var radii = [];
- this.radii = [];
- var dim = Math.min(plot._height, plot._width);
- for (var i=0; i<this.data.length; i++) {
- if (data[i] != null) {
- this.gridData.push([xp.call(this._xaxis, data[i][0]), yp.call(this._yaxis, data[i][1]), data[i][2]]);
- this.radii.push([i, data[i][2]]);
- radii.push(data[i][2]);
- }
- }
- var r, val, maxr = this.maxRadius = arrayMax(radii);
- var l = this.gridData.length;
- if (this.autoscaleBubbles) {
- for (var i=0; i<l; i++) {
- val = radii[i]/maxr;
- r = this.autoscaleMultiplier * dim / 6;
- this.gridData[i][2] = r * val;
- }
- }
-
- this.radii.sort(function(a, b) { return b[1] - a[1]; });
- };
-
- // converts any arbitrary data values to grid coordinates and
- // returns them. This method exists so that plugins can use a series'
- // linerenderer to generate grid data points without overwriting the
- // grid data associated with that series.
- // Called with scope of a series.
- $.jqplot.BubbleRenderer.prototype.makeGridData = function(data, plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var gd = [];
- var radii = [];
- this.radii = [];
- var dim = Math.min(plot._height, plot._width);
- for (var i=0; i<data.length; i++) {
- if (data[i] != null) {
- gd.push([xp.call(this._xaxis, data[i][0]), yp.call(this._yaxis, data[i][1]), data[i][2]]);
- radii.push(data[i][2]);
- this.radii.push([i, data[i][2]]);
- }
- }
- var r, val, maxr = this.maxRadius = arrayMax(radii);
- var l = this.gridData.length;
- if (this.autoscaleBubbles) {
- for (var i=0; i<l; i++) {
- val = radii[i]/maxr;
- r = this.autoscaleMultiplier * dim / 6;
- gd[i][2] = r * val;
- }
- }
- this.radii.sort(function(a, b) { return b[1] - a[1]; });
- return gd;
- };
-
- // called with scope of series
- $.jqplot.BubbleRenderer.prototype.draw = function (ctx, gd, options) {
- if (this.plugins.pointLabels) {
- this.plugins.pointLabels.show = false;
- }
- var opts = (options != undefined) ? options : {};
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- this.canvas._elem.empty();
- for (var i=0; i<this.radii.length; i++) {
- var idx = this.radii[i][0];
- var t=null;
- var color = null;
- var el = null;
- var tel = null;
- var d = this.data[idx];
- var gd = this.gridData[idx];
- if (d[3]) {
- if (typeof(d[3]) == 'object') {
- t = d[3]['label'];
- }
- else if (typeof(d[3]) == 'string') {
- t = d[3];
- }
- }
-
- // color = (this.varyBubbleColors) ? this.colorGenerator.get(idx) : this.color;
- color = this.colorGenerator.get(idx);
-
- // If we're drawing a shadow, expand the canvas dimensions to accomodate.
- var canvasRadius = gd[2];
- var offset, depth;
- if (this.shadow) {
- offset = (0.7 + gd[2]/40).toFixed(1);
- depth = 1 + Math.ceil(gd[2]/15);
- canvasRadius += offset*depth;
- }
- this.bubbleCanvases[idx] = new $.jqplot.BubbleCanvas();
- this.canvas._elem.append(this.bubbleCanvases[idx].createElement(gd[0], gd[1], canvasRadius));
- this.bubbleCanvases[idx].setContext();
- var ctx = this.bubbleCanvases[idx]._ctx;
- var x = ctx.canvas.width/2;
- var y = ctx.canvas.height/2;
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [x, y, gd[2], 0, 2*Math.PI], {offset: offset, depth: depth});
- }
- this.bubbleCanvases[idx].draw(gd[2], color, this.bubbleGradients, this.shadowAngle/180*Math.PI);
-
- // now draw label.
- if (t && this.showLabels) {
- tel = $('<div style="position:absolute;" class="jqplot-bubble-label"></div>');
- if (this.escapeHtml) {
- tel.text(t);
- }
- else {
- tel.html(t);
- }
- this.canvas._elem.append(tel);
- var h = $(tel).outerHeight();
- var w = $(tel).outerWidth();
- var top = gd[1] - 0.5*h;
- var left = gd[0] - 0.5*w;
- tel.css({top: top, left: left});
- this.labels[idx] = $(tel);
- }
- }
- };
-
-
- $.jqplot.DivCanvas = function() {
- $.jqplot.ElemContainer.call(this);
- this._ctx;
- };
-
- $.jqplot.DivCanvas.prototype = new $.jqplot.ElemContainer();
- $.jqplot.DivCanvas.prototype.constructor = $.jqplot.DivCanvas;
-
- $.jqplot.DivCanvas.prototype.createElement = function(offsets, clss, plotDimensions) {
- this._offsets = offsets;
- var klass = 'jqplot-DivCanvas';
- if (clss != undefined) {
- klass = clss;
- }
- var elem;
- // if this canvas already has a dom element, don't make a new one.
- if (this._elem) {
- elem = this._elem.get(0);
- }
- else {
- elem = document.createElement('div');
- }
- // if new plotDimensions supplied, use them.
- if (plotDimensions != undefined) {
- this._plotDimensions = plotDimensions;
- }
-
- var w = this._plotDimensions.width - this._offsets.left - this._offsets.right + 'px';
- var h = this._plotDimensions.height - this._offsets.top - this._offsets.bottom + 'px';
- this._elem = $(elem);
- this._elem.css({ position: 'absolute', width:w, height:h, left: this._offsets.left, top: this._offsets.top });
-
- this._elem.addClass(klass);
- return this._elem;
- };
-
- $.jqplot.DivCanvas.prototype.setContext = function() {
- this._ctx = {
- canvas:{
- width:0,
- height:0
- },
- clearRect:function(){return null;}
- };
- return this._ctx;
- };
-
- $.jqplot.BubbleCanvas = function() {
- $.jqplot.ElemContainer.call(this);
- this._ctx;
- };
-
- $.jqplot.BubbleCanvas.prototype = new $.jqplot.ElemContainer();
- $.jqplot.BubbleCanvas.prototype.constructor = $.jqplot.BubbleCanvas;
-
- // initialize with the x,y pont of bubble center and the bubble radius.
- $.jqplot.BubbleCanvas.prototype.createElement = function(x, y, r) {
- var klass = 'jqplot-bubble-point';
-
- var elem;
- // if this canvas already has a dom element, don't make a new one.
- if (this._elem) {
- elem = this._elem.get(0);
- }
- else {
- elem = document.createElement('canvas');
- }
-
- elem.width = (r != null) ? 2*r : elem.width;
- elem.height = (r != null) ? 2*r : elem.height;
- this._elem = $(elem);
- var l = (x != null && r != null) ? x - r : this._elem.css('left');
- var t = (y != null && r != null) ? y - r : this._elem.css('top');
- this._elem.css({ position: 'absolute', left: l, top: t });
-
- this._elem.addClass(klass);
- if ($.jqplot.use_excanvas) {
- window.G_vmlCanvasManager.init_(document);
- elem = window.G_vmlCanvasManager.initElement(elem);
- }
-
- return this._elem;
- };
-
- $.jqplot.BubbleCanvas.prototype.draw = function(r, color, gradients, angle) {
- var ctx = this._ctx;
- // r = Math.floor(r*1.04);
- // var x = Math.round(ctx.canvas.width/2);
- // var y = Math.round(ctx.canvas.height/2);
- var x = ctx.canvas.width/2;
- var y = ctx.canvas.height/2;
- ctx.save();
- if (gradients && !$.jqplot.use_excanvas) {
- r = r*1.04;
- var comps = $.jqplot.getColorComponents(color);
- var colorinner = 'rgba('+Math.round(comps[0]+0.8*(255-comps[0]))+', '+Math.round(comps[1]+0.8*(255-comps[1]))+', '+Math.round(comps[2]+0.8*(255-comps[2]))+', '+comps[3]+')';
- var colorend = 'rgba('+comps[0]+', '+comps[1]+', '+comps[2]+', 0)';
- // var rinner = Math.round(0.35 * r);
- // var xinner = Math.round(x - Math.cos(angle) * 0.33 * r);
- // var yinner = Math.round(y - Math.sin(angle) * 0.33 * r);
- var rinner = 0.35 * r;
- var xinner = x - Math.cos(angle) * 0.33 * r;
- var yinner = y - Math.sin(angle) * 0.33 * r;
- var radgrad = ctx.createRadialGradient(xinner, yinner, rinner, x, y, r);
- radgrad.addColorStop(0, colorinner);
- radgrad.addColorStop(0.93, color);
- radgrad.addColorStop(0.96, colorend);
- radgrad.addColorStop(1, colorend);
- // radgrad.addColorStop(.98, colorend);
- ctx.fillStyle = radgrad;
- ctx.fillRect(0,0, ctx.canvas.width, ctx.canvas.height);
- }
- else {
- ctx.fillStyle = color;
- ctx.strokeStyle = color;
- ctx.lineWidth = 1;
- ctx.beginPath();
- var ang = 2*Math.PI;
- ctx.arc(x, y, r, 0, ang, 0);
- ctx.closePath();
- ctx.fill();
- }
- ctx.restore();
- };
-
- $.jqplot.BubbleCanvas.prototype.setContext = function() {
- this._ctx = this._elem.get(0).getContext("2d");
- return this._ctx;
- };
-
- $.jqplot.BubbleAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.BubbleAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.BubbleAxisRenderer.prototype.constructor = $.jqplot.BubbleAxisRenderer;
-
- // called with scope of axis object.
- $.jqplot.BubbleAxisRenderer.prototype.init = function(options){
- $.extend(true, this, options);
- var db = this._dataBounds;
- var minsidx = 0,
- minpidx = 0,
- maxsidx = 0,
- maxpidx = 0,
- maxr = 0,
- minr = 0,
- minMaxRadius = 0,
- maxMaxRadius = 0,
- maxMult = 0,
- minMult = 0;
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- var d = s._plotData;
-
- for (var j=0; j<d.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- if (d[j][0] < db.min || db.min == null) {
- db.min = d[j][0];
- minsidx=i;
- minpidx=j;
- minr = d[j][2];
- minMaxRadius = s.maxRadius;
- minMult = s.autoscaleMultiplier;
- }
- if (d[j][0] > db.max || db.max == null) {
- db.max = d[j][0];
- maxsidx=i;
- maxpidx=j;
- maxr = d[j][2];
- maxMaxRadius = s.maxRadius;
- maxMult = s.autoscaleMultiplier;
- }
- }
- else {
- if (d[j][1] < db.min || db.min == null) {
- db.min = d[j][1];
- minsidx=i;
- minpidx=j;
- minr = d[j][2];
- minMaxRadius = s.maxRadius;
- minMult = s.autoscaleMultiplier;
- }
- if (d[j][1] > db.max || db.max == null) {
- db.max = d[j][1];
- maxsidx=i;
- maxpidx=j;
- maxr = d[j][2];
- maxMaxRadius = s.maxRadius;
- maxMult = s.autoscaleMultiplier;
- }
- }
- }
- }
-
- var minRatio = minr/minMaxRadius;
- var maxRatio = maxr/maxMaxRadius;
-
- // need to estimate the effect of the radius on total axis span and adjust axis accordingly.
- var span = db.max - db.min;
- // var dim = (this.name == 'xaxis' || this.name == 'x2axis') ? this._plotDimensions.width : this._plotDimensions.height;
- var dim = Math.min(this._plotDimensions.width, this._plotDimensions.height);
-
- var minfact = minRatio * minMult/3 * span;
- var maxfact = maxRatio * maxMult/3 * span;
- db.max += maxfact;
- db.min -= minfact;
- };
-
- function highlight (plot, sidx, pidx) {
- plot.plugins.bubbleRenderer.highlightLabelCanvas.empty();
- var s = plot.series[sidx];
- var canvas = plot.plugins.bubbleRenderer.highlightCanvas;
- var ctx = canvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.bubbleRenderer.highlightedSeriesIndex = sidx;
-
- var color = s.highlightColorGenerator.get(pidx);
- var x = s.gridData[pidx][0],
- y = s.gridData[pidx][1],
- r = s.gridData[pidx][2];
- ctx.save();
- ctx.fillStyle = color;
- ctx.strokeStyle = color;
- ctx.lineWidth = 1;
- ctx.beginPath();
- ctx.arc(x, y, r, 0, 2*Math.PI, 0);
- ctx.closePath();
- ctx.fill();
- ctx.restore();
- // bring label to front
- if (s.labels[pidx]) {
- plot.plugins.bubbleRenderer.highlightLabel = s.labels[pidx].clone();
- plot.plugins.bubbleRenderer.highlightLabel.appendTo(plot.plugins.bubbleRenderer.highlightLabelCanvas);
- plot.plugins.bubbleRenderer.highlightLabel.addClass('jqplot-bubble-label-highlight');
- }
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.bubbleRenderer.highlightCanvas;
- var sidx = plot.plugins.bubbleRenderer.highlightedSeriesIndex;
- plot.plugins.bubbleRenderer.highlightLabelCanvas.empty();
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.bubbleRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- }
-
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var si = neighbor.seriesIndex;
- var pi = neighbor.pointIndex;
- var ins = [si, pi, neighbor.data, plot.series[si].gridData[pi][2]];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.bubbleRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var si = neighbor.seriesIndex;
- var pi = neighbor.pointIndex;
- var ins = [si, pi, neighbor.data, plot.series[si].gridData[pi][2]];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.bubbleRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.bubbleRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var si = neighbor.seriesIndex;
- var pi = neighbor.pointIndex;
- var ins = [si, pi, neighbor.data, plot.series[si].gridData[pi][2]];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var si = neighbor.seriesIndex;
- var pi = neighbor.pointIndex;
- var ins = [si, pi, neighbor.data, plot.series[si].gridData[pi][2]];
- var idx = plot.plugins.bubbleRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.bubbleRenderer && this.plugins.bubbleRenderer.highlightCanvas) {
- this.plugins.bubbleRenderer.highlightCanvas.resetCanvas();
- this.plugins.bubbleRenderer.highlightCanvas = null;
- }
-
- this.plugins.bubbleRenderer = {highlightedSeriesIndex:null};
- this.plugins.bubbleRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
- this.plugins.bubbleRenderer.highlightLabel = null;
- this.plugins.bubbleRenderer.highlightLabelCanvas = $('<div style="position:absolute;"></div>');
- var top = this._gridPadding.top;
- var left = this._gridPadding.left;
- var width = this._plotDimensions.width - this._gridPadding.left - this._gridPadding.right;
- var height = this._plotDimensions.height - this._gridPadding.top - this._gridPadding.bottom;
- this.plugins.bubbleRenderer.highlightLabelCanvas.css({top:top, left:left, width:width+'px', height:height+'px'});
-
- this.eventCanvas._elem.before(this.plugins.bubbleRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-bubbleRenderer-highlight-canvas', this._plotDimensions, this));
- this.eventCanvas._elem.before(this.plugins.bubbleRenderer.highlightLabelCanvas);
-
- var hctx = this.plugins.bubbleRenderer.highlightCanvas.setContext();
- }
-
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.seriesDefaults = options.seriesDefaults || {};
- // only set these if there is a Bubble series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.BubbleRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.BubbleRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.BubbleAxisRenderer;
- options.sortData = false;
- }
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.min.js
deleted file mode 100644
index 288dfafc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.bubbleRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(f){var d=function(m){return Math.max.apply(Math,m)};var j=function(m){return Math.min.apply(Math,m)};f.jqplot.BubbleRenderer=function(){f.jqplot.LineRenderer.call(this)};f.jqplot.BubbleRenderer.prototype=new f.jqplot.LineRenderer();f.jqplot.BubbleRenderer.prototype.constructor=f.jqplot.BubbleRenderer;f.jqplot.BubbleRenderer.prototype.init=function(w,t){this.varyBubbleColors=true;this.autoscaleBubbles=true;this.autoscaleMultiplier=1;this.autoscalePointsFactor=-0.07;this.escapeHtml=true;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.bubbleAlpha=1;this.highlightAlpha=null;this.bubbleGradients=false;this.showLabels=true;this.radii=[];this.maxRadius=0;this._highlightedPoint=null;this.labels=[];this.bubbleCanvases=[];this._type="bubble";if(w.highlightMouseDown&&w.highlightMouseOver==null){w.highlightMouseOver=false}f.extend(true,this,w);if(this.highlightAlpha==null){this.highlightAlpha=this.bubbleAlpha;if(this.bubbleGradients){this.highlightAlpha=0.35}}this.autoscaleMultiplier=this.autoscaleMultiplier*Math.pow(this.data.length,this.autoscalePointsFactor);this._highlightedPoint=null;var n;for(var r=0;r<this.data.length;r++){var p=null;var v=this.data[r];this.maxRadius=Math.max(this.maxRadius,v[2]);if(v[3]){if(typeof(v[3])=="object"){p=v[3]["color"]}}if(p==null){if(this.seriesColors[r]!=null){p=this.seriesColors[r]}}if(p&&this.bubbleAlpha<1){n=f.jqplot.getColorComponents(p);p="rgba("+n[0]+", "+n[1]+", "+n[2]+", "+this.bubbleAlpha+")"}if(p){this.seriesColors[r]=p}}if(!this.varyBubbleColors){this.seriesColors=[this.color]}this.colorGenerator=new f.jqplot.ColorGenerator(this.seriesColors);if(this.highlightColors.length==0){for(var r=0;r<this.seriesColors.length;r++){var o=f.jqplot.getColorComponents(this.seriesColors[r]);var u=[o[0],o[1],o[2]];var s=u[0]+u[1]+u[2];for(var q=0;q<3;q++){u[q]=(s>570)?u[q]*0.8:u[q]+0.3*(255-u[q]);u[q]=parseInt(u[q],10)}this.highlightColors.push("rgba("+u[0]+","+u[1]+","+u[2]+", "+this.highlightAlpha+")")}}this.highlightColorGenerator=new f.jqplot.ColorGenerator(this.highlightColors);var m={fill:true,isarc:true,angle:this.shadowAngle,alpha:this.shadowAlpha,closePath:true};this.renderer.shadowRenderer.init(m);this.canvas=new f.jqplot.DivCanvas();this.canvas._plotDimensions=this._plotDimensions;t.eventListenerHooks.addOnce("jqplotMouseMove",a);t.eventListenerHooks.addOnce("jqplotMouseDown",b);t.eventListenerHooks.addOnce("jqplotMouseUp",k);t.eventListenerHooks.addOnce("jqplotClick",g);t.eventListenerHooks.addOnce("jqplotRightClick",l);t.postDrawHooks.addOnce(h)};f.jqplot.BubbleRenderer.prototype.setGridData=function(w){var q=this._xaxis.series_u2p;var m=this._yaxis.series_u2p;var t=this._plotData;this.gridData=[];var s=[];this.radii=[];var v=Math.min(w._height,w._width);for(var u=0;u<this.data.length;u++){if(t[u]!=null){this.gridData.push([q.call(this._xaxis,t[u][0]),m.call(this._yaxis,t[u][1]),t[u][2]]);this.radii.push([u,t[u][2]]);s.push(t[u][2])}}var n,o,x=this.maxRadius=d(s);var p=this.gridData.length;if(this.autoscaleBubbles){for(var u=0;u<p;u++){o=s[u]/x;n=this.autoscaleMultiplier*v/6;this.gridData[u][2]=n*o}}this.radii.sort(function(y,r){return r[1]-y[1]})};f.jqplot.BubbleRenderer.prototype.makeGridData=function(t,w){var q=this._xaxis.series_u2p;var n=this._yaxis.series_u2p;var x=[];var s=[];this.radii=[];var v=Math.min(w._height,w._width);for(var u=0;u<t.length;u++){if(t[u]!=null){x.push([q.call(this._xaxis,t[u][0]),n.call(this._yaxis,t[u][1]),t[u][2]]);s.push(t[u][2]);this.radii.push([u,t[u][2]])}}var m,o,y=this.maxRadius=d(s);var p=this.gridData.length;if(this.autoscaleBubbles){for(var u=0;u<p;u++){o=s[u]/y;m=this.autoscaleMultiplier*v/6;x[u][2]=m*o}}this.radii.sort(function(z,r){return r[1]-z[1]});return x};f.jqplot.BubbleRenderer.prototype.draw=function(D,J,n){if(this.plugins.pointLabels){this.plugins.pointLabels.show=false}var A=(n!=undefined)?n:{};var r=(A.shadow!=undefined)?A.shadow:this.shadow;this.canvas._elem.empty();for(var G=0;G<this.radii.length;G++){var C=this.radii[G][0];var z=null;var F=null;var m=null;var p=null;var I=this.data[C];var J=this.gridData[C];if(I[3]){if(typeof(I[3])=="object"){z=I[3]["label"]}else{if(typeof(I[3])=="string"){z=I[3]}}}F=this.colorGenerator.get(C);var E=J[2];var q,K;if(this.shadow){q=(0.7+J[2]/40).toFixed(1);K=1+Math.ceil(J[2]/15);E+=q*K}this.bubbleCanvases[C]=new f.jqplot.BubbleCanvas();this.canvas._elem.append(this.bubbleCanvases[C].createElement(J[0],J[1],E));this.bubbleCanvases[C].setContext();var D=this.bubbleCanvases[C]._ctx;var u=D.canvas.width/2;var s=D.canvas.height/2;if(this.shadow){this.renderer.shadowRenderer.draw(D,[u,s,J[2],0,2*Math.PI],{offset:q,depth:K})}this.bubbleCanvases[C].draw(J[2],F,this.bubbleGradients,this.shadowAngle/180*Math.PI);if(z&&this.showLabels){p=f('<div style="position:absolute;" class="jqplot-bubble-label"></div>');if(this.escapeHtml){p.text(z)}else{p.html(z)}this.canvas._elem.append(p);var H=f(p).outerHeight();var v=f(p).outerWidth();var B=J[1]-0.5*H;var o=J[0]-0.5*v;p.css({top:B,left:o});this.labels[C]=f(p)}}};f.jqplot.DivCanvas=function(){f.jqplot.ElemContainer.call(this);this._ctx};f.jqplot.DivCanvas.prototype=new f.jqplot.ElemContainer();f.jqplot.DivCanvas.prototype.constructor=f.jqplot.DivCanvas;f.jqplot.DivCanvas.prototype.createElement=function(s,p,n){this._offsets=s;var m="jqplot-DivCanvas";if(p!=undefined){m=p}var r;if(this._elem){r=this._elem.get(0)}else{r=document.createElement("div")}if(n!=undefined){this._plotDimensions=n}var o=this._plotDimensions.width-this._offsets.left-this._offsets.right+"px";var q=this._plotDimensions.height-this._offsets.top-this._offsets.bottom+"px";this._elem=f(r);this._elem.css({position:"absolute",width:o,height:q,left:this._offsets.left,top:this._offsets.top});this._elem.addClass(m);return this._elem};f.jqplot.DivCanvas.prototype.setContext=function(){this._ctx={canvas:{width:0,height:0},clearRect:function(){return null}};return this._ctx};f.jqplot.BubbleCanvas=function(){f.jqplot.ElemContainer.call(this);this._ctx};f.jqplot.BubbleCanvas.prototype=new f.jqplot.ElemContainer();f.jqplot.BubbleCanvas.prototype.constructor=f.jqplot.BubbleCanvas;f.jqplot.BubbleCanvas.prototype.createElement=function(n,u,s){var m="jqplot-bubble-point";var q;if(this._elem){q=this._elem.get(0)}else{q=document.createElement("canvas")}q.width=(s!=null)?2*s:q.width;q.height=(s!=null)?2*s:q.height;this._elem=f(q);var o=(n!=null&&s!=null)?n-s:this._elem.css("left");var p=(u!=null&&s!=null)?u-s:this._elem.css("top");this._elem.css({position:"absolute",left:o,top:p});this._elem.addClass(m);if(f.jqplot.use_excanvas){window.G_vmlCanvasManager.init_(document);q=window.G_vmlCanvasManager.initElement(q)}return this._elem};f.jqplot.BubbleCanvas.prototype.draw=function(m,s,v,p){var D=this._ctx;var B=D.canvas.width/2;var z=D.canvas.height/2;D.save();if(v&&!f.jqplot.use_excanvas){m=m*1.04;var o=f.jqplot.getColorComponents(s);var u="rgba("+Math.round(o[0]+0.8*(255-o[0]))+", "+Math.round(o[1]+0.8*(255-o[1]))+", "+Math.round(o[2]+0.8*(255-o[2]))+", "+o[3]+")";var t="rgba("+o[0]+", "+o[1]+", "+o[2]+", 0)";var C=0.35*m;var A=B-Math.cos(p)*0.33*m;var n=z-Math.sin(p)*0.33*m;var w=D.createRadialGradient(A,n,C,B,z,m);w.addColorStop(0,u);w.addColorStop(0.93,s);w.addColorStop(0.96,t);w.addColorStop(1,t);D.fillStyle=w;D.fillRect(0,0,D.canvas.width,D.canvas.height)}else{D.fillStyle=s;D.strokeStyle=s;D.lineWidth=1;D.beginPath();var q=2*Math.PI;D.arc(B,z,m,0,q,0);D.closePath();D.fill()}D.restore()};f.jqplot.BubbleCanvas.prototype.setContext=function(){this._ctx=this._elem.get(0).getContext("2d");return this._ctx};f.jqplot.BubbleAxisRenderer=function(){f.jqplot.LinearAxisRenderer.call(this)};f.jqplot.BubbleAxisRenderer.prototype=new f.jqplot.LinearAxisRenderer();f.jqplot.BubbleAxisRenderer.prototype.constructor=f.jqplot.BubbleAxisRenderer;f.jqplot.BubbleAxisRenderer.prototype.init=function(n){f.extend(true,this,n);var I=this._dataBounds;var H=0,v=0,m=0,y=0,q=0,r=0,D=0,t=0,F=0,z=0;for(var E=0;E<this._series.length;E++){var x=this._series[E];var G=x._plotData;for(var B=0;B<G.length;B++){if(this.name=="xaxis"||this.name=="x2axis"){if(G[B][0]<I.min||I.min==null){I.min=G[B][0];H=E;v=B;r=G[B][2];D=x.maxRadius;z=x.autoscaleMultiplier}if(G[B][0]>I.max||I.max==null){I.max=G[B][0];m=E;y=B;q=G[B][2];t=x.maxRadius;F=x.autoscaleMultiplier}}else{if(G[B][1]<I.min||I.min==null){I.min=G[B][1];H=E;v=B;r=G[B][2];D=x.maxRadius;z=x.autoscaleMultiplier}if(G[B][1]>I.max||I.max==null){I.max=G[B][1];m=E;y=B;q=G[B][2];t=x.maxRadius;F=x.autoscaleMultiplier}}}}var o=r/D;var w=q/t;var C=I.max-I.min;var A=Math.min(this._plotDimensions.width,this._plotDimensions.height);var p=o*z/3*C;var u=w*F/3*C;I.max+=u;I.min-=p};function e(p,v,q){p.plugins.bubbleRenderer.highlightLabelCanvas.empty();var z=p.series[v];var n=p.plugins.bubbleRenderer.highlightCanvas;var w=n._ctx;w.clearRect(0,0,w.canvas.width,w.canvas.height);z._highlightedPoint=q;p.plugins.bubbleRenderer.highlightedSeriesIndex=v;var o=z.highlightColorGenerator.get(q);var u=z.gridData[q][0],t=z.gridData[q][1],m=z.gridData[q][2];w.save();w.fillStyle=o;w.strokeStyle=o;w.lineWidth=1;w.beginPath();w.arc(u,t,m,0,2*Math.PI,0);w.closePath();w.fill();w.restore();if(z.labels[q]){p.plugins.bubbleRenderer.highlightLabel=z.labels[q].clone();p.plugins.bubbleRenderer.highlightLabel.appendTo(p.plugins.bubbleRenderer.highlightLabelCanvas);p.plugins.bubbleRenderer.highlightLabel.addClass("jqplot-bubble-label-highlight")}}function i(p){var m=p.plugins.bubbleRenderer.highlightCanvas;var o=p.plugins.bubbleRenderer.highlightedSeriesIndex;p.plugins.bubbleRenderer.highlightLabelCanvas.empty();m._ctx.clearRect(0,0,m._ctx.canvas.width,m._ctx.canvas.height);for(var n=0;n<p.series.length;n++){p.series[n]._highlightedPoint=null}p.plugins.bubbleRenderer.highlightedSeriesIndex=null;p.target.trigger("jqplotDataUnhighlight")}function a(s,p,m,v,r){if(v){var n=v.seriesIndex;var o=v.pointIndex;var q=[n,o,v.data,r.series[n].gridData[o][2]];var t=jQuery.Event("jqplotDataMouseOver");t.pageX=s.pageX;t.pageY=s.pageY;r.target.trigger(t,q);if(r.series[q[0]].highlightMouseOver&&!(q[0]==r.plugins.bubbleRenderer.highlightedSeriesIndex&&q[1]==r.series[q[0]]._highlightedPoint)){var u=jQuery.Event("jqplotDataHighlight");u.which=s.which;u.pageX=s.pageX;u.pageY=s.pageY;r.target.trigger(u,q);e(r,q[0],q[1])}}else{if(v==null){i(r)}}}function b(s,p,m,u,r){if(u){var n=u.seriesIndex;var o=u.pointIndex;var q=[n,o,u.data,r.series[n].gridData[o][2]];if(r.series[q[0]].highlightMouseDown&&!(q[0]==r.plugins.bubbleRenderer.highlightedSeriesIndex&&q[1]==r.series[q[0]]._highlightedPoint)){var t=jQuery.Event("jqplotDataHighlight");t.which=s.which;t.pageX=s.pageX;t.pageY=s.pageY;r.target.trigger(t,q);e(r,q[0],q[1])}}else{if(u==null){i(r)}}}function k(o,n,r,q,p){var m=p.plugins.bubbleRenderer.highlightedSeriesIndex;if(m!=null&&p.series[m].highlightMouseDown){i(p)}}function g(s,p,m,u,r){if(u){var n=u.seriesIndex;var o=u.pointIndex;var q=[n,o,u.data,r.series[n].gridData[o][2]];var t=jQuery.Event("jqplotDataClick");t.which=s.which;t.pageX=s.pageX;t.pageY=s.pageY;r.target.trigger(t,q)}}function l(s,p,m,v,r){if(v){var n=v.seriesIndex;var o=v.pointIndex;var q=[n,o,v.data,r.series[n].gridData[o][2]];var t=r.plugins.bubbleRenderer.highlightedSeriesIndex;if(t!=null&&r.series[t].highlightMouseDown){i(r)}var u=jQuery.Event("jqplotDataRightClick");u.which=s.which;u.pageX=s.pageX;u.pageY=s.pageY;r.target.trigger(u,q)}}function h(){if(this.plugins.bubbleRenderer&&this.plugins.bubbleRenderer.highlightCanvas){this.plugins.bubbleRenderer.highlightCanvas.resetCanvas();this.plugins.bubbleRenderer.highlightCanvas=null}this.plugins.bubbleRenderer={highlightedSeriesIndex:null};this.plugins.bubbleRenderer.highlightCanvas=new f.jqplot.GenericCanvas();this.plugins.bubbleRenderer.highlightLabel=null;this.plugins.bubbleRenderer.highlightLabelCanvas=f('<div style="position:absolute;"></div>');var q=this._gridPadding.top;var p=this._gridPadding.left;var n=this._plotDimensions.width-this._gridPadding.left-this._gridPadding.right;var m=this._plotDimensions.height-this._gridPadding.top-this._gridPadding.bottom;this.plugins.bubbleRenderer.highlightLabelCanvas.css({top:q,left:p,width:n+"px",height:m+"px"});this.eventCanvas._elem.before(this.plugins.bubbleRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-bubbleRenderer-highlight-canvas",this._plotDimensions,this));this.eventCanvas._elem.before(this.plugins.bubbleRenderer.highlightLabelCanvas);var o=this.plugins.bubbleRenderer.highlightCanvas.setContext()}function c(q,p,n){n=n||{};n.axesDefaults=n.axesDefaults||{};n.seriesDefaults=n.seriesDefaults||{};var m=false;if(n.seriesDefaults.renderer==f.jqplot.BubbleRenderer){m=true}else{if(n.series){for(var o=0;o<n.series.length;o++){if(n.series[o].renderer==f.jqplot.BubbleRenderer){m=true}}}}if(m){n.axesDefaults.renderer=f.jqplot.BubbleAxisRenderer;n.sortData=false}}f.jqplot.preInitHooks.push(c)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js
deleted file mode 100644
index 22f0bb79..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js
+++ /dev/null
@@ -1,203 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.CanvasAxisLabelRenderer
- * Renderer to draw axis labels with a canvas element to support advanced
- * featrues such as rotated text. This renderer uses a separate rendering engine
- * to draw the text on the canvas. Two modes of rendering the text are available.
- * If the browser has native font support for canvas fonts (currently Mozila 3.5
- * and Safari 4), you can enable text rendering with the canvas fillText method.
- * You do so by setting the "enableFontSupport" option to true.
- *
- * Browsers lacking native font support will have the text drawn on the canvas
- * using the Hershey font metrics. Even if the "enableFontSupport" option is true
- * non-supporting browsers will still render with the Hershey font.
- *
- */
- $.jqplot.CanvasAxisLabelRenderer = function(options) {
- // Group: Properties
-
- // prop: angle
- // angle of text, measured clockwise from x axis.
- this.angle = 0;
- // name of the axis associated with this tick
- this.axis;
- // prop: show
- // wether or not to show the tick (mark and label).
- this.show = true;
- // prop: showLabel
- // wether or not to show the label.
- this.showLabel = true;
- // prop: label
- // label for the axis.
- this.label = '';
- // prop: fontFamily
- // CSS spec for the font-family css attribute.
- // Applies only to browsers supporting native font rendering in the
- // canvas tag. Currently Mozilla 3.5 and Safari 4.
- this.fontFamily = '"Trebuchet MS", Arial, Helvetica, sans-serif';
- // prop: fontSize
- // CSS spec for font size.
- this.fontSize = '11pt';
- // prop: fontWeight
- // CSS spec for fontWeight: normal, bold, bolder, lighter or a number 100 - 900
- this.fontWeight = 'normal';
- // prop: fontStretch
- // Multiplier to condense or expand font width.
- // Applies only to browsers which don't support canvas native font rendering.
- this.fontStretch = 1.0;
- // prop: textColor
- // css spec for the color attribute.
- this.textColor = '#666666';
- // prop: enableFontSupport
- // true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+.
- // If true, label will be drawn with canvas tag native support for fonts.
- // If false, label will be drawn with Hershey font metrics.
- this.enableFontSupport = true;
- // prop: pt2px
- // Point to pixel scaling factor, used for computing height of bounding box
- // around a label. The labels text renderer has a default setting of 1.4, which
- // should be suitable for most fonts. Leave as null to use default. If tops of
- // letters appear clipped, increase this. If bounding box seems too big, decrease.
- // This is an issue only with the native font renderering capabilities of Mozilla
- // 3.5 and Safari 4 since they do not provide a method to determine the font height.
- this.pt2px = null;
-
- this._elem;
- this._ctx;
- this._plotWidth;
- this._plotHeight;
- this._plotDimensions = {height:null, width:null};
-
- $.extend(true, this, options);
-
- if (options.angle == null && this.axis != 'xaxis' && this.axis != 'x2axis') {
- this.angle = -90;
- }
-
- var ropts = {fontSize:this.fontSize, fontWeight:this.fontWeight, fontStretch:this.fontStretch, fillStyle:this.textColor, angle:this.getAngleRad(), fontFamily:this.fontFamily};
- if (this.pt2px) {
- ropts.pt2px = this.pt2px;
- }
-
- if (this.enableFontSupport) {
- if ($.jqplot.support_canvas_text()) {
- this._textRenderer = new $.jqplot.CanvasFontRenderer(ropts);
- }
-
- else {
- this._textRenderer = new $.jqplot.CanvasTextRenderer(ropts);
- }
- }
- else {
- this._textRenderer = new $.jqplot.CanvasTextRenderer(ropts);
- }
- };
-
- $.jqplot.CanvasAxisLabelRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- this._textRenderer.init({fontSize:this.fontSize, fontWeight:this.fontWeight, fontStretch:this.fontStretch, fillStyle:this.textColor, angle:this.getAngleRad(), fontFamily:this.fontFamily});
- };
-
- // return width along the x axis
- // will check first to see if an element exists.
- // if not, will return the computed text box width.
- $.jqplot.CanvasAxisLabelRenderer.prototype.getWidth = function(ctx) {
- if (this._elem) {
- return this._elem.outerWidth(true);
- }
- else {
- var tr = this._textRenderer;
- var l = tr.getWidth(ctx);
- var h = tr.getHeight(ctx);
- var w = Math.abs(Math.sin(tr.angle)*h) + Math.abs(Math.cos(tr.angle)*l);
- return w;
- }
- };
-
- // return height along the y axis.
- $.jqplot.CanvasAxisLabelRenderer.prototype.getHeight = function(ctx) {
- if (this._elem) {
- return this._elem.outerHeight(true);
- }
- else {
- var tr = this._textRenderer;
- var l = tr.getWidth(ctx);
- var h = tr.getHeight(ctx);
- var w = Math.abs(Math.cos(tr.angle)*h) + Math.abs(Math.sin(tr.angle)*l);
- return w;
- }
- };
-
- $.jqplot.CanvasAxisLabelRenderer.prototype.getAngleRad = function() {
- var a = this.angle * Math.PI/180;
- return a;
- };
-
- $.jqplot.CanvasAxisLabelRenderer.prototype.draw = function(ctx, plot) {
- // Memory Leaks patch
- if (this._elem) {
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- window.G_vmlCanvasManager.uninitElement(this._elem.get(0));
- }
-
- this._elem.emptyForce();
- this._elem = null;
- }
-
- // create a canvas here, but can't draw on it untill it is appended
- // to dom for IE compatability.
- var elem = plot.canvasManager.getCanvas();
-
- this._textRenderer.setText(this.label, ctx);
- var w = this.getWidth(ctx);
- var h = this.getHeight(ctx);
- elem.width = w;
- elem.height = h;
- elem.style.width = w;
- elem.style.height = h;
-
- elem = plot.canvasManager.initCanvas(elem);
-
- this._elem = $(elem);
- this._elem.css({ position: 'absolute'});
- this._elem.addClass('jqplot-'+this.axis+'-label');
-
- elem = null;
- return this._elem;
- };
-
- $.jqplot.CanvasAxisLabelRenderer.prototype.pack = function() {
- this._textRenderer.draw(this._elem.get(0).getContext("2d"), this.label);
- };
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js
deleted file mode 100644
index dee778f9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.CanvasAxisLabelRenderer=function(b){this.angle=0;this.axis;this.show=true;this.showLabel=true;this.label="";this.fontFamily='"Trebuchet MS", Arial, Helvetica, sans-serif';this.fontSize="11pt";this.fontWeight="normal";this.fontStretch=1;this.textColor="#666666";this.enableFontSupport=true;this.pt2px=null;this._elem;this._ctx;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null};a.extend(true,this,b);if(b.angle==null&&this.axis!="xaxis"&&this.axis!="x2axis"){this.angle=-90}var c={fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily};if(this.pt2px){c.pt2px=this.pt2px}if(this.enableFontSupport){if(a.jqplot.support_canvas_text()){this._textRenderer=new a.jqplot.CanvasFontRenderer(c)}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}};a.jqplot.CanvasAxisLabelRenderer.prototype.init=function(b){a.extend(true,this,b);this._textRenderer.init({fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily})};a.jqplot.CanvasAxisLabelRenderer.prototype.getWidth=function(d){if(this._elem){return this._elem.outerWidth(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.sin(f.angle)*e)+Math.abs(Math.cos(f.angle)*c);return b}};a.jqplot.CanvasAxisLabelRenderer.prototype.getHeight=function(d){if(this._elem){return this._elem.outerHeight(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.cos(f.angle)*e)+Math.abs(Math.sin(f.angle)*c);return b}};a.jqplot.CanvasAxisLabelRenderer.prototype.getAngleRad=function(){var b=this.angle*Math.PI/180;return b};a.jqplot.CanvasAxisLabelRenderer.prototype.draw=function(c,f){if(this._elem){if(a.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==undefined){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce();this._elem=null}var e=f.canvasManager.getCanvas();this._textRenderer.setText(this.label,c);var b=this.getWidth(c);var d=this.getHeight(c);e.width=b;e.height=d;e.style.width=b;e.style.height=d;e=f.canvasManager.initCanvas(e);this._elem=a(e);this._elem.css({position:"absolute"});this._elem.addClass("jqplot-"+this.axis+"-label");e=null;return this._elem};a.jqplot.CanvasAxisLabelRenderer.prototype.pack=function(){this._textRenderer.draw(this._elem.get(0).getContext("2d"),this.label)}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.js
deleted file mode 100644
index bb1731d6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.js
+++ /dev/null
@@ -1,243 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.CanvasAxisTickRenderer
- * Renderer to draw axis ticks with a canvas element to support advanced
- * featrues such as rotated text. This renderer uses a separate rendering engine
- * to draw the text on the canvas. Two modes of rendering the text are available.
- * If the browser has native font support for canvas fonts (currently Mozila 3.5
- * and Safari 4), you can enable text rendering with the canvas fillText method.
- * You do so by setting the "enableFontSupport" option to true.
- *
- * Browsers lacking native font support will have the text drawn on the canvas
- * using the Hershey font metrics. Even if the "enableFontSupport" option is true
- * non-supporting browsers will still render with the Hershey font.
- */
- $.jqplot.CanvasAxisTickRenderer = function(options) {
- // Group: Properties
-
- // prop: mark
- // tick mark on the axis. One of 'inside', 'outside', 'cross', '' or null.
- this.mark = 'outside';
- // prop: showMark
- // wether or not to show the mark on the axis.
- this.showMark = true;
- // prop: showGridline
- // wether or not to draw the gridline on the grid at this tick.
- this.showGridline = true;
- // prop: isMinorTick
- // if this is a minor tick.
- this.isMinorTick = false;
- // prop: angle
- // angle of text, measured clockwise from x axis.
- this.angle = 0;
- // prop: markSize
- // Length of the tick marks in pixels. For 'cross' style, length
- // will be stoked above and below axis, so total length will be twice this.
- this.markSize = 4;
- // prop: show
- // wether or not to show the tick (mark and label).
- this.show = true;
- // prop: showLabel
- // wether or not to show the label.
- this.showLabel = true;
- // prop: labelPosition
- // 'auto', 'start', 'middle' or 'end'.
- // Whether tick label should be positioned so the start, middle, or end
- // of the tick mark.
- this.labelPosition = 'auto';
- this.label = '';
- this.value = null;
- this._styles = {};
- // prop: formatter
- // A class of a formatter for the tick text.
- // The default $.jqplot.DefaultTickFormatter uses sprintf.
- this.formatter = $.jqplot.DefaultTickFormatter;
- // prop: formatString
- // string passed to the formatter.
- this.formatString = '';
- // prop: prefix
- // String to prepend to the tick label.
- // Prefix is prepended to the formatted tick label.
- this.prefix = '';
- // prop: fontFamily
- // css spec for the font-family css attribute.
- this.fontFamily = '"Trebuchet MS", Arial, Helvetica, sans-serif';
- // prop: fontSize
- // CSS spec for font size.
- this.fontSize = '10pt';
- // prop: fontWeight
- // CSS spec for fontWeight
- this.fontWeight = 'normal';
- // prop: fontStretch
- // Multiplier to condense or expand font width.
- // Applies only to browsers which don't support canvas native font rendering.
- this.fontStretch = 1.0;
- // prop: textColor
- // css spec for the color attribute.
- this.textColor = '#666666';
- // prop: enableFontSupport
- // true to turn on native canvas font support in Mozilla 3.5+ and Safari 4+.
- // If true, tick label will be drawn with canvas tag native support for fonts.
- // If false, tick label will be drawn with Hershey font metrics.
- this.enableFontSupport = true;
- // prop: pt2px
- // Point to pixel scaling factor, used for computing height of bounding box
- // around a label. The labels text renderer has a default setting of 1.4, which
- // should be suitable for most fonts. Leave as null to use default. If tops of
- // letters appear clipped, increase this. If bounding box seems too big, decrease.
- // This is an issue only with the native font renderering capabilities of Mozilla
- // 3.5 and Safari 4 since they do not provide a method to determine the font height.
- this.pt2px = null;
-
- this._elem;
- this._ctx;
- this._plotWidth;
- this._plotHeight;
- this._plotDimensions = {height:null, width:null};
-
- $.extend(true, this, options);
-
- var ropts = {fontSize:this.fontSize, fontWeight:this.fontWeight, fontStretch:this.fontStretch, fillStyle:this.textColor, angle:this.getAngleRad(), fontFamily:this.fontFamily};
- if (this.pt2px) {
- ropts.pt2px = this.pt2px;
- }
-
- if (this.enableFontSupport) {
- if ($.jqplot.support_canvas_text()) {
- this._textRenderer = new $.jqplot.CanvasFontRenderer(ropts);
- }
-
- else {
- this._textRenderer = new $.jqplot.CanvasTextRenderer(ropts);
- }
- }
- else {
- this._textRenderer = new $.jqplot.CanvasTextRenderer(ropts);
- }
- };
-
- $.jqplot.CanvasAxisTickRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- this._textRenderer.init({fontSize:this.fontSize, fontWeight:this.fontWeight, fontStretch:this.fontStretch, fillStyle:this.textColor, angle:this.getAngleRad(), fontFamily:this.fontFamily});
- };
-
- // return width along the x axis
- // will check first to see if an element exists.
- // if not, will return the computed text box width.
- $.jqplot.CanvasAxisTickRenderer.prototype.getWidth = function(ctx) {
- if (this._elem) {
- return this._elem.outerWidth(true);
- }
- else {
- var tr = this._textRenderer;
- var l = tr.getWidth(ctx);
- var h = tr.getHeight(ctx);
- var w = Math.abs(Math.sin(tr.angle)*h) + Math.abs(Math.cos(tr.angle)*l);
- return w;
- }
- };
-
- // return height along the y axis.
- $.jqplot.CanvasAxisTickRenderer.prototype.getHeight = function(ctx) {
- if (this._elem) {
- return this._elem.outerHeight(true);
- }
- else {
- var tr = this._textRenderer;
- var l = tr.getWidth(ctx);
- var h = tr.getHeight(ctx);
- var w = Math.abs(Math.cos(tr.angle)*h) + Math.abs(Math.sin(tr.angle)*l);
- return w;
- }
- };
-
- $.jqplot.CanvasAxisTickRenderer.prototype.getAngleRad = function() {
- var a = this.angle * Math.PI/180;
- return a;
- };
-
-
- $.jqplot.CanvasAxisTickRenderer.prototype.setTick = function(value, axisName, isMinor) {
- this.value = value;
- if (isMinor) {
- this.isMinorTick = true;
- }
- return this;
- };
-
- $.jqplot.CanvasAxisTickRenderer.prototype.draw = function(ctx, plot) {
- if (!this.label) {
- this.label = this.prefix + this.formatter(this.formatString, this.value);
- }
-
- // Memory Leaks patch
- if (this._elem) {
- if ($.jqplot.use_excanvas && window.G_vmlCanvasManager.uninitElement !== undefined) {
- window.G_vmlCanvasManager.uninitElement(this._elem.get(0));
- }
-
- this._elem.emptyForce();
- this._elem = null;
- }
-
- // create a canvas here, but can't draw on it untill it is appended
- // to dom for IE compatability.
-
- var elem = plot.canvasManager.getCanvas();
-
- this._textRenderer.setText(this.label, ctx);
- var w = this.getWidth(ctx);
- var h = this.getHeight(ctx);
- // canvases seem to need to have width and heigh attributes directly set.
- elem.width = w;
- elem.height = h;
- elem.style.width = w;
- elem.style.height = h;
- elem.style.textAlign = 'left';
- elem.style.position = 'absolute';
-
- elem = plot.canvasManager.initCanvas(elem);
-
- this._elem = $(elem);
- this._elem.css(this._styles);
- this._elem.addClass('jqplot-'+this.axis+'-tick');
-
- elem = null;
- return this._elem;
- };
-
- $.jqplot.CanvasAxisTickRenderer.prototype.pack = function() {
- this._textRenderer.draw(this._elem.get(0).getContext("2d"), this.label);
- };
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js
deleted file mode 100644
index f80e02b2..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.CanvasAxisTickRenderer=function(b){this.mark="outside";this.showMark=true;this.showGridline=true;this.isMinorTick=false;this.angle=0;this.markSize=4;this.show=true;this.showLabel=true;this.labelPosition="auto";this.label="";this.value=null;this._styles={};this.formatter=a.jqplot.DefaultTickFormatter;this.formatString="";this.prefix="";this.fontFamily='"Trebuchet MS", Arial, Helvetica, sans-serif';this.fontSize="10pt";this.fontWeight="normal";this.fontStretch=1;this.textColor="#666666";this.enableFontSupport=true;this.pt2px=null;this._elem;this._ctx;this._plotWidth;this._plotHeight;this._plotDimensions={height:null,width:null};a.extend(true,this,b);var c={fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily};if(this.pt2px){c.pt2px=this.pt2px}if(this.enableFontSupport){if(a.jqplot.support_canvas_text()){this._textRenderer=new a.jqplot.CanvasFontRenderer(c)}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}}else{this._textRenderer=new a.jqplot.CanvasTextRenderer(c)}};a.jqplot.CanvasAxisTickRenderer.prototype.init=function(b){a.extend(true,this,b);this._textRenderer.init({fontSize:this.fontSize,fontWeight:this.fontWeight,fontStretch:this.fontStretch,fillStyle:this.textColor,angle:this.getAngleRad(),fontFamily:this.fontFamily})};a.jqplot.CanvasAxisTickRenderer.prototype.getWidth=function(d){if(this._elem){return this._elem.outerWidth(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.sin(f.angle)*e)+Math.abs(Math.cos(f.angle)*c);return b}};a.jqplot.CanvasAxisTickRenderer.prototype.getHeight=function(d){if(this._elem){return this._elem.outerHeight(true)}else{var f=this._textRenderer;var c=f.getWidth(d);var e=f.getHeight(d);var b=Math.abs(Math.cos(f.angle)*e)+Math.abs(Math.sin(f.angle)*c);return b}};a.jqplot.CanvasAxisTickRenderer.prototype.getAngleRad=function(){var b=this.angle*Math.PI/180;return b};a.jqplot.CanvasAxisTickRenderer.prototype.setTick=function(b,d,c){this.value=b;if(c){this.isMinorTick=true}return this};a.jqplot.CanvasAxisTickRenderer.prototype.draw=function(c,f){if(!this.label){this.label=this.prefix+this.formatter(this.formatString,this.value)}if(this._elem){if(a.jqplot.use_excanvas&&window.G_vmlCanvasManager.uninitElement!==undefined){window.G_vmlCanvasManager.uninitElement(this._elem.get(0))}this._elem.emptyForce();this._elem=null}var e=f.canvasManager.getCanvas();this._textRenderer.setText(this.label,c);var b=this.getWidth(c);var d=this.getHeight(c);e.width=b;e.height=d;e.style.width=b;e.style.height=d;e.style.textAlign="left";e.style.position="absolute";e=f.canvasManager.initCanvas(e);this._elem=a(e);this._elem.css(this._styles);this._elem.addClass("jqplot-"+this.axis+"-tick");e=null;return this._elem};a.jqplot.CanvasAxisTickRenderer.prototype.pack=function(){this._textRenderer.draw(this._elem.get(0).getContext("2d"),this.label)}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.js
deleted file mode 100644
index bc72bc5a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.js
+++ /dev/null
@@ -1,865 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- var objCounter = 0;
- // class: $.jqplot.CanvasOverlay
- $.jqplot.CanvasOverlay = function(opts){
- var options = opts || {};
- this.options = {
- show: $.jqplot.config.enablePlugins,
- deferDraw: false
- };
- // prop: objects
- this.objects = [];
- this.objectNames = [];
- this.canvas = null;
- this.markerRenderer = new $.jqplot.MarkerRenderer({style:'line'});
- this.markerRenderer.init();
- this.highlightObjectIndex = null;
- if (options.objects) {
- var objs = options.objects,
- obj;
- for (var i=0; i<objs.length; i++) {
- obj = objs[i];
- for (var n in obj) {
- switch (n) {
- case 'line':
- this.addLine(obj[n]);
- break;
- case 'horizontalLine':
- this.addHorizontalLine(obj[n]);
- break;
- case 'dashedHorizontalLine':
- this.addDashedHorizontalLine(obj[n]);
- break;
- case 'verticalLine':
- this.addVerticalLine(obj[n]);
- break;
- case 'dashedVerticalLine':
- this.addDashedVerticalLine(obj[n]);
- break;
- default:
- break;
- }
- }
- }
- }
- $.extend(true, this.options, options);
- };
-
- // called with scope of a plot object
- $.jqplot.CanvasOverlay.postPlotInit = function (target, data, opts) {
- var options = opts || {};
- // add a canvasOverlay attribute to the plot
- this.plugins.canvasOverlay = new $.jqplot.CanvasOverlay(options.canvasOverlay);
- };
-
-
- function LineBase() {
- this.uid = null;
- this.type = null;
- this.gridStart = null;
- this.gridStop = null;
- this.tooltipWidthFactor = 0;
- this.options = {
- // prop: name
- // Optional name for the overlay object.
- // Can be later used to retrieve the object by name.
- name: null,
- // prop: show
- // true to show (draw), false to not draw.
- show: true,
- // prop: lineWidth
- // Width of the line.
- lineWidth: 2,
- // prop: lineCap
- // Type of ending placed on the line ['round', 'butt', 'square']
- lineCap: 'round',
- // prop: color
- // color of the line
- color: '#666666',
- // prop: shadow
- // wether or not to draw a shadow on the line
- shadow: true,
- // prop: shadowAngle
- // Shadow angle in degrees
- shadowAngle: 45,
- // prop: shadowOffset
- // Shadow offset from line in pixels
- shadowOffset: 1,
- // prop: shadowDepth
- // Number of times shadow is stroked, each stroke offset shadowOffset from the last.
- shadowDepth: 3,
- // prop: shadowAlpha
- // Alpha channel transparency of shadow. 0 = transparent.
- shadowAlpha: '0.07',
- // prop: xaxis
- // X axis to use for positioning/scaling the line.
- xaxis: 'xaxis',
- // prop: yaxis
- // Y axis to use for positioning/scaling the line.
- yaxis: 'yaxis',
- // prop: showTooltip
- // Show a tooltip with data point values.
- showTooltip: false,
- // prop: showTooltipPrecision
- // Controls how close to line cursor must be to show tooltip.
- // Higher number = closer to line, lower number = farther from line.
- // 1.0 = cursor must be over line.
- showTooltipPrecision: 0.6,
- // prop: tooltipLocation
- // Where to position tooltip, 'n', 'ne', 'e', 'se', 's', 'sw', 'w', 'nw'
- tooltipLocation: 'nw',
- // prop: fadeTooltip
- // true = fade in/out tooltip, flase = show/hide tooltip
- fadeTooltip: true,
- // prop: tooltipFadeSpeed
- // 'slow', 'def', 'fast', or number of milliseconds.
- tooltipFadeSpeed: "fast",
- // prop: tooltipOffset
- // Pixel offset of tooltip from the highlight.
- tooltipOffset: 4,
- // prop: tooltipFormatString
- // Format string passed the x and y values of the cursor on the line.
- // e.g., 'Dogs: %.2f, Cats: %d'.
- tooltipFormatString: '%d, %d'
- };
- }
-
- /**
- * Class: Line
- * A straight line.
- */
- function Line(options) {
- LineBase.call(this);
- this.type = 'line';
- var opts = {
- // prop: start
- // [x, y] coordinates for the start of the line.
- start: [],
- // prop: stop
- // [x, y] coordinates for the end of the line.
- stop: []
- };
- $.extend(true, this.options, opts, options);
-
- if (this.options.showTooltipPrecision < 0.01) {
- this.options.showTooltipPrecision = 0.01;
- }
- }
-
- Line.prototype = new LineBase();
- Line.prototype.constructor = Line;
-
-
- /**
- * Class: HorizontalLine
- * A straight horizontal line.
- */
- function HorizontalLine(options) {
- LineBase.call(this);
- this.type = 'horizontalLine';
- var opts = {
- // prop: y
- // y value to position the line
- y: null,
- // prop: xmin
- // x value for the start of the line, null to scale to axis min.
- xmin: null,
- // prop: xmax
- // x value for the end of the line, null to scale to axis max.
- xmax: null,
- // prop xOffset
- // offset ends of the line inside the grid. Number
- xOffset: '6px', // number or string. Number interpreted as units, string as pixels.
- xminOffset: null,
- xmaxOffset: null
- };
- $.extend(true, this.options, opts, options);
-
- if (this.options.showTooltipPrecision < 0.01) {
- this.options.showTooltipPrecision = 0.01;
- }
- }
-
- HorizontalLine.prototype = new LineBase();
- HorizontalLine.prototype.constructor = HorizontalLine;
-
-
- /**
- * Class: DashedHorizontalLine
- * A straight dashed horizontal line.
- */
- function DashedHorizontalLine(options) {
- LineBase.call(this);
- this.type = 'dashedHorizontalLine';
- var opts = {
- y: null,
- xmin: null,
- xmax: null,
- xOffset: '6px', // number or string. Number interpreted as units, string as pixels.
- xminOffset: null,
- xmaxOffset: null,
- // prop: dashPattern
- // Array of line, space settings in pixels.
- // Default is 8 pixel of line, 8 pixel of space.
- // Note, limit to a 2 element array b/c of bug with higher order arrays.
- dashPattern: [8,8]
- };
- $.extend(true, this.options, opts, options);
-
- if (this.options.showTooltipPrecision < 0.01) {
- this.options.showTooltipPrecision = 0.01;
- }
- }
-
- DashedHorizontalLine.prototype = new LineBase();
- DashedHorizontalLine.prototype.constructor = DashedHorizontalLine;
-
-
- /**
- * Class: VerticalLine
- * A straight vertical line.
- */
- function VerticalLine(options) {
- LineBase.call(this);
- this.type = 'verticalLine';
- var opts = {
- x: null,
- ymin: null,
- ymax: null,
- yOffset: '6px', // number or string. Number interpreted as units, string as pixels.
- yminOffset: null,
- ymaxOffset: null
- };
- $.extend(true, this.options, opts, options);
-
- if (this.options.showTooltipPrecision < 0.01) {
- this.options.showTooltipPrecision = 0.01;
- }
- }
-
- VerticalLine.prototype = new LineBase();
- VerticalLine.prototype.constructor = VerticalLine;
-
-
- /**
- * Class: DashedVerticalLine
- * A straight dashed vertical line.
- */
- function DashedVerticalLine(options) {
- LineBase.call(this);
- this.type = 'dashedVerticalLine';
- this.start = null;
- this.stop = null;
- var opts = {
- x: null,
- ymin: null,
- ymax: null,
- yOffset: '6px', // number or string. Number interpreted as units, string as pixels.
- yminOffset: null,
- ymaxOffset: null,
- // prop: dashPattern
- // Array of line, space settings in pixels.
- // Default is 8 pixel of line, 8 pixel of space.
- // Note, limit to a 2 element array b/c of bug with higher order arrays.
- dashPattern: [8,8]
- };
- $.extend(true, this.options, opts, options);
-
- if (this.options.showTooltipPrecision < 0.01) {
- this.options.showTooltipPrecision = 0.01;
- }
- }
-
- DashedVerticalLine.prototype = new LineBase();
- DashedVerticalLine.prototype.constructor = DashedVerticalLine;
-
- $.jqplot.CanvasOverlay.prototype.addLine = function(opts) {
- var line = new Line(opts);
- line.uid = objCounter++;
- this.objects.push(line);
- this.objectNames.push(line.options.name);
- };
-
- $.jqplot.CanvasOverlay.prototype.addHorizontalLine = function(opts) {
- var line = new HorizontalLine(opts);
- line.uid = objCounter++;
- this.objects.push(line);
- this.objectNames.push(line.options.name);
- };
-
- $.jqplot.CanvasOverlay.prototype.addDashedHorizontalLine = function(opts) {
- var line = new DashedHorizontalLine(opts);
- line.uid = objCounter++;
- this.objects.push(line);
- this.objectNames.push(line.options.name);
- };
-
- $.jqplot.CanvasOverlay.prototype.addVerticalLine = function(opts) {
- var line = new VerticalLine(opts);
- line.uid = objCounter++;
- this.objects.push(line);
- this.objectNames.push(line.options.name);
- };
-
- $.jqplot.CanvasOverlay.prototype.addDashedVerticalLine = function(opts) {
- var line = new DashedVerticalLine(opts);
- line.uid = objCounter++;
- this.objects.push(line);
- this.objectNames.push(line.options.name);
- };
-
- $.jqplot.CanvasOverlay.prototype.removeObject = function(idx) {
- // check if integer, remove by index
- if ($.type(idx) == 'number') {
- this.objects.splice(idx, 1);
- this.objectNames.splice(idx, 1);
- }
- // if string, remove by name
- else {
- var id = $.inArray(idx, this.objectNames);
- if (id != -1) {
- this.objects.splice(id, 1);
- this.objectNames.splice(id, 1);
- }
- }
- };
-
- $.jqplot.CanvasOverlay.prototype.getObject = function(idx) {
- // check if integer, remove by index
- if ($.type(idx) == 'number') {
- return this.objects[idx];
- }
- // if string, remove by name
- else {
- var id = $.inArray(idx, this.objectNames);
- if (id != -1) {
- return this.objects[id];
- }
- }
- };
-
- // Set get as alias for getObject.
- $.jqplot.CanvasOverlay.prototype.get = $.jqplot.CanvasOverlay.prototype.getObject;
-
- $.jqplot.CanvasOverlay.prototype.clear = function(plot) {
- this.canvas._ctx.clearRect(0,0,this.canvas.getWidth(), this.canvas.getHeight());
- };
-
- $.jqplot.CanvasOverlay.prototype.draw = function(plot) {
- var obj,
- objs = this.objects,
- mr = this.markerRenderer,
- start,
- stop;
- if (this.options.show) {
- this.canvas._ctx.clearRect(0,0,this.canvas.getWidth(), this.canvas.getHeight());
- for (var k=0; k<objs.length; k++) {
- obj = objs[k];
- var opts = $.extend(true, {}, obj.options);
- if (obj.options.show) {
- // style and shadow properties should be set before
- // every draw of marker renderer.
- mr.shadow = obj.options.shadow;
- obj.tooltipWidthFactor = obj.options.lineWidth / obj.options.showTooltipPrecision;
- switch (obj.type) {
- case 'line':
- // style and shadow properties should be set before
- // every draw of marker renderer.
- mr.style = 'line';
- opts.closePath = false;
- start = [plot.axes[obj.options.xaxis].series_u2p(obj.options.start[0]), plot.axes[obj.options.yaxis].series_u2p(obj.options.start[1])];
- stop = [plot.axes[obj.options.xaxis].series_u2p(obj.options.stop[0]), plot.axes[obj.options.yaxis].series_u2p(obj.options.stop[1])];
- obj.gridStart = start;
- obj.gridStop = stop;
- mr.draw(start, stop, this.canvas._ctx, opts);
- break;
- case 'horizontalLine':
-
- // style and shadow properties should be set before
- // every draw of marker renderer.
- if (obj.options.y != null) {
- mr.style = 'line';
- opts.closePath = false;
- var xaxis = plot.axes[obj.options.xaxis],
- xstart,
- xstop,
- y = plot.axes[obj.options.yaxis].series_u2p(obj.options.y),
- xminoff = obj.options.xminOffset || obj.options.xOffset,
- xmaxoff = obj.options.xmaxOffset || obj.options.xOffset;
- if (obj.options.xmin != null) {
- xstart = xaxis.series_u2p(obj.options.xmin);
- }
- else if (xminoff != null) {
- if ($.type(xminoff) == "number") {
- xstart = xaxis.series_u2p(xaxis.min + xminoff);
- }
- else if ($.type(xminoff) == "string") {
- xstart = xaxis.series_u2p(xaxis.min) + parseFloat(xminoff);
- }
- }
- if (obj.options.xmax != null) {
- xstop = xaxis.series_u2p(obj.options.xmax);
- }
- else if (xmaxoff != null) {
- if ($.type(xmaxoff) == "number") {
- xstop = xaxis.series_u2p(xaxis.max - xmaxoff);
- }
- else if ($.type(xmaxoff) == "string") {
- xstop = xaxis.series_u2p(xaxis.max) - parseFloat(xmaxoff);
- }
- }
- if (xstop != null && xstart != null) {
- obj.gridStart = [xstart, y];
- obj.gridStop = [xstop, y];
- mr.draw([xstart, y], [xstop, y], this.canvas._ctx, opts);
- }
- }
- break;
-
- case 'dashedHorizontalLine':
-
- var dashPat = obj.options.dashPattern;
- var dashPatLen = 0;
- for (var i=0; i<dashPat.length; i++) {
- dashPatLen += dashPat[i];
- }
-
- // style and shadow properties should be set before
- // every draw of marker renderer.
- if (obj.options.y != null) {
- mr.style = 'line';
- opts.closePath = false;
- var xaxis = plot.axes[obj.options.xaxis],
- xstart,
- xstop,
- y = plot.axes[obj.options.yaxis].series_u2p(obj.options.y),
- xminoff = obj.options.xminOffset || obj.options.xOffset,
- xmaxoff = obj.options.xmaxOffset || obj.options.xOffset;
- if (obj.options.xmin != null) {
- xstart = xaxis.series_u2p(obj.options.xmin);
- }
- else if (xminoff != null) {
- if ($.type(xminoff) == "number") {
- xstart = xaxis.series_u2p(xaxis.min + xminoff);
- }
- else if ($.type(xminoff) == "string") {
- xstart = xaxis.series_u2p(xaxis.min) + parseFloat(xminoff);
- }
- }
- if (obj.options.xmax != null) {
- xstop = xaxis.series_u2p(obj.options.xmax);
- }
- else if (xmaxoff != null) {
- if ($.type(xmaxoff) == "number") {
- xstop = xaxis.series_u2p(xaxis.max - xmaxoff);
- }
- else if ($.type(xmaxoff) == "string") {
- xstop = xaxis.series_u2p(xaxis.max) - parseFloat(xmaxoff);
- }
- }
- if (xstop != null && xstart != null) {
- obj.gridStart = [xstart, y];
- obj.gridStop = [xstop, y];
- var numDash = Math.ceil((xstop - xstart)/dashPatLen);
- var b=xstart, e;
- for (var i=0; i<numDash; i++) {
- for (var j=0; j<dashPat.length; j+=2) {
- e = b+dashPat[j];
- mr.draw([b, y], [e, y], this.canvas._ctx, opts);
- b += dashPat[j];
- if (j < dashPat.length-1) {
- b += dashPat[j+1];
- }
- }
- }
- }
- }
- break;
-
- case 'verticalLine':
-
- // style and shadow properties should be set before
- // every draw of marker renderer.
- if (obj.options.x != null) {
- mr.style = 'line';
- opts.closePath = false;
- var yaxis = plot.axes[obj.options.yaxis],
- ystart,
- ystop,
- x = plot.axes[obj.options.xaxis].series_u2p(obj.options.x),
- yminoff = obj.options.yminOffset || obj.options.yOffset,
- ymaxoff = obj.options.ymaxOffset || obj.options.yOffset;
- if (obj.options.ymin != null) {
- ystart = yaxis.series_u2p(obj.options.ymin);
- }
- else if (yminoff != null) {
- if ($.type(yminoff) == "number") {
- ystart = yaxis.series_u2p(yaxis.min - yminoff);
- }
- else if ($.type(yminoff) == "string") {
- ystart = yaxis.series_u2p(yaxis.min) - parseFloat(yminoff);
- }
- }
- if (obj.options.ymax != null) {
- ystop = yaxis.series_u2p(obj.options.ymax);
- }
- else if (ymaxoff != null) {
- if ($.type(ymaxoff) == "number") {
- ystop = yaxis.series_u2p(yaxis.max + ymaxoff);
- }
- else if ($.type(ymaxoff) == "string") {
- ystop = yaxis.series_u2p(yaxis.max) + parseFloat(ymaxoff);
- }
- }
- if (ystop != null && ystart != null) {
- obj.gridStart = [x, ystart];
- obj.gridStop = [x, ystop];
- mr.draw([x, ystart], [x, ystop], this.canvas._ctx, opts);
- }
- }
- break;
-
- case 'dashedVerticalLine':
-
- var dashPat = obj.options.dashPattern;
- var dashPatLen = 0;
- for (var i=0; i<dashPat.length; i++) {
- dashPatLen += dashPat[i];
- }
-
- // style and shadow properties should be set before
- // every draw of marker renderer.
- if (obj.options.x != null) {
- mr.style = 'line';
- opts.closePath = false;
- var yaxis = plot.axes[obj.options.yaxis],
- ystart,
- ystop,
- x = plot.axes[obj.options.xaxis].series_u2p(obj.options.x),
- yminoff = obj.options.yminOffset || obj.options.yOffset,
- ymaxoff = obj.options.ymaxOffset || obj.options.yOffset;
- if (obj.options.ymin != null) {
- ystart = yaxis.series_u2p(obj.options.ymin);
- }
- else if (yminoff != null) {
- if ($.type(yminoff) == "number") {
- ystart = yaxis.series_u2p(yaxis.min - yminoff);
- }
- else if ($.type(yminoff) == "string") {
- ystart = yaxis.series_u2p(yaxis.min) - parseFloat(yminoff);
- }
- }
- if (obj.options.ymax != null) {
- ystop = yaxis.series_u2p(obj.options.ymax);
- }
- else if (ymaxoff != null) {
- if ($.type(ymaxoff) == "number") {
- ystop = yaxis.series_u2p(yaxis.max + ymaxoff);
- }
- else if ($.type(ymaxoff) == "string") {
- ystop = yaxis.series_u2p(yaxis.max) + parseFloat(ymaxoff);
- }
- }
-
-
- if (ystop != null && ystart != null) {
- obj.gridStart = [x, ystart];
- obj.gridStop = [x, ystop];
- var numDash = Math.ceil((ystart - ystop)/dashPatLen);
- var firstDashAdjust = ((numDash * dashPatLen) - (ystart - ystop))/2.0;
- var b=ystart, e, bs, es;
- for (var i=0; i<numDash; i++) {
- for (var j=0; j<dashPat.length; j+=2) {
- e = b - dashPat[j];
- if (e < ystop) {
- e = ystop;
- }
- if (b < ystop) {
- b = ystop;
- }
- // es = e;
- // if (i == 0) {
- // es += firstDashAdjust;
- // }
- mr.draw([x, b], [x, e], this.canvas._ctx, opts);
- b -= dashPat[j];
- if (j < dashPat.length-1) {
- b -= dashPat[j+1];
- }
- }
- }
- }
- }
- break;
-
- default:
- break;
- }
- }
- }
- }
- };
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- $.jqplot.CanvasOverlay.postPlotDraw = function() {
- var co = this.plugins.canvasOverlay;
- // Memory Leaks patch
- if (co && co.highlightCanvas) {
- co.highlightCanvas.resetCanvas();
- co.highlightCanvas = null;
- }
- co.canvas = new $.jqplot.GenericCanvas();
-
- this.eventCanvas._elem.before(co.canvas.createElement(this._gridPadding, 'jqplot-overlayCanvas-canvas', this._plotDimensions, this));
- co.canvas.setContext();
- if (!co.deferDraw) {
- co.draw(this);
- }
-
- var elem = document.createElement('div');
- co._tooltipElem = $(elem);
- elem = null;
- co._tooltipElem.addClass('jqplot-canvasOverlay-tooltip');
- co._tooltipElem.css({position:'absolute', display:'none'});
-
- this.eventCanvas._elem.before(co._tooltipElem);
- this.eventCanvas._elem.bind('mouseleave', { elem: co._tooltipElem }, function (ev) { ev.data.elem.hide(); });
-
- var co = null;
- };
-
-
- function showTooltip(plot, obj, gridpos, datapos) {
- var co = plot.plugins.canvasOverlay;
- var elem = co._tooltipElem;
-
- var opts = obj.options, x, y;
-
- elem.html($.jqplot.sprintf(opts.tooltipFormatString, datapos[0], datapos[1]));
-
- switch (opts.tooltipLocation) {
- case 'nw':
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true);
- break;
- case 'n':
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true)/2;
- y = gridpos[1] + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true);
- break;
- case 'ne':
- x = gridpos[0] + plot._gridPadding.left + opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true);
- break;
- case 'e':
- x = gridpos[0] + plot._gridPadding.left + opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- case 'se':
- x = gridpos[0] + plot._gridPadding.left + opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top + opts.tooltipOffset;
- break;
- case 's':
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true)/2;
- y = gridpos[1] + plot._gridPadding.top + opts.tooltipOffset;
- break;
- case 'sw':
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top + opts.tooltipOffset;
- break;
- case 'w':
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- default: // same as 'nw'
- x = gridpos[0] + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset;
- y = gridpos[1] + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true);
- break;
- }
-
- elem.css('left', x);
- elem.css('top', y);
- if (opts.fadeTooltip) {
- // Fix for stacked up animations. Thnanks Trevor!
- elem.stop(true,true).fadeIn(opts.tooltipFadeSpeed);
- }
- else {
- elem.show();
- }
- elem = null;
- }
-
-
- function isNearLine(point, lstart, lstop, width) {
- // r is point to test, p and q are end points.
- var rx = point[0];
- var ry = point[1];
- var px = Math.round(lstop[0]);
- var py = Math.round(lstop[1]);
- var qx = Math.round(lstart[0]);
- var qy = Math.round(lstart[1]);
-
- var l = Math.sqrt(Math.pow(px-qx, 2) + Math.pow(py-qy, 2));
-
- // scale error term by length of line.
- var eps = width*l;
- var res = Math.abs((qx-px) * (ry-py) - (qy-py) * (rx-px));
- var ret = (res < eps) ? true : false;
- return ret;
- }
-
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- var co = plot.plugins.canvasOverlay;
- var objs = co.objects;
- var l = objs.length;
- var obj, haveHighlight=false;
- var elem;
- for (var i=0; i<l; i++) {
- obj = objs[i];
- if (obj.options.showTooltip) {
- var n = isNearLine([gridpos.x, gridpos.y], obj.gridStart, obj.gridStop, obj.tooltipWidthFactor);
- datapos = [plot.axes[obj.options.xaxis].series_p2u(gridpos.x), plot.axes[obj.options.yaxis].series_p2u(gridpos.y)];
-
- // cases:
- // near line, no highlighting
- // near line, highliting on this line
- // near line, highlighting another line
- // not near any line, highlighting
- // not near any line, no highlighting
-
- // near line, not currently highlighting
- if (n && co.highlightObjectIndex == null) {
- switch (obj.type) {
- case 'line':
- showTooltip(plot, obj, [gridpos.x, gridpos.y], datapos);
- break;
-
- case 'horizontalLine':
- case 'dashedHorizontalLine':
- showTooltip(plot, obj, [gridpos.x, obj.gridStart[1]], [datapos[0], obj.options.y]);
- break;
-
- case 'verticalLine':
- case 'dashedVerticalLine':
- showTooltip(plot, obj, [obj.gridStart[0], gridpos.y], [obj.options.x, datapos[1]]);
- break;
- default:
- break;
- }
- co.highlightObjectIndex = i;
- haveHighlight = true;
- break;
- }
-
- // near line, highlighting another line.
- else if (n && co.highlightObjectIndex !== i) {
- // turn off tooltip.
- elem = co._tooltipElem;
- if (obj.fadeTooltip) {
- elem.fadeOut(obj.tooltipFadeSpeed);
- }
- else {
- elem.hide();
- }
-
- // turn on right tooltip.
- switch (obj.type) {
- case 'line':
- showTooltip(plot, obj, [gridpos.x, gridpos.y], datapos);
- break;
-
- case 'horizontalLine':
- case 'dashedHorizontalLine':
- showTooltip(plot, obj, [gridpos.x, obj.gridStart[1]], [datapos[0], obj.options.y]);
- break;
-
- case 'verticalLine':
- case 'dashedVerticalLine':
- showTooltip(plot, obj, [obj.gridStart[0], gridpos.y], [obj.options.x, datapos[1]]);
- break;
- default:
- break;
- }
-
- co.highlightObjectIndex = i;
- haveHighlight = true;
- break;
- }
-
- // near line, already highlighting this line, update
- else if (n) {
- switch (obj.type) {
- case 'line':
- showTooltip(plot, obj, [gridpos.x, gridpos.y], datapos);
- break;
-
- case 'horizontalLine':
- case 'dashedHorizontalLine':
- showTooltip(plot, obj, [gridpos.x, obj.gridStart[1]], [datapos[0], obj.options.y]);
- break;
-
- case 'verticalLine':
- case 'dashedVerticalLine':
- showTooltip(plot, obj, [obj.gridStart[0], gridpos.y], [obj.options.x, datapos[1]]);
- break;
- default:
- break;
- }
-
- haveHighlight = true;
- break;
- }
- }
- }
-
- // check if we are highlighting and not near a line, turn it off.
- if (!haveHighlight && co.highlightObjectIndex !== null) {
- elem = co._tooltipElem;
- obj = co.getObject(co.highlightObjectIndex);
- if (obj.fadeTooltip) {
- elem.fadeOut(obj.tooltipFadeSpeed);
- }
- else {
- elem.hide();
- }
- co.highlightObjectIndex = null;
- }
- }
-
- $.jqplot.postInitHooks.push($.jqplot.CanvasOverlay.postPlotInit);
- $.jqplot.postDrawHooks.push($.jqplot.CanvasOverlay.postPlotDraw);
- $.jqplot.eventListenerHooks.push(['jqplotMouseMove', handleMove]);
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.min.js
deleted file mode 100644
index 3d3c9fad..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasOverlay.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(d){var f=0;d.jqplot.CanvasOverlay=function(o){var l=o||{};this.options={show:d.jqplot.config.enablePlugins,deferDraw:false};this.objects=[];this.objectNames=[];this.canvas=null;this.markerRenderer=new d.jqplot.MarkerRenderer({style:"line"});this.markerRenderer.init();this.highlightObjectIndex=null;if(l.objects){var q=l.objects,p;for(var m=0;m<q.length;m++){p=q[m];for(var r in p){switch(r){case"line":this.addLine(p[r]);break;case"horizontalLine":this.addHorizontalLine(p[r]);break;case"dashedHorizontalLine":this.addDashedHorizontalLine(p[r]);break;case"verticalLine":this.addVerticalLine(p[r]);break;case"dashedVerticalLine":this.addDashedVerticalLine(p[r]);break;default:break}}}}d.extend(true,this.options,l)};d.jqplot.CanvasOverlay.postPlotInit=function(o,n,m){var l=m||{};this.plugins.canvasOverlay=new d.jqplot.CanvasOverlay(l.canvasOverlay)};function h(){this.uid=null;this.type=null;this.gridStart=null;this.gridStop=null;this.tooltipWidthFactor=0;this.options={name:null,show:true,lineWidth:2,lineCap:"round",color:"#666666",shadow:true,shadowAngle:45,shadowOffset:1,shadowDepth:3,shadowAlpha:"0.07",xaxis:"xaxis",yaxis:"yaxis",showTooltip:false,showTooltipPrecision:0.6,tooltipLocation:"nw",fadeTooltip:true,tooltipFadeSpeed:"fast",tooltipOffset:4,tooltipFormatString:"%d, %d"}}function b(l){h.call(this);this.type="line";var m={start:[],stop:[]};d.extend(true,this.options,m,l);if(this.options.showTooltipPrecision<0.01){this.options.showTooltipPrecision=0.01}}b.prototype=new h();b.prototype.constructor=b;function e(l){h.call(this);this.type="horizontalLine";var m={y:null,xmin:null,xmax:null,xOffset:"6px",xminOffset:null,xmaxOffset:null};d.extend(true,this.options,m,l);if(this.options.showTooltipPrecision<0.01){this.options.showTooltipPrecision=0.01}}e.prototype=new h();e.prototype.constructor=e;function i(l){h.call(this);this.type="dashedHorizontalLine";var m={y:null,xmin:null,xmax:null,xOffset:"6px",xminOffset:null,xmaxOffset:null,dashPattern:[8,8]};d.extend(true,this.options,m,l);if(this.options.showTooltipPrecision<0.01){this.options.showTooltipPrecision=0.01}}i.prototype=new h();i.prototype.constructor=i;function c(l){h.call(this);this.type="verticalLine";var m={x:null,ymin:null,ymax:null,yOffset:"6px",yminOffset:null,ymaxOffset:null};d.extend(true,this.options,m,l);if(this.options.showTooltipPrecision<0.01){this.options.showTooltipPrecision=0.01}}c.prototype=new h();c.prototype.constructor=c;function k(l){h.call(this);this.type="dashedVerticalLine";this.start=null;this.stop=null;var m={x:null,ymin:null,ymax:null,yOffset:"6px",yminOffset:null,ymaxOffset:null,dashPattern:[8,8]};d.extend(true,this.options,m,l);if(this.options.showTooltipPrecision<0.01){this.options.showTooltipPrecision=0.01}}k.prototype=new h();k.prototype.constructor=k;d.jqplot.CanvasOverlay.prototype.addLine=function(m){var l=new b(m);l.uid=f++;this.objects.push(l);this.objectNames.push(l.options.name)};d.jqplot.CanvasOverlay.prototype.addHorizontalLine=function(m){var l=new e(m);l.uid=f++;this.objects.push(l);this.objectNames.push(l.options.name)};d.jqplot.CanvasOverlay.prototype.addDashedHorizontalLine=function(m){var l=new i(m);l.uid=f++;this.objects.push(l);this.objectNames.push(l.options.name)};d.jqplot.CanvasOverlay.prototype.addVerticalLine=function(m){var l=new c(m);l.uid=f++;this.objects.push(l);this.objectNames.push(l.options.name)};d.jqplot.CanvasOverlay.prototype.addDashedVerticalLine=function(m){var l=new k(m);l.uid=f++;this.objects.push(l);this.objectNames.push(l.options.name)};d.jqplot.CanvasOverlay.prototype.removeObject=function(l){if(d.type(l)=="number"){this.objects.splice(l,1);this.objectNames.splice(l,1)}else{var m=d.inArray(l,this.objectNames);if(m!=-1){this.objects.splice(m,1);this.objectNames.splice(m,1)}}};d.jqplot.CanvasOverlay.prototype.getObject=function(l){if(d.type(l)=="number"){return this.objects[l]}else{var m=d.inArray(l,this.objectNames);if(m!=-1){return this.objects[m]}}};d.jqplot.CanvasOverlay.prototype.get=d.jqplot.CanvasOverlay.prototype.getObject;d.jqplot.CanvasOverlay.prototype.clear=function(l){this.canvas._ctx.clearRect(0,0,this.canvas.getWidth(),this.canvas.getHeight())};d.jqplot.CanvasOverlay.prototype.draw=function(I){var w,t=this.objects,D=this.markerRenderer,q,E;if(this.options.show){this.canvas._ctx.clearRect(0,0,this.canvas.getWidth(),this.canvas.getHeight());for(var F=0;F<t.length;F++){w=t[F];var z=d.extend(true,{},w.options);if(w.options.show){D.shadow=w.options.shadow;w.tooltipWidthFactor=w.options.lineWidth/w.options.showTooltipPrecision;switch(w.type){case"line":D.style="line";z.closePath=false;q=[I.axes[w.options.xaxis].series_u2p(w.options.start[0]),I.axes[w.options.yaxis].series_u2p(w.options.start[1])];E=[I.axes[w.options.xaxis].series_u2p(w.options.stop[0]),I.axes[w.options.yaxis].series_u2p(w.options.stop[1])];w.gridStart=q;w.gridStop=E;D.draw(q,E,this.canvas._ctx,z);break;case"horizontalLine":if(w.options.y!=null){D.style="line";z.closePath=false;var n=I.axes[w.options.xaxis],Q,J,u=I.axes[w.options.yaxis].series_u2p(w.options.y),G=w.options.xminOffset||w.options.xOffset,r=w.options.xmaxOffset||w.options.xOffset;if(w.options.xmin!=null){Q=n.series_u2p(w.options.xmin)}else{if(G!=null){if(d.type(G)=="number"){Q=n.series_u2p(n.min+G)}else{if(d.type(G)=="string"){Q=n.series_u2p(n.min)+parseFloat(G)}}}}if(w.options.xmax!=null){J=n.series_u2p(w.options.xmax)}else{if(r!=null){if(d.type(r)=="number"){J=n.series_u2p(n.max-r)}else{if(d.type(r)=="string"){J=n.series_u2p(n.max)-parseFloat(r)}}}}if(J!=null&&Q!=null){w.gridStart=[Q,u];w.gridStop=[J,u];D.draw([Q,u],[J,u],this.canvas._ctx,z)}}break;case"dashedHorizontalLine":var m=w.options.dashPattern;var C=0;for(var K=0;K<m.length;K++){C+=m[K]}if(w.options.y!=null){D.style="line";z.closePath=false;var n=I.axes[w.options.xaxis],Q,J,u=I.axes[w.options.yaxis].series_u2p(w.options.y),G=w.options.xminOffset||w.options.xOffset,r=w.options.xmaxOffset||w.options.xOffset;if(w.options.xmin!=null){Q=n.series_u2p(w.options.xmin)}else{if(G!=null){if(d.type(G)=="number"){Q=n.series_u2p(n.min+G)}else{if(d.type(G)=="string"){Q=n.series_u2p(n.min)+parseFloat(G)}}}}if(w.options.xmax!=null){J=n.series_u2p(w.options.xmax)}else{if(r!=null){if(d.type(r)=="number"){J=n.series_u2p(n.max-r)}else{if(d.type(r)=="string"){J=n.series_u2p(n.max)-parseFloat(r)}}}}if(J!=null&&Q!=null){w.gridStart=[Q,u];w.gridStop=[J,u];var p=Math.ceil((J-Q)/C);var O=Q,M;for(var K=0;K<p;K++){for(var H=0;H<m.length;H+=2){M=O+m[H];D.draw([O,u],[M,u],this.canvas._ctx,z);O+=m[H];if(H<m.length-1){O+=m[H+1]}}}}}break;case"verticalLine":if(w.options.x!=null){D.style="line";z.closePath=false;var L=I.axes[w.options.yaxis],l,s,v=I.axes[w.options.xaxis].series_u2p(w.options.x),B=w.options.yminOffset||w.options.yOffset,o=w.options.ymaxOffset||w.options.yOffset;if(w.options.ymin!=null){l=L.series_u2p(w.options.ymin)}else{if(B!=null){if(d.type(B)=="number"){l=L.series_u2p(L.min-B)}else{if(d.type(B)=="string"){l=L.series_u2p(L.min)-parseFloat(B)}}}}if(w.options.ymax!=null){s=L.series_u2p(w.options.ymax)}else{if(o!=null){if(d.type(o)=="number"){s=L.series_u2p(L.max+o)}else{if(d.type(o)=="string"){s=L.series_u2p(L.max)+parseFloat(o)}}}}if(s!=null&&l!=null){w.gridStart=[v,l];w.gridStop=[v,s];D.draw([v,l],[v,s],this.canvas._ctx,z)}}break;case"dashedVerticalLine":var m=w.options.dashPattern;var C=0;for(var K=0;K<m.length;K++){C+=m[K]}if(w.options.x!=null){D.style="line";z.closePath=false;var L=I.axes[w.options.yaxis],l,s,v=I.axes[w.options.xaxis].series_u2p(w.options.x),B=w.options.yminOffset||w.options.yOffset,o=w.options.ymaxOffset||w.options.yOffset;if(w.options.ymin!=null){l=L.series_u2p(w.options.ymin)}else{if(B!=null){if(d.type(B)=="number"){l=L.series_u2p(L.min-B)}else{if(d.type(B)=="string"){l=L.series_u2p(L.min)-parseFloat(B)}}}}if(w.options.ymax!=null){s=L.series_u2p(w.options.ymax)}else{if(o!=null){if(d.type(o)=="number"){s=L.series_u2p(L.max+o)}else{if(d.type(o)=="string"){s=L.series_u2p(L.max)+parseFloat(o)}}}}if(s!=null&&l!=null){w.gridStart=[v,l];w.gridStop=[v,s];var p=Math.ceil((l-s)/C);var A=((p*C)-(l-s))/2;var O=l,M,N,P;for(var K=0;K<p;K++){for(var H=0;H<m.length;H+=2){M=O-m[H];if(M<s){M=s}if(O<s){O=s}D.draw([v,O],[v,M],this.canvas._ctx,z);O-=m[H];if(H<m.length-1){O-=m[H+1]}}}}}break;default:break}}}}};d.jqplot.CanvasOverlay.postPlotDraw=function(){var m=this.plugins.canvasOverlay;if(m&&m.highlightCanvas){m.highlightCanvas.resetCanvas();m.highlightCanvas=null}m.canvas=new d.jqplot.GenericCanvas();this.eventCanvas._elem.before(m.canvas.createElement(this._gridPadding,"jqplot-overlayCanvas-canvas",this._plotDimensions,this));m.canvas.setContext();if(!m.deferDraw){m.draw(this)}var l=document.createElement("div");m._tooltipElem=d(l);l=null;m._tooltipElem.addClass("jqplot-canvasOverlay-tooltip");m._tooltipElem.css({position:"absolute",display:"none"});this.eventCanvas._elem.before(m._tooltipElem);this.eventCanvas._elem.bind("mouseleave",{elem:m._tooltipElem},function(n){n.data.elem.hide()});var m=null};function j(q,o,p,n){var s=q.plugins.canvasOverlay;var m=s._tooltipElem;var l=o.options,t,r;m.html(d.jqplot.sprintf(l.tooltipFormatString,n[0],n[1]));switch(l.tooltipLocation){case"nw":t=p[0]+q._gridPadding.left-m.outerWidth(true)-l.tooltipOffset;r=p[1]+q._gridPadding.top-l.tooltipOffset-m.outerHeight(true);break;case"n":t=p[0]+q._gridPadding.left-m.outerWidth(true)/2;r=p[1]+q._gridPadding.top-l.tooltipOffset-m.outerHeight(true);break;case"ne":t=p[0]+q._gridPadding.left+l.tooltipOffset;r=p[1]+q._gridPadding.top-l.tooltipOffset-m.outerHeight(true);break;case"e":t=p[0]+q._gridPadding.left+l.tooltipOffset;r=p[1]+q._gridPadding.top-m.outerHeight(true)/2;break;case"se":t=p[0]+q._gridPadding.left+l.tooltipOffset;r=p[1]+q._gridPadding.top+l.tooltipOffset;break;case"s":t=p[0]+q._gridPadding.left-m.outerWidth(true)/2;r=p[1]+q._gridPadding.top+l.tooltipOffset;break;case"sw":t=p[0]+q._gridPadding.left-m.outerWidth(true)-l.tooltipOffset;r=p[1]+q._gridPadding.top+l.tooltipOffset;break;case"w":t=p[0]+q._gridPadding.left-m.outerWidth(true)-l.tooltipOffset;r=p[1]+q._gridPadding.top-m.outerHeight(true)/2;break;default:t=p[0]+q._gridPadding.left-m.outerWidth(true)-l.tooltipOffset;r=p[1]+q._gridPadding.top-l.tooltipOffset-m.outerHeight(true);break}m.css("left",t);m.css("top",r);if(l.fadeTooltip){m.stop(true,true).fadeIn(l.tooltipFadeSpeed)}else{m.show()}m=null}function g(y,p,r,o){var n=y[0];var m=y[1];var x=Math.round(r[0]);var w=Math.round(r[1]);var t=Math.round(p[0]);var s=Math.round(p[1]);var q=Math.sqrt(Math.pow(x-t,2)+Math.pow(w-s,2));var z=o*q;var v=Math.abs((t-x)*(m-w)-(s-w)*(n-x));var u=(v<z)?true:false;return u}function a(y,v,q,z,w){var x=w.plugins.canvasOverlay;var u=x.objects;var r=u.length;var t,m=false;var p;for(var s=0;s<r;s++){t=u[s];if(t.options.showTooltip){var o=g([v.x,v.y],t.gridStart,t.gridStop,t.tooltipWidthFactor);q=[w.axes[t.options.xaxis].series_p2u(v.x),w.axes[t.options.yaxis].series_p2u(v.y)];if(o&&x.highlightObjectIndex==null){switch(t.type){case"line":j(w,t,[v.x,v.y],q);break;case"horizontalLine":case"dashedHorizontalLine":j(w,t,[v.x,t.gridStart[1]],[q[0],t.options.y]);break;case"verticalLine":case"dashedVerticalLine":j(w,t,[t.gridStart[0],v.y],[t.options.x,q[1]]);break;default:break}x.highlightObjectIndex=s;m=true;break}else{if(o&&x.highlightObjectIndex!==s){p=x._tooltipElem;if(t.fadeTooltip){p.fadeOut(t.tooltipFadeSpeed)}else{p.hide()}switch(t.type){case"line":j(w,t,[v.x,v.y],q);break;case"horizontalLine":case"dashedHorizontalLine":j(w,t,[v.x,t.gridStart[1]],[q[0],t.options.y]);break;case"verticalLine":case"dashedVerticalLine":j(w,t,[t.gridStart[0],v.y],[t.options.x,q[1]]);break;default:break}x.highlightObjectIndex=s;m=true;break}else{if(o){switch(t.type){case"line":j(w,t,[v.x,v.y],q);break;case"horizontalLine":case"dashedHorizontalLine":j(w,t,[v.x,t.gridStart[1]],[q[0],t.options.y]);break;case"verticalLine":case"dashedVerticalLine":j(w,t,[t.gridStart[0],v.y],[t.options.x,q[1]]);break;default:break}m=true;break}}}}}if(!m&&x.highlightObjectIndex!==null){p=x._tooltipElem;t=x.getObject(x.highlightObjectIndex);if(t.fadeTooltip){p.fadeOut(t.tooltipFadeSpeed)}else{p.hide()}x.highlightObjectIndex=null}}d.jqplot.postInitHooks.push(d.jqplot.CanvasOverlay.postPlotInit);d.jqplot.postDrawHooks.push(d.jqplot.CanvasOverlay.postPlotDraw);d.jqplot.eventListenerHooks.push(["jqplotMouseMove",a])})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.js
deleted file mode 100644
index 693d2ff9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.js
+++ /dev/null
@@ -1,449 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2012 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-
-(function($) {
- // This code is a modified version of the canvastext.js code, copyright below:
- //
- // This code is released to the public domain by Jim Studt, 2007.
- // He may keep some sort of up to date copy at http://www.federated.com/~jim/canvastext/
- //
- $.jqplot.CanvasTextRenderer = function(options){
- this.fontStyle = 'normal'; // normal, italic, oblique [not implemented]
- this.fontVariant = 'normal'; // normal, small caps [not implemented]
- this.fontWeight = 'normal'; // normal, bold, bolder, lighter, 100 - 900
- this.fontSize = '10px';
- this.fontFamily = 'sans-serif';
- this.fontStretch = 1.0;
- this.fillStyle = '#666666';
- this.angle = 0;
- this.textAlign = 'start';
- this.textBaseline = 'alphabetic';
- this.text;
- this.width;
- this.height;
- this.pt2px = 1.28;
-
- $.extend(true, this, options);
- this.normalizedFontSize = this.normalizeFontSize(this.fontSize);
- this.setHeight();
- };
-
- $.jqplot.CanvasTextRenderer.prototype.init = function(options) {
- $.extend(true, this, options);
- this.normalizedFontSize = this.normalizeFontSize(this.fontSize);
- this.setHeight();
- };
-
- // convert css spec into point size
- // returns float
- $.jqplot.CanvasTextRenderer.prototype.normalizeFontSize = function(sz) {
- sz = String(sz);
- var n = parseFloat(sz);
- if (sz.indexOf('px') > -1) {
- return n/this.pt2px;
- }
- else if (sz.indexOf('pt') > -1) {
- return n;
- }
- else if (sz.indexOf('em') > -1) {
- return n*12;
- }
- else if (sz.indexOf('%') > -1) {
- return n*12/100;
- }
- // default to pixels;
- else {
- return n/this.pt2px;
- }
- };
-
-
- $.jqplot.CanvasTextRenderer.prototype.fontWeight2Float = function(w) {
- // w = normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900
- // return values adjusted for Hershey font.
- if (Number(w)) {
- return w/400;
- }
- else {
- switch (w) {
- case 'normal':
- return 1;
- break;
- case 'bold':
- return 1.75;
- break;
- case 'bolder':
- return 2.25;
- break;
- case 'lighter':
- return 0.75;
- break;
- default:
- return 1;
- break;
- }
- }
- };
-
- $.jqplot.CanvasTextRenderer.prototype.getText = function() {
- return this.text;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.setText = function(t, ctx) {
- this.text = t;
- this.setWidth(ctx);
- return this;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.getWidth = function(ctx) {
- return this.width;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.setWidth = function(ctx, w) {
- if (!w) {
- this.width = this.measure(ctx, this.text);
- }
- else {
- this.width = w;
- }
- return this;
- };
-
- // return height in pixels.
- $.jqplot.CanvasTextRenderer.prototype.getHeight = function(ctx) {
- return this.height;
- };
-
- // w - height in pt
- // set heigh in px
- $.jqplot.CanvasTextRenderer.prototype.setHeight = function(w) {
- if (!w) {
- //height = this.fontSize /0.75;
- this.height = this.normalizedFontSize * this.pt2px;
- }
- else {
- this.height = w;
- }
- return this;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.letter = function (ch)
- {
- return this.letters[ch];
- };
-
- $.jqplot.CanvasTextRenderer.prototype.ascent = function()
- {
- return this.normalizedFontSize;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.descent = function()
- {
- return 7.0*this.normalizedFontSize/25.0;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.measure = function(ctx, str)
- {
- var total = 0;
- var len = str.length;
-
- for (var i = 0; i < len; i++) {
- var c = this.letter(str.charAt(i));
- if (c) {
- total += c.width * this.normalizedFontSize / 25.0 * this.fontStretch;
- }
- }
- return total;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.draw = function(ctx,str)
- {
- var x = 0;
- // leave room at bottom for descenders.
- var y = this.height*0.72;
- var total = 0;
- var len = str.length;
- var mag = this.normalizedFontSize / 25.0;
-
- ctx.save();
- var tx, ty;
-
- // 1st quadrant
- if ((-Math.PI/2 <= this.angle && this.angle <= 0) || (Math.PI*3/2 <= this.angle && this.angle <= Math.PI*2)) {
- tx = 0;
- ty = -Math.sin(this.angle) * this.width;
- }
- // 4th quadrant
- else if ((0 < this.angle && this.angle <= Math.PI/2) || (-Math.PI*2 <= this.angle && this.angle <= -Math.PI*3/2)) {
- tx = Math.sin(this.angle) * this.height;
- ty = 0;
- }
- // 2nd quadrant
- else if ((-Math.PI < this.angle && this.angle < -Math.PI/2) || (Math.PI <= this.angle && this.angle <= Math.PI*3/2)) {
- tx = -Math.cos(this.angle) * this.width;
- ty = -Math.sin(this.angle) * this.width - Math.cos(this.angle) * this.height;
- }
- // 3rd quadrant
- else if ((-Math.PI*3/2 < this.angle && this.angle < Math.PI) || (Math.PI/2 < this.angle && this.angle < Math.PI)) {
- tx = Math.sin(this.angle) * this.height - Math.cos(this.angle)*this.width;
- ty = -Math.cos(this.angle) * this.height;
- }
-
- ctx.strokeStyle = this.fillStyle;
- ctx.fillStyle = this.fillStyle;
- ctx.translate(tx, ty);
- ctx.rotate(this.angle);
- ctx.lineCap = "round";
- // multiplier was 2.0
- var fact = (this.normalizedFontSize > 30) ? 2.0 : 2 + (30 - this.normalizedFontSize)/20;
- ctx.lineWidth = fact * mag * this.fontWeight2Float(this.fontWeight);
-
- for ( var i = 0; i < len; i++) {
- var c = this.letter( str.charAt(i));
- if ( !c) {
- continue;
- }
-
- ctx.beginPath();
-
- var penUp = 1;
- var needStroke = 0;
- for ( var j = 0; j < c.points.length; j++) {
- var a = c.points[j];
- if ( a[0] == -1 && a[1] == -1) {
- penUp = 1;
- continue;
- }
- if ( penUp) {
- ctx.moveTo( x + a[0]*mag*this.fontStretch, y - a[1]*mag);
- penUp = false;
- } else {
- ctx.lineTo( x + a[0]*mag*this.fontStretch, y - a[1]*mag);
- }
- }
- ctx.stroke();
- x += c.width*mag*this.fontStretch;
- }
- ctx.restore();
- return total;
- };
-
- $.jqplot.CanvasTextRenderer.prototype.letters = {
- ' ': { width: 16, points: [] },
- '!': { width: 10, points: [[5,21],[5,7],[-1,-1],[5,2],[4,1],[5,0],[6,1],[5,2]] },
- '"': { width: 16, points: [[4,21],[4,14],[-1,-1],[12,21],[12,14]] },
- '#': { width: 21, points: [[11,25],[4,-7],[-1,-1],[17,25],[10,-7],[-1,-1],[4,12],[18,12],[-1,-1],[3,6],[17,6]] },
- '$': { width: 20, points: [[8,25],[8,-4],[-1,-1],[12,25],[12,-4],[-1,-1],[17,18],[15,20],[12,21],[8,21],[5,20],[3,18],[3,16],[4,14],[5,13],[7,12],[13,10],[15,9],[16,8],[17,6],[17,3],[15,1],[12,0],[8,0],[5,1],[3,3]] },
- '%': { width: 24, points: [[21,21],[3,0],[-1,-1],[8,21],[10,19],[10,17],[9,15],[7,14],[5,14],[3,16],[3,18],[4,20],[6,21],[8,21],[10,20],[13,19],[16,19],[19,20],[21,21],[-1,-1],[17,7],[15,6],[14,4],[14,2],[16,0],[18,0],[20,1],[21,3],[21,5],[19,7],[17,7]] },
- '&': { width: 26, points: [[23,12],[23,13],[22,14],[21,14],[20,13],[19,11],[17,6],[15,3],[13,1],[11,0],[7,0],[5,1],[4,2],[3,4],[3,6],[4,8],[5,9],[12,13],[13,14],[14,16],[14,18],[13,20],[11,21],[9,20],[8,18],[8,16],[9,13],[11,10],[16,3],[18,1],[20,0],[22,0],[23,1],[23,2]] },
- '\'': { width: 10, points: [[5,19],[4,20],[5,21],[6,20],[6,18],[5,16],[4,15]] },
- '(': { width: 14, points: [[11,25],[9,23],[7,20],[5,16],[4,11],[4,7],[5,2],[7,-2],[9,-5],[11,-7]] },
- ')': { width: 14, points: [[3,25],[5,23],[7,20],[9,16],[10,11],[10,7],[9,2],[7,-2],[5,-5],[3,-7]] },
- '*': { width: 16, points: [[8,21],[8,9],[-1,-1],[3,18],[13,12],[-1,-1],[13,18],[3,12]] },
- '+': { width: 26, points: [[13,18],[13,0],[-1,-1],[4,9],[22,9]] },
- ',': { width: 10, points: [[6,1],[5,0],[4,1],[5,2],[6,1],[6,-1],[5,-3],[4,-4]] },
- '-': { width: 18, points: [[6,9],[12,9]] },
- '.': { width: 10, points: [[5,2],[4,1],[5,0],[6,1],[5,2]] },
- '/': { width: 22, points: [[20,25],[2,-7]] },
- '0': { width: 20, points: [[9,21],[6,20],[4,17],[3,12],[3,9],[4,4],[6,1],[9,0],[11,0],[14,1],[16,4],[17,9],[17,12],[16,17],[14,20],[11,21],[9,21]] },
- '1': { width: 20, points: [[6,17],[8,18],[11,21],[11,0]] },
- '2': { width: 20, points: [[4,16],[4,17],[5,19],[6,20],[8,21],[12,21],[14,20],[15,19],[16,17],[16,15],[15,13],[13,10],[3,0],[17,0]] },
- '3': { width: 20, points: [[5,21],[16,21],[10,13],[13,13],[15,12],[16,11],[17,8],[17,6],[16,3],[14,1],[11,0],[8,0],[5,1],[4,2],[3,4]] },
- '4': { width: 20, points: [[13,21],[3,7],[18,7],[-1,-1],[13,21],[13,0]] },
- '5': { width: 20, points: [[15,21],[5,21],[4,12],[5,13],[8,14],[11,14],[14,13],[16,11],[17,8],[17,6],[16,3],[14,1],[11,0],[8,0],[5,1],[4,2],[3,4]] },
- '6': { width: 20, points: [[16,18],[15,20],[12,21],[10,21],[7,20],[5,17],[4,12],[4,7],[5,3],[7,1],[10,0],[11,0],[14,1],[16,3],[17,6],[17,7],[16,10],[14,12],[11,13],[10,13],[7,12],[5,10],[4,7]] },
- '7': { width: 20, points: [[17,21],[7,0],[-1,-1],[3,21],[17,21]] },
- '8': { width: 20, points: [[8,21],[5,20],[4,18],[4,16],[5,14],[7,13],[11,12],[14,11],[16,9],[17,7],[17,4],[16,2],[15,1],[12,0],[8,0],[5,1],[4,2],[3,4],[3,7],[4,9],[6,11],[9,12],[13,13],[15,14],[16,16],[16,18],[15,20],[12,21],[8,21]] },
- '9': { width: 20, points: [[16,14],[15,11],[13,9],[10,8],[9,8],[6,9],[4,11],[3,14],[3,15],[4,18],[6,20],[9,21],[10,21],[13,20],[15,18],[16,14],[16,9],[15,4],[13,1],[10,0],[8,0],[5,1],[4,3]] },
- ':': { width: 10, points: [[5,14],[4,13],[5,12],[6,13],[5,14],[-1,-1],[5,2],[4,1],[5,0],[6,1],[5,2]] },
- ';': { width: 10, points: [[5,14],[4,13],[5,12],[6,13],[5,14],[-1,-1],[6,1],[5,0],[4,1],[5,2],[6,1],[6,-1],[5,-3],[4,-4]] },
- '<': { width: 24, points: [[20,18],[4,9],[20,0]] },
- '=': { width: 26, points: [[4,12],[22,12],[-1,-1],[4,6],[22,6]] },
- '>': { width: 24, points: [[4,18],[20,9],[4,0]] },
- '?': { width: 18, points: [[3,16],[3,17],[4,19],[5,20],[7,21],[11,21],[13,20],[14,19],[15,17],[15,15],[14,13],[13,12],[9,10],[9,7],[-1,-1],[9,2],[8,1],[9,0],[10,1],[9,2]] },
- '@': { width: 27, points: [[18,13],[17,15],[15,16],[12,16],[10,15],[9,14],[8,11],[8,8],[9,6],[11,5],[14,5],[16,6],[17,8],[-1,-1],[12,16],[10,14],[9,11],[9,8],[10,6],[11,5],[-1,-1],[18,16],[17,8],[17,6],[19,5],[21,5],[23,7],[24,10],[24,12],[23,15],[22,17],[20,19],[18,20],[15,21],[12,21],[9,20],[7,19],[5,17],[4,15],[3,12],[3,9],[4,6],[5,4],[7,2],[9,1],[12,0],[15,0],[18,1],[20,2],[21,3],[-1,-1],[19,16],[18,8],[18,6],[19,5]] },
- 'A': { width: 18, points: [[9,21],[1,0],[-1,-1],[9,21],[17,0],[-1,-1],[4,7],[14,7]] },
- 'B': { width: 21, points: [[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,15],[17,13],[16,12],[13,11],[-1,-1],[4,11],[13,11],[16,10],[17,9],[18,7],[18,4],[17,2],[16,1],[13,0],[4,0]] },
- 'C': { width: 21, points: [[18,16],[17,18],[15,20],[13,21],[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5]] },
- 'D': { width: 21, points: [[4,21],[4,0],[-1,-1],[4,21],[11,21],[14,20],[16,18],[17,16],[18,13],[18,8],[17,5],[16,3],[14,1],[11,0],[4,0]] },
- 'E': { width: 19, points: [[4,21],[4,0],[-1,-1],[4,21],[17,21],[-1,-1],[4,11],[12,11],[-1,-1],[4,0],[17,0]] },
- 'F': { width: 18, points: [[4,21],[4,0],[-1,-1],[4,21],[17,21],[-1,-1],[4,11],[12,11]] },
- 'G': { width: 21, points: [[18,16],[17,18],[15,20],[13,21],[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[18,8],[-1,-1],[13,8],[18,8]] },
- 'H': { width: 22, points: [[4,21],[4,0],[-1,-1],[18,21],[18,0],[-1,-1],[4,11],[18,11]] },
- 'I': { width: 8, points: [[4,21],[4,0]] },
- 'J': { width: 16, points: [[12,21],[12,5],[11,2],[10,1],[8,0],[6,0],[4,1],[3,2],[2,5],[2,7]] },
- 'K': { width: 21, points: [[4,21],[4,0],[-1,-1],[18,21],[4,7],[-1,-1],[9,12],[18,0]] },
- 'L': { width: 17, points: [[4,21],[4,0],[-1,-1],[4,0],[16,0]] },
- 'M': { width: 24, points: [[4,21],[4,0],[-1,-1],[4,21],[12,0],[-1,-1],[20,21],[12,0],[-1,-1],[20,21],[20,0]] },
- 'N': { width: 22, points: [[4,21],[4,0],[-1,-1],[4,21],[18,0],[-1,-1],[18,21],[18,0]] },
- 'O': { width: 22, points: [[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[19,8],[19,13],[18,16],[17,18],[15,20],[13,21],[9,21]] },
- 'P': { width: 21, points: [[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,14],[17,12],[16,11],[13,10],[4,10]] },
- 'Q': { width: 22, points: [[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[19,8],[19,13],[18,16],[17,18],[15,20],[13,21],[9,21],[-1,-1],[12,4],[18,-2]] },
- 'R': { width: 21, points: [[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,15],[17,13],[16,12],[13,11],[4,11],[-1,-1],[11,11],[18,0]] },
- 'S': { width: 20, points: [[17,18],[15,20],[12,21],[8,21],[5,20],[3,18],[3,16],[4,14],[5,13],[7,12],[13,10],[15,9],[16,8],[17,6],[17,3],[15,1],[12,0],[8,0],[5,1],[3,3]] },
- 'T': { width: 16, points: [[8,21],[8,0],[-1,-1],[1,21],[15,21]] },
- 'U': { width: 22, points: [[4,21],[4,6],[5,3],[7,1],[10,0],[12,0],[15,1],[17,3],[18,6],[18,21]] },
- 'V': { width: 18, points: [[1,21],[9,0],[-1,-1],[17,21],[9,0]] },
- 'W': { width: 24, points: [[2,21],[7,0],[-1,-1],[12,21],[7,0],[-1,-1],[12,21],[17,0],[-1,-1],[22,21],[17,0]] },
- 'X': { width: 20, points: [[3,21],[17,0],[-1,-1],[17,21],[3,0]] },
- 'Y': { width: 18, points: [[1,21],[9,11],[9,0],[-1,-1],[17,21],[9,11]] },
- 'Z': { width: 20, points: [[17,21],[3,0],[-1,-1],[3,21],[17,21],[-1,-1],[3,0],[17,0]] },
- '[': { width: 14, points: [[4,25],[4,-7],[-1,-1],[5,25],[5,-7],[-1,-1],[4,25],[11,25],[-1,-1],[4,-7],[11,-7]] },
- '\\': { width: 14, points: [[0,21],[14,-3]] },
- ']': { width: 14, points: [[9,25],[9,-7],[-1,-1],[10,25],[10,-7],[-1,-1],[3,25],[10,25],[-1,-1],[3,-7],[10,-7]] },
- '^': { width: 16, points: [[6,15],[8,18],[10,15],[-1,-1],[3,12],[8,17],[13,12],[-1,-1],[8,17],[8,0]] },
- '_': { width: 16, points: [[0,-2],[16,-2]] },
- '`': { width: 10, points: [[6,21],[5,20],[4,18],[4,16],[5,15],[6,16],[5,17]] },
- 'a': { width: 19, points: [[15,14],[15,0],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'b': { width: 19, points: [[4,21],[4,0],[-1,-1],[4,11],[6,13],[8,14],[11,14],[13,13],[15,11],[16,8],[16,6],[15,3],[13,1],[11,0],[8,0],[6,1],[4,3]] },
- 'c': { width: 18, points: [[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'd': { width: 19, points: [[15,21],[15,0],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'e': { width: 18, points: [[3,8],[15,8],[15,10],[14,12],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'f': { width: 12, points: [[10,21],[8,21],[6,20],[5,17],[5,0],[-1,-1],[2,14],[9,14]] },
- 'g': { width: 19, points: [[15,14],[15,-2],[14,-5],[13,-6],[11,-7],[8,-7],[6,-6],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'h': { width: 19, points: [[4,21],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0]] },
- 'i': { width: 8, points: [[3,21],[4,20],[5,21],[4,22],[3,21],[-1,-1],[4,14],[4,0]] },
- 'j': { width: 10, points: [[5,21],[6,20],[7,21],[6,22],[5,21],[-1,-1],[6,14],[6,-3],[5,-6],[3,-7],[1,-7]] },
- 'k': { width: 17, points: [[4,21],[4,0],[-1,-1],[14,14],[4,4],[-1,-1],[8,8],[15,0]] },
- 'l': { width: 8, points: [[4,21],[4,0]] },
- 'm': { width: 30, points: [[4,14],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0],[-1,-1],[15,10],[18,13],[20,14],[23,14],[25,13],[26,10],[26,0]] },
- 'n': { width: 19, points: [[4,14],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0]] },
- 'o': { width: 19, points: [[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3],[16,6],[16,8],[15,11],[13,13],[11,14],[8,14]] },
- 'p': { width: 19, points: [[4,14],[4,-7],[-1,-1],[4,11],[6,13],[8,14],[11,14],[13,13],[15,11],[16,8],[16,6],[15,3],[13,1],[11,0],[8,0],[6,1],[4,3]] },
- 'q': { width: 19, points: [[15,14],[15,-7],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]] },
- 'r': { width: 13, points: [[4,14],[4,0],[-1,-1],[4,8],[5,11],[7,13],[9,14],[12,14]] },
- 's': { width: 17, points: [[14,11],[13,13],[10,14],[7,14],[4,13],[3,11],[4,9],[6,8],[11,7],[13,6],[14,4],[14,3],[13,1],[10,0],[7,0],[4,1],[3,3]] },
- 't': { width: 12, points: [[5,21],[5,4],[6,1],[8,0],[10,0],[-1,-1],[2,14],[9,14]] },
- 'u': { width: 19, points: [[4,14],[4,4],[5,1],[7,0],[10,0],[12,1],[15,4],[-1,-1],[15,14],[15,0]] },
- 'v': { width: 16, points: [[2,14],[8,0],[-1,-1],[14,14],[8,0]] },
- 'w': { width: 22, points: [[3,14],[7,0],[-1,-1],[11,14],[7,0],[-1,-1],[11,14],[15,0],[-1,-1],[19,14],[15,0]] },
- 'x': { width: 17, points: [[3,14],[14,0],[-1,-1],[14,14],[3,0]] },
- 'y': { width: 16, points: [[2,14],[8,0],[-1,-1],[14,14],[8,0],[6,-4],[4,-6],[2,-7],[1,-7]] },
- 'z': { width: 17, points: [[14,14],[3,0],[-1,-1],[3,14],[14,14],[-1,-1],[3,0],[14,0]] },
- '{': { width: 14, points: [[9,25],[7,24],[6,23],[5,21],[5,19],[6,17],[7,16],[8,14],[8,12],[6,10],[-1,-1],[7,24],[6,22],[6,20],[7,18],[8,17],[9,15],[9,13],[8,11],[4,9],[8,7],[9,5],[9,3],[8,1],[7,0],[6,-2],[6,-4],[7,-6],[-1,-1],[6,8],[8,6],[8,4],[7,2],[6,1],[5,-1],[5,-3],[6,-5],[7,-6],[9,-7]] },
- '|': { width: 8, points: [[4,25],[4,-7]] },
- '}': { width: 14, points: [[5,25],[7,24],[8,23],[9,21],[9,19],[8,17],[7,16],[6,14],[6,12],[8,10],[-1,-1],[7,24],[8,22],[8,20],[7,18],[6,17],[5,15],[5,13],[6,11],[10,9],[6,7],[5,5],[5,3],[6,1],[7,0],[8,-2],[8,-4],[7,-6],[-1,-1],[8,8],[6,6],[6,4],[7,2],[8,1],[9,-1],[9,-3],[8,-5],[7,-6],[5,-7]] },
- '~': { width: 24, points: [[3,6],[3,8],[4,11],[6,12],[8,12],[10,11],[14,8],[16,7],[18,7],[20,8],[21,10],[-1,-1],[3,8],[4,10],[6,11],[8,11],[10,10],[14,7],[16,6],[18,6],[20,7],[21,10],[21,12]] }
- };
-
- $.jqplot.CanvasFontRenderer = function(options) {
- options = options || {};
- if (!options.pt2px) {
- options.pt2px = 1.5;
- }
- $.jqplot.CanvasTextRenderer.call(this, options);
- };
-
- $.jqplot.CanvasFontRenderer.prototype = new $.jqplot.CanvasTextRenderer({});
- $.jqplot.CanvasFontRenderer.prototype.constructor = $.jqplot.CanvasFontRenderer;
-
- $.jqplot.CanvasFontRenderer.prototype.measure = function(ctx, str)
- {
- // var fstyle = this.fontStyle+' '+this.fontVariant+' '+this.fontWeight+' '+this.fontSize+' '+this.fontFamily;
- var fstyle = this.fontSize+' '+this.fontFamily;
- ctx.save();
- ctx.font = fstyle;
- var w = ctx.measureText(str).width;
- ctx.restore();
- return w;
- };
-
- $.jqplot.CanvasFontRenderer.prototype.draw = function(ctx, str)
- {
- var x = 0;
- // leave room at bottom for descenders.
- var y = this.height*0.72;
- //var y = 12;
-
- ctx.save();
- var tx, ty;
-
- // 1st quadrant
- if ((-Math.PI/2 <= this.angle && this.angle <= 0) || (Math.PI*3/2 <= this.angle && this.angle <= Math.PI*2)) {
- tx = 0;
- ty = -Math.sin(this.angle) * this.width;
- }
- // 4th quadrant
- else if ((0 < this.angle && this.angle <= Math.PI/2) || (-Math.PI*2 <= this.angle && this.angle <= -Math.PI*3/2)) {
- tx = Math.sin(this.angle) * this.height;
- ty = 0;
- }
- // 2nd quadrant
- else if ((-Math.PI < this.angle && this.angle < -Math.PI/2) || (Math.PI <= this.angle && this.angle <= Math.PI*3/2)) {
- tx = -Math.cos(this.angle) * this.width;
- ty = -Math.sin(this.angle) * this.width - Math.cos(this.angle) * this.height;
- }
- // 3rd quadrant
- else if ((-Math.PI*3/2 < this.angle && this.angle < Math.PI) || (Math.PI/2 < this.angle && this.angle < Math.PI)) {
- tx = Math.sin(this.angle) * this.height - Math.cos(this.angle)*this.width;
- ty = -Math.cos(this.angle) * this.height;
- }
- ctx.strokeStyle = this.fillStyle;
- ctx.fillStyle = this.fillStyle;
- // var fstyle = this.fontStyle+' '+this.fontVariant+' '+this.fontWeight+' '+this.fontSize+' '+this.fontFamily;
- var fstyle = this.fontSize+' '+this.fontFamily;
- ctx.font = fstyle;
- ctx.translate(tx, ty);
- ctx.rotate(this.angle);
- ctx.fillText(str, x, y);
- // ctx.strokeText(str, x, y);
-
- ctx.restore();
- };
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.min.js
deleted file mode 100644
index 4a3fb652..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.canvasTextRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.CanvasTextRenderer=function(b){this.fontStyle="normal";this.fontVariant="normal";this.fontWeight="normal";this.fontSize="10px";this.fontFamily="sans-serif";this.fontStretch=1;this.fillStyle="#666666";this.angle=0;this.textAlign="start";this.textBaseline="alphabetic";this.text;this.width;this.height;this.pt2px=1.28;a.extend(true,this,b);this.normalizedFontSize=this.normalizeFontSize(this.fontSize);this.setHeight()};a.jqplot.CanvasTextRenderer.prototype.init=function(b){a.extend(true,this,b);this.normalizedFontSize=this.normalizeFontSize(this.fontSize);this.setHeight()};a.jqplot.CanvasTextRenderer.prototype.normalizeFontSize=function(b){b=String(b);var c=parseFloat(b);if(b.indexOf("px")>-1){return c/this.pt2px}else{if(b.indexOf("pt")>-1){return c}else{if(b.indexOf("em")>-1){return c*12}else{if(b.indexOf("%")>-1){return c*12/100}else{return c/this.pt2px}}}}};a.jqplot.CanvasTextRenderer.prototype.fontWeight2Float=function(b){if(Number(b)){return b/400}else{switch(b){case"normal":return 1;break;case"bold":return 1.75;break;case"bolder":return 2.25;break;case"lighter":return 0.75;break;default:return 1;break}}};a.jqplot.CanvasTextRenderer.prototype.getText=function(){return this.text};a.jqplot.CanvasTextRenderer.prototype.setText=function(c,b){this.text=c;this.setWidth(b);return this};a.jqplot.CanvasTextRenderer.prototype.getWidth=function(b){return this.width};a.jqplot.CanvasTextRenderer.prototype.setWidth=function(c,b){if(!b){this.width=this.measure(c,this.text)}else{this.width=b}return this};a.jqplot.CanvasTextRenderer.prototype.getHeight=function(b){return this.height};a.jqplot.CanvasTextRenderer.prototype.setHeight=function(b){if(!b){this.height=this.normalizedFontSize*this.pt2px}else{this.height=b}return this};a.jqplot.CanvasTextRenderer.prototype.letter=function(b){return this.letters[b]};a.jqplot.CanvasTextRenderer.prototype.ascent=function(){return this.normalizedFontSize};a.jqplot.CanvasTextRenderer.prototype.descent=function(){return 7*this.normalizedFontSize/25};a.jqplot.CanvasTextRenderer.prototype.measure=function(d,g){var f=0;var b=g.length;for(var e=0;e<b;e++){var h=this.letter(g.charAt(e));if(h){f+=h.width*this.normalizedFontSize/25*this.fontStretch}}return f};a.jqplot.CanvasTextRenderer.prototype.draw=function(s,n){var r=0;var o=this.height*0.72;var p=0;var l=n.length;var k=this.normalizedFontSize/25;s.save();var h,f;if((-Math.PI/2<=this.angle&&this.angle<=0)||(Math.PI*3/2<=this.angle&&this.angle<=Math.PI*2)){h=0;f=-Math.sin(this.angle)*this.width}else{if((0<this.angle&&this.angle<=Math.PI/2)||(-Math.PI*2<=this.angle&&this.angle<=-Math.PI*3/2)){h=Math.sin(this.angle)*this.height;f=0}else{if((-Math.PI<this.angle&&this.angle<-Math.PI/2)||(Math.PI<=this.angle&&this.angle<=Math.PI*3/2)){h=-Math.cos(this.angle)*this.width;f=-Math.sin(this.angle)*this.width-Math.cos(this.angle)*this.height}else{if((-Math.PI*3/2<this.angle&&this.angle<Math.PI)||(Math.PI/2<this.angle&&this.angle<Math.PI)){h=Math.sin(this.angle)*this.height-Math.cos(this.angle)*this.width;f=-Math.cos(this.angle)*this.height}}}}s.strokeStyle=this.fillStyle;s.fillStyle=this.fillStyle;s.translate(h,f);s.rotate(this.angle);s.lineCap="round";var t=(this.normalizedFontSize>30)?2:2+(30-this.normalizedFontSize)/20;s.lineWidth=t*k*this.fontWeight2Float(this.fontWeight);for(var g=0;g<l;g++){var m=this.letter(n.charAt(g));if(!m){continue}s.beginPath();var e=1;var b=0;for(var d=0;d<m.points.length;d++){var q=m.points[d];if(q[0]==-1&&q[1]==-1){e=1;continue}if(e){s.moveTo(r+q[0]*k*this.fontStretch,o-q[1]*k);e=false}else{s.lineTo(r+q[0]*k*this.fontStretch,o-q[1]*k)}}s.stroke();r+=m.width*k*this.fontStretch}s.restore();return p};a.jqplot.CanvasTextRenderer.prototype.letters={" ":{width:16,points:[]},"!":{width:10,points:[[5,21],[5,7],[-1,-1],[5,2],[4,1],[5,0],[6,1],[5,2]]},'"':{width:16,points:[[4,21],[4,14],[-1,-1],[12,21],[12,14]]},"#":{width:21,points:[[11,25],[4,-7],[-1,-1],[17,25],[10,-7],[-1,-1],[4,12],[18,12],[-1,-1],[3,6],[17,6]]},"$":{width:20,points:[[8,25],[8,-4],[-1,-1],[12,25],[12,-4],[-1,-1],[17,18],[15,20],[12,21],[8,21],[5,20],[3,18],[3,16],[4,14],[5,13],[7,12],[13,10],[15,9],[16,8],[17,6],[17,3],[15,1],[12,0],[8,0],[5,1],[3,3]]},"%":{width:24,points:[[21,21],[3,0],[-1,-1],[8,21],[10,19],[10,17],[9,15],[7,14],[5,14],[3,16],[3,18],[4,20],[6,21],[8,21],[10,20],[13,19],[16,19],[19,20],[21,21],[-1,-1],[17,7],[15,6],[14,4],[14,2],[16,0],[18,0],[20,1],[21,3],[21,5],[19,7],[17,7]]},"&":{width:26,points:[[23,12],[23,13],[22,14],[21,14],[20,13],[19,11],[17,6],[15,3],[13,1],[11,0],[7,0],[5,1],[4,2],[3,4],[3,6],[4,8],[5,9],[12,13],[13,14],[14,16],[14,18],[13,20],[11,21],[9,20],[8,18],[8,16],[9,13],[11,10],[16,3],[18,1],[20,0],[22,0],[23,1],[23,2]]},"'":{width:10,points:[[5,19],[4,20],[5,21],[6,20],[6,18],[5,16],[4,15]]},"(":{width:14,points:[[11,25],[9,23],[7,20],[5,16],[4,11],[4,7],[5,2],[7,-2],[9,-5],[11,-7]]},")":{width:14,points:[[3,25],[5,23],[7,20],[9,16],[10,11],[10,7],[9,2],[7,-2],[5,-5],[3,-7]]},"*":{width:16,points:[[8,21],[8,9],[-1,-1],[3,18],[13,12],[-1,-1],[13,18],[3,12]]},"+":{width:26,points:[[13,18],[13,0],[-1,-1],[4,9],[22,9]]},",":{width:10,points:[[6,1],[5,0],[4,1],[5,2],[6,1],[6,-1],[5,-3],[4,-4]]},"-":{width:18,points:[[6,9],[12,9]]},".":{width:10,points:[[5,2],[4,1],[5,0],[6,1],[5,2]]},"/":{width:22,points:[[20,25],[2,-7]]},"0":{width:20,points:[[9,21],[6,20],[4,17],[3,12],[3,9],[4,4],[6,1],[9,0],[11,0],[14,1],[16,4],[17,9],[17,12],[16,17],[14,20],[11,21],[9,21]]},"1":{width:20,points:[[6,17],[8,18],[11,21],[11,0]]},"2":{width:20,points:[[4,16],[4,17],[5,19],[6,20],[8,21],[12,21],[14,20],[15,19],[16,17],[16,15],[15,13],[13,10],[3,0],[17,0]]},"3":{width:20,points:[[5,21],[16,21],[10,13],[13,13],[15,12],[16,11],[17,8],[17,6],[16,3],[14,1],[11,0],[8,0],[5,1],[4,2],[3,4]]},"4":{width:20,points:[[13,21],[3,7],[18,7],[-1,-1],[13,21],[13,0]]},"5":{width:20,points:[[15,21],[5,21],[4,12],[5,13],[8,14],[11,14],[14,13],[16,11],[17,8],[17,6],[16,3],[14,1],[11,0],[8,0],[5,1],[4,2],[3,4]]},"6":{width:20,points:[[16,18],[15,20],[12,21],[10,21],[7,20],[5,17],[4,12],[4,7],[5,3],[7,1],[10,0],[11,0],[14,1],[16,3],[17,6],[17,7],[16,10],[14,12],[11,13],[10,13],[7,12],[5,10],[4,7]]},"7":{width:20,points:[[17,21],[7,0],[-1,-1],[3,21],[17,21]]},"8":{width:20,points:[[8,21],[5,20],[4,18],[4,16],[5,14],[7,13],[11,12],[14,11],[16,9],[17,7],[17,4],[16,2],[15,1],[12,0],[8,0],[5,1],[4,2],[3,4],[3,7],[4,9],[6,11],[9,12],[13,13],[15,14],[16,16],[16,18],[15,20],[12,21],[8,21]]},"9":{width:20,points:[[16,14],[15,11],[13,9],[10,8],[9,8],[6,9],[4,11],[3,14],[3,15],[4,18],[6,20],[9,21],[10,21],[13,20],[15,18],[16,14],[16,9],[15,4],[13,1],[10,0],[8,0],[5,1],[4,3]]},":":{width:10,points:[[5,14],[4,13],[5,12],[6,13],[5,14],[-1,-1],[5,2],[4,1],[5,0],[6,1],[5,2]]},";":{width:10,points:[[5,14],[4,13],[5,12],[6,13],[5,14],[-1,-1],[6,1],[5,0],[4,1],[5,2],[6,1],[6,-1],[5,-3],[4,-4]]},"<":{width:24,points:[[20,18],[4,9],[20,0]]},"=":{width:26,points:[[4,12],[22,12],[-1,-1],[4,6],[22,6]]},">":{width:24,points:[[4,18],[20,9],[4,0]]},"?":{width:18,points:[[3,16],[3,17],[4,19],[5,20],[7,21],[11,21],[13,20],[14,19],[15,17],[15,15],[14,13],[13,12],[9,10],[9,7],[-1,-1],[9,2],[8,1],[9,0],[10,1],[9,2]]},"@":{width:27,points:[[18,13],[17,15],[15,16],[12,16],[10,15],[9,14],[8,11],[8,8],[9,6],[11,5],[14,5],[16,6],[17,8],[-1,-1],[12,16],[10,14],[9,11],[9,8],[10,6],[11,5],[-1,-1],[18,16],[17,8],[17,6],[19,5],[21,5],[23,7],[24,10],[24,12],[23,15],[22,17],[20,19],[18,20],[15,21],[12,21],[9,20],[7,19],[5,17],[4,15],[3,12],[3,9],[4,6],[5,4],[7,2],[9,1],[12,0],[15,0],[18,1],[20,2],[21,3],[-1,-1],[19,16],[18,8],[18,6],[19,5]]},A:{width:18,points:[[9,21],[1,0],[-1,-1],[9,21],[17,0],[-1,-1],[4,7],[14,7]]},B:{width:21,points:[[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,15],[17,13],[16,12],[13,11],[-1,-1],[4,11],[13,11],[16,10],[17,9],[18,7],[18,4],[17,2],[16,1],[13,0],[4,0]]},C:{width:21,points:[[18,16],[17,18],[15,20],[13,21],[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5]]},D:{width:21,points:[[4,21],[4,0],[-1,-1],[4,21],[11,21],[14,20],[16,18],[17,16],[18,13],[18,8],[17,5],[16,3],[14,1],[11,0],[4,0]]},E:{width:19,points:[[4,21],[4,0],[-1,-1],[4,21],[17,21],[-1,-1],[4,11],[12,11],[-1,-1],[4,0],[17,0]]},F:{width:18,points:[[4,21],[4,0],[-1,-1],[4,21],[17,21],[-1,-1],[4,11],[12,11]]},G:{width:21,points:[[18,16],[17,18],[15,20],[13,21],[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[18,8],[-1,-1],[13,8],[18,8]]},H:{width:22,points:[[4,21],[4,0],[-1,-1],[18,21],[18,0],[-1,-1],[4,11],[18,11]]},I:{width:8,points:[[4,21],[4,0]]},J:{width:16,points:[[12,21],[12,5],[11,2],[10,1],[8,0],[6,0],[4,1],[3,2],[2,5],[2,7]]},K:{width:21,points:[[4,21],[4,0],[-1,-1],[18,21],[4,7],[-1,-1],[9,12],[18,0]]},L:{width:17,points:[[4,21],[4,0],[-1,-1],[4,0],[16,0]]},M:{width:24,points:[[4,21],[4,0],[-1,-1],[4,21],[12,0],[-1,-1],[20,21],[12,0],[-1,-1],[20,21],[20,0]]},N:{width:22,points:[[4,21],[4,0],[-1,-1],[4,21],[18,0],[-1,-1],[18,21],[18,0]]},O:{width:22,points:[[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[19,8],[19,13],[18,16],[17,18],[15,20],[13,21],[9,21]]},P:{width:21,points:[[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,14],[17,12],[16,11],[13,10],[4,10]]},Q:{width:22,points:[[9,21],[7,20],[5,18],[4,16],[3,13],[3,8],[4,5],[5,3],[7,1],[9,0],[13,0],[15,1],[17,3],[18,5],[19,8],[19,13],[18,16],[17,18],[15,20],[13,21],[9,21],[-1,-1],[12,4],[18,-2]]},R:{width:21,points:[[4,21],[4,0],[-1,-1],[4,21],[13,21],[16,20],[17,19],[18,17],[18,15],[17,13],[16,12],[13,11],[4,11],[-1,-1],[11,11],[18,0]]},S:{width:20,points:[[17,18],[15,20],[12,21],[8,21],[5,20],[3,18],[3,16],[4,14],[5,13],[7,12],[13,10],[15,9],[16,8],[17,6],[17,3],[15,1],[12,0],[8,0],[5,1],[3,3]]},T:{width:16,points:[[8,21],[8,0],[-1,-1],[1,21],[15,21]]},U:{width:22,points:[[4,21],[4,6],[5,3],[7,1],[10,0],[12,0],[15,1],[17,3],[18,6],[18,21]]},V:{width:18,points:[[1,21],[9,0],[-1,-1],[17,21],[9,0]]},W:{width:24,points:[[2,21],[7,0],[-1,-1],[12,21],[7,0],[-1,-1],[12,21],[17,0],[-1,-1],[22,21],[17,0]]},X:{width:20,points:[[3,21],[17,0],[-1,-1],[17,21],[3,0]]},Y:{width:18,points:[[1,21],[9,11],[9,0],[-1,-1],[17,21],[9,11]]},Z:{width:20,points:[[17,21],[3,0],[-1,-1],[3,21],[17,21],[-1,-1],[3,0],[17,0]]},"[":{width:14,points:[[4,25],[4,-7],[-1,-1],[5,25],[5,-7],[-1,-1],[4,25],[11,25],[-1,-1],[4,-7],[11,-7]]},"\\":{width:14,points:[[0,21],[14,-3]]},"]":{width:14,points:[[9,25],[9,-7],[-1,-1],[10,25],[10,-7],[-1,-1],[3,25],[10,25],[-1,-1],[3,-7],[10,-7]]},"^":{width:16,points:[[6,15],[8,18],[10,15],[-1,-1],[3,12],[8,17],[13,12],[-1,-1],[8,17],[8,0]]},_:{width:16,points:[[0,-2],[16,-2]]},"`":{width:10,points:[[6,21],[5,20],[4,18],[4,16],[5,15],[6,16],[5,17]]},a:{width:19,points:[[15,14],[15,0],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},b:{width:19,points:[[4,21],[4,0],[-1,-1],[4,11],[6,13],[8,14],[11,14],[13,13],[15,11],[16,8],[16,6],[15,3],[13,1],[11,0],[8,0],[6,1],[4,3]]},c:{width:18,points:[[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},d:{width:19,points:[[15,21],[15,0],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},e:{width:18,points:[[3,8],[15,8],[15,10],[14,12],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},f:{width:12,points:[[10,21],[8,21],[6,20],[5,17],[5,0],[-1,-1],[2,14],[9,14]]},g:{width:19,points:[[15,14],[15,-2],[14,-5],[13,-6],[11,-7],[8,-7],[6,-6],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},h:{width:19,points:[[4,21],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0]]},i:{width:8,points:[[3,21],[4,20],[5,21],[4,22],[3,21],[-1,-1],[4,14],[4,0]]},j:{width:10,points:[[5,21],[6,20],[7,21],[6,22],[5,21],[-1,-1],[6,14],[6,-3],[5,-6],[3,-7],[1,-7]]},k:{width:17,points:[[4,21],[4,0],[-1,-1],[14,14],[4,4],[-1,-1],[8,8],[15,0]]},l:{width:8,points:[[4,21],[4,0]]},m:{width:30,points:[[4,14],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0],[-1,-1],[15,10],[18,13],[20,14],[23,14],[25,13],[26,10],[26,0]]},n:{width:19,points:[[4,14],[4,0],[-1,-1],[4,10],[7,13],[9,14],[12,14],[14,13],[15,10],[15,0]]},o:{width:19,points:[[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3],[16,6],[16,8],[15,11],[13,13],[11,14],[8,14]]},p:{width:19,points:[[4,14],[4,-7],[-1,-1],[4,11],[6,13],[8,14],[11,14],[13,13],[15,11],[16,8],[16,6],[15,3],[13,1],[11,0],[8,0],[6,1],[4,3]]},q:{width:19,points:[[15,14],[15,-7],[-1,-1],[15,11],[13,13],[11,14],[8,14],[6,13],[4,11],[3,8],[3,6],[4,3],[6,1],[8,0],[11,0],[13,1],[15,3]]},r:{width:13,points:[[4,14],[4,0],[-1,-1],[4,8],[5,11],[7,13],[9,14],[12,14]]},s:{width:17,points:[[14,11],[13,13],[10,14],[7,14],[4,13],[3,11],[4,9],[6,8],[11,7],[13,6],[14,4],[14,3],[13,1],[10,0],[7,0],[4,1],[3,3]]},t:{width:12,points:[[5,21],[5,4],[6,1],[8,0],[10,0],[-1,-1],[2,14],[9,14]]},u:{width:19,points:[[4,14],[4,4],[5,1],[7,0],[10,0],[12,1],[15,4],[-1,-1],[15,14],[15,0]]},v:{width:16,points:[[2,14],[8,0],[-1,-1],[14,14],[8,0]]},w:{width:22,points:[[3,14],[7,0],[-1,-1],[11,14],[7,0],[-1,-1],[11,14],[15,0],[-1,-1],[19,14],[15,0]]},x:{width:17,points:[[3,14],[14,0],[-1,-1],[14,14],[3,0]]},y:{width:16,points:[[2,14],[8,0],[-1,-1],[14,14],[8,0],[6,-4],[4,-6],[2,-7],[1,-7]]},z:{width:17,points:[[14,14],[3,0],[-1,-1],[3,14],[14,14],[-1,-1],[3,0],[14,0]]},"{":{width:14,points:[[9,25],[7,24],[6,23],[5,21],[5,19],[6,17],[7,16],[8,14],[8,12],[6,10],[-1,-1],[7,24],[6,22],[6,20],[7,18],[8,17],[9,15],[9,13],[8,11],[4,9],[8,7],[9,5],[9,3],[8,1],[7,0],[6,-2],[6,-4],[7,-6],[-1,-1],[6,8],[8,6],[8,4],[7,2],[6,1],[5,-1],[5,-3],[6,-5],[7,-6],[9,-7]]},"|":{width:8,points:[[4,25],[4,-7]]},"}":{width:14,points:[[5,25],[7,24],[8,23],[9,21],[9,19],[8,17],[7,16],[6,14],[6,12],[8,10],[-1,-1],[7,24],[8,22],[8,20],[7,18],[6,17],[5,15],[5,13],[6,11],[10,9],[6,7],[5,5],[5,3],[6,1],[7,0],[8,-2],[8,-4],[7,-6],[-1,-1],[8,8],[6,6],[6,4],[7,2],[8,1],[9,-1],[9,-3],[8,-5],[7,-6],[5,-7]]},"~":{width:24,points:[[3,6],[3,8],[4,11],[6,12],[8,12],[10,11],[14,8],[16,7],[18,7],[20,8],[21,10],[-1,-1],[3,8],[4,10],[6,11],[8,11],[10,10],[14,7],[16,6],[18,6],[20,7],[21,10],[21,12]]}};a.jqplot.CanvasFontRenderer=function(b){b=b||{};if(!b.pt2px){b.pt2px=1.5}a.jqplot.CanvasTextRenderer.call(this,b)};a.jqplot.CanvasFontRenderer.prototype=new a.jqplot.CanvasTextRenderer({});a.jqplot.CanvasFontRenderer.prototype.constructor=a.jqplot.CanvasFontRenderer;a.jqplot.CanvasFontRenderer.prototype.measure=function(c,e){var d=this.fontSize+" "+this.fontFamily;c.save();c.font=d;var b=c.measureText(e).width;c.restore();return b};a.jqplot.CanvasFontRenderer.prototype.draw=function(e,g){var c=0;var h=this.height*0.72;e.save();var d,b;if((-Math.PI/2<=this.angle&&this.angle<=0)||(Math.PI*3/2<=this.angle&&this.angle<=Math.PI*2)){d=0;b=-Math.sin(this.angle)*this.width}else{if((0<this.angle&&this.angle<=Math.PI/2)||(-Math.PI*2<=this.angle&&this.angle<=-Math.PI*3/2)){d=Math.sin(this.angle)*this.height;b=0}else{if((-Math.PI<this.angle&&this.angle<-Math.PI/2)||(Math.PI<=this.angle&&this.angle<=Math.PI*3/2)){d=-Math.cos(this.angle)*this.width;b=-Math.sin(this.angle)*this.width-Math.cos(this.angle)*this.height}else{if((-Math.PI*3/2<this.angle&&this.angle<Math.PI)||(Math.PI/2<this.angle&&this.angle<Math.PI)){d=Math.sin(this.angle)*this.height-Math.cos(this.angle)*this.width;b=-Math.cos(this.angle)*this.height}}}}e.strokeStyle=this.fillStyle;e.fillStyle=this.fillStyle;var f=this.fontSize+" "+this.fontFamily;e.font=f;e.translate(d,b);e.rotate(this.angle);e.fillText(g,c,h);e.restore()}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.js
deleted file mode 100644
index 070801cb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.js
+++ /dev/null
@@ -1,673 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * class: $.jqplot.CategoryAxisRenderer
- * A plugin for jqPlot to render a category style axis, with equal pixel spacing between y data values of a series.
- *
- * To use this renderer, include the plugin in your source
- * > <script type="text/javascript" language="javascript" src="plugins/jqplot.categoryAxisRenderer.js"></script>
- *
- * and supply the appropriate options to your plot
- *
- * > {axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer}}}
- **/
- $.jqplot.CategoryAxisRenderer = function(options) {
- $.jqplot.LinearAxisRenderer.call(this);
- // prop: sortMergedLabels
- // True to sort tick labels when labels are created by merging
- // x axis values from multiple series. That is, say you have
- // two series like:
- // > line1 = [[2006, 4], [2008, 9], [2009, 16]];
- // > line2 = [[2006, 3], [2007, 7], [2008, 6]];
- // If no label array is specified, tick labels will be collected
- // from the x values of the series. With sortMergedLabels
- // set to true, tick labels will be:
- // > [2006, 2007, 2008, 2009]
- // With sortMergedLabels set to false, tick labels will be:
- // > [2006, 2008, 2009, 2007]
- //
- // Note, this property is specified on the renderOptions for the
- // axes when creating a plot:
- // > axes:{xaxis:{renderer:$.jqplot.CategoryAxisRenderer, rendererOptions:{sortMergedLabels:true}}}
- this.sortMergedLabels = false;
- };
-
- $.jqplot.CategoryAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.CategoryAxisRenderer.prototype.constructor = $.jqplot.CategoryAxisRenderer;
-
- $.jqplot.CategoryAxisRenderer.prototype.init = function(options){
- this.groups = 1;
- this.groupLabels = [];
- this._groupLabels = [];
- this._grouped = false;
- this._barsPerGroup = null;
- this.reverse = false;
- // prop: tickRenderer
- // A class of a rendering engine for creating the ticks labels displayed on the plot,
- // See <$.jqplot.AxisTickRenderer>.
- // this.tickRenderer = $.jqplot.AxisTickRenderer;
- // this.labelRenderer = $.jqplot.AxisLabelRenderer;
- $.extend(true, this, {tickOptions:{formatString:'%d'}}, options);
- var db = this._dataBounds;
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- if (s.groups) {
- this.groups = s.groups;
- }
- var d = s.data;
-
- for (var j=0; j<d.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- if (d[j][0] < db.min || db.min == null) {
- db.min = d[j][0];
- }
- if (d[j][0] > db.max || db.max == null) {
- db.max = d[j][0];
- }
- }
- else {
- if (d[j][1] < db.min || db.min == null) {
- db.min = d[j][1];
- }
- if (d[j][1] > db.max || db.max == null) {
- db.max = d[j][1];
- }
- }
- }
- }
-
- if (this.groupLabels.length) {
- this.groups = this.groupLabels.length;
- }
- };
-
-
- $.jqplot.CategoryAxisRenderer.prototype.createTicks = function() {
- // we're are operating on an axis here
- var ticks = this._ticks;
- var userTicks = this.ticks;
- var name = this.name;
- // databounds were set on axis initialization.
- var db = this._dataBounds;
- var dim, interval;
- var min, max;
- var pos1, pos2;
- var tt, i;
-
- // if we already have ticks, use them.
- if (userTicks.length) {
- // adjust with blanks if we have groups
- if (this.groups > 1 && !this._grouped) {
- var l = userTicks.length;
- var skip = parseInt(l/this.groups, 10);
- var count = 0;
- for (var i=skip; i<l; i+=skip) {
- userTicks.splice(i+count, 0, ' ');
- count++;
- }
- this._grouped = true;
- }
- this.min = 0.5;
- this.max = userTicks.length + 0.5;
- var range = this.max - this.min;
- this.numberTicks = 2*userTicks.length + 1;
- for (i=0; i<userTicks.length; i++){
- tt = this.min + 2 * i * range / (this.numberTicks-1);
- // need a marker before and after the tick
- var t = new this.tickRenderer(this.tickOptions);
- t.showLabel = false;
- // t.showMark = true;
- t.setTick(tt, this.name);
- this._ticks.push(t);
- var t = new this.tickRenderer(this.tickOptions);
- t.label = userTicks[i];
- // t.showLabel = true;
- t.showMark = false;
- t.showGridline = false;
- t.setTick(tt+0.5, this.name);
- this._ticks.push(t);
- }
- // now add the last tick at the end
- var t = new this.tickRenderer(this.tickOptions);
- t.showLabel = false;
- // t.showMark = true;
- t.setTick(tt+1, this.name);
- this._ticks.push(t);
- }
-
- // we don't have any ticks yet, let's make some!
- else {
- if (name == 'xaxis' || name == 'x2axis') {
- dim = this._plotDimensions.width;
- }
- else {
- dim = this._plotDimensions.height;
- }
-
- // if min, max and number of ticks specified, user can't specify interval.
- if (this.min != null && this.max != null && this.numberTicks != null) {
- this.tickInterval = null;
- }
-
- // if max, min, and interval specified and interval won't fit, ignore interval.
- if (this.min != null && this.max != null && this.tickInterval != null) {
- if (parseInt((this.max-this.min)/this.tickInterval, 10) != (this.max-this.min)/this.tickInterval) {
- this.tickInterval = null;
- }
- }
-
- // find out how many categories are in the lines and collect labels
- var labels = [];
- var numcats = 0;
- var min = 0.5;
- var max, val;
- var isMerged = false;
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- for (var j=0; j<s.data.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- val = s.data[j][0];
- }
- else {
- val = s.data[j][1];
- }
- if ($.inArray(val, labels) == -1) {
- isMerged = true;
- numcats += 1;
- labels.push(val);
- }
- }
- }
-
- if (isMerged && this.sortMergedLabels) {
- labels.sort(function(a,b) { return a - b; });
- }
-
- // keep a reference to these tick labels to use for redrawing plot (see bug #57)
- this.ticks = labels;
-
- // now bin the data values to the right lables.
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- for (var j=0; j<s.data.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- val = s.data[j][0];
- }
- else {
- val = s.data[j][1];
- }
- // for category axis, force the values into category bins.
- // we should have the value in the label array now.
- var idx = $.inArray(val, labels)+1;
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- s.data[j][0] = idx;
- }
- else {
- s.data[j][1] = idx;
- }
- }
- }
-
- // adjust with blanks if we have groups
- if (this.groups > 1 && !this._grouped) {
- var l = labels.length;
- var skip = parseInt(l/this.groups, 10);
- var count = 0;
- for (var i=skip; i<l; i+=skip+1) {
- labels[i] = ' ';
- }
- this._grouped = true;
- }
-
- max = numcats + 0.5;
- if (this.numberTicks == null) {
- this.numberTicks = 2*numcats + 1;
- }
-
- var range = max - min;
- this.min = min;
- this.max = max;
- var track = 0;
-
- // todo: adjust this so more ticks displayed.
- var maxVisibleTicks = parseInt(3+dim/10, 10);
- var skip = parseInt(numcats/maxVisibleTicks, 10);
-
- if (this.tickInterval == null) {
-
- this.tickInterval = range / (this.numberTicks-1);
-
- }
- // if tickInterval is specified, we will ignore any computed maximum.
- for (var i=0; i<this.numberTicks; i++){
- tt = this.min + i * this.tickInterval;
- var t = new this.tickRenderer(this.tickOptions);
- // if even tick, it isn't a category, it's a divider
- if (i/2 == parseInt(i/2, 10)) {
- t.showLabel = false;
- t.showMark = true;
- }
- else {
- if (skip>0 && track<skip) {
- t.showLabel = false;
- track += 1;
- }
- else {
- t.showLabel = true;
- track = 0;
- }
- t.label = t.formatter(t.formatString, labels[(i-1)/2]);
- t.showMark = false;
- t.showGridline = false;
- }
- t.setTick(tt, this.name);
- this._ticks.push(t);
- }
- }
-
- };
-
- // called with scope of axis
- $.jqplot.CategoryAxisRenderer.prototype.draw = function(ctx, plot) {
- if (this.show) {
- // populate the axis label and value properties.
- // createTicks is a method on the renderer, but
- // call it within the scope of the axis.
- this.renderer.createTicks.call(this);
- // fill a div with axes labels in the right direction.
- // Need to pregenerate each axis to get it's bounds and
- // position it and the labels correctly on the plot.
- var dim=0;
- var temp;
- // Added for theming.
- if (this._elem) {
- // this._elem.empty();
- // Memory Leaks patch
- this._elem.emptyForce();
- }
-
- this._elem = this._elem || $('<div class="jqplot-axis jqplot-'+this.name+'" style="position:absolute;"></div>');
-
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- this._elem.width(this._plotDimensions.width);
- }
- else {
- this._elem.height(this._plotDimensions.height);
- }
-
- // create a _label object.
- this.labelOptions.axis = this.name;
- this._label = new this.labelRenderer(this.labelOptions);
- if (this._label.show) {
- var elem = this._label.draw(ctx, plot);
- elem.appendTo(this._elem);
- }
-
- var t = this._ticks;
- for (var i=0; i<t.length; i++) {
- var tick = t[i];
- if (tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- var elem = tick.draw(ctx, plot);
- elem.appendTo(this._elem);
- }
- }
-
- this._groupLabels = [];
- // now make group labels
- for (var i=0; i<this.groupLabels.length; i++)
- {
- var elem = $('<div style="position:absolute;" class="jqplot-'+this.name+'-groupLabel"></div>');
- elem.html(this.groupLabels[i]);
- this._groupLabels.push(elem);
- elem.appendTo(this._elem);
- }
- }
- return this._elem;
- };
-
- // called with scope of axis
- $.jqplot.CategoryAxisRenderer.prototype.set = function() {
- var dim = 0;
- var temp;
- var w = 0;
- var h = 0;
- var lshow = (this._label == null) ? false : this._label.show;
- if (this.show) {
- var t = this._ticks;
- for (var i=0; i<t.length; i++) {
- var tick = t[i];
- if (tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- temp = tick._elem.outerHeight(true);
- }
- else {
- temp = tick._elem.outerWidth(true);
- }
- if (temp > dim) {
- dim = temp;
- }
- }
- }
-
- var dim2 = 0;
- for (var i=0; i<this._groupLabels.length; i++) {
- var l = this._groupLabels[i];
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- temp = l.outerHeight(true);
- }
- else {
- temp = l.outerWidth(true);
- }
- if (temp > dim2) {
- dim2 = temp;
- }
- }
-
- if (lshow) {
- w = this._label._elem.outerWidth(true);
- h = this._label._elem.outerHeight(true);
- }
- if (this.name == 'xaxis') {
- dim += dim2 + h;
- this._elem.css({'height':dim+'px', left:'0px', bottom:'0px'});
- }
- else if (this.name == 'x2axis') {
- dim += dim2 + h;
- this._elem.css({'height':dim+'px', left:'0px', top:'0px'});
- }
- else if (this.name == 'yaxis') {
- dim += dim2 + w;
- this._elem.css({'width':dim+'px', left:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- else {
- dim += dim2 + w;
- this._elem.css({'width':dim+'px', right:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.CategoryAxisRenderer.prototype.pack = function(pos, offsets) {
- var ticks = this._ticks;
- var max = this.max;
- var min = this.min;
- var offmax = offsets.max;
- var offmin = offsets.min;
- var lshow = (this._label == null) ? false : this._label.show;
- var i;
-
- for (var p in pos) {
- this._elem.css(p, pos[p]);
- }
-
- this._offsets = offsets;
- // pixellength will be + for x axes and - for y axes becasue pixels always measured from top left.
- var pixellength = offmax - offmin;
- var unitlength = max - min;
-
- if (!this.reverse) {
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
-
- this.u2p = function(u){
- return (u - min) * pixellength / unitlength + offmin;
- };
-
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- if (this.name == 'xaxis' || this.name == 'x2axis'){
- this.series_u2p = function(u){
- return (u - min) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- else {
- this.series_u2p = function(u){
- return (u - max) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
- }
-
- else {
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
-
- this.u2p = function(u){
- return offmin + (max - u) * pixellength / unitlength;
- };
-
- this.p2u = function(p){
- return min + (p - offmin) * unitlength / pixellength;
- };
-
- if (this.name == 'xaxis' || this.name == 'x2axis'){
- this.series_u2p = function(u){
- return (max - u) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
-
- else {
- this.series_u2p = function(u){
- return (min - u) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- }
-
-
- if (this.show) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- for (i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
-
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'xaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- if (temp * t.angle < 0) {
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- }
- // position at start
- else {
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- }
- break;
- case 'end':
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- case 'start':
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- break;
- case 'middle':
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- default:
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- }
- }
- else {
- shim = -t.getWidth()/2;
- }
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('left', val);
- t.pack();
- }
- }
-
- var labeledge=['bottom', 0];
- if (lshow) {
- var w = this._label._elem.outerWidth(true);
- this._label._elem.css('left', offmin + pixellength/2 - w/2 + 'px');
- if (this.name == 'xaxis') {
- this._label._elem.css('bottom', '0px');
- labeledge = ['bottom', this._label._elem.outerHeight(true)];
- }
- else {
- this._label._elem.css('top', '0px');
- labeledge = ['top', this._label._elem.outerHeight(true)];
- }
- this._label.pack();
- }
-
- // draw the group labels
- var step = parseInt(this._ticks.length/this.groups, 10);
- for (i=0; i<this._groupLabels.length; i++) {
- var mid = 0;
- var count = 0;
- for (var j=i*step; j<=(i+1)*step; j++) {
- if (this._ticks[j]._elem && this._ticks[j].label != " ") {
- var t = this._ticks[j]._elem;
- var p = t.position();
- mid += p.left + t.outerWidth(true)/2;
- count++;
- }
- }
- mid = mid/count;
- this._groupLabels[i].css({'left':(mid - this._groupLabels[i].outerWidth(true)/2)});
- this._groupLabels[i].css(labeledge[0], labeledge[1]);
- }
- }
- else {
- for (i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'yaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- case 'end':
- if (temp * t.angle < 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'start':
- if (t.angle > 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'middle':
- // if (t.angle > 0) {
- // shim = -t.getHeight()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- // }
- // else {
- // shim = -t.getHeight()/2 - t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- // }
- shim = -t.getHeight()/2;
- break;
- default:
- shim = -t.getHeight()/2;
- break;
- }
- }
- else {
- shim = -t.getHeight()/2;
- }
-
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('top', val);
- t.pack();
- }
- }
-
- var labeledge=['left', 0];
- if (lshow) {
- var h = this._label._elem.outerHeight(true);
- this._label._elem.css('top', offmax - pixellength/2 - h/2 + 'px');
- if (this.name == 'yaxis') {
- this._label._elem.css('left', '0px');
- labeledge = ['left', this._label._elem.outerWidth(true)];
- }
- else {
- this._label._elem.css('right', '0px');
- labeledge = ['right', this._label._elem.outerWidth(true)];
- }
- this._label.pack();
- }
-
- // draw the group labels, position top here, do left after label position.
- var step = parseInt(this._ticks.length/this.groups, 10);
- for (i=0; i<this._groupLabels.length; i++) {
- var mid = 0;
- var count = 0;
- for (var j=i*step; j<=(i+1)*step; j++) {
- if (this._ticks[j]._elem && this._ticks[j].label != " ") {
- var t = this._ticks[j]._elem;
- var p = t.position();
- mid += p.top + t.outerHeight()/2;
- count++;
- }
- }
- mid = mid/count;
- this._groupLabels[i].css({'top':mid - this._groupLabels[i].outerHeight()/2});
- this._groupLabels[i].css(labeledge[0], labeledge[1]);
-
- }
- }
- }
- };
-
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.min.js
deleted file mode 100644
index 7cff1591..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.categoryAxisRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.CategoryAxisRenderer=function(b){a.jqplot.LinearAxisRenderer.call(this);this.sortMergedLabels=false};a.jqplot.CategoryAxisRenderer.prototype=new a.jqplot.LinearAxisRenderer();a.jqplot.CategoryAxisRenderer.prototype.constructor=a.jqplot.CategoryAxisRenderer;a.jqplot.CategoryAxisRenderer.prototype.init=function(e){this.groups=1;this.groupLabels=[];this._groupLabels=[];this._grouped=false;this._barsPerGroup=null;this.reverse=false;a.extend(true,this,{tickOptions:{formatString:"%d"}},e);var b=this._dataBounds;for(var f=0;f<this._series.length;f++){var g=this._series[f];if(g.groups){this.groups=g.groups}var h=g.data;for(var c=0;c<h.length;c++){if(this.name=="xaxis"||this.name=="x2axis"){if(h[c][0]<b.min||b.min==null){b.min=h[c][0]}if(h[c][0]>b.max||b.max==null){b.max=h[c][0]}}else{if(h[c][1]<b.min||b.min==null){b.min=h[c][1]}if(h[c][1]>b.max||b.max==null){b.max=h[c][1]}}}}if(this.groupLabels.length){this.groups=this.groupLabels.length}};a.jqplot.CategoryAxisRenderer.prototype.createTicks=function(){var D=this._ticks;var z=this.ticks;var F=this.name;var C=this._dataBounds;var v,A;var q,w;var d,c;var b,x;if(z.length){if(this.groups>1&&!this._grouped){var r=z.length;var p=parseInt(r/this.groups,10);var e=0;for(var x=p;x<r;x+=p){z.splice(x+e,0," ");e++}this._grouped=true}this.min=0.5;this.max=z.length+0.5;var m=this.max-this.min;this.numberTicks=2*z.length+1;for(x=0;x<z.length;x++){b=this.min+2*x*m/(this.numberTicks-1);var h=new this.tickRenderer(this.tickOptions);h.showLabel=false;h.setTick(b,this.name);this._ticks.push(h);var h=new this.tickRenderer(this.tickOptions);h.label=z[x];h.showMark=false;h.showGridline=false;h.setTick(b+0.5,this.name);this._ticks.push(h)}var h=new this.tickRenderer(this.tickOptions);h.showLabel=false;h.setTick(b+1,this.name);this._ticks.push(h)}else{if(F=="xaxis"||F=="x2axis"){v=this._plotDimensions.width}else{v=this._plotDimensions.height}if(this.min!=null&&this.max!=null&&this.numberTicks!=null){this.tickInterval=null}if(this.min!=null&&this.max!=null&&this.tickInterval!=null){if(parseInt((this.max-this.min)/this.tickInterval,10)!=(this.max-this.min)/this.tickInterval){this.tickInterval=null}}var y=[];var B=0;var q=0.5;var w,E;var f=false;for(var x=0;x<this._series.length;x++){var k=this._series[x];for(var u=0;u<k.data.length;u++){if(this.name=="xaxis"||this.name=="x2axis"){E=k.data[u][0]}else{E=k.data[u][1]}if(a.inArray(E,y)==-1){f=true;B+=1;y.push(E)}}}if(f&&this.sortMergedLabels){y.sort(function(j,i){return j-i})}this.ticks=y;for(var x=0;x<this._series.length;x++){var k=this._series[x];for(var u=0;u<k.data.length;u++){if(this.name=="xaxis"||this.name=="x2axis"){E=k.data[u][0]}else{E=k.data[u][1]}var n=a.inArray(E,y)+1;if(this.name=="xaxis"||this.name=="x2axis"){k.data[u][0]=n}else{k.data[u][1]=n}}}if(this.groups>1&&!this._grouped){var r=y.length;var p=parseInt(r/this.groups,10);var e=0;for(var x=p;x<r;x+=p+1){y[x]=" "}this._grouped=true}w=B+0.5;if(this.numberTicks==null){this.numberTicks=2*B+1}var m=w-q;this.min=q;this.max=w;var o=0;var g=parseInt(3+v/10,10);var p=parseInt(B/g,10);if(this.tickInterval==null){this.tickInterval=m/(this.numberTicks-1)}for(var x=0;x<this.numberTicks;x++){b=this.min+x*this.tickInterval;var h=new this.tickRenderer(this.tickOptions);if(x/2==parseInt(x/2,10)){h.showLabel=false;h.showMark=true}else{if(p>0&&o<p){h.showLabel=false;o+=1}else{h.showLabel=true;o=0}h.label=h.formatter(h.formatString,y[(x-1)/2]);h.showMark=false;h.showGridline=false}h.setTick(b,this.name);this._ticks.push(h)}}};a.jqplot.CategoryAxisRenderer.prototype.draw=function(b,j){if(this.show){this.renderer.createTicks.call(this);var h=0;var c;if(this._elem){this._elem.emptyForce()}this._elem=this._elem||a('<div class="jqplot-axis jqplot-'+this.name+'" style="position:absolute;"></div>');if(this.name=="xaxis"||this.name=="x2axis"){this._elem.width(this._plotDimensions.width)}else{this._elem.height(this._plotDimensions.height)}this.labelOptions.axis=this.name;this._label=new this.labelRenderer(this.labelOptions);if(this._label.show){var g=this._label.draw(b,j);g.appendTo(this._elem)}var f=this._ticks;for(var e=0;e<f.length;e++){var d=f[e];if(d.showLabel&&(!d.isMinorTick||this.showMinorTicks)){var g=d.draw(b,j);g.appendTo(this._elem)}}this._groupLabels=[];for(var e=0;e<this.groupLabels.length;e++){var g=a('<div style="position:absolute;" class="jqplot-'+this.name+'-groupLabel"></div>');g.html(this.groupLabels[e]);this._groupLabels.push(g);g.appendTo(this._elem)}}return this._elem};a.jqplot.CategoryAxisRenderer.prototype.set=function(){var e=0;var m;var k=0;var f=0;var d=(this._label==null)?false:this._label.show;if(this.show){var n=this._ticks;for(var c=0;c<n.length;c++){var g=n[c];if(g.showLabel&&(!g.isMinorTick||this.showMinorTicks)){if(this.name=="xaxis"||this.name=="x2axis"){m=g._elem.outerHeight(true)}else{m=g._elem.outerWidth(true)}if(m>e){e=m}}}var j=0;for(var c=0;c<this._groupLabels.length;c++){var b=this._groupLabels[c];if(this.name=="xaxis"||this.name=="x2axis"){m=b.outerHeight(true)}else{m=b.outerWidth(true)}if(m>j){j=m}}if(d){k=this._label._elem.outerWidth(true);f=this._label._elem.outerHeight(true)}if(this.name=="xaxis"){e+=j+f;this._elem.css({height:e+"px",left:"0px",bottom:"0px"})}else{if(this.name=="x2axis"){e+=j+f;this._elem.css({height:e+"px",left:"0px",top:"0px"})}else{if(this.name=="yaxis"){e+=j+k;this._elem.css({width:e+"px",left:"0px",top:"0px"});if(d&&this._label.constructor==a.jqplot.AxisLabelRenderer){this._label._elem.css("width",k+"px")}}else{e+=j+k;this._elem.css({width:e+"px",right:"0px",top:"0px"});if(d&&this._label.constructor==a.jqplot.AxisLabelRenderer){this._label._elem.css("width",k+"px")}}}}}};a.jqplot.CategoryAxisRenderer.prototype.pack=function(e,c){var C=this._ticks;var v=this.max;var s=this.min;var n=c.max;var l=c.min;var q=(this._label==null)?false:this._label.show;var x;for(var r in e){this._elem.css(r,e[r])}this._offsets=c;var g=n-l;var k=v-s;if(!this.reverse){this.u2p=function(h){return(h-s)*g/k+l};this.p2u=function(h){return(h-l)*k/g+s};if(this.name=="xaxis"||this.name=="x2axis"){this.series_u2p=function(h){return(h-s)*g/k};this.series_p2u=function(h){return h*k/g+s}}else{this.series_u2p=function(h){return(h-v)*g/k};this.series_p2u=function(h){return h*k/g+v}}}else{this.u2p=function(h){return l+(v-h)*g/k};this.p2u=function(h){return s+(h-l)*k/g};if(this.name=="xaxis"||this.name=="x2axis"){this.series_u2p=function(h){return(v-h)*g/k};this.series_p2u=function(h){return h*k/g+v}}else{this.series_u2p=function(h){return(s-h)*g/k};this.series_p2u=function(h){return h*k/g+s}}}if(this.show){if(this.name=="xaxis"||this.name=="x2axis"){for(x=0;x<C.length;x++){var o=C[x];if(o.show&&o.showLabel){var b;if(o.constructor==a.jqplot.CanvasAxisTickRenderer&&o.angle){var A=(this.name=="xaxis")?1:-1;switch(o.labelPosition){case"auto":if(A*o.angle<0){b=-o.getWidth()+o._textRenderer.height*Math.sin(-o._textRenderer.angle)/2}else{b=-o._textRenderer.height*Math.sin(o._textRenderer.angle)/2}break;case"end":b=-o.getWidth()+o._textRenderer.height*Math.sin(-o._textRenderer.angle)/2;break;case"start":b=-o._textRenderer.height*Math.sin(o._textRenderer.angle)/2;break;case"middle":b=-o.getWidth()/2+o._textRenderer.height*Math.sin(-o._textRenderer.angle)/2;break;default:b=-o.getWidth()/2+o._textRenderer.height*Math.sin(-o._textRenderer.angle)/2;break}}else{b=-o.getWidth()/2}var D=this.u2p(o.value)+b+"px";o._elem.css("left",D);o.pack()}}var z=["bottom",0];if(q){var m=this._label._elem.outerWidth(true);this._label._elem.css("left",l+g/2-m/2+"px");if(this.name=="xaxis"){this._label._elem.css("bottom","0px");z=["bottom",this._label._elem.outerHeight(true)]}else{this._label._elem.css("top","0px");z=["top",this._label._elem.outerHeight(true)]}this._label.pack()}var d=parseInt(this._ticks.length/this.groups,10);for(x=0;x<this._groupLabels.length;x++){var B=0;var f=0;for(var u=x*d;u<=(x+1)*d;u++){if(this._ticks[u]._elem&&this._ticks[u].label!=" "){var o=this._ticks[u]._elem;var r=o.position();B+=r.left+o.outerWidth(true)/2;f++}}B=B/f;this._groupLabels[x].css({left:(B-this._groupLabels[x].outerWidth(true)/2)});this._groupLabels[x].css(z[0],z[1])}}else{for(x=0;x<C.length;x++){var o=C[x];if(o.show&&o.showLabel){var b;if(o.constructor==a.jqplot.CanvasAxisTickRenderer&&o.angle){var A=(this.name=="yaxis")?1:-1;switch(o.labelPosition){case"auto":case"end":if(A*o.angle<0){b=-o._textRenderer.height*Math.cos(-o._textRenderer.angle)/2}else{b=-o.getHeight()+o._textRenderer.height*Math.cos(o._textRenderer.angle)/2}break;case"start":if(o.angle>0){b=-o._textRenderer.height*Math.cos(-o._textRenderer.angle)/2}else{b=-o.getHeight()+o._textRenderer.height*Math.cos(o._textRenderer.angle)/2}break;case"middle":b=-o.getHeight()/2;break;default:b=-o.getHeight()/2;break}}else{b=-o.getHeight()/2}var D=this.u2p(o.value)+b+"px";o._elem.css("top",D);o.pack()}}var z=["left",0];if(q){var y=this._label._elem.outerHeight(true);this._label._elem.css("top",n-g/2-y/2+"px");if(this.name=="yaxis"){this._label._elem.css("left","0px");z=["left",this._label._elem.outerWidth(true)]}else{this._label._elem.css("right","0px");z=["right",this._label._elem.outerWidth(true)]}this._label.pack()}var d=parseInt(this._ticks.length/this.groups,10);for(x=0;x<this._groupLabels.length;x++){var B=0;var f=0;for(var u=x*d;u<=(x+1)*d;u++){if(this._ticks[u]._elem&&this._ticks[u].label!=" "){var o=this._ticks[u]._elem;var r=o.position();B+=r.top+o.outerHeight()/2;f++}}B=B/f;this._groupLabels[x].css({top:B-this._groupLabels[x].outerHeight()/2});this._groupLabels[x].css(z[0],z[1])}}}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.js
deleted file mode 100644
index 0c579e00..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.js
+++ /dev/null
@@ -1,116 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.ciParser
- * Data Renderer function which converts a custom JSON data object into jqPlot data format.
- * Set this as a callable on the jqplot dataRenderer plot option:
- *
- * > plot = $.jqplot('mychart', [data], { dataRenderer: $.jqplot.ciParser, ... });
- *
- * Where data is an object in JSON format or a JSON encoded string conforming to the
- * City Index API spec.
- *
- * Note that calling the renderer function is handled internally by jqPlot. The
- * user does not have to call the function. The parameters described below will
- * automatically be passed to the ciParser function.
- *
- * Parameters:
- * data - JSON encoded string or object.
- * plot - reference to jqPlot Plot object.
- *
- * Returns:
- * data array in jqPlot format.
- *
- */
- $.jqplot.ciParser = function (data, plot) {
- var ret = [],
- line,
- temp,
- i, j, k, kk;
-
- if (typeof(data) == "string") {
- data = $.jqplot.JSON.parse(data, handleStrings);
- }
-
- else if (typeof(data) == "object") {
- for (k in data) {
- for (i=0; i<data[k].length; i++) {
- for (kk in data[k][i]) {
- data[k][i][kk] = handleStrings(kk, data[k][i][kk]);
- }
- }
- }
- }
-
- else {
- return null;
- }
-
- // function handleStrings
- // Checks any JSON encoded strings to see if they are
- // encoded dates. If so, pull out the timestamp.
- // Expects dates to be represented by js timestamps.
-
- function handleStrings(key, value) {
- var a;
- if (value != null) {
- if (value.toString().indexOf('Date') >= 0) {
- //here we will try to extract the ticks from the Date string in the "value" fields of JSON returned data
- a = /^\/Date\((-?[0-9]+)\)\/$/.exec(value);
- if (a) {
- return parseInt(a[1], 10);
- }
- }
- return value;
- }
- }
-
- for (var prop in data) {
- line = [];
- temp = data[prop];
- switch (prop) {
- case "PriceTicks":
- for (i=0; i<temp.length; i++) {
- line.push([temp[i]['TickDate'], temp[i]['Price']]);
- }
- break;
- case "PriceBars":
- for (i=0; i<temp.length; i++) {
- line.push([temp[i]['BarDate'], temp[i]['Open'], temp[i]['High'], temp[i]['Low'], temp[i]['Close']]);
- }
- break;
- }
- ret.push(line);
- }
- return ret;
- };
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.min.js
deleted file mode 100644
index 7ca91780..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ciParser.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.ciParser=function(g,l){var m=[],o,n,h,f,e,c;if(typeof(g)=="string"){g=a.jqplot.JSON.parse(g,d)}else{if(typeof(g)=="object"){for(e in g){for(h=0;h<g[e].length;h++){for(c in g[e][h]){g[e][h][c]=d(c,g[e][h][c])}}}}else{return null}}function d(j,k){var i;if(k!=null){if(k.toString().indexOf("Date")>=0){i=/^\/Date\((-?[0-9]+)\)\/$/.exec(k);if(i){return parseInt(i[1],10)}}return k}}for(var b in g){o=[];n=g[b];switch(b){case"PriceTicks":for(h=0;h<n.length;h++){o.push([n[h]["TickDate"],n[h]["Price"]])}break;case"PriceBars":for(h=0;h<n.length;h++){o.push([n[h]["BarDate"],n[h]["Open"],n[h]["High"],n[h]["Low"],n[h]["Close"]])}break}m.push(o)}return m}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.js
deleted file mode 100644
index ab8b8868..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.js
+++ /dev/null
@@ -1,1108 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- /**
- * Class: $.jqplot.Cursor
- * Plugin class representing the cursor as displayed on the plot.
- */
- $.jqplot.Cursor = function(options) {
- // Group: Properties
- //
- // prop: style
- // CSS spec for cursor style
- this.style = 'crosshair';
- this.previousCursor = 'auto';
- // prop: show
- // wether to show the cursor or not.
- this.show = $.jqplot.config.enablePlugins;
- // prop: showTooltip
- // show a cursor position tooltip. Location of the tooltip
- // will be controlled by followMouse and tooltipLocation.
- this.showTooltip = true;
- // prop: followMouse
- // Tooltip follows the mouse, it is not at a fixed location.
- // Tooltip will show on the grid at the location given by
- // tooltipLocation, offset from the grid edge by tooltipOffset.
- this.followMouse = false;
- // prop: tooltipLocation
- // Where to position tooltip. If followMouse is true, this is
- // relative to the cursor, otherwise, it is relative to the grid.
- // One of 'n', 'ne', 'e', 'se', 's', 'sw', 'w', 'nw'
- this.tooltipLocation = 'se';
- // prop: tooltipOffset
- // Pixel offset of tooltip from the grid boudaries or cursor center.
- this.tooltipOffset = 6;
- // prop: showTooltipGridPosition
- // show the grid pixel coordinates of the mouse.
- this.showTooltipGridPosition = false;
- // prop: showTooltipUnitPosition
- // show the unit (data) coordinates of the mouse.
- this.showTooltipUnitPosition = true;
- // prop: showTooltipDataPosition
- // Used with showVerticalLine to show intersecting data points in the tooltip.
- this.showTooltipDataPosition = false;
- // prop: tooltipFormatString
- // sprintf format string for the tooltip.
- // Uses Ash Searle's javascript sprintf implementation
- // found here: http://hexmen.com/blog/2007/03/printf-sprintf/
- // See http://perldoc.perl.org/functions/sprintf.html for reference
- // Note, if showTooltipDataPosition is true, the default tooltipFormatString
- // will be set to the cursorLegendFormatString, not the default given here.
- this.tooltipFormatString = '%.4P, %.4P';
- // prop: useAxesFormatters
- // Use the x and y axes formatters to format the text in the tooltip.
- this.useAxesFormatters = true;
- // prop: tooltipAxisGroups
- // Show position for the specified axes.
- // This is an array like [['xaxis', 'yaxis'], ['xaxis', 'y2axis']]
- // Default is to compute automatically for all visible axes.
- this.tooltipAxisGroups = [];
- // prop: zoom
- // Enable plot zooming.
- this.zoom = false;
- // zoomProxy and zoomTarget properties are not directly set by user.
- // They Will be set through call to zoomProxy method.
- this.zoomProxy = false;
- this.zoomTarget = false;
- // prop: looseZoom
- // Will expand zoom range to provide more rounded tick values.
- // Works only with linear, log and date axes.
- this.looseZoom = true;
- // prop: clickReset
- // Will reset plot zoom if single click on plot without drag.
- this.clickReset = false;
- // prop: dblClickReset
- // Will reset plot zoom if double click on plot without drag.
- this.dblClickReset = true;
- // prop: showVerticalLine
- // draw a vertical line across the plot which follows the cursor.
- // When the line is near a data point, a special legend and/or tooltip can
- // be updated with the data values.
- this.showVerticalLine = false;
- // prop: showHorizontalLine
- // draw a horizontal line across the plot which follows the cursor.
- this.showHorizontalLine = false;
- // prop: constrainZoomTo
- // 'none', 'x' or 'y'
- this.constrainZoomTo = 'none';
- // // prop: autoscaleConstraint
- // // when a constrained axis is specified, true will
- // // auatoscale the adjacent axis.
- // this.autoscaleConstraint = true;
- this.shapeRenderer = new $.jqplot.ShapeRenderer();
- this._zoom = {start:[], end:[], started: false, zooming:false, isZoomed:false, axes:{start:{}, end:{}}, gridpos:{}, datapos:{}};
- this._tooltipElem;
- this.zoomCanvas;
- this.cursorCanvas;
- // prop: intersectionThreshold
- // pixel distance from data point or marker to consider cursor lines intersecting with point.
- // If data point markers are not shown, this should be >= 1 or will often miss point intersections.
- this.intersectionThreshold = 2;
- // prop: showCursorLegend
- // Replace the plot legend with an enhanced legend displaying intersection information.
- this.showCursorLegend = false;
- // prop: cursorLegendFormatString
- // Format string used in the cursor legend. If showTooltipDataPosition is true,
- // this will also be the default format string used by tooltipFormatString.
- this.cursorLegendFormatString = $.jqplot.Cursor.cursorLegendFormatString;
- // whether the cursor is over the grid or not.
- this._oldHandlers = {onselectstart: null, ondrag: null, onmousedown: null};
- // prop: constrainOutsideZoom
- // True to limit actual zoom area to edges of grid, even when zooming
- // outside of plot area. That is, can't zoom out by mousing outside plot.
- this.constrainOutsideZoom = true;
- // prop: showTooltipOutsideZoom
- // True will keep updating the tooltip when zooming of the grid.
- this.showTooltipOutsideZoom = false;
- // true if mouse is over grid, false if not.
- this.onGrid = false;
- $.extend(true, this, options);
- };
-
- $.jqplot.Cursor.cursorLegendFormatString = '%s x:%s, y:%s';
-
- // called with scope of plot
- $.jqplot.Cursor.init = function (target, data, opts){
- // add a cursor attribute to the plot
- var options = opts || {};
- this.plugins.cursor = new $.jqplot.Cursor(options.cursor);
- var c = this.plugins.cursor;
-
- if (c.show) {
- $.jqplot.eventListenerHooks.push(['jqplotMouseEnter', handleMouseEnter]);
- $.jqplot.eventListenerHooks.push(['jqplotMouseLeave', handleMouseLeave]);
- $.jqplot.eventListenerHooks.push(['jqplotMouseMove', handleMouseMove]);
-
- if (c.showCursorLegend) {
- opts.legend = opts.legend || {};
- opts.legend.renderer = $.jqplot.CursorLegendRenderer;
- opts.legend.formatString = this.plugins.cursor.cursorLegendFormatString;
- opts.legend.show = true;
- }
-
- if (c.zoom) {
- $.jqplot.eventListenerHooks.push(['jqplotMouseDown', handleMouseDown]);
-
- if (c.clickReset) {
- $.jqplot.eventListenerHooks.push(['jqplotClick', handleClick]);
- }
-
- if (c.dblClickReset) {
- $.jqplot.eventListenerHooks.push(['jqplotDblClick', handleDblClick]);
- }
- }
-
- this.resetZoom = function() {
- var axes = this.axes;
- if (!c.zoomProxy) {
- for (var ax in axes) {
- axes[ax].reset();
- axes[ax]._ticks = [];
- // fake out tick creation algorithm to make sure original auto
- // computed format string is used if _overrideFormatString is true
- if (c._zoom.axes[ax] !== undefined) {
- axes[ax]._autoFormatString = c._zoom.axes[ax].tickFormatString;
- }
- }
- this.redraw();
- }
- else {
- var ctx = this.plugins.cursor.zoomCanvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx = null;
- }
- this.plugins.cursor._zoom.isZoomed = false;
- this.target.trigger('jqplotResetZoom', [this, this.plugins.cursor]);
- };
-
-
- if (c.showTooltipDataPosition) {
- c.showTooltipUnitPosition = false;
- c.showTooltipGridPosition = false;
- if (options.cursor.tooltipFormatString == undefined) {
- c.tooltipFormatString = $.jqplot.Cursor.cursorLegendFormatString;
- }
- }
- }
- };
-
- // called with context of plot
- $.jqplot.Cursor.postDraw = function() {
- var c = this.plugins.cursor;
-
- // Memory Leaks patch
- if (c.zoomCanvas) {
- c.zoomCanvas.resetCanvas();
- c.zoomCanvas = null;
- }
-
- if (c.cursorCanvas) {
- c.cursorCanvas.resetCanvas();
- c.cursorCanvas = null;
- }
-
- if (c._tooltipElem) {
- c._tooltipElem.emptyForce();
- c._tooltipElem = null;
- }
-
-
- if (c.zoom) {
- c.zoomCanvas = new $.jqplot.GenericCanvas();
- this.eventCanvas._elem.before(c.zoomCanvas.createElement(this._gridPadding, 'jqplot-zoom-canvas', this._plotDimensions, this));
- c.zoomCanvas.setContext();
- }
-
- var elem = document.createElement('div');
- c._tooltipElem = $(elem);
- elem = null;
- c._tooltipElem.addClass('jqplot-cursor-tooltip');
- c._tooltipElem.css({position:'absolute', display:'none'});
-
-
- if (c.zoomCanvas) {
- c.zoomCanvas._elem.before(c._tooltipElem);
- }
-
- else {
- this.eventCanvas._elem.before(c._tooltipElem);
- }
-
- if (c.showVerticalLine || c.showHorizontalLine) {
- c.cursorCanvas = new $.jqplot.GenericCanvas();
- this.eventCanvas._elem.before(c.cursorCanvas.createElement(this._gridPadding, 'jqplot-cursor-canvas', this._plotDimensions, this));
- c.cursorCanvas.setContext();
- }
-
- // if we are showing the positions in unit coordinates, and no axes groups
- // were specified, create a default set.
- if (c.showTooltipUnitPosition){
- if (c.tooltipAxisGroups.length === 0) {
- var series = this.series;
- var s;
- var temp = [];
- for (var i=0; i<series.length; i++) {
- s = series[i];
- var ax = s.xaxis+','+s.yaxis;
- if ($.inArray(ax, temp) == -1) {
- temp.push(ax);
- }
- }
- for (var i=0; i<temp.length; i++) {
- c.tooltipAxisGroups.push(temp[i].split(','));
- }
- }
- }
- };
-
- // Group: methods
- //
- // method: $.jqplot.Cursor.zoomProxy
- // links targetPlot to controllerPlot so that plot zooming of
- // targetPlot will be controlled by zooming on the controllerPlot.
- // controllerPlot will not actually zoom, but acts as an
- // overview plot. Note, the zoom options must be set to true for
- // zoomProxy to work.
- $.jqplot.Cursor.zoomProxy = function(targetPlot, controllerPlot) {
- var tc = targetPlot.plugins.cursor;
- var cc = controllerPlot.plugins.cursor;
- tc.zoomTarget = true;
- tc.zoom = true;
- tc.style = 'auto';
- tc.dblClickReset = false;
- cc.zoom = true;
- cc.zoomProxy = true;
-
- controllerPlot.target.bind('jqplotZoom', plotZoom);
- controllerPlot.target.bind('jqplotResetZoom', plotReset);
-
- function plotZoom(ev, gridpos, datapos, plot, cursor) {
- tc.doZoom(gridpos, datapos, targetPlot, cursor);
- }
-
- function plotReset(ev, plot, cursor) {
- targetPlot.resetZoom();
- }
- };
-
- $.jqplot.Cursor.prototype.resetZoom = function(plot, cursor) {
- var axes = plot.axes;
- var cax = cursor._zoom.axes;
- if (!plot.plugins.cursor.zoomProxy && cursor._zoom.isZoomed) {
- for (var ax in axes) {
- // axes[ax]._ticks = [];
- // axes[ax].min = cax[ax].min;
- // axes[ax].max = cax[ax].max;
- // axes[ax].numberTicks = cax[ax].numberTicks;
- // axes[ax].tickInterval = cax[ax].tickInterval;
- // // for date axes
- // axes[ax].daTickInterval = cax[ax].daTickInterval;
- axes[ax].reset();
- axes[ax]._ticks = [];
- // fake out tick creation algorithm to make sure original auto
- // computed format string is used if _overrideFormatString is true
- axes[ax]._autoFormatString = cax[ax].tickFormatString;
- }
- plot.redraw();
- cursor._zoom.isZoomed = false;
- }
- else {
- var ctx = cursor.zoomCanvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx = null;
- }
- plot.target.trigger('jqplotResetZoom', [plot, cursor]);
- };
-
- $.jqplot.Cursor.resetZoom = function(plot) {
- plot.resetZoom();
- };
-
- $.jqplot.Cursor.prototype.doZoom = function (gridpos, datapos, plot, cursor) {
- var c = cursor;
- var axes = plot.axes;
- var zaxes = c._zoom.axes;
- var start = zaxes.start;
- var end = zaxes.end;
- var min, max, dp, span,
- newmin, newmax, curax, _numberTicks, ret;
- var ctx = plot.plugins.cursor.zoomCanvas._ctx;
- // don't zoom if zoom area is too small (in pixels)
- if ((c.constrainZoomTo == 'none' && Math.abs(gridpos.x - c._zoom.start[0]) > 6 && Math.abs(gridpos.y - c._zoom.start[1]) > 6) || (c.constrainZoomTo == 'x' && Math.abs(gridpos.x - c._zoom.start[0]) > 6) || (c.constrainZoomTo == 'y' && Math.abs(gridpos.y - c._zoom.start[1]) > 6)) {
- if (!plot.plugins.cursor.zoomProxy) {
- for (var ax in datapos) {
- // make a copy of the original axes to revert back.
- if (c._zoom.axes[ax] == undefined) {
- c._zoom.axes[ax] = {};
- c._zoom.axes[ax].numberTicks = axes[ax].numberTicks;
- c._zoom.axes[ax].tickInterval = axes[ax].tickInterval;
- // for date axes...
- c._zoom.axes[ax].daTickInterval = axes[ax].daTickInterval;
- c._zoom.axes[ax].min = axes[ax].min;
- c._zoom.axes[ax].max = axes[ax].max;
- c._zoom.axes[ax].tickFormatString = (axes[ax].tickOptions != null) ? axes[ax].tickOptions.formatString : '';
- }
-
-
- if ((c.constrainZoomTo == 'none') || (c.constrainZoomTo == 'x' && ax.charAt(0) == 'x') || (c.constrainZoomTo == 'y' && ax.charAt(0) == 'y')) {
- dp = datapos[ax];
- if (dp != null) {
- if (dp > start[ax]) {
- newmin = start[ax];
- newmax = dp;
- }
- else {
- span = start[ax] - dp;
- newmin = dp;
- newmax = start[ax];
- }
-
- curax = axes[ax];
-
- _numberTicks = null;
-
- // if aligning this axis, use number of ticks from previous axis.
- // Do I need to reset somehow if alignTicks is changed and then graph is replotted??
- if (curax.alignTicks) {
- if (curax.name === 'x2axis' && plot.axes.xaxis.show) {
- _numberTicks = plot.axes.xaxis.numberTicks;
- }
- else if (curax.name.charAt(0) === 'y' && curax.name !== 'yaxis' && curax.name !== 'yMidAxis' && plot.axes.yaxis.show) {
- _numberTicks = plot.axes.yaxis.numberTicks;
- }
- }
-
- if (this.looseZoom && (axes[ax].renderer.constructor === $.jqplot.LinearAxisRenderer || axes[ax].renderer.constructor === $.jqplot.LogAxisRenderer )) { //} || axes[ax].renderer.constructor === $.jqplot.DateAxisRenderer)) {
-
- ret = $.jqplot.LinearTickGenerator(newmin, newmax, curax._scalefact, _numberTicks);
-
- // if new minimum is less than "true" minimum of axis display, adjust it
- if (axes[ax].tickInset && ret[0] < axes[ax].min + axes[ax].tickInset * axes[ax].tickInterval) {
- ret[0] += ret[4];
- ret[2] -= 1;
- }
-
- // if new maximum is greater than "true" max of axis display, adjust it
- if (axes[ax].tickInset && ret[1] > axes[ax].max - axes[ax].tickInset * axes[ax].tickInterval) {
- ret[1] -= ret[4];
- ret[2] -= 1;
- }
-
- // for log axes, don't fall below current minimum, this will look bad and can't have 0 in range anyway.
- if (axes[ax].renderer.constructor === $.jqplot.LogAxisRenderer && ret[0] < axes[ax].min) {
- // remove a tick and shift min up
- ret[0] += ret[4];
- ret[2] -= 1;
- }
-
- axes[ax].min = ret[0];
- axes[ax].max = ret[1];
- axes[ax]._autoFormatString = ret[3];
- axes[ax].numberTicks = ret[2];
- axes[ax].tickInterval = ret[4];
- // for date axes...
- axes[ax].daTickInterval = [ret[4]/1000, 'seconds'];
- }
- else {
- axes[ax].min = newmin;
- axes[ax].max = newmax;
- axes[ax].tickInterval = null;
- axes[ax].numberTicks = null;
- // for date axes...
- axes[ax].daTickInterval = null;
- }
-
- axes[ax]._ticks = [];
- }
- }
-
- // if ((c.constrainZoomTo == 'x' && ax.charAt(0) == 'y' && c.autoscaleConstraint) || (c.constrainZoomTo == 'y' && ax.charAt(0) == 'x' && c.autoscaleConstraint)) {
- // dp = datapos[ax];
- // if (dp != null) {
- // axes[ax].max == null;
- // axes[ax].min = null;
- // }
- // }
- }
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- plot.redraw();
- c._zoom.isZoomed = true;
- ctx = null;
- }
- plot.target.trigger('jqplotZoom', [gridpos, datapos, plot, cursor]);
- }
- };
-
- $.jqplot.preInitHooks.push($.jqplot.Cursor.init);
- $.jqplot.postDrawHooks.push($.jqplot.Cursor.postDraw);
-
- function updateTooltip(gridpos, datapos, plot) {
- var c = plot.plugins.cursor;
- var s = '';
- var addbr = false;
- if (c.showTooltipGridPosition) {
- s = gridpos.x+', '+gridpos.y;
- addbr = true;
- }
- if (c.showTooltipUnitPosition) {
- var g;
- for (var i=0; i<c.tooltipAxisGroups.length; i++) {
- g = c.tooltipAxisGroups[i];
- if (addbr) {
- s += '<br />';
- }
- if (c.useAxesFormatters) {
- for (var j=0; j<g.length; j++) {
- if (j) {
- s += ', ';
- }
- var af = plot.axes[g[j]]._ticks[0].formatter;
- var afstr = plot.axes[g[j]]._ticks[0].formatString;
- s += af(afstr, datapos[g[j]]);
- }
- }
- else {
- s += $.jqplot.sprintf(c.tooltipFormatString, datapos[g[0]], datapos[g[1]]);
- }
- addbr = true;
- }
- }
-
- if (c.showTooltipDataPosition) {
- var series = plot.series;
- var ret = getIntersectingPoints(plot, gridpos.x, gridpos.y);
- var addbr = false;
-
- for (var i = 0; i< series.length; i++) {
- if (series[i].show) {
- var idx = series[i].index;
- var label = series[i].label.toString();
- var cellid = $.inArray(idx, ret.indices);
- var sx = undefined;
- var sy = undefined;
- if (cellid != -1) {
- var data = ret.data[cellid].data;
- if (c.useAxesFormatters) {
- var xf = series[i]._xaxis._ticks[0].formatter;
- var yf = series[i]._yaxis._ticks[0].formatter;
- var xfstr = series[i]._xaxis._ticks[0].formatString;
- var yfstr = series[i]._yaxis._ticks[0].formatString;
- sx = xf(xfstr, data[0]);
- sy = yf(yfstr, data[1]);
- }
- else {
- sx = data[0];
- sy = data[1];
- }
- if (addbr) {
- s += '<br />';
- }
- s += $.jqplot.sprintf(c.tooltipFormatString, label, sx, sy);
- addbr = true;
- }
- }
- }
-
- }
- c._tooltipElem.html(s);
- }
-
- function moveLine(gridpos, plot) {
- var c = plot.plugins.cursor;
- var ctx = c.cursorCanvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- if (c.showVerticalLine) {
- c.shapeRenderer.draw(ctx, [[gridpos.x, 0], [gridpos.x, ctx.canvas.height]]);
- }
- if (c.showHorizontalLine) {
- c.shapeRenderer.draw(ctx, [[0, gridpos.y], [ctx.canvas.width, gridpos.y]]);
- }
- var ret = getIntersectingPoints(plot, gridpos.x, gridpos.y);
- if (c.showCursorLegend) {
- var cells = $(plot.targetId + ' td.jqplot-cursor-legend-label');
- for (var i=0; i<cells.length; i++) {
- var idx = $(cells[i]).data('seriesIndex');
- var series = plot.series[idx];
- var label = series.label.toString();
- var cellid = $.inArray(idx, ret.indices);
- var sx = undefined;
- var sy = undefined;
- if (cellid != -1) {
- var data = ret.data[cellid].data;
- if (c.useAxesFormatters) {
- var xf = series._xaxis._ticks[0].formatter;
- var yf = series._yaxis._ticks[0].formatter;
- var xfstr = series._xaxis._ticks[0].formatString;
- var yfstr = series._yaxis._ticks[0].formatString;
- sx = xf(xfstr, data[0]);
- sy = yf(yfstr, data[1]);
- }
- else {
- sx = data[0];
- sy = data[1];
- }
- }
- if (plot.legend.escapeHtml) {
- $(cells[i]).text($.jqplot.sprintf(c.cursorLegendFormatString, label, sx, sy));
- }
- else {
- $(cells[i]).html($.jqplot.sprintf(c.cursorLegendFormatString, label, sx, sy));
- }
- }
- }
- ctx = null;
- }
-
- function getIntersectingPoints(plot, x, y) {
- var ret = {indices:[], data:[]};
- var s, i, d0, d, j, r, p;
- var threshold;
- var c = plot.plugins.cursor;
- for (var i=0; i<plot.series.length; i++) {
- s = plot.series[i];
- r = s.renderer;
- if (s.show) {
- threshold = c.intersectionThreshold;
- if (s.showMarker) {
- threshold += s.markerRenderer.size/2;
- }
- for (var j=0; j<s.gridData.length; j++) {
- p = s.gridData[j];
- // check vertical line
- if (c.showVerticalLine) {
- if (Math.abs(x-p[0]) <= threshold) {
- ret.indices.push(i);
- ret.data.push({seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]});
- }
- }
- }
- }
- }
- return ret;
- }
-
- function moveTooltip(gridpos, plot) {
- var c = plot.plugins.cursor;
- var elem = c._tooltipElem;
- switch (c.tooltipLocation) {
- case 'nw':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top - c.tooltipOffset - elem.outerHeight(true);
- break;
- case 'n':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true)/2;
- var y = gridpos.y + plot._gridPadding.top - c.tooltipOffset - elem.outerHeight(true);
- break;
- case 'ne':
- var x = gridpos.x + plot._gridPadding.left + c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top - c.tooltipOffset - elem.outerHeight(true);
- break;
- case 'e':
- var x = gridpos.x + plot._gridPadding.left + c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- case 'se':
- var x = gridpos.x + plot._gridPadding.left + c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top + c.tooltipOffset;
- break;
- case 's':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true)/2;
- var y = gridpos.y + plot._gridPadding.top + c.tooltipOffset;
- break;
- case 'sw':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top + c.tooltipOffset;
- break;
- case 'w':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- default:
- var x = gridpos.x + plot._gridPadding.left + c.tooltipOffset;
- var y = gridpos.y + plot._gridPadding.top + c.tooltipOffset;
- break;
- }
-
- elem.css('left', x);
- elem.css('top', y);
- elem = null;
- }
-
- function positionTooltip(plot) {
- // fake a grid for positioning
- var grid = plot._gridPadding;
- var c = plot.plugins.cursor;
- var elem = c._tooltipElem;
- switch (c.tooltipLocation) {
- case 'nw':
- var a = grid.left + c.tooltipOffset;
- var b = grid.top + c.tooltipOffset;
- elem.css('left', a);
- elem.css('top', b);
- break;
- case 'n':
- var a = (grid.left + (plot._plotDimensions.width - grid.right))/2 - elem.outerWidth(true)/2;
- var b = grid.top + c.tooltipOffset;
- elem.css('left', a);
- elem.css('top', b);
- break;
- case 'ne':
- var a = grid.right + c.tooltipOffset;
- var b = grid.top + c.tooltipOffset;
- elem.css({right:a, top:b});
- break;
- case 'e':
- var a = grid.right + c.tooltipOffset;
- var b = (grid.top + (plot._plotDimensions.height - grid.bottom))/2 - elem.outerHeight(true)/2;
- elem.css({right:a, top:b});
- break;
- case 'se':
- var a = grid.right + c.tooltipOffset;
- var b = grid.bottom + c.tooltipOffset;
- elem.css({right:a, bottom:b});
- break;
- case 's':
- var a = (grid.left + (plot._plotDimensions.width - grid.right))/2 - elem.outerWidth(true)/2;
- var b = grid.bottom + c.tooltipOffset;
- elem.css({left:a, bottom:b});
- break;
- case 'sw':
- var a = grid.left + c.tooltipOffset;
- var b = grid.bottom + c.tooltipOffset;
- elem.css({left:a, bottom:b});
- break;
- case 'w':
- var a = grid.left + c.tooltipOffset;
- var b = (grid.top + (plot._plotDimensions.height - grid.bottom))/2 - elem.outerHeight(true)/2;
- elem.css({left:a, top:b});
- break;
- default: // same as 'se'
- var a = grid.right - c.tooltipOffset;
- var b = grid.bottom + c.tooltipOffset;
- elem.css({right:a, bottom:b});
- break;
- }
- elem = null;
- }
-
- function handleClick (ev, gridpos, datapos, neighbor, plot) {
- ev.preventDefault();
- ev.stopImmediatePropagation();
- var c = plot.plugins.cursor;
- if (c.clickReset) {
- c.resetZoom(plot, c);
- }
- var sel = window.getSelection;
- if (document.selection && document.selection.empty)
- {
- document.selection.empty();
- }
- else if (sel && !sel().isCollapsed) {
- sel().collapse();
- }
- return false;
- }
-
- function handleDblClick (ev, gridpos, datapos, neighbor, plot) {
- ev.preventDefault();
- ev.stopImmediatePropagation();
- var c = plot.plugins.cursor;
- if (c.dblClickReset) {
- c.resetZoom(plot, c);
- }
- var sel = window.getSelection;
- if (document.selection && document.selection.empty)
- {
- document.selection.empty();
- }
- else if (sel && !sel().isCollapsed) {
- sel().collapse();
- }
- return false;
- }
-
- function handleMouseLeave(ev, gridpos, datapos, neighbor, plot) {
- var c = plot.plugins.cursor;
- c.onGrid = false;
- if (c.show) {
- $(ev.target).css('cursor', c.previousCursor);
- if (c.showTooltip && !(c._zoom.zooming && c.showTooltipOutsideZoom && !c.constrainOutsideZoom)) {
- c._tooltipElem.empty();
- c._tooltipElem.hide();
- }
- if (c.zoom) {
- c._zoom.gridpos = gridpos;
- c._zoom.datapos = datapos;
- }
- if (c.showVerticalLine || c.showHorizontalLine) {
- var ctx = c.cursorCanvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx = null;
- }
- if (c.showCursorLegend) {
- var cells = $(plot.targetId + ' td.jqplot-cursor-legend-label');
- for (var i=0; i<cells.length; i++) {
- var idx = $(cells[i]).data('seriesIndex');
- var series = plot.series[idx];
- var label = series.label.toString();
- if (plot.legend.escapeHtml) {
- $(cells[i]).text($.jqplot.sprintf(c.cursorLegendFormatString, label, undefined, undefined));
- }
- else {
- $(cells[i]).html($.jqplot.sprintf(c.cursorLegendFormatString, label, undefined, undefined));
- }
-
- }
- }
- }
- }
-
- function handleMouseEnter(ev, gridpos, datapos, neighbor, plot) {
- var c = plot.plugins.cursor;
- c.onGrid = true;
- if (c.show) {
- c.previousCursor = ev.target.style.cursor;
- ev.target.style.cursor = c.style;
- if (c.showTooltip) {
- updateTooltip(gridpos, datapos, plot);
- if (c.followMouse) {
- moveTooltip(gridpos, plot);
- }
- else {
- positionTooltip(plot);
- }
- c._tooltipElem.show();
- }
- if (c.showVerticalLine || c.showHorizontalLine) {
- moveLine(gridpos, plot);
- }
- }
-
- }
-
- function handleMouseMove(ev, gridpos, datapos, neighbor, plot) {
- var c = plot.plugins.cursor;
- if (c.show) {
- if (c.showTooltip) {
- updateTooltip(gridpos, datapos, plot);
- if (c.followMouse) {
- moveTooltip(gridpos, plot);
- }
- }
- if (c.showVerticalLine || c.showHorizontalLine) {
- moveLine(gridpos, plot);
- }
- }
- }
-
- function getEventPosition(ev) {
- var plot = ev.data.plot;
- var go = plot.eventCanvas._elem.offset();
- var gridPos = {x:ev.pageX - go.left, y:ev.pageY - go.top};
- //////
- // TO DO: handle yMidAxis
- //////
- var dataPos = {xaxis:null, yaxis:null, x2axis:null, y2axis:null, y3axis:null, y4axis:null, y5axis:null, y6axis:null, y7axis:null, y8axis:null, y9axis:null, yMidAxis:null};
- var an = ['xaxis', 'yaxis', 'x2axis', 'y2axis', 'y3axis', 'y4axis', 'y5axis', 'y6axis', 'y7axis', 'y8axis', 'y9axis', 'yMidAxis'];
- var ax = plot.axes;
- var n, axis;
- for (n=11; n>0; n--) {
- axis = an[n-1];
- if (ax[axis].show) {
- dataPos[axis] = ax[axis].series_p2u(gridPos[axis.charAt(0)]);
- }
- }
-
- return {offsets:go, gridPos:gridPos, dataPos:dataPos};
- }
-
- function handleZoomMove(ev) {
- var plot = ev.data.plot;
- var c = plot.plugins.cursor;
- // don't do anything if not on grid.
- if (c.show && c.zoom && c._zoom.started && !c.zoomTarget) {
- ev.preventDefault();
- var ctx = c.zoomCanvas._ctx;
- var positions = getEventPosition(ev);
- var gridpos = positions.gridPos;
- var datapos = positions.dataPos;
- c._zoom.gridpos = gridpos;
- c._zoom.datapos = datapos;
- c._zoom.zooming = true;
- var xpos = gridpos.x;
- var ypos = gridpos.y;
- var height = ctx.canvas.height;
- var width = ctx.canvas.width;
- if (c.showTooltip && !c.onGrid && c.showTooltipOutsideZoom) {
- updateTooltip(gridpos, datapos, plot);
- if (c.followMouse) {
- moveTooltip(gridpos, plot);
- }
- }
- if (c.constrainZoomTo == 'x') {
- c._zoom.end = [xpos, height];
- }
- else if (c.constrainZoomTo == 'y') {
- c._zoom.end = [width, ypos];
- }
- else {
- c._zoom.end = [xpos, ypos];
- }
- var sel = window.getSelection;
- if (document.selection && document.selection.empty)
- {
- document.selection.empty();
- }
- else if (sel && !sel().isCollapsed) {
- sel().collapse();
- }
- drawZoomBox.call(c);
- ctx = null;
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- var c = plot.plugins.cursor;
- if(plot.plugins.mobile){
- $(document).one('vmouseup.jqplot_cursor', {plot:plot}, handleMouseUp);
- } else {
- $(document).one('mouseup.jqplot_cursor', {plot:plot}, handleMouseUp);
- }
- var axes = plot.axes;
- if (document.onselectstart != undefined) {
- c._oldHandlers.onselectstart = document.onselectstart;
- document.onselectstart = function () { return false; };
- }
- if (document.ondrag != undefined) {
- c._oldHandlers.ondrag = document.ondrag;
- document.ondrag = function () { return false; };
- }
- if (document.onmousedown != undefined) {
- c._oldHandlers.onmousedown = document.onmousedown;
- document.onmousedown = function () { return false; };
- }
- if (c.zoom) {
- if (!c.zoomProxy) {
- var ctx = c.zoomCanvas._ctx;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx = null;
- }
- if (c.constrainZoomTo == 'x') {
- c._zoom.start = [gridpos.x, 0];
- }
- else if (c.constrainZoomTo == 'y') {
- c._zoom.start = [0, gridpos.y];
- }
- else {
- c._zoom.start = [gridpos.x, gridpos.y];
- }
- c._zoom.started = true;
- for (var ax in datapos) {
- // get zoom starting position.
- c._zoom.axes.start[ax] = datapos[ax];
- }
- if(plot.plugins.mobile){
- $(document).bind('vmousemove.jqplotCursor', {plot:plot}, handleZoomMove);
- } else {
- $(document).bind('mousemove.jqplotCursor', {plot:plot}, handleZoomMove);
- }
-
- }
- }
-
- function handleMouseUp(ev) {
- var plot = ev.data.plot;
- var c = plot.plugins.cursor;
- if (c.zoom && c._zoom.zooming && !c.zoomTarget) {
- var xpos = c._zoom.gridpos.x;
- var ypos = c._zoom.gridpos.y;
- var datapos = c._zoom.datapos;
- var height = c.zoomCanvas._ctx.canvas.height;
- var width = c.zoomCanvas._ctx.canvas.width;
- var axes = plot.axes;
-
- if (c.constrainOutsideZoom && !c.onGrid) {
- if (xpos < 0) { xpos = 0; }
- else if (xpos > width) { xpos = width; }
- if (ypos < 0) { ypos = 0; }
- else if (ypos > height) { ypos = height; }
-
- for (var axis in datapos) {
- if (datapos[axis]) {
- if (axis.charAt(0) == 'x') {
- datapos[axis] = axes[axis].series_p2u(xpos);
- }
- else {
- datapos[axis] = axes[axis].series_p2u(ypos);
- }
- }
- }
- }
-
- if (c.constrainZoomTo == 'x') {
- ypos = height;
- }
- else if (c.constrainZoomTo == 'y') {
- xpos = width;
- }
- c._zoom.end = [xpos, ypos];
- c._zoom.gridpos = {x:xpos, y:ypos};
-
- c.doZoom(c._zoom.gridpos, datapos, plot, c);
- }
- c._zoom.started = false;
- c._zoom.zooming = false;
-
- $(document).unbind('mousemove.jqplotCursor', handleZoomMove);
-
- if (document.onselectstart != undefined && c._oldHandlers.onselectstart != null){
- document.onselectstart = c._oldHandlers.onselectstart;
- c._oldHandlers.onselectstart = null;
- }
- if (document.ondrag != undefined && c._oldHandlers.ondrag != null){
- document.ondrag = c._oldHandlers.ondrag;
- c._oldHandlers.ondrag = null;
- }
- if (document.onmousedown != undefined && c._oldHandlers.onmousedown != null){
- document.onmousedown = c._oldHandlers.onmousedown;
- c._oldHandlers.onmousedown = null;
- }
-
- }
-
- function drawZoomBox() {
- var start = this._zoom.start;
- var end = this._zoom.end;
- var ctx = this.zoomCanvas._ctx;
- var l, t, h, w;
- if (end[0] > start[0]) {
- l = start[0];
- w = end[0] - start[0];
- }
- else {
- l = end[0];
- w = start[0] - end[0];
- }
- if (end[1] > start[1]) {
- t = start[1];
- h = end[1] - start[1];
- }
- else {
- t = end[1];
- h = start[1] - end[1];
- }
- ctx.fillStyle = 'rgba(0,0,0,0.2)';
- ctx.strokeStyle = '#999999';
- ctx.lineWidth = 1.0;
- ctx.clearRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx.fillRect(0,0,ctx.canvas.width, ctx.canvas.height);
- ctx.clearRect(l, t, w, h);
- // IE won't show transparent fill rect, so stroke a rect also.
- ctx.strokeRect(l,t,w,h);
- ctx = null;
- }
-
- $.jqplot.CursorLegendRenderer = function(options) {
- $.jqplot.TableLegendRenderer.call(this, options);
- this.formatString = '%s';
- };
-
- $.jqplot.CursorLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.CursorLegendRenderer.prototype.constructor = $.jqplot.CursorLegendRenderer;
-
- // called in context of a Legend
- $.jqplot.CursorLegendRenderer.prototype.draw = function() {
- if (this._elem) {
- this._elem.emptyForce();
- this._elem = null;
- }
- if (this.show) {
- var series = this._series, s;
- // make a table. one line label per row.
- var elem = document.createElement('div');
- this._elem = $(elem);
- elem = null;
- this._elem.addClass('jqplot-legend jqplot-cursor-legend');
- this._elem.css('position', 'absolute');
-
- var pad = false;
- for (var i = 0; i< series.length; i++) {
- s = series[i];
- if (s.show && s.showLabel) {
- var lt = $.jqplot.sprintf(this.formatString, s.label.toString());
- if (lt) {
- var color = s.color;
- if (s._stack && !s.fill) {
- color = '';
- }
- addrow.call(this, lt, color, pad, i);
- pad = true;
- }
- // let plugins add more rows to legend. Used by trend line plugin.
- for (var j=0; j<$.jqplot.addLegendRowHooks.length; j++) {
- var item = $.jqplot.addLegendRowHooks[j].call(this, s);
- if (item) {
- addrow.call(this, item.label, item.color, pad);
- pad = true;
- }
- }
- }
- }
- series = s = null;
- delete series;
- delete s;
- }
-
- function addrow(label, color, pad, idx) {
- var rs = (pad) ? this.rowSpacing : '0';
- var tr = $('<tr class="jqplot-legend jqplot-cursor-legend"></tr>').appendTo(this._elem);
- tr.data('seriesIndex', idx);
- $('<td class="jqplot-legend jqplot-cursor-legend-swatch" style="padding-top:'+rs+';">'+
- '<div style="border:1px solid #cccccc;padding:0.2em;">'+
- '<div class="jqplot-cursor-legend-swatch" style="background-color:'+color+';"></div>'+
- '</div></td>').appendTo(tr);
- var td = $('<td class="jqplot-legend jqplot-cursor-legend-label" style="vertical-align:middle;padding-top:'+rs+';"></td>');
- td.appendTo(tr);
- td.data('seriesIndex', idx);
- if (this.escapeHtml) {
- td.text(label);
- }
- else {
- td.html(label);
- }
- tr = null;
- td = null;
- }
- return this._elem;
- };
-
-})(jQuery);
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.min.js
deleted file mode 100644
index b782ece4..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.cursor.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(j){j.jqplot.Cursor=function(q){this.style="crosshair";this.previousCursor="auto";this.show=j.jqplot.config.enablePlugins;this.showTooltip=true;this.followMouse=false;this.tooltipLocation="se";this.tooltipOffset=6;this.showTooltipGridPosition=false;this.showTooltipUnitPosition=true;this.showTooltipDataPosition=false;this.tooltipFormatString="%.4P, %.4P";this.useAxesFormatters=true;this.tooltipAxisGroups=[];this.zoom=false;this.zoomProxy=false;this.zoomTarget=false;this.looseZoom=true;this.clickReset=false;this.dblClickReset=true;this.showVerticalLine=false;this.showHorizontalLine=false;this.constrainZoomTo="none";this.shapeRenderer=new j.jqplot.ShapeRenderer();this._zoom={start:[],end:[],started:false,zooming:false,isZoomed:false,axes:{start:{},end:{}},gridpos:{},datapos:{}};this._tooltipElem;this.zoomCanvas;this.cursorCanvas;this.intersectionThreshold=2;this.showCursorLegend=false;this.cursorLegendFormatString=j.jqplot.Cursor.cursorLegendFormatString;this._oldHandlers={onselectstart:null,ondrag:null,onmousedown:null};this.constrainOutsideZoom=true;this.showTooltipOutsideZoom=false;this.onGrid=false;j.extend(true,this,q)};j.jqplot.Cursor.cursorLegendFormatString="%s x:%s, y:%s";j.jqplot.Cursor.init=function(t,s,r){var q=r||{};this.plugins.cursor=new j.jqplot.Cursor(q.cursor);var u=this.plugins.cursor;if(u.show){j.jqplot.eventListenerHooks.push(["jqplotMouseEnter",b]);j.jqplot.eventListenerHooks.push(["jqplotMouseLeave",f]);j.jqplot.eventListenerHooks.push(["jqplotMouseMove",i]);if(u.showCursorLegend){r.legend=r.legend||{};r.legend.renderer=j.jqplot.CursorLegendRenderer;r.legend.formatString=this.plugins.cursor.cursorLegendFormatString;r.legend.show=true}if(u.zoom){j.jqplot.eventListenerHooks.push(["jqplotMouseDown",a]);if(u.clickReset){j.jqplot.eventListenerHooks.push(["jqplotClick",k])}if(u.dblClickReset){j.jqplot.eventListenerHooks.push(["jqplotDblClick",c])}}this.resetZoom=function(){var x=this.axes;if(!u.zoomProxy){for(var w in x){x[w].reset();x[w]._ticks=[];if(u._zoom.axes[w]!==undefined){x[w]._autoFormatString=u._zoom.axes[w].tickFormatString}}this.redraw()}else{var v=this.plugins.cursor.zoomCanvas._ctx;v.clearRect(0,0,v.canvas.width,v.canvas.height);v=null}this.plugins.cursor._zoom.isZoomed=false;this.target.trigger("jqplotResetZoom",[this,this.plugins.cursor])};if(u.showTooltipDataPosition){u.showTooltipUnitPosition=false;u.showTooltipGridPosition=false;if(q.cursor.tooltipFormatString==undefined){u.tooltipFormatString=j.jqplot.Cursor.cursorLegendFormatString}}}};j.jqplot.Cursor.postDraw=function(){var x=this.plugins.cursor;if(x.zoomCanvas){x.zoomCanvas.resetCanvas();x.zoomCanvas=null}if(x.cursorCanvas){x.cursorCanvas.resetCanvas();x.cursorCanvas=null}if(x._tooltipElem){x._tooltipElem.emptyForce();x._tooltipElem=null}if(x.zoom){x.zoomCanvas=new j.jqplot.GenericCanvas();this.eventCanvas._elem.before(x.zoomCanvas.createElement(this._gridPadding,"jqplot-zoom-canvas",this._plotDimensions,this));x.zoomCanvas.setContext()}var v=document.createElement("div");x._tooltipElem=j(v);v=null;x._tooltipElem.addClass("jqplot-cursor-tooltip");x._tooltipElem.css({position:"absolute",display:"none"});if(x.zoomCanvas){x.zoomCanvas._elem.before(x._tooltipElem)}else{this.eventCanvas._elem.before(x._tooltipElem)}if(x.showVerticalLine||x.showHorizontalLine){x.cursorCanvas=new j.jqplot.GenericCanvas();this.eventCanvas._elem.before(x.cursorCanvas.createElement(this._gridPadding,"jqplot-cursor-canvas",this._plotDimensions,this));x.cursorCanvas.setContext()}if(x.showTooltipUnitPosition){if(x.tooltipAxisGroups.length===0){var t=this.series;var u;var q=[];for(var r=0;r<t.length;r++){u=t[r];var w=u.xaxis+","+u.yaxis;if(j.inArray(w,q)==-1){q.push(w)}}for(var r=0;r<q.length;r++){x.tooltipAxisGroups.push(q[r].split(","))}}}};j.jqplot.Cursor.zoomProxy=function(v,r){var q=v.plugins.cursor;var u=r.plugins.cursor;q.zoomTarget=true;q.zoom=true;q.style="auto";q.dblClickReset=false;u.zoom=true;u.zoomProxy=true;r.target.bind("jqplotZoom",t);r.target.bind("jqplotResetZoom",s);function t(x,w,z,y,A){q.doZoom(w,z,v,A)}function s(w,x,y){v.resetZoom()}};j.jqplot.Cursor.prototype.resetZoom=function(u,v){var t=u.axes;var s=v._zoom.axes;if(!u.plugins.cursor.zoomProxy&&v._zoom.isZoomed){for(var r in t){t[r].reset();t[r]._ticks=[];t[r]._autoFormatString=s[r].tickFormatString}u.redraw();v._zoom.isZoomed=false}else{var q=v.zoomCanvas._ctx;q.clearRect(0,0,q.canvas.width,q.canvas.height);q=null}u.target.trigger("jqplotResetZoom",[u,v])};j.jqplot.Cursor.resetZoom=function(q){q.resetZoom()};j.jqplot.Cursor.prototype.doZoom=function(G,t,C,u){var I=u;var F=C.axes;var r=I._zoom.axes;var w=r.start;var s=r.end;var B,E,z,D,v,x,q,H,J;var A=C.plugins.cursor.zoomCanvas._ctx;if((I.constrainZoomTo=="none"&&Math.abs(G.x-I._zoom.start[0])>6&&Math.abs(G.y-I._zoom.start[1])>6)||(I.constrainZoomTo=="x"&&Math.abs(G.x-I._zoom.start[0])>6)||(I.constrainZoomTo=="y"&&Math.abs(G.y-I._zoom.start[1])>6)){if(!C.plugins.cursor.zoomProxy){for(var y in t){if(I._zoom.axes[y]==undefined){I._zoom.axes[y]={};I._zoom.axes[y].numberTicks=F[y].numberTicks;I._zoom.axes[y].tickInterval=F[y].tickInterval;I._zoom.axes[y].daTickInterval=F[y].daTickInterval;I._zoom.axes[y].min=F[y].min;I._zoom.axes[y].max=F[y].max;I._zoom.axes[y].tickFormatString=(F[y].tickOptions!=null)?F[y].tickOptions.formatString:""}if((I.constrainZoomTo=="none")||(I.constrainZoomTo=="x"&&y.charAt(0)=="x")||(I.constrainZoomTo=="y"&&y.charAt(0)=="y")){z=t[y];if(z!=null){if(z>w[y]){v=w[y];x=z}else{D=w[y]-z;v=z;x=w[y]}q=F[y];H=null;if(q.alignTicks){if(q.name==="x2axis"&&C.axes.xaxis.show){H=C.axes.xaxis.numberTicks}else{if(q.name.charAt(0)==="y"&&q.name!=="yaxis"&&q.name!=="yMidAxis"&&C.axes.yaxis.show){H=C.axes.yaxis.numberTicks}}}if(this.looseZoom&&(F[y].renderer.constructor===j.jqplot.LinearAxisRenderer||F[y].renderer.constructor===j.jqplot.LogAxisRenderer)){J=j.jqplot.LinearTickGenerator(v,x,q._scalefact,H);if(F[y].tickInset&&J[0]<F[y].min+F[y].tickInset*F[y].tickInterval){J[0]+=J[4];J[2]-=1}if(F[y].tickInset&&J[1]>F[y].max-F[y].tickInset*F[y].tickInterval){J[1]-=J[4];J[2]-=1}if(F[y].renderer.constructor===j.jqplot.LogAxisRenderer&&J[0]<F[y].min){J[0]+=J[4];J[2]-=1}F[y].min=J[0];F[y].max=J[1];F[y]._autoFormatString=J[3];F[y].numberTicks=J[2];F[y].tickInterval=J[4];F[y].daTickInterval=[J[4]/1000,"seconds"]}else{F[y].min=v;F[y].max=x;F[y].tickInterval=null;F[y].numberTicks=null;F[y].daTickInterval=null}F[y]._ticks=[]}}}A.clearRect(0,0,A.canvas.width,A.canvas.height);C.redraw();I._zoom.isZoomed=true;A=null}C.target.trigger("jqplotZoom",[G,t,C,u])}};j.jqplot.preInitHooks.push(j.jqplot.Cursor.init);j.jqplot.postDrawHooks.push(j.jqplot.Cursor.postDraw);function e(G,r,C){var J=C.plugins.cursor;var w="";var N=false;if(J.showTooltipGridPosition){w=G.x+", "+G.y;N=true}if(J.showTooltipUnitPosition){var F;for(var E=0;E<J.tooltipAxisGroups.length;E++){F=J.tooltipAxisGroups[E];if(N){w+="<br />"}if(J.useAxesFormatters){for(var D=0;D<F.length;D++){if(D){w+=", "}var H=C.axes[F[D]]._ticks[0].formatter;var B=C.axes[F[D]]._ticks[0].formatString;w+=H(B,r[F[D]])}}else{w+=j.jqplot.sprintf(J.tooltipFormatString,r[F[0]],r[F[1]])}N=true}}if(J.showTooltipDataPosition){var u=C.series;var M=d(C,G.x,G.y);var N=false;for(var E=0;E<u.length;E++){if(u[E].show){var y=u[E].index;var t=u[E].label.toString();var I=j.inArray(y,M.indices);var z=undefined;var x=undefined;if(I!=-1){var L=M.data[I].data;if(J.useAxesFormatters){var A=u[E]._xaxis._ticks[0].formatter;var q=u[E]._yaxis._ticks[0].formatter;var K=u[E]._xaxis._ticks[0].formatString;var v=u[E]._yaxis._ticks[0].formatString;z=A(K,L[0]);x=q(v,L[1])}else{z=L[0];x=L[1]}if(N){w+="<br />"}w+=j.jqplot.sprintf(J.tooltipFormatString,t,z,x);N=true}}}}J._tooltipElem.html(w)}function g(C,A){var E=A.plugins.cursor;var z=E.cursorCanvas._ctx;z.clearRect(0,0,z.canvas.width,z.canvas.height);if(E.showVerticalLine){E.shapeRenderer.draw(z,[[C.x,0],[C.x,z.canvas.height]])}if(E.showHorizontalLine){E.shapeRenderer.draw(z,[[0,C.y],[z.canvas.width,C.y]])}var G=d(A,C.x,C.y);if(E.showCursorLegend){var r=j(A.targetId+" td.jqplot-cursor-legend-label");for(var B=0;B<r.length;B++){var v=j(r[B]).data("seriesIndex");var t=A.series[v];var s=t.label.toString();var D=j.inArray(v,G.indices);var x=undefined;var w=undefined;if(D!=-1){var H=G.data[D].data;if(E.useAxesFormatters){var y=t._xaxis._ticks[0].formatter;var q=t._yaxis._ticks[0].formatter;var F=t._xaxis._ticks[0].formatString;var u=t._yaxis._ticks[0].formatString;x=y(F,H[0]);w=q(u,H[1])}else{x=H[0];w=H[1]}}if(A.legend.escapeHtml){j(r[B]).text(j.jqplot.sprintf(E.cursorLegendFormatString,s,x,w))}else{j(r[B]).html(j.jqplot.sprintf(E.cursorLegendFormatString,s,x,w))}}}z=null}function d(A,F,E){var B={indices:[],data:[]};var G,w,u,C,v,q,t;var z;var D=A.plugins.cursor;for(var w=0;w<A.series.length;w++){G=A.series[w];q=G.renderer;if(G.show){z=D.intersectionThreshold;if(G.showMarker){z+=G.markerRenderer.size/2}for(var v=0;v<G.gridData.length;v++){t=G.gridData[v];if(D.showVerticalLine){if(Math.abs(F-t[0])<=z){B.indices.push(w);B.data.push({seriesIndex:w,pointIndex:v,gridData:t,data:G.data[v]})}}}}}return B}function n(r,t){var v=t.plugins.cursor;var s=v._tooltipElem;switch(v.tooltipLocation){case"nw":var q=r.x+t._gridPadding.left-s.outerWidth(true)-v.tooltipOffset;var u=r.y+t._gridPadding.top-v.tooltipOffset-s.outerHeight(true);break;case"n":var q=r.x+t._gridPadding.left-s.outerWidth(true)/2;var u=r.y+t._gridPadding.top-v.tooltipOffset-s.outerHeight(true);break;case"ne":var q=r.x+t._gridPadding.left+v.tooltipOffset;var u=r.y+t._gridPadding.top-v.tooltipOffset-s.outerHeight(true);break;case"e":var q=r.x+t._gridPadding.left+v.tooltipOffset;var u=r.y+t._gridPadding.top-s.outerHeight(true)/2;break;case"se":var q=r.x+t._gridPadding.left+v.tooltipOffset;var u=r.y+t._gridPadding.top+v.tooltipOffset;break;case"s":var q=r.x+t._gridPadding.left-s.outerWidth(true)/2;var u=r.y+t._gridPadding.top+v.tooltipOffset;break;case"sw":var q=r.x+t._gridPadding.left-s.outerWidth(true)-v.tooltipOffset;var u=r.y+t._gridPadding.top+v.tooltipOffset;break;case"w":var q=r.x+t._gridPadding.left-s.outerWidth(true)-v.tooltipOffset;var u=r.y+t._gridPadding.top-s.outerHeight(true)/2;break;default:var q=r.x+t._gridPadding.left+v.tooltipOffset;var u=r.y+t._gridPadding.top+v.tooltipOffset;break}s.css("left",q);s.css("top",u);s=null}function m(u){var s=u._gridPadding;var v=u.plugins.cursor;var t=v._tooltipElem;switch(v.tooltipLocation){case"nw":var r=s.left+v.tooltipOffset;var q=s.top+v.tooltipOffset;t.css("left",r);t.css("top",q);break;case"n":var r=(s.left+(u._plotDimensions.width-s.right))/2-t.outerWidth(true)/2;var q=s.top+v.tooltipOffset;t.css("left",r);t.css("top",q);break;case"ne":var r=s.right+v.tooltipOffset;var q=s.top+v.tooltipOffset;t.css({right:r,top:q});break;case"e":var r=s.right+v.tooltipOffset;var q=(s.top+(u._plotDimensions.height-s.bottom))/2-t.outerHeight(true)/2;t.css({right:r,top:q});break;case"se":var r=s.right+v.tooltipOffset;var q=s.bottom+v.tooltipOffset;t.css({right:r,bottom:q});break;case"s":var r=(s.left+(u._plotDimensions.width-s.right))/2-t.outerWidth(true)/2;var q=s.bottom+v.tooltipOffset;t.css({left:r,bottom:q});break;case"sw":var r=s.left+v.tooltipOffset;var q=s.bottom+v.tooltipOffset;t.css({left:r,bottom:q});break;case"w":var r=s.left+v.tooltipOffset;var q=(s.top+(u._plotDimensions.height-s.bottom))/2-t.outerHeight(true)/2;t.css({left:r,top:q});break;default:var r=s.right-v.tooltipOffset;var q=s.bottom+v.tooltipOffset;t.css({right:r,bottom:q});break}t=null}function k(r,q,v,u,t){r.preventDefault();r.stopImmediatePropagation();var w=t.plugins.cursor;if(w.clickReset){w.resetZoom(t,w)}var s=window.getSelection;if(document.selection&&document.selection.empty){document.selection.empty()}else{if(s&&!s().isCollapsed){s().collapse()}}return false}function c(r,q,v,u,t){r.preventDefault();r.stopImmediatePropagation();var w=t.plugins.cursor;if(w.dblClickReset){w.resetZoom(t,w)}var s=window.getSelection;if(document.selection&&document.selection.empty){document.selection.empty()}else{if(s&&!s().isCollapsed){s().collapse()}}return false}function f(w,t,q,z,u){var v=u.plugins.cursor;v.onGrid=false;if(v.show){j(w.target).css("cursor",v.previousCursor);if(v.showTooltip&&!(v._zoom.zooming&&v.showTooltipOutsideZoom&&!v.constrainOutsideZoom)){v._tooltipElem.empty();v._tooltipElem.hide()}if(v.zoom){v._zoom.gridpos=t;v._zoom.datapos=q}if(v.showVerticalLine||v.showHorizontalLine){var B=v.cursorCanvas._ctx;B.clearRect(0,0,B.canvas.width,B.canvas.height);B=null}if(v.showCursorLegend){var A=j(u.targetId+" td.jqplot-cursor-legend-label");for(var s=0;s<A.length;s++){var y=j(A[s]).data("seriesIndex");var r=u.series[y];var x=r.label.toString();if(u.legend.escapeHtml){j(A[s]).text(j.jqplot.sprintf(v.cursorLegendFormatString,x,undefined,undefined))}else{j(A[s]).html(j.jqplot.sprintf(v.cursorLegendFormatString,x,undefined,undefined))}}}}}function b(r,q,u,t,s){var v=s.plugins.cursor;v.onGrid=true;if(v.show){v.previousCursor=r.target.style.cursor;r.target.style.cursor=v.style;if(v.showTooltip){e(q,u,s);if(v.followMouse){n(q,s)}else{m(s)}v._tooltipElem.show()}if(v.showVerticalLine||v.showHorizontalLine){g(q,s)}}}function i(r,q,u,t,s){var v=s.plugins.cursor;if(v.show){if(v.showTooltip){e(q,u,s);if(v.followMouse){n(q,s)}}if(v.showVerticalLine||v.showHorizontalLine){g(q,s)}}}function o(y){var x=y.data.plot;var t=x.eventCanvas._elem.offset();var w={x:y.pageX-t.left,y:y.pageY-t.top};var u={xaxis:null,yaxis:null,x2axis:null,y2axis:null,y3axis:null,y4axis:null,y5axis:null,y6axis:null,y7axis:null,y8axis:null,y9axis:null,yMidAxis:null};var v=["xaxis","yaxis","x2axis","y2axis","y3axis","y4axis","y5axis","y6axis","y7axis","y8axis","y9axis","yMidAxis"];var q=x.axes;var r,s;for(r=11;r>0;r--){s=v[r-1];if(q[s].show){u[s]=q[s].series_p2u(w[s.charAt(0)])}}return{offsets:t,gridPos:w,dataPos:u}}function h(z){var x=z.data.plot;var y=x.plugins.cursor;if(y.show&&y.zoom&&y._zoom.started&&!y.zoomTarget){z.preventDefault();var B=y.zoomCanvas._ctx;var v=o(z);var w=v.gridPos;var t=v.dataPos;y._zoom.gridpos=w;y._zoom.datapos=t;y._zoom.zooming=true;var u=w.x;var s=w.y;var A=B.canvas.height;var q=B.canvas.width;if(y.showTooltip&&!y.onGrid&&y.showTooltipOutsideZoom){e(w,t,x);if(y.followMouse){n(w,x)}}if(y.constrainZoomTo=="x"){y._zoom.end=[u,A]}else{if(y.constrainZoomTo=="y"){y._zoom.end=[q,s]}else{y._zoom.end=[u,s]}}var r=window.getSelection;if(document.selection&&document.selection.empty){document.selection.empty()}else{if(r&&!r().isCollapsed){r().collapse()}}l.call(y);B=null}}function a(w,s,r,x,t){var v=t.plugins.cursor;if(t.plugins.mobile){j(document).one("vmouseup.jqplot_cursor",{plot:t},p)}else{j(document).one("mouseup.jqplot_cursor",{plot:t},p)}var u=t.axes;if(document.onselectstart!=undefined){v._oldHandlers.onselectstart=document.onselectstart;document.onselectstart=function(){return false}}if(document.ondrag!=undefined){v._oldHandlers.ondrag=document.ondrag;document.ondrag=function(){return false}}if(document.onmousedown!=undefined){v._oldHandlers.onmousedown=document.onmousedown;document.onmousedown=function(){return false}}if(v.zoom){if(!v.zoomProxy){var y=v.zoomCanvas._ctx;y.clearRect(0,0,y.canvas.width,y.canvas.height);y=null}if(v.constrainZoomTo=="x"){v._zoom.start=[s.x,0]}else{if(v.constrainZoomTo=="y"){v._zoom.start=[0,s.y]}else{v._zoom.start=[s.x,s.y]}}v._zoom.started=true;for(var q in r){v._zoom.axes.start[q]=r[q]}if(t.plugins.mobile){j(document).bind("vmousemove.jqplotCursor",{plot:t},h)}else{j(document).bind("mousemove.jqplotCursor",{plot:t},h)}}}function p(y){var v=y.data.plot;var x=v.plugins.cursor;if(x.zoom&&x._zoom.zooming&&!x.zoomTarget){var u=x._zoom.gridpos.x;var r=x._zoom.gridpos.y;var t=x._zoom.datapos;var z=x.zoomCanvas._ctx.canvas.height;var q=x.zoomCanvas._ctx.canvas.width;var w=v.axes;if(x.constrainOutsideZoom&&!x.onGrid){if(u<0){u=0}else{if(u>q){u=q}}if(r<0){r=0}else{if(r>z){r=z}}for(var s in t){if(t[s]){if(s.charAt(0)=="x"){t[s]=w[s].series_p2u(u)}else{t[s]=w[s].series_p2u(r)}}}}if(x.constrainZoomTo=="x"){r=z}else{if(x.constrainZoomTo=="y"){u=q}}x._zoom.end=[u,r];x._zoom.gridpos={x:u,y:r};x.doZoom(x._zoom.gridpos,t,v,x)}x._zoom.started=false;x._zoom.zooming=false;j(document).unbind("mousemove.jqplotCursor",h);if(document.onselectstart!=undefined&&x._oldHandlers.onselectstart!=null){document.onselectstart=x._oldHandlers.onselectstart;x._oldHandlers.onselectstart=null}if(document.ondrag!=undefined&&x._oldHandlers.ondrag!=null){document.ondrag=x._oldHandlers.ondrag;x._oldHandlers.ondrag=null}if(document.onmousedown!=undefined&&x._oldHandlers.onmousedown!=null){document.onmousedown=x._oldHandlers.onmousedown;x._oldHandlers.onmousedown=null}}function l(){var y=this._zoom.start;var u=this._zoom.end;var s=this.zoomCanvas._ctx;var r,v,x,q;if(u[0]>y[0]){r=y[0];q=u[0]-y[0]}else{r=u[0];q=y[0]-u[0]}if(u[1]>y[1]){v=y[1];x=u[1]-y[1]}else{v=u[1];x=y[1]-u[1]}s.fillStyle="rgba(0,0,0,0.2)";s.strokeStyle="#999999";s.lineWidth=1;s.clearRect(0,0,s.canvas.width,s.canvas.height);s.fillRect(0,0,s.canvas.width,s.canvas.height);s.clearRect(r,v,q,x);s.strokeRect(r,v,q,x);s=null}j.jqplot.CursorLegendRenderer=function(q){j.jqplot.TableLegendRenderer.call(this,q);this.formatString="%s"};j.jqplot.CursorLegendRenderer.prototype=new j.jqplot.TableLegendRenderer();j.jqplot.CursorLegendRenderer.prototype.constructor=j.jqplot.CursorLegendRenderer;j.jqplot.CursorLegendRenderer.prototype.draw=function(){if(this._elem){this._elem.emptyForce();this._elem=null}if(this.show){var w=this._series,A;var r=document.createElement("div");this._elem=j(r);r=null;this._elem.addClass("jqplot-legend jqplot-cursor-legend");this._elem.css("position","absolute");var q=false;for(var x=0;x<w.length;x++){A=w[x];if(A.show&&A.showLabel){var v=j.jqplot.sprintf(this.formatString,A.label.toString());if(v){var t=A.color;if(A._stack&&!A.fill){t=""}z.call(this,v,t,q,x);q=true}for(var u=0;u<j.jqplot.addLegendRowHooks.length;u++){var y=j.jqplot.addLegendRowHooks[u].call(this,A);if(y){z.call(this,y.label,y.color,q);q=true}}}}w=A=null;delete w;delete A}function z(D,C,F,s){var B=(F)?this.rowSpacing:"0";var E=j('<tr class="jqplot-legend jqplot-cursor-legend"></tr>').appendTo(this._elem);E.data("seriesIndex",s);j('<td class="jqplot-legend jqplot-cursor-legend-swatch" style="padding-top:'+B+';"><div style="border:1px solid #cccccc;padding:0.2em;"><div class="jqplot-cursor-legend-swatch" style="background-color:'+C+';"></div></div></td>').appendTo(E);var G=j('<td class="jqplot-legend jqplot-cursor-legend-label" style="vertical-align:middle;padding-top:'+B+';"></td>');G.appendTo(E);G.data("seriesIndex",s);if(this.escapeHtml){G.text(D)}else{G.html(D)}E=null;G=null}return this._elem}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.js
deleted file mode 100644
index b97336fa..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.js
+++ /dev/null
@@ -1,737 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.DateAxisRenderer
- * A plugin for a jqPlot to render an axis as a series of date values.
- * This renderer has no options beyond those supplied by the <Axis> class.
- * It supplies it's own tick formatter, so the tickOptions.formatter option
- * should not be overridden.
- *
- * Thanks to Ken Synder for his enhanced Date instance methods which are
- * included with this code <http://kendsnyder.com/sandbox/date/>.
- *
- * To use this renderer, include the plugin in your source
- * > <script type="text/javascript" language="javascript" src="plugins/jqplot.dateAxisRenderer.js"></script>
- *
- * and supply the appropriate options to your plot
- *
- * > {axes:{xaxis:{renderer:$.jqplot.DateAxisRenderer}}}
- *
- * Dates can be passed into the axis in almost any recognizable value and
- * will be parsed. They will be rendered on the axis in the format
- * specified by tickOptions.formatString. e.g. tickOptions.formatString = '%Y-%m-%d'.
- *
- * Accecptable format codes
- * are:
- *
- * > Code Result Description
- * > == Years ==
- * > %Y 2008 Four-digit year
- * > %y 08 Two-digit year
- * > == Months ==
- * > %m 09 Two-digit month
- * > %#m 9 One or two-digit month
- * > %B September Full month name
- * > %b Sep Abbreviated month name
- * > == Days ==
- * > %d 05 Two-digit day of month
- * > %#d 5 One or two-digit day of month
- * > %e 5 One or two-digit day of month
- * > %A Sunday Full name of the day of the week
- * > %a Sun Abbreviated name of the day of the week
- * > %w 0 Number of the day of the week (0 = Sunday, 6 = Saturday)
- * > %o th The ordinal suffix string following the day of the month
- * > == Hours ==
- * > %H 23 Hours in 24-hour format (two digits)
- * > %#H 3 Hours in 24-hour integer format (one or two digits)
- * > %I 11 Hours in 12-hour format (two digits)
- * > %#I 3 Hours in 12-hour integer format (one or two digits)
- * > %p PM AM or PM
- * > == Minutes ==
- * > %M 09 Minutes (two digits)
- * > %#M 9 Minutes (one or two digits)
- * > == Seconds ==
- * > %S 02 Seconds (two digits)
- * > %#S 2 Seconds (one or two digits)
- * > %s 1206567625723 Unix timestamp (Seconds past 1970-01-01 00:00:00)
- * > == Milliseconds ==
- * > %N 008 Milliseconds (three digits)
- * > %#N 8 Milliseconds (one to three digits)
- * > == Timezone ==
- * > %O 360 difference in minutes between local time and GMT
- * > %Z Mountain Standard Time Name of timezone as reported by browser
- * > %G -06:00 Hours and minutes between GMT
- * > == Shortcuts ==
- * > %F 2008-03-26 %Y-%m-%d
- * > %T 05:06:30 %H:%M:%S
- * > %X 05:06:30 %H:%M:%S
- * > %x 03/26/08 %m/%d/%y
- * > %D 03/26/08 %m/%d/%y
- * > %#c Wed Mar 26 15:31:00 2008 %a %b %e %H:%M:%S %Y
- * > %v 3-Sep-2008 %e-%b-%Y
- * > %R 15:31 %H:%M
- * > %r 3:31:00 PM %I:%M:%S %p
- * > == Characters ==
- * > %n \n Newline
- * > %t \t Tab
- * > %% % Percent Symbol
- */
- $.jqplot.DateAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- this.date = new $.jsDate();
- };
-
- var second = 1000;
- var minute = 60 * second;
- var hour = 60 * minute;
- var day = 24 * hour;
- var week = 7 * day;
-
- // these are less definitive
- var month = 30.4368499 * day;
- var year = 365.242199 * day;
-
- var daysInMonths = [31,28,31,30,31,30,31,30,31,30,31,30];
- // array of consistent nice intervals. Longer intervals
- // will depend on days in month, days in year, etc.
- var niceFormatStrings = ['%M:%S.%#N', '%M:%S.%#N', '%M:%S.%#N', '%M:%S', '%M:%S', '%M:%S', '%M:%S', '%H:%M:%S', '%H:%M:%S', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%H:%M', '%a %H:%M', '%a %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%b %e %H:%M', '%v', '%v', '%v', '%v', '%v', '%v', '%v'];
- var niceIntervals = [0.1*second, 0.2*second, 0.5*second, second, 2*second, 5*second, 10*second, 15*second, 30*second, minute, 2*minute, 5*minute, 10*minute, 15*minute, 30*minute, hour, 2*hour, 4*hour, 6*hour, 8*hour, 12*hour, day, 2*day, 3*day, 4*day, 5*day, week, 2*week];
-
- var niceMonthlyIntervals = [];
-
- function bestDateInterval(min, max, titarget) {
- // iterate through niceIntervals to find one closest to titarget
- var badness = Number.MAX_VALUE;
- var temp, bestTi, bestfmt;
- for (var i=0, l=niceIntervals.length; i < l; i++) {
- temp = Math.abs(titarget - niceIntervals[i]);
- if (temp < badness) {
- badness = temp;
- bestTi = niceIntervals[i];
- bestfmt = niceFormatStrings[i];
- }
- }
-
- return [bestTi, bestfmt];
- }
-
- $.jqplot.DateAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.DateAxisRenderer.prototype.constructor = $.jqplot.DateAxisRenderer;
-
- $.jqplot.DateTickFormatter = function(format, val) {
- if (!format) {
- format = '%Y/%m/%d';
- }
- return $.jsDate.strftime(val, format);
- };
-
- $.jqplot.DateAxisRenderer.prototype.init = function(options){
- // prop: tickRenderer
- // A class of a rendering engine for creating the ticks labels displayed on the plot,
- // See <$.jqplot.AxisTickRenderer>.
- // this.tickRenderer = $.jqplot.AxisTickRenderer;
- // this.labelRenderer = $.jqplot.AxisLabelRenderer;
- this.tickOptions.formatter = $.jqplot.DateTickFormatter;
- // prop: tickInset
- // Controls the amount to inset the first and last ticks from
- // the edges of the grid, in multiples of the tick interval.
- // 0 is no inset, 0.5 is one half a tick interval, 1 is a full
- // tick interval, etc.
- this.tickInset = 0;
- // prop: drawBaseline
- // True to draw the axis baseline.
- this.drawBaseline = true;
- // prop: baselineWidth
- // width of the baseline in pixels.
- this.baselineWidth = null;
- // prop: baselineColor
- // CSS color spec for the baseline.
- this.baselineColor = null;
- this.daTickInterval = null;
- this._daTickInterval = null;
-
- $.extend(true, this, options);
-
- var db = this._dataBounds,
- stats,
- sum,
- s,
- d,
- pd,
- sd,
- intv;
-
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- for (var i=0; i<this._series.length; i++) {
- stats = {intervals:[], frequencies:{}, sortedIntervals:[], min:null, max:null, mean:null};
- sum = 0;
- s = this._series[i];
- d = s.data;
- pd = s._plotData;
- sd = s._stackData;
- intv = 0;
-
- for (var j=0; j<d.length; j++) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- d[j][0] = new $.jsDate(d[j][0]).getTime();
- pd[j][0] = new $.jsDate(d[j][0]).getTime();
- sd[j][0] = new $.jsDate(d[j][0]).getTime();
- if ((d[j][0] != null && d[j][0] < db.min) || db.min == null) {
- db.min = d[j][0];
- }
- if ((d[j][0] != null && d[j][0] > db.max) || db.max == null) {
- db.max = d[j][0];
- }
- if (j>0) {
- intv = Math.abs(d[j][0] - d[j-1][0]);
- stats.intervals.push(intv);
- if (stats.frequencies.hasOwnProperty(intv)) {
- stats.frequencies[intv] += 1;
- }
- else {
- stats.frequencies[intv] = 1;
- }
- }
- sum += intv;
-
- }
- else {
- d[j][1] = new $.jsDate(d[j][1]).getTime();
- pd[j][1] = new $.jsDate(d[j][1]).getTime();
- sd[j][1] = new $.jsDate(d[j][1]).getTime();
- if ((d[j][1] != null && d[j][1] < db.min) || db.min == null) {
- db.min = d[j][1];
- }
- if ((d[j][1] != null && d[j][1] > db.max) || db.max == null) {
- db.max = d[j][1];
- }
- if (j>0) {
- intv = Math.abs(d[j][1] - d[j-1][1]);
- stats.intervals.push(intv);
- if (stats.frequencies.hasOwnProperty(intv)) {
- stats.frequencies[intv] += 1;
- }
- else {
- stats.frequencies[intv] = 1;
- }
- }
- }
- sum += intv;
- }
-
- if (s.renderer.bands) {
- if (s.renderer.bands.hiData.length) {
- var bd = s.renderer.bands.hiData;
- for (var j=0, l=bd.length; j < l; j++) {
- if (this.name === 'xaxis' || this.name === 'x2axis') {
- bd[j][0] = new $.jsDate(bd[j][0]).getTime();
- if ((bd[j][0] != null && bd[j][0] > db.max) || db.max == null) {
- db.max = bd[j][0];
- }
- }
- else {
- bd[j][1] = new $.jsDate(bd[j][1]).getTime();
- if ((bd[j][1] != null && bd[j][1] > db.max) || db.max == null) {
- db.max = bd[j][1];
- }
- }
- }
- }
- if (s.renderer.bands.lowData.length) {
- var bd = s.renderer.bands.lowData;
- for (var j=0, l=bd.length; j < l; j++) {
- if (this.name === 'xaxis' || this.name === 'x2axis') {
- bd[j][0] = new $.jsDate(bd[j][0]).getTime();
- if ((bd[j][0] != null && bd[j][0] < db.min) || db.min == null) {
- db.min = bd[j][0];
- }
- }
- else {
- bd[j][1] = new $.jsDate(bd[j][1]).getTime();
- if ((bd[j][1] != null && bd[j][1] < db.min) || db.min == null) {
- db.min = bd[j][1];
- }
- }
- }
- }
- }
-
- var tempf = 0,
- tempn=0;
- for (var n in stats.frequencies) {
- stats.sortedIntervals.push({interval:n, frequency:stats.frequencies[n]});
- }
- stats.sortedIntervals.sort(function(a, b){
- return b.frequency - a.frequency;
- });
-
- stats.min = $.jqplot.arrayMin(stats.intervals);
- stats.max = $.jqplot.arrayMax(stats.intervals);
- stats.mean = sum/d.length;
- this._intervalStats.push(stats);
- stats = sum = s = d = pd = sd = null;
- }
- db = null;
-
- };
-
- // called with scope of an axis
- $.jqplot.DateAxisRenderer.prototype.reset = function() {
- this.min = this._options.min;
- this.max = this._options.max;
- this.tickInterval = this._options.tickInterval;
- this.numberTicks = this._options.numberTicks;
- this._autoFormatString = '';
- if (this._overrideFormatString && this.tickOptions && this.tickOptions.formatString) {
- this.tickOptions.formatString = '';
- }
- this.daTickInterval = this._daTickInterval;
- // this._ticks = this.__ticks;
- };
-
- $.jqplot.DateAxisRenderer.prototype.createTicks = function(plot) {
- // we're are operating on an axis here
- var ticks = this._ticks;
- var userTicks = this.ticks;
- var name = this.name;
- // databounds were set on axis initialization.
- var db = this._dataBounds;
- var iv = this._intervalStats;
- var dim = (this.name.charAt(0) === 'x') ? this._plotDimensions.width : this._plotDimensions.height;
- var interval;
- var min, max;
- var pos1, pos2;
- var tt, i;
- var threshold = 30;
- var insetMult = 1;
-
- var tickInterval = this.tickInterval;
-
- // if we already have ticks, use them.
- // ticks must be in order of increasing value.
-
- min = ((this.min != null) ? new $.jsDate(this.min).getTime() : db.min);
- max = ((this.max != null) ? new $.jsDate(this.max).getTime() : db.max);
-
- // see if we're zooming. if we are, don't use the min and max we're given,
- // but compute some nice ones. They will be reset later.
-
- var cursor = plot.plugins.cursor;
-
- if (cursor && cursor._zoom && cursor._zoom.zooming) {
- this.min = null;
- this.max = null;
- }
-
- var range = max - min;
-
- if (this.tickOptions == null || !this.tickOptions.formatString) {
- this._overrideFormatString = true;
- }
-
- if (userTicks.length) {
- // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
- for (i=0; i<userTicks.length; i++){
- var ut = userTicks[i];
- var t = new this.tickRenderer(this.tickOptions);
- if (ut.constructor == Array) {
- t.value = new $.jsDate(ut[0]).getTime();
- t.label = ut[1];
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(t.value, this.name);
- this._ticks.push(t);
- }
-
- else {
- t.value = new $.jsDate(ut).getTime();
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(t.value, this.name);
- this._ticks.push(t);
- }
- }
- this.numberTicks = userTicks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this.numberTicks-1].value;
- this.daTickInterval = [(this.max - this.min) / (this.numberTicks - 1)/1000, 'seconds'];
- }
-
- ////////
- // We don't have any ticks yet, let's make some!
- ////////
-
- // special case when there is only one point, make three tick marks to center the point
- else if (this.min == null && this.max == null && db.min == db.max)
- {
- var onePointOpts = $.extend(true, {}, this.tickOptions, {name: this.name, value: null});
- var delta = 300000;
- this.min = db.min - delta;
- this.max = db.max + delta;
- this.numberTicks = 3;
-
- for(var i=this.min;i<=this.max;i+= delta)
- {
- onePointOpts.value = i;
-
- var t = new this.tickRenderer(onePointOpts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
-
- t.showLabel = false;
- t.showMark = false;
-
- this._ticks.push(t);
- }
-
- if(this.showTicks) {
- this._ticks[1].showLabel = true;
- }
- if(this.showTickMarks) {
- this._ticks[1].showTickMarks = true;
- }
- }
- // if user specified min and max are null, we set those to make best ticks.
- else if (this.min == null && this.max == null) {
-
- var opts = $.extend(true, {}, this.tickOptions, {name: this.name, value: null});
-
- // want to find a nice interval
- var nttarget,
- titarget;
-
- // if no tickInterval or numberTicks options specified, make a good guess.
- if (!this.tickInterval && !this.numberTicks) {
- var tdim = Math.max(dim, threshold+1);
- // how many ticks to put on the axis?
- // date labels tend to be long. If ticks not rotated,
- // don't use too many and have a high spacing factor.
- // If we are rotating ticks, use a lower factor.
- var spacingFactor = 115;
- if (this.tickRenderer === $.jqplot.CanvasAxisTickRenderer && this.tickOptions.angle) {
- spacingFactor = 115 - 40 * Math.abs(Math.sin(this.tickOptions.angle/180*Math.PI));
- }
-
- nttarget = Math.ceil((tdim-threshold)/spacingFactor + 1);
- titarget = (max - min) / (nttarget - 1);
- }
-
- // If tickInterval is specified, we'll try to honor it.
- // Not gauranteed to get this interval, but we'll get as close as
- // we can.
- // tickInterval will be used before numberTicks, that is if
- // both are specified, numberTicks will be ignored.
- else if (this.tickInterval) {
- titarget = this.tickInterval;
- }
-
- // if numberTicks specified, try to honor it.
- // Not gauranteed, but will try to get close.
- else if (this.numberTicks) {
- nttarget = this.numberTicks;
- titarget = (max - min) / (nttarget - 1);
- }
-
- // If we can use an interval of 2 weeks or less, pick best one
- if (titarget <= 19*day) {
- var ret = bestDateInterval(min, max, titarget);
- var tempti = ret[0];
- this._autoFormatString = ret[1];
-
- min = Math.floor(min/tempti) * tempti;
- min = new $.jsDate(min);
- min = min.getTime() + min.getUtcOffset();
-
- nttarget = Math.ceil((max - min) / tempti) + 1;
- this.min = min;
- this.max = min + (nttarget - 1) * tempti;
-
- // if max is less than max, add an interval
- if (this.max < max) {
- this.max += tempti;
- nttarget += 1;
- }
- this.tickInterval = tempti;
- this.numberTicks = nttarget;
-
- for (var i=0; i<nttarget; i++) {
- opts.value = this.min + i * tempti;
- t = new this.tickRenderer(opts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- this._ticks.push(t);
- }
-
- insetMult = this.tickInterval;
- }
-
- // should we use a monthly interval?
- else if (titarget <= 9 * month) {
-
- this._autoFormatString = '%v';
-
- // how many months in an interval?
- var intv = Math.round(titarget/month);
- if (intv < 1) {
- intv = 1;
- }
- else if (intv > 6) {
- intv = 6;
- }
-
- // figure out the starting month and ending month.
- var mstart = new $.jsDate(min).setDate(1).setHours(0,0,0,0);
-
- // See if max ends exactly on a month
- var tempmend = new $.jsDate(max);
- var mend = new $.jsDate(max).setDate(1).setHours(0,0,0,0);
-
- if (tempmend.getTime() !== mend.getTime()) {
- mend = mend.add(1, 'month');
- }
-
- var nmonths = mend.diff(mstart, 'month');
-
- nttarget = Math.ceil(nmonths/intv) + 1;
-
- this.min = mstart.getTime();
- this.max = mstart.clone().add((nttarget - 1) * intv, 'month').getTime();
- this.numberTicks = nttarget;
-
- for (var i=0; i<nttarget; i++) {
- if (i === 0) {
- opts.value = mstart.getTime();
- }
- else {
- opts.value = mstart.add(intv, 'month').getTime();
- }
- t = new this.tickRenderer(opts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- this._ticks.push(t);
- }
-
- insetMult = intv * month;
- }
-
- // use yearly intervals
- else {
-
- this._autoFormatString = '%v';
-
- // how many years in an interval?
- var intv = Math.round(titarget/year);
- if (intv < 1) {
- intv = 1;
- }
-
- // figure out the starting and ending years.
- var mstart = new $.jsDate(min).setMonth(0, 1).setHours(0,0,0,0);
- var mend = new $.jsDate(max).add(1, 'year').setMonth(0, 1).setHours(0,0,0,0);
-
- var nyears = mend.diff(mstart, 'year');
-
- nttarget = Math.ceil(nyears/intv) + 1;
-
- this.min = mstart.getTime();
- this.max = mstart.clone().add((nttarget - 1) * intv, 'year').getTime();
- this.numberTicks = nttarget;
-
- for (var i=0; i<nttarget; i++) {
- if (i === 0) {
- opts.value = mstart.getTime();
- }
- else {
- opts.value = mstart.add(intv, 'year').getTime();
- }
- t = new this.tickRenderer(opts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- this._ticks.push(t);
- }
-
- insetMult = intv * year;
- }
- }
-
- ////////
- // Some option(s) specified, work around that.
- ////////
-
- else {
- if (name == 'xaxis' || name == 'x2axis') {
- dim = this._plotDimensions.width;
- }
- else {
- dim = this._plotDimensions.height;
- }
-
- // if min, max and number of ticks specified, user can't specify interval.
- if (this.min != null && this.max != null && this.numberTicks != null) {
- this.tickInterval = null;
- }
-
- // if user specified a tick interval, convert to usable.
- if (this.tickInterval != null)
- {
- // if interval is a number or can be converted to one, use it.
- // Assume it is in SECONDS!!!
- if (Number(this.tickInterval)) {
- this.daTickInterval = [Number(this.tickInterval), 'seconds'];
- }
- // else, parse out something we can build from.
- else if (typeof this.tickInterval == "string") {
- var parts = this.tickInterval.split(' ');
- if (parts.length == 1) {
- this.daTickInterval = [1, parts[0]];
- }
- else if (parts.length == 2) {
- this.daTickInterval = [parts[0], parts[1]];
- }
- }
- }
-
- // if min and max are same, space them out a bit
- if (min == max) {
- var adj = 24*60*60*500; // 1/2 day
- min -= adj;
- max += adj;
- }
-
- range = max - min;
-
- var optNumTicks = 2 + parseInt(Math.max(0, dim-100)/100, 10);
-
-
- var rmin, rmax;
-
- rmin = (this.min != null) ? new $.jsDate(this.min).getTime() : min - range/2*(this.padMin - 1);
- rmax = (this.max != null) ? new $.jsDate(this.max).getTime() : max + range/2*(this.padMax - 1);
- this.min = rmin;
- this.max = rmax;
- range = this.max - this.min;
-
- if (this.numberTicks == null){
- // if tickInterval is specified by user, we will ignore computed maximum.
- // max will be equal or greater to fit even # of ticks.
- if (this.daTickInterval != null) {
- var nc = new $.jsDate(this.max).diff(this.min, this.daTickInterval[1], true);
- this.numberTicks = Math.ceil(nc/this.daTickInterval[0]) +1;
- // this.max = new $.jsDate(this.min).add(this.numberTicks-1, this.daTickInterval[1]).getTime();
- this.max = new $.jsDate(this.min).add((this.numberTicks-1) * this.daTickInterval[0], this.daTickInterval[1]).getTime();
- }
- else if (dim > 200) {
- this.numberTicks = parseInt(3+(dim-200)/100, 10);
- }
- else {
- this.numberTicks = 2;
- }
- }
-
- insetMult = range / (this.numberTicks-1)/1000;
-
- if (this.daTickInterval == null) {
- this.daTickInterval = [insetMult, 'seconds'];
- }
-
-
- for (var i=0; i<this.numberTicks; i++){
- var min = new $.jsDate(this.min);
- tt = min.add(i*this.daTickInterval[0], this.daTickInterval[1]).getTime();
- var t = new this.tickRenderer(this.tickOptions);
- // var t = new $.jqplot.AxisTickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(tt, this.name);
- this._ticks.push(t);
- }
- }
-
- if (this.tickInset) {
- this.min = this.min - this.tickInset * insetMult;
- this.max = this.max + this.tickInset * insetMult;
- }
-
- if (this._daTickInterval == null) {
- this._daTickInterval = this.daTickInterval;
- }
-
- ticks = null;
- };
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.min.js
deleted file mode 100644
index f8532fe1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dateAxisRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(h){h.jqplot.DateAxisRenderer=function(){h.jqplot.LinearAxisRenderer.call(this);this.date=new h.jsDate()};var c=1000;var e=60*c;var f=60*e;var l=24*f;var b=7*l;var j=30.4368499*l;var k=365.242199*l;var g=[31,28,31,30,31,30,31,30,31,30,31,30];var i=["%M:%S.%#N","%M:%S.%#N","%M:%S.%#N","%M:%S","%M:%S","%M:%S","%M:%S","%H:%M:%S","%H:%M:%S","%H:%M","%H:%M","%H:%M","%H:%M","%H:%M","%H:%M","%a %H:%M","%a %H:%M","%b %e %H:%M","%b %e %H:%M","%b %e %H:%M","%b %e %H:%M","%v","%v","%v","%v","%v","%v","%v"];var m=[0.1*c,0.2*c,0.5*c,c,2*c,5*c,10*c,15*c,30*c,e,2*e,5*e,10*e,15*e,30*e,f,2*f,4*f,6*f,8*f,12*f,l,2*l,3*l,4*l,5*l,b,2*b];var d=[];function a(p,s,t){var o=Number.MAX_VALUE;var u,r,v;for(var q=0,n=m.length;q<n;q++){u=Math.abs(t-m[q]);if(u<o){o=u;r=m[q];v=i[q]}}return[r,v]}h.jqplot.DateAxisRenderer.prototype=new h.jqplot.LinearAxisRenderer();h.jqplot.DateAxisRenderer.prototype.constructor=h.jqplot.DateAxisRenderer;h.jqplot.DateTickFormatter=function(n,o){if(!n){n="%Y/%m/%d"}return h.jsDate.strftime(o,n)};h.jqplot.DateAxisRenderer.prototype.init=function(E){this.tickOptions.formatter=h.jqplot.DateTickFormatter;this.tickInset=0;this.drawBaseline=true;this.baselineWidth=null;this.baselineColor=null;this.daTickInterval=null;this._daTickInterval=null;h.extend(true,this,E);var C=this._dataBounds,u,x,D,y,A,z,o;for(var t=0;t<this._series.length;t++){u={intervals:[],frequencies:{},sortedIntervals:[],min:null,max:null,mean:null};x=0;D=this._series[t];y=D.data;A=D._plotData;z=D._stackData;o=0;for(var r=0;r<y.length;r++){if(this.name=="xaxis"||this.name=="x2axis"){y[r][0]=new h.jsDate(y[r][0]).getTime();A[r][0]=new h.jsDate(y[r][0]).getTime();z[r][0]=new h.jsDate(y[r][0]).getTime();if((y[r][0]!=null&&y[r][0]<C.min)||C.min==null){C.min=y[r][0]}if((y[r][0]!=null&&y[r][0]>C.max)||C.max==null){C.max=y[r][0]}if(r>0){o=Math.abs(y[r][0]-y[r-1][0]);u.intervals.push(o);if(u.frequencies.hasOwnProperty(o)){u.frequencies[o]+=1}else{u.frequencies[o]=1}}x+=o}else{y[r][1]=new h.jsDate(y[r][1]).getTime();A[r][1]=new h.jsDate(y[r][1]).getTime();z[r][1]=new h.jsDate(y[r][1]).getTime();if((y[r][1]!=null&&y[r][1]<C.min)||C.min==null){C.min=y[r][1]}if((y[r][1]!=null&&y[r][1]>C.max)||C.max==null){C.max=y[r][1]}if(r>0){o=Math.abs(y[r][1]-y[r-1][1]);u.intervals.push(o);if(u.frequencies.hasOwnProperty(o)){u.frequencies[o]+=1}else{u.frequencies[o]=1}}}x+=o}if(D.renderer.bands){if(D.renderer.bands.hiData.length){var w=D.renderer.bands.hiData;for(var r=0,q=w.length;r<q;r++){if(this.name==="xaxis"||this.name==="x2axis"){w[r][0]=new h.jsDate(w[r][0]).getTime();if((w[r][0]!=null&&w[r][0]>C.max)||C.max==null){C.max=w[r][0]}}else{w[r][1]=new h.jsDate(w[r][1]).getTime();if((w[r][1]!=null&&w[r][1]>C.max)||C.max==null){C.max=w[r][1]}}}}if(D.renderer.bands.lowData.length){var w=D.renderer.bands.lowData;for(var r=0,q=w.length;r<q;r++){if(this.name==="xaxis"||this.name==="x2axis"){w[r][0]=new h.jsDate(w[r][0]).getTime();if((w[r][0]!=null&&w[r][0]<C.min)||C.min==null){C.min=w[r][0]}}else{w[r][1]=new h.jsDate(w[r][1]).getTime();if((w[r][1]!=null&&w[r][1]<C.min)||C.min==null){C.min=w[r][1]}}}}}var B=0,v=0;for(var p in u.frequencies){u.sortedIntervals.push({interval:p,frequency:u.frequencies[p]})}u.sortedIntervals.sort(function(s,n){return n.frequency-s.frequency});u.min=h.jqplot.arrayMin(u.intervals);u.max=h.jqplot.arrayMax(u.intervals);u.mean=x/y.length;this._intervalStats.push(u);u=x=D=y=A=z=null}C=null};h.jqplot.DateAxisRenderer.prototype.reset=function(){this.min=this._options.min;this.max=this._options.max;this.tickInterval=this._options.tickInterval;this.numberTicks=this._options.numberTicks;this._autoFormatString="";if(this._overrideFormatString&&this.tickOptions&&this.tickOptions.formatString){this.tickOptions.formatString=""}this.daTickInterval=this._daTickInterval};h.jqplot.DateAxisRenderer.prototype.createTicks=function(p){var W=this._ticks;var L=this.ticks;var F=this.name;var H=this._dataBounds;var M=this._intervalStats;var n=(this.name.charAt(0)==="x")?this._plotDimensions.width:this._plotDimensions.height;var w;var ad,J;var y,x;var ac,Z;var s=30;var O=1;var v=this.tickInterval;ad=((this.min!=null)?new h.jsDate(this.min).getTime():H.min);J=((this.max!=null)?new h.jsDate(this.max).getTime():H.max);var A=p.plugins.cursor;if(A&&A._zoom&&A._zoom.zooming){this.min=null;this.max=null}var B=J-ad;if(this.tickOptions==null||!this.tickOptions.formatString){this._overrideFormatString=true}if(L.length){for(Z=0;Z<L.length;Z++){var P=L[Z];var X=new this.tickRenderer(this.tickOptions);if(P.constructor==Array){X.value=new h.jsDate(P[0]).getTime();X.label=P[1];if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}X.setTick(X.value,this.name);this._ticks.push(X)}else{X.value=new h.jsDate(P).getTime();if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}X.setTick(X.value,this.name);this._ticks.push(X)}}this.numberTicks=L.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value;this.daTickInterval=[(this.max-this.min)/(this.numberTicks-1)/1000,"seconds"]}else{if(this.min==null&&this.max==null&&H.min==H.max){var E=h.extend(true,{},this.tickOptions,{name:this.name,value:null});var S=300000;this.min=H.min-S;this.max=H.max+S;this.numberTicks=3;for(var Z=this.min;Z<=this.max;Z+=S){E.value=Z;var X=new this.tickRenderer(E);if(this._overrideFormatString&&this._autoFormatString!=""){X.formatString=this._autoFormatString}X.showLabel=false;X.showMark=false;this._ticks.push(X)}if(this.showTicks){this._ticks[1].showLabel=true}if(this.showTickMarks){this._ticks[1].showTickMarks=true}}else{if(this.min==null&&this.max==null){var N=h.extend(true,{},this.tickOptions,{name:this.name,value:null});var ab,I;if(!this.tickInterval&&!this.numberTicks){var R=Math.max(n,s+1);var Y=115;if(this.tickRenderer===h.jqplot.CanvasAxisTickRenderer&&this.tickOptions.angle){Y=115-40*Math.abs(Math.sin(this.tickOptions.angle/180*Math.PI))}ab=Math.ceil((R-s)/Y+1);I=(J-ad)/(ab-1)}else{if(this.tickInterval){I=this.tickInterval}else{if(this.numberTicks){ab=this.numberTicks;I=(J-ad)/(ab-1)}}}if(I<=19*l){var Q=a(ad,J,I);var r=Q[0];this._autoFormatString=Q[1];ad=Math.floor(ad/r)*r;ad=new h.jsDate(ad);ad=ad.getTime()+ad.getUtcOffset();ab=Math.ceil((J-ad)/r)+1;this.min=ad;this.max=ad+(ab-1)*r;if(this.max<J){this.max+=r;ab+=1}this.tickInterval=r;this.numberTicks=ab;for(var Z=0;Z<ab;Z++){N.value=this.min+Z*r;X=new this.tickRenderer(N);if(this._overrideFormatString&&this._autoFormatString!=""){X.formatString=this._autoFormatString}if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}this._ticks.push(X)}O=this.tickInterval}else{if(I<=9*j){this._autoFormatString="%v";var D=Math.round(I/j);if(D<1){D=1}else{if(D>6){D=6}}var U=new h.jsDate(ad).setDate(1).setHours(0,0,0,0);var q=new h.jsDate(J);var z=new h.jsDate(J).setDate(1).setHours(0,0,0,0);if(q.getTime()!==z.getTime()){z=z.add(1,"month")}var T=z.diff(U,"month");ab=Math.ceil(T/D)+1;this.min=U.getTime();this.max=U.clone().add((ab-1)*D,"month").getTime();this.numberTicks=ab;for(var Z=0;Z<ab;Z++){if(Z===0){N.value=U.getTime()}else{N.value=U.add(D,"month").getTime()}X=new this.tickRenderer(N);if(this._overrideFormatString&&this._autoFormatString!=""){X.formatString=this._autoFormatString}if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}this._ticks.push(X)}O=D*j}else{this._autoFormatString="%v";var D=Math.round(I/k);if(D<1){D=1}var U=new h.jsDate(ad).setMonth(0,1).setHours(0,0,0,0);var z=new h.jsDate(J).add(1,"year").setMonth(0,1).setHours(0,0,0,0);var K=z.diff(U,"year");ab=Math.ceil(K/D)+1;this.min=U.getTime();this.max=U.clone().add((ab-1)*D,"year").getTime();this.numberTicks=ab;for(var Z=0;Z<ab;Z++){if(Z===0){N.value=U.getTime()}else{N.value=U.add(D,"year").getTime()}X=new this.tickRenderer(N);if(this._overrideFormatString&&this._autoFormatString!=""){X.formatString=this._autoFormatString}if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}this._ticks.push(X)}O=D*k}}}else{if(F=="xaxis"||F=="x2axis"){n=this._plotDimensions.width}else{n=this._plotDimensions.height}if(this.min!=null&&this.max!=null&&this.numberTicks!=null){this.tickInterval=null}if(this.tickInterval!=null){if(Number(this.tickInterval)){this.daTickInterval=[Number(this.tickInterval),"seconds"]}else{if(typeof this.tickInterval=="string"){var aa=this.tickInterval.split(" ");if(aa.length==1){this.daTickInterval=[1,aa[0]]}else{if(aa.length==2){this.daTickInterval=[aa[0],aa[1]]}}}}}if(ad==J){var o=24*60*60*500;ad-=o;J+=o}B=J-ad;var G=2+parseInt(Math.max(0,n-100)/100,10);var V,C;V=(this.min!=null)?new h.jsDate(this.min).getTime():ad-B/2*(this.padMin-1);C=(this.max!=null)?new h.jsDate(this.max).getTime():J+B/2*(this.padMax-1);this.min=V;this.max=C;B=this.max-this.min;if(this.numberTicks==null){if(this.daTickInterval!=null){var u=new h.jsDate(this.max).diff(this.min,this.daTickInterval[1],true);this.numberTicks=Math.ceil(u/this.daTickInterval[0])+1;this.max=new h.jsDate(this.min).add((this.numberTicks-1)*this.daTickInterval[0],this.daTickInterval[1]).getTime()}else{if(n>200){this.numberTicks=parseInt(3+(n-200)/100,10)}else{this.numberTicks=2}}}O=B/(this.numberTicks-1)/1000;if(this.daTickInterval==null){this.daTickInterval=[O,"seconds"]}for(var Z=0;Z<this.numberTicks;Z++){var ad=new h.jsDate(this.min);ac=ad.add(Z*this.daTickInterval[0],this.daTickInterval[1]).getTime();var X=new this.tickRenderer(this.tickOptions);if(!this.showTicks){X.showLabel=false;X.showMark=false}else{if(!this.showTickMarks){X.showMark=false}}X.setTick(ac,this.name);this._ticks.push(X)}}}}if(this.tickInset){this.min=this.min-this.tickInset*O;this.max=this.max+this.tickInset*O}if(this._daTickInterval==null){this._daTickInterval=this.daTickInterval}W=null}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.js
deleted file mode 100644
index eeda6ef9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.js
+++ /dev/null
@@ -1,804 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.DonutRenderer
- * Plugin renderer to draw a donut chart.
- * x values, if present, will be used as slice labels.
- * y values give slice size.
- *
- * To use this renderer, you need to include the
- * donut renderer plugin, for example:
- *
- * > <script type="text/javascript" src="plugins/jqplot.donutRenderer.js"></script>
- *
- * Properties described here are passed into the $.jqplot function
- * as options on the series renderer. For example:
- *
- * > plot2 = $.jqplot('chart2', [s1, s2], {
- * > seriesDefaults: {
- * > renderer:$.jqplot.DonutRenderer,
- * > rendererOptions:{
- * > sliceMargin: 2,
- * > innerDiameter: 110,
- * > startAngle: -90
- * > }
- * > }
- * > });
- *
- * A donut plot will trigger events on the plot target
- * according to user interaction. All events return the event object,
- * the series index, the point (slice) index, and the point data for
- * the appropriate slice.
- *
- * 'jqplotDataMouseOver' - triggered when user mouseing over a slice.
- * 'jqplotDataHighlight' - triggered the first time user mouses over a slice,
- * if highlighting is enabled.
- * 'jqplotDataUnhighlight' - triggered when a user moves the mouse out of
- * a highlighted slice.
- * 'jqplotDataClick' - triggered when the user clicks on a slice.
- * 'jqplotDataRightClick' - tiggered when the user right clicks on a slice if
- * the "captureRightClick" option is set to true on the plot.
- */
- $.jqplot.DonutRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.DonutRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.DonutRenderer.prototype.constructor = $.jqplot.DonutRenderer;
-
- // called with scope of a series
- $.jqplot.DonutRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- // prop: diameter
- // Outer diameter of the donut, auto computed by default
- this.diameter = null;
- // prop: innerDiameter
- // Inner diameter of the donut, auto calculated by default.
- // If specified will override thickness value.
- this.innerDiameter = null;
- // prop: thickness
- // thickness of the donut, auto computed by default
- // Overridden by if innerDiameter is specified.
- this.thickness = null;
- // prop: padding
- // padding between the donut and plot edges, legend, etc.
- this.padding = 20;
- // prop: sliceMargin
- // angular spacing between donut slices in degrees.
- this.sliceMargin = 0;
- // prop: ringMargin
- // pixel distance between rings, or multiple series in a donut plot.
- // null will compute ringMargin based on sliceMargin.
- this.ringMargin = null;
- // prop: fill
- // true or false, wether to fil the slices.
- this.fill = true;
- // prop: shadowOffset
- // offset of the shadow from the slice and offset of
- // each succesive stroke of the shadow from the last.
- this.shadowOffset = 2;
- // prop: shadowAlpha
- // transparency of the shadow (0 = transparent, 1 = opaque)
- this.shadowAlpha = 0.07;
- // prop: shadowDepth
- // number of strokes to apply to the shadow,
- // each stroke offset shadowOffset from the last.
- this.shadowDepth = 5;
- // prop: highlightMouseOver
- // True to highlight slice when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a slice.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a slice.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // an array of colors to use when highlighting a slice.
- this.highlightColors = [];
- // prop: dataLabels
- // Either 'label', 'value', 'percent' or an array of labels to place on the pie slices.
- // Defaults to percentage of each pie slice.
- this.dataLabels = 'percent';
- // prop: showDataLabels
- // true to show data labels on slices.
- this.showDataLabels = false;
- // prop: dataLabelFormatString
- // Format string for data labels. If none, '%s' is used for "label" and for arrays, '%d' for value and '%d%%' for percentage.
- this.dataLabelFormatString = null;
- // prop: dataLabelThreshold
- // Threshhold in percentage (0 - 100) of pie area, below which no label will be displayed.
- // This applies to all label types, not just to percentage labels.
- this.dataLabelThreshold = 3;
- // prop: dataLabelPositionFactor
- // A Multiplier (0-1) of the pie radius which controls position of label on slice.
- // Increasing will slide label toward edge of pie, decreasing will slide label toward center of pie.
- this.dataLabelPositionFactor = 0.4;
- // prop: dataLabelNudge
- // Number of pixels to slide the label away from (+) or toward (-) the center of the pie.
- this.dataLabelNudge = 0;
- // prop: startAngle
- // Angle to start drawing donut in degrees.
- // According to orientation of canvas coordinate system:
- // 0 = on the positive x axis
- // -90 = on the positive y axis.
- // 90 = on the negaive y axis.
- // 180 or - 180 = on the negative x axis.
- this.startAngle = 0;
- this.tickRenderer = $.jqplot.DonutTickRenderer;
- // Used as check for conditions where donut shouldn't be drawn.
- this._drawData = true;
- this._type = 'donut';
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- $.extend(true, this, options);
- if (this.diameter != null) {
- this.diameter = this.diameter - this.sliceMargin;
- }
- this._diameter = null;
- this._innerDiameter = null;
- this._radius = null;
- this._innerRadius = null;
- this._thickness = null;
- // references to the previous series in the plot to properly calculate diameters
- // and thicknesses of nested rings.
- this._previousSeries = [];
- this._numberSeries = 1;
- // array of [start,end] angles arrays, one for each slice. In radians.
- this._sliceAngles = [];
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
-
- // set highlight colors if none provided
- if (this.highlightColors.length == 0) {
- for (var i=0; i<this.seriesColors.length; i++){
- var rgba = $.jqplot.getColorComponents(this.seriesColors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]);
- newrgb[j] = parseInt(newrgb[j], 10);
- }
- this.highlightColors.push('rgb('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+')');
- }
- }
-
- plot.postParseOptionsHooks.addOnce(postParseOptions);
- plot.postInitHooks.addOnce(postInit);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- plot.postDrawHooks.addOnce(postPlotDraw);
-
-
- };
-
- $.jqplot.DonutRenderer.prototype.setGridData = function(plot) {
- // set gridData property. This will hold angle in radians of each data point.
- var stack = [];
- var td = [];
- var sa = this.startAngle/180*Math.PI;
- var tot = 0;
- // don't know if we have any valid data yet, so set plot to not draw.
- this._drawData = false;
- for (var i=0; i<this.data.length; i++){
- if (this.data[i][1] != 0) {
- // we have data, O.K. to draw.
- this._drawData = true;
- }
- stack.push(this.data[i][1]);
- td.push([this.data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- tot += this.data[i][1];
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- td[i][2] = this.data[i][1]/tot;
- }
- this.gridData = td;
- };
-
- $.jqplot.DonutRenderer.prototype.makeGridData = function(data, plot) {
- var stack = [];
- var td = [];
- var tot = 0;
- var sa = this.startAngle/180*Math.PI;
- // don't know if we have any valid data yet, so set plot to not draw.
- this._drawData = false;
- for (var i=0; i<data.length; i++){
- if (this.data[i][1] != 0) {
- // we have data, O.K. to draw.
- this._drawData = true;
- }
- stack.push(data[i][1]);
- td.push([data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- tot += data[i][1];
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- td[i][2] = data[i][1]/tot;
- }
- return td;
- };
-
- $.jqplot.DonutRenderer.prototype.drawSlice = function (ctx, ang1, ang2, color, isShadow) {
- var r = this._diameter / 2;
- var ri = r - this._thickness;
- var fill = this.fill;
- // var lineWidth = this.lineWidth;
- ctx.save();
- ctx.translate(this._center[0], this._center[1]);
- // ctx.translate(this.sliceMargin*Math.cos((ang1+ang2)/2), this.sliceMargin*Math.sin((ang1+ang2)/2));
-
- if (isShadow) {
- for (var i=0; i<this.shadowDepth; i++) {
- ctx.save();
- ctx.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI), this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));
- doDraw();
- }
- }
-
- else {
- doDraw();
- }
-
- function doDraw () {
- // Fix for IE and Chrome that can't seem to draw circles correctly.
- // ang2 should always be <= 2 pi since that is the way the data is converted.
- if (ang2 > 6.282 + this.startAngle) {
- ang2 = 6.282 + this.startAngle;
- if (ang1 > ang2) {
- ang1 = 6.281 + this.startAngle;
- }
- }
- // Fix for IE, where it can't seem to handle 0 degree angles. Also avoids
- // ugly line on unfilled donuts.
- if (ang1 >= ang2) {
- return;
- }
- ctx.beginPath();
- ctx.fillStyle = color;
- ctx.strokeStyle = color;
- // ctx.lineWidth = lineWidth;
- ctx.arc(0, 0, r, ang1, ang2, false);
- ctx.lineTo(ri*Math.cos(ang2), ri*Math.sin(ang2));
- ctx.arc(0,0, ri, ang2, ang1, true);
- ctx.closePath();
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- }
-
- if (isShadow) {
- for (var i=0; i<this.shadowDepth; i++) {
- ctx.restore();
- }
- }
-
- ctx.restore();
- };
-
- // called with scope of series
- $.jqplot.DonutRenderer.prototype.draw = function (ctx, gd, options, plot) {
- var i;
- var opts = (options != undefined) ? options : {};
- // offset and direction of offset due to legend placement
- var offx = 0;
- var offy = 0;
- var trans = 1;
- // var colorGenerator = new this.colorGenerator(this.seriesColors);
- if (options.legendInfo && options.legendInfo.placement == 'insideGrid') {
- var li = options.legendInfo;
- switch (li.location) {
- case 'nw':
- offx = li.width + li.xoffset;
- break;
- case 'w':
- offx = li.width + li.xoffset;
- break;
- case 'sw':
- offx = li.width + li.xoffset;
- break;
- case 'ne':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'e':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'se':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'n':
- offy = li.height + li.yoffset;
- break;
- case 's':
- offy = li.height + li.yoffset;
- trans = -1;
- break;
- default:
- break;
- }
- }
-
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var cw = ctx.canvas.width;
- var ch = ctx.canvas.height;
- var w = cw - offx - 2 * this.padding;
- var h = ch - offy - 2 * this.padding;
- var mindim = Math.min(w,h);
- var d = mindim;
- var ringmargin = (this.ringMargin == null) ? this.sliceMargin * 2.0 : this.ringMargin;
-
- for (var i=0; i<this._previousSeries.length; i++) {
- d -= 2.0 * this._previousSeries[i]._thickness + 2.0 * ringmargin;
- }
- this._diameter = this.diameter || d;
- if (this.innerDiameter != null) {
- var od = (this._numberSeries > 1 && this.index > 0) ? this._previousSeries[0]._diameter : this._diameter;
- this._thickness = this.thickness || (od - this.innerDiameter - 2.0*ringmargin*this._numberSeries) / this._numberSeries/2.0;
- }
- else {
- this._thickness = this.thickness || mindim / 2 / (this._numberSeries + 1) * 0.85;
- }
-
- var r = this._radius = this._diameter/2;
- this._innerRadius = this._radius - this._thickness;
- var sa = this.startAngle / 180 * Math.PI;
- this._center = [(cw - trans * offx)/2 + trans * offx, (ch - trans*offy)/2 + trans * offy];
-
- if (this.shadow) {
- var shadowColor = 'rgba(0,0,0,'+this.shadowAlpha+')';
- for (var i=0; i<gd.length; i++) {
- var ang1 = (i == 0) ? sa : gd[i-1][1] + sa;
- // Adjust ang1 and ang2 for sliceMargin
- ang1 += this.sliceMargin/180*Math.PI;
- this.renderer.drawSlice.call (this, ctx, ang1, gd[i][1]+sa, shadowColor, true);
- }
-
- }
- for (var i=0; i<gd.length; i++) {
- var ang1 = (i == 0) ? sa : gd[i-1][1] + sa;
- // Adjust ang1 and ang2 for sliceMargin
- ang1 += this.sliceMargin/180*Math.PI;
- var ang2 = gd[i][1] + sa;
- this._sliceAngles.push([ang1, ang2]);
- this.renderer.drawSlice.call (this, ctx, ang1, ang2, this.seriesColors[i], false);
-
- if (this.showDataLabels && gd[i][2]*100 >= this.dataLabelThreshold) {
- var fstr, avgang = (ang1+ang2)/2, label;
-
- if (this.dataLabels == 'label') {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, gd[i][0]);
- }
- else if (this.dataLabels == 'value') {
- fstr = this.dataLabelFormatString || '%d';
- label = $.jqplot.sprintf(fstr, this.data[i][1]);
- }
- else if (this.dataLabels == 'percent') {
- fstr = this.dataLabelFormatString || '%d%%';
- label = $.jqplot.sprintf(fstr, gd[i][2]*100);
- }
- else if (this.dataLabels.constructor == Array) {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, this.dataLabels[i]);
- }
-
- var fact = this._innerRadius + this._thickness * this.dataLabelPositionFactor + this.sliceMargin + this.dataLabelNudge;
-
- var x = this._center[0] + Math.cos(avgang) * fact + this.canvas._offsets.left;
- var y = this._center[1] + Math.sin(avgang) * fact + this.canvas._offsets.top;
-
- var labelelem = $('<span class="jqplot-donut-series jqplot-data-label" style="position:absolute;">' + label + '</span>').insertBefore(plot.eventCanvas._elem);
- x -= labelelem.width()/2;
- y -= labelelem.height()/2;
- x = Math.round(x);
- y = Math.round(y);
- labelelem.css({left: x, top: y});
- }
- }
-
- };
-
- $.jqplot.DonutAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.DonutAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.DonutAxisRenderer.prototype.constructor = $.jqplot.DonutAxisRenderer;
-
-
- // There are no traditional axes on a donut chart. We just need to provide
- // dummy objects with properties so the plot will render.
- // called with scope of axis object.
- $.jqplot.DonutAxisRenderer.prototype.init = function(options){
- //
- this.tickRenderer = $.jqplot.DonutTickRenderer;
- $.extend(true, this, options);
- // I don't think I'm going to need _dataBounds here.
- // have to go Axis scaling in a way to fit chart onto plot area
- // and provide u2p and p2u functionality for mouse cursor, etc.
- // for convienence set _dataBounds to 0 and 100 and
- // set min/max to 0 and 100.
- this._dataBounds = {min:0, max:100};
- this.min = 0;
- this.max = 100;
- this.showTicks = false;
- this.ticks = [];
- this.showMark = false;
- this.show = false;
- };
-
-
-
-
- $.jqplot.DonutLegendRenderer = function(){
- $.jqplot.TableLegendRenderer.call(this);
- };
-
- $.jqplot.DonutLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.DonutLegendRenderer.prototype.constructor = $.jqplot.DonutLegendRenderer;
-
- /**
- * Class: $.jqplot.DonutLegendRenderer
- * Legend Renderer specific to donut plots. Set by default
- * when user creates a donut plot.
- */
- $.jqplot.DonutLegendRenderer.prototype.init = function(options) {
- // Group: Properties
- //
- // prop: numberRows
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // prop: numberColumns
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- $.extend(true, this, options);
- };
-
- // called with context of legend
- $.jqplot.DonutLegendRenderer.prototype.draw = function() {
- var legend = this;
- if (this.show) {
- var series = this._series;
- var ss = 'position:absolute;';
- ss += (this.background) ? 'background:'+this.background+';' : '';
- ss += (this.border) ? 'border:'+this.border+';' : '';
- ss += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- ss += (this.fontFamily) ? 'font-family:'+this.fontFamily+';' : '';
- ss += (this.textColor) ? 'color:'+this.textColor+';' : '';
- ss += (this.marginTop != null) ? 'margin-top:'+this.marginTop+';' : '';
- ss += (this.marginBottom != null) ? 'margin-bottom:'+this.marginBottom+';' : '';
- ss += (this.marginLeft != null) ? 'margin-left:'+this.marginLeft+';' : '';
- ss += (this.marginRight != null) ? 'margin-right:'+this.marginRight+';' : '';
- this._elem = $('<table class="jqplot-table-legend" style="'+ss+'"></table>');
- // Donut charts legends don't go by number of series, but by number of data points
- // in the series. Refactor things here for that.
-
- var pad = false,
- reverse = false,
- nr, nc;
- var s = series[0];
- var colorGenerator = new $.jqplot.ColorGenerator(s.seriesColors);
-
- if (s.show) {
- var pd = s.data;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(pd.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(pd.length/this.numberColumns);
- }
- else {
- nr = pd.length;
- nc = 1;
- }
-
- var i, j, tr, td1, td2, lt, rs, color;
- var idx = 0;
-
- for (i=0; i<nr; i++) {
- if (reverse){
- tr = $('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem);
- }
- else{
- tr = $('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem);
- }
- for (j=0; j<nc; j++) {
- if (idx < pd.length){
- lt = this.labels[idx] || pd[idx][0].toString();
- color = colorGenerator.next();
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
- td1 = $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- '<div><div class="jqplot-table-legend-swatch" style="border-color:'+color+';"></div>'+
- '</div></td>');
- td2 = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- td2.prependTo(tr);
- td1.prependTo(tr);
- }
- else {
- td1.appendTo(tr);
- td2.appendTo(tr);
- }
- pad = true;
- }
- idx++;
- }
- }
- }
- }
- return this._elem;
- };
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- // only set these if there is a donut series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.DonutRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.DonutRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.DonutAxisRenderer;
- options.legend.renderer = $.jqplot.DonutLegendRenderer;
- options.legend.preDraw = true;
- options.seriesDefaults.pointLabels = {show: false};
- }
- }
-
- // called with scope of plot.
- function postInit(target, data, options) {
- // if multiple series, add a reference to the previous one so that
- // donut rings can nest.
- for (var i=1; i<this.series.length; i++) {
- if (!this.series[i]._previousSeries.length){
- for (var j=0; j<i; j++) {
- if (this.series[i].renderer.constructor == $.jqplot.DonutRenderer && this.series[j].renderer.constructor == $.jqplot.DonutRenderer) {
- this.series[i]._previousSeries.push(this.series[j]);
- }
- }
- }
- }
- for (i=0; i<this.series.length; i++) {
- if (this.series[i].renderer.constructor == $.jqplot.DonutRenderer) {
- this.series[i]._numberSeries = this.series.length;
- // don't allow mouseover and mousedown at same time.
- if (this.series[i].highlightMouseOver) {
- this.series[i].highlightMouseDown = false;
- }
- }
- }
- }
-
- var postParseOptionsRun = false;
- // called with scope of plot
- function postParseOptions(options) {
- for (var i=0; i<this.series.length; i++) {
- this.series[i].seriesColors = this.seriesColors;
- this.series[i].colorGenerator = $.jqplot.colorGenerator;
- }
- }
-
- function highlight (plot, sidx, pidx) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.donutRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.donutRenderer.highlightedSeriesIndex = sidx;
- s.renderer.drawSlice.call(s, canvas._ctx, s._sliceAngles[pidx][0], s._sliceAngles[pidx][1], s.highlightColors[pidx], false);
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.donutRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.donutRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- }
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.donutRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.donutRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.donutRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var idx = plot.plugins.donutRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.donutRenderer && this.plugins.donutRenderer.highlightCanvas) {
- this.plugins.donutRenderer.highlightCanvas.resetCanvas();
- this.plugins.donutRenderer.highlightCanvas = null;
- }
-
- this.plugins.donutRenderer = {highlightedSeriesIndex:null};
- this.plugins.donutRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
- // do we have any data labels? if so, put highlight canvas before those
- // Fix for broken jquery :first selector with canvas (VML) elements.
- var labels = $(this.targetId+' .jqplot-data-label');
- if (labels.length) {
- $(labels[0]).before(this.plugins.donutRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-donutRenderer-highlight-canvas', this._plotDimensions, this));
- }
- // else put highlight canvas before event canvas.
- else {
- this.eventCanvas._elem.before(this.plugins.donutRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-donutRenderer-highlight-canvas', this._plotDimensions, this));
- }
- var hctx = this.plugins.donutRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
- $.jqplot.DonutTickRenderer = function() {
- $.jqplot.AxisTickRenderer.call(this);
- };
-
- $.jqplot.DonutTickRenderer.prototype = new $.jqplot.AxisTickRenderer();
- $.jqplot.DonutTickRenderer.prototype.constructor = $.jqplot.DonutTickRenderer;
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.min.js
deleted file mode 100644
index 13c20acb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.donutRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(e){e.jqplot.DonutRenderer=function(){e.jqplot.LineRenderer.call(this)};e.jqplot.DonutRenderer.prototype=new e.jqplot.LineRenderer();e.jqplot.DonutRenderer.prototype.constructor=e.jqplot.DonutRenderer;e.jqplot.DonutRenderer.prototype.init=function(p,t){this.diameter=null;this.innerDiameter=null;this.thickness=null;this.padding=20;this.sliceMargin=0;this.ringMargin=null;this.fill=true;this.shadowOffset=2;this.shadowAlpha=0.07;this.shadowDepth=5;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.dataLabels="percent";this.showDataLabels=false;this.dataLabelFormatString=null;this.dataLabelThreshold=3;this.dataLabelPositionFactor=0.4;this.dataLabelNudge=0;this.startAngle=0;this.tickRenderer=e.jqplot.DonutTickRenderer;this._drawData=true;this._type="donut";if(p.highlightMouseDown&&p.highlightMouseOver==null){p.highlightMouseOver=false}e.extend(true,this,p);if(this.diameter!=null){this.diameter=this.diameter-this.sliceMargin}this._diameter=null;this._innerDiameter=null;this._radius=null;this._innerRadius=null;this._thickness=null;this._previousSeries=[];this._numberSeries=1;this._sliceAngles=[];this._highlightedPoint=null;if(this.highlightColors.length==0){for(var r=0;r<this.seriesColors.length;r++){var q=e.jqplot.getColorComponents(this.seriesColors[r]);var n=[q[0],q[1],q[2]];var s=n[0]+n[1]+n[2];for(var o=0;o<3;o++){n[o]=(s>570)?n[o]*0.8:n[o]+0.3*(255-n[o]);n[o]=parseInt(n[o],10)}this.highlightColors.push("rgb("+n[0]+","+n[1]+","+n[2]+")")}}t.postParseOptionsHooks.addOnce(l);t.postInitHooks.addOnce(g);t.eventListenerHooks.addOnce("jqplotMouseMove",b);t.eventListenerHooks.addOnce("jqplotMouseDown",a);t.eventListenerHooks.addOnce("jqplotMouseUp",j);t.eventListenerHooks.addOnce("jqplotClick",f);t.eventListenerHooks.addOnce("jqplotRightClick",m);t.postDrawHooks.addOnce(h)};e.jqplot.DonutRenderer.prototype.setGridData=function(s){var o=[];var t=[];var n=this.startAngle/180*Math.PI;var r=0;this._drawData=false;for(var q=0;q<this.data.length;q++){if(this.data[q][1]!=0){this._drawData=true}o.push(this.data[q][1]);t.push([this.data[q][0]]);if(q>0){o[q]+=o[q-1]}r+=this.data[q][1]}var p=Math.PI*2/o[o.length-1];for(var q=0;q<o.length;q++){t[q][1]=o[q]*p;t[q][2]=this.data[q][1]/r}this.gridData=t};e.jqplot.DonutRenderer.prototype.makeGridData=function(s,t){var o=[];var u=[];var r=0;var n=this.startAngle/180*Math.PI;this._drawData=false;for(var q=0;q<s.length;q++){if(this.data[q][1]!=0){this._drawData=true}o.push(s[q][1]);u.push([s[q][0]]);if(q>0){o[q]+=o[q-1]}r+=s[q][1]}var p=Math.PI*2/o[o.length-1];for(var q=0;q<o.length;q++){u[q][1]=o[q]*p;u[q][2]=s[q][1]/r}return u};e.jqplot.DonutRenderer.prototype.drawSlice=function(x,u,t,p,s){var n=this._diameter/2;var v=n-this._thickness;var w=this.fill;x.save();x.translate(this._center[0],this._center[1]);if(s){for(var q=0;q<this.shadowDepth;q++){x.save();x.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI),this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));o()}}else{o()}function o(){if(t>6.282+this.startAngle){t=6.282+this.startAngle;if(u>t){u=6.281+this.startAngle}}if(u>=t){return}x.beginPath();x.fillStyle=p;x.strokeStyle=p;x.arc(0,0,n,u,t,false);x.lineTo(v*Math.cos(t),v*Math.sin(t));x.arc(0,0,v,t,u,true);x.closePath();if(w){x.fill()}else{x.stroke()}}if(s){for(var q=0;q<this.shadowDepth;q++){x.restore()}}x.restore()};e.jqplot.DonutRenderer.prototype.draw=function(N,V,t,P){var Q;var J=(t!=undefined)?t:{};var q=0;var p=0;var u=1;if(t.legendInfo&&t.legendInfo.placement=="insideGrid"){var I=t.legendInfo;switch(I.location){case"nw":q=I.width+I.xoffset;break;case"w":q=I.width+I.xoffset;break;case"sw":q=I.width+I.xoffset;break;case"ne":q=I.width+I.xoffset;u=-1;break;case"e":q=I.width+I.xoffset;u=-1;break;case"se":q=I.width+I.xoffset;u=-1;break;case"n":p=I.height+I.yoffset;break;case"s":p=I.height+I.yoffset;u=-1;break;default:break}}var B=(J.shadow!=undefined)?J.shadow:this.shadow;var W=(J.showLine!=undefined)?J.showLine:this.showLine;var O=(J.fill!=undefined)?J.fill:this.fill;var s=N.canvas.width;var H=N.canvas.height;var G=s-q-2*this.padding;var R=H-p-2*this.padding;var v=Math.min(G,R);var T=v;var X=(this.ringMargin==null)?this.sliceMargin*2:this.ringMargin;for(var Q=0;Q<this._previousSeries.length;Q++){T-=2*this._previousSeries[Q]._thickness+2*X}this._diameter=this.diameter||T;if(this.innerDiameter!=null){var M=(this._numberSeries>1&&this.index>0)?this._previousSeries[0]._diameter:this._diameter;this._thickness=this.thickness||(M-this.innerDiameter-2*X*this._numberSeries)/this._numberSeries/2}else{this._thickness=this.thickness||v/2/(this._numberSeries+1)*0.85}var K=this._radius=this._diameter/2;this._innerRadius=this._radius-this._thickness;var o=this.startAngle/180*Math.PI;this._center=[(s-u*q)/2+u*q,(H-u*p)/2+u*p];if(this.shadow){var L="rgba(0,0,0,"+this.shadowAlpha+")";for(var Q=0;Q<V.length;Q++){var A=(Q==0)?o:V[Q-1][1]+o;A+=this.sliceMargin/180*Math.PI;this.renderer.drawSlice.call(this,N,A,V[Q][1]+o,L,true)}}for(var Q=0;Q<V.length;Q++){var A=(Q==0)?o:V[Q-1][1]+o;A+=this.sliceMargin/180*Math.PI;var z=V[Q][1]+o;this._sliceAngles.push([A,z]);this.renderer.drawSlice.call(this,N,A,z,this.seriesColors[Q],false);if(this.showDataLabels&&V[Q][2]*100>=this.dataLabelThreshold){var S,U=(A+z)/2,C;if(this.dataLabels=="label"){S=this.dataLabelFormatString||"%s";C=e.jqplot.sprintf(S,V[Q][0])}else{if(this.dataLabels=="value"){S=this.dataLabelFormatString||"%d";C=e.jqplot.sprintf(S,this.data[Q][1])}else{if(this.dataLabels=="percent"){S=this.dataLabelFormatString||"%d%%";C=e.jqplot.sprintf(S,V[Q][2]*100)}else{if(this.dataLabels.constructor==Array){S=this.dataLabelFormatString||"%s";C=e.jqplot.sprintf(S,this.dataLabels[Q])}}}}var n=this._innerRadius+this._thickness*this.dataLabelPositionFactor+this.sliceMargin+this.dataLabelNudge;var F=this._center[0]+Math.cos(U)*n+this.canvas._offsets.left;var E=this._center[1]+Math.sin(U)*n+this.canvas._offsets.top;var D=e('<span class="jqplot-donut-series jqplot-data-label" style="position:absolute;">'+C+"</span>").insertBefore(P.eventCanvas._elem);F-=D.width()/2;E-=D.height()/2;F=Math.round(F);E=Math.round(E);D.css({left:F,top:E})}}};e.jqplot.DonutAxisRenderer=function(){e.jqplot.LinearAxisRenderer.call(this)};e.jqplot.DonutAxisRenderer.prototype=new e.jqplot.LinearAxisRenderer();e.jqplot.DonutAxisRenderer.prototype.constructor=e.jqplot.DonutAxisRenderer;e.jqplot.DonutAxisRenderer.prototype.init=function(n){this.tickRenderer=e.jqplot.DonutTickRenderer;e.extend(true,this,n);this._dataBounds={min:0,max:100};this.min=0;this.max=100;this.showTicks=false;this.ticks=[];this.showMark=false;this.show=false};e.jqplot.DonutLegendRenderer=function(){e.jqplot.TableLegendRenderer.call(this)};e.jqplot.DonutLegendRenderer.prototype=new e.jqplot.TableLegendRenderer();e.jqplot.DonutLegendRenderer.prototype.constructor=e.jqplot.DonutLegendRenderer;e.jqplot.DonutLegendRenderer.prototype.init=function(n){this.numberRows=null;this.numberColumns=null;e.extend(true,this,n)};e.jqplot.DonutLegendRenderer.prototype.draw=function(){var q=this;if(this.show){var y=this._series;var B="position:absolute;";B+=(this.background)?"background:"+this.background+";":"";B+=(this.border)?"border:"+this.border+";":"";B+=(this.fontSize)?"font-size:"+this.fontSize+";":"";B+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";B+=(this.textColor)?"color:"+this.textColor+";":"";B+=(this.marginTop!=null)?"margin-top:"+this.marginTop+";":"";B+=(this.marginBottom!=null)?"margin-bottom:"+this.marginBottom+";":"";B+=(this.marginLeft!=null)?"margin-left:"+this.marginLeft+";":"";B+=(this.marginRight!=null)?"margin-right:"+this.marginRight+";":"";this._elem=e('<table class="jqplot-table-legend" style="'+B+'"></table>');var F=false,x=false,n,v;var z=y[0];var o=new e.jqplot.ColorGenerator(z.seriesColors);if(z.show){var G=z.data;if(this.numberRows){n=this.numberRows;if(!this.numberColumns){v=Math.ceil(G.length/n)}else{v=this.numberColumns}}else{if(this.numberColumns){v=this.numberColumns;n=Math.ceil(G.length/this.numberColumns)}else{n=G.length;v=1}}var E,D,p,t,r,u,w,C;var A=0;for(E=0;E<n;E++){if(x){p=e('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem)}else{p=e('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem)}for(D=0;D<v;D++){if(A<G.length){u=this.labels[A]||G[A][0].toString();C=o.next();if(!x){if(E>0){F=true}else{F=false}}else{if(E==n-1){F=false}else{F=true}}w=(F)?this.rowSpacing:"0";t=e('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+w+';"><div><div class="jqplot-table-legend-swatch" style="border-color:'+C+';"></div></div></td>');r=e('<td class="jqplot-table-legend" style="padding-top:'+w+';"></td>');if(this.escapeHtml){r.text(u)}else{r.html(u)}if(x){r.prependTo(p);t.prependTo(p)}else{t.appendTo(p);r.appendTo(p)}F=true}A++}}}}return this._elem};function c(r,q,o){o=o||{};o.axesDefaults=o.axesDefaults||{};o.legend=o.legend||{};o.seriesDefaults=o.seriesDefaults||{};var n=false;if(o.seriesDefaults.renderer==e.jqplot.DonutRenderer){n=true}else{if(o.series){for(var p=0;p<o.series.length;p++){if(o.series[p].renderer==e.jqplot.DonutRenderer){n=true}}}}if(n){o.axesDefaults.renderer=e.jqplot.DonutAxisRenderer;o.legend.renderer=e.jqplot.DonutLegendRenderer;o.legend.preDraw=true;o.seriesDefaults.pointLabels={show:false}}}function g(r,q,o){for(var p=1;p<this.series.length;p++){if(!this.series[p]._previousSeries.length){for(var n=0;n<p;n++){if(this.series[p].renderer.constructor==e.jqplot.DonutRenderer&&this.series[n].renderer.constructor==e.jqplot.DonutRenderer){this.series[p]._previousSeries.push(this.series[n])}}}}for(p=0;p<this.series.length;p++){if(this.series[p].renderer.constructor==e.jqplot.DonutRenderer){this.series[p]._numberSeries=this.series.length;if(this.series[p].highlightMouseOver){this.series[p].highlightMouseDown=false}}}}var k=false;function l(n){for(var o=0;o<this.series.length;o++){this.series[o].seriesColors=this.seriesColors;this.series[o].colorGenerator=e.jqplot.colorGenerator}}function d(r,q,p){var o=r.series[q];var n=r.plugins.donutRenderer.highlightCanvas;n._ctx.clearRect(0,0,n._ctx.canvas.width,n._ctx.canvas.height);o._highlightedPoint=p;r.plugins.donutRenderer.highlightedSeriesIndex=q;o.renderer.drawSlice.call(o,n._ctx,o._sliceAngles[p][0],o._sliceAngles[p][1],o.highlightColors[p],false)}function i(p){var n=p.plugins.donutRenderer.highlightCanvas;n._ctx.clearRect(0,0,n._ctx.canvas.width,n._ctx.canvas.height);for(var o=0;o<p.series.length;o++){p.series[o]._highlightedPoint=null}p.plugins.donutRenderer.highlightedSeriesIndex=null;p.target.trigger("jqplotDataUnhighlight")}function b(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];var o=jQuery.Event("jqplotDataMouseOver");o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p);if(s.series[p[0]].highlightMouseOver&&!(p[0]==s.plugins.donutRenderer.highlightedSeriesIndex&&p[1]==s.series[p[0]]._highlightedPoint)){var n=jQuery.Event("jqplotDataHighlight");n.which=r.which;n.pageX=r.pageX;n.pageY=r.pageY;s.target.trigger(n,p);d(s,p[0],p[1])}}else{if(t==null){i(s)}}}function a(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];if(r.series[o[0]].highlightMouseDown&&!(o[0]==r.plugins.donutRenderer.highlightedSeriesIndex&&o[1]==r.series[o[0]]._highlightedPoint)){var n=jQuery.Event("jqplotDataHighlight");n.which=q.which;n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o);d(r,o[0],o[1])}}else{if(s==null){i(r)}}}function j(p,o,s,r,q){var n=q.plugins.donutRenderer.highlightedSeriesIndex;if(n!=null&&q.series[n].highlightMouseDown){i(q)}}function f(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];var n=jQuery.Event("jqplotDataClick");n.which=q.which;n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o)}}function m(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];var n=s.plugins.donutRenderer.highlightedSeriesIndex;if(n!=null&&s.series[n].highlightMouseDown){i(s)}var o=jQuery.Event("jqplotDataRightClick");o.which=r.which;o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p)}}function h(){if(this.plugins.donutRenderer&&this.plugins.donutRenderer.highlightCanvas){this.plugins.donutRenderer.highlightCanvas.resetCanvas();this.plugins.donutRenderer.highlightCanvas=null}this.plugins.donutRenderer={highlightedSeriesIndex:null};this.plugins.donutRenderer.highlightCanvas=new e.jqplot.GenericCanvas();var o=e(this.targetId+" .jqplot-data-label");if(o.length){e(o[0]).before(this.plugins.donutRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-donutRenderer-highlight-canvas",this._plotDimensions,this))}else{this.eventCanvas._elem.before(this.plugins.donutRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-donutRenderer-highlight-canvas",this._plotDimensions,this))}var n=this.plugins.donutRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(p){i(p.data.plot)})}e.jqplot.preInitHooks.push(c);e.jqplot.DonutTickRenderer=function(){e.jqplot.AxisTickRenderer.call(this)};e.jqplot.DonutTickRenderer.prototype=new e.jqplot.AxisTickRenderer();e.jqplot.DonutTickRenderer.prototype.constructor=e.jqplot.DonutTickRenderer})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.js
deleted file mode 100644
index 9dcd892c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.js
+++ /dev/null
@@ -1,225 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- /**
- * Class: $.jqplot.Dragable
- * Plugin to make plotted points dragable by the user.
- */
- $.jqplot.Dragable = function(options) {
- // Group: Properties
- this.markerRenderer = new $.jqplot.MarkerRenderer({shadow:false});
- this.shapeRenderer = new $.jqplot.ShapeRenderer();
- this.isDragging = false;
- this.isOver = false;
- this._ctx;
- this._elem;
- this._point;
- this._gridData;
- // prop: color
- // CSS color spec for the dragged point (and adjacent line segment or bar).
- this.color;
- // prop: constrainTo
- // Constrain dragging motion to an axis or to none.
- // Allowable values are 'none', 'x', 'y'
- this.constrainTo = 'none'; // 'x', 'y', or 'none';
- $.extend(true, this, options);
- };
-
- function DragCanvas() {
- $.jqplot.GenericCanvas.call(this);
- this.isDragging = false;
- this.isOver = false;
- this._neighbor;
- this._cursors = [];
- }
-
- DragCanvas.prototype = new $.jqplot.GenericCanvas();
- DragCanvas.prototype.constructor = DragCanvas;
-
-
- // called within scope of series
- $.jqplot.Dragable.parseOptions = function (defaults, opts) {
- var options = opts || {};
- this.plugins.dragable = new $.jqplot.Dragable(options.dragable);
- // since this function is called before series options are parsed,
- // we can set this here and it will be overridden if needed.
- this.isDragable = $.jqplot.config.enablePlugins;
- };
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- // add a new DragCanvas object to the plot plugins to handle drawing on this new canvas.
- $.jqplot.Dragable.postPlotDraw = function() {
- // Memory Leaks patch
- if (this.plugins.dragable && this.plugins.dragable.highlightCanvas) {
- this.plugins.dragable.highlightCanvas.resetCanvas();
- this.plugins.dragable.highlightCanvas = null;
- }
-
- this.plugins.dragable = {previousCursor:'auto', isOver:false};
- this.plugins.dragable.dragCanvas = new DragCanvas();
-
- this.eventCanvas._elem.before(this.plugins.dragable.dragCanvas.createElement(this._gridPadding, 'jqplot-dragable-canvas', this._plotDimensions, this));
- var dctx = this.plugins.dragable.dragCanvas.setContext();
- };
-
- //$.jqplot.preInitHooks.push($.jqplot.Dragable.init);
- $.jqplot.preParseSeriesOptionsHooks.push($.jqplot.Dragable.parseOptions);
- $.jqplot.postDrawHooks.push($.jqplot.Dragable.postPlotDraw);
- $.jqplot.eventListenerHooks.push(['jqplotMouseMove', handleMove]);
- $.jqplot.eventListenerHooks.push(['jqplotMouseDown', handleDown]);
- $.jqplot.eventListenerHooks.push(['jqplotMouseUp', handleUp]);
-
-
- function initDragPoint(plot, neighbor) {
- var s = plot.series[neighbor.seriesIndex];
- var drag = s.plugins.dragable;
-
- // first, init the mark renderer for the dragged point
- var smr = s.markerRenderer;
- var mr = drag.markerRenderer;
- mr.style = smr.style;
- mr.lineWidth = smr.lineWidth + 2.5;
- mr.size = smr.size + 5;
- if (!drag.color) {
- var rgba = $.jqplot.getColorComponents(smr.color);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var alpha = (rgba[3] >= 0.6) ? rgba[3]*0.6 : rgba[3]*(2-rgba[3]);
- drag.color = 'rgba('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+','+alpha+')';
- }
- mr.color = drag.color;
- mr.init();
-
- var start = (neighbor.pointIndex > 0) ? neighbor.pointIndex - 1 : 0;
- var end = neighbor.pointIndex+2;
- drag._gridData = s.gridData.slice(start, end);
- }
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (plot.plugins.dragable.dragCanvas.isDragging) {
- var dc = plot.plugins.dragable.dragCanvas;
- var dp = dc._neighbor;
- var s = plot.series[dp.seriesIndex];
- var drag = s.plugins.dragable;
- var gd = s.gridData;
-
- // compute the new grid position with any constraints.
- var x = (drag.constrainTo == 'y') ? dp.gridData[0] : gridpos.x;
- var y = (drag.constrainTo == 'x') ? dp.gridData[1] : gridpos.y;
-
- // compute data values for any listeners.
- var xu = s._xaxis.series_p2u(x);
- var yu = s._yaxis.series_p2u(y);
-
- // clear the canvas then redraw effect at new position.
- var ctx = dc._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
-
- // adjust our gridData for the new mouse position
- if (dp.pointIndex > 0) {
- drag._gridData[1] = [x, y];
- }
- else {
- drag._gridData[0] = [x, y];
- }
- plot.series[dp.seriesIndex].draw(dc._ctx, {gridData:drag._gridData, shadow:false, preventJqPlotSeriesDrawTrigger:true, color:drag.color, markerOptions:{color:drag.color, shadow:false}, trendline:{show:false}});
- plot.target.trigger('jqplotSeriesPointChange', [dp.seriesIndex, dp.pointIndex, [xu,yu], [x,y]]);
- }
- else if (neighbor != null) {
- var series = plot.series[neighbor.seriesIndex];
- if (series.isDragable) {
- var dc = plot.plugins.dragable.dragCanvas;
- if (!dc.isOver) {
- dc._cursors.push(ev.target.style.cursor);
- ev.target.style.cursor = "pointer";
- }
- dc.isOver = true;
- }
- }
- else if (neighbor == null) {
- var dc = plot.plugins.dragable.dragCanvas;
- if (dc.isOver) {
- ev.target.style.cursor = dc._cursors.pop();
- dc.isOver = false;
- }
- }
- }
-
- function handleDown(ev, gridpos, datapos, neighbor, plot) {
- var dc = plot.plugins.dragable.dragCanvas;
- dc._cursors.push(ev.target.style.cursor);
- if (neighbor != null) {
- var s = plot.series[neighbor.seriesIndex];
- var drag = s.plugins.dragable;
- if (s.isDragable && !dc.isDragging) {
- dc._neighbor = neighbor;
- dc.isDragging = true;
- initDragPoint(plot, neighbor);
- drag.markerRenderer.draw(s.gridData[neighbor.pointIndex][0], s.gridData[neighbor.pointIndex][1], dc._ctx);
- ev.target.style.cursor = "move";
- plot.target.trigger('jqplotDragStart', [neighbor.seriesIndex, neighbor.pointIndex, gridpos, datapos]);
- }
- }
- // Just in case of a hickup, we'll clear the drag canvas and reset.
- else {
- var ctx = dc._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- dc.isDragging = false;
- }
- }
-
- function handleUp(ev, gridpos, datapos, neighbor, plot) {
- if (plot.plugins.dragable.dragCanvas.isDragging) {
- var dc = plot.plugins.dragable.dragCanvas;
- // clear the canvas
- var ctx = dc._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- dc.isDragging = false;
- // redraw the series canvas at the new point.
- var dp = dc._neighbor;
- var s = plot.series[dp.seriesIndex];
- var drag = s.plugins.dragable;
- // compute the new grid position with any constraints.
- var x = (drag.constrainTo == 'y') ? dp.data[0] : datapos[s.xaxis];
- var y = (drag.constrainTo == 'x') ? dp.data[1] : datapos[s.yaxis];
- // var x = datapos[s.xaxis];
- // var y = datapos[s.yaxis];
- s.data[dp.pointIndex][0] = x;
- s.data[dp.pointIndex][1] = y;
- plot.drawSeries({preventJqPlotSeriesDrawTrigger:true}, dp.seriesIndex);
- dc._neighbor = null;
- ev.target.style.cursor = dc._cursors.pop();
- plot.target.trigger('jqplotDragStop', [gridpos, datapos]);
- }
- }
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.min.js
deleted file mode 100644
index fc561ced..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.dragable.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(d){d.jqplot.Dragable=function(g){this.markerRenderer=new d.jqplot.MarkerRenderer({shadow:false});this.shapeRenderer=new d.jqplot.ShapeRenderer();this.isDragging=false;this.isOver=false;this._ctx;this._elem;this._point;this._gridData;this.color;this.constrainTo="none";d.extend(true,this,g)};function b(){d.jqplot.GenericCanvas.call(this);this.isDragging=false;this.isOver=false;this._neighbor;this._cursors=[]}b.prototype=new d.jqplot.GenericCanvas();b.prototype.constructor=b;d.jqplot.Dragable.parseOptions=function(i,h){var g=h||{};this.plugins.dragable=new d.jqplot.Dragable(g.dragable);this.isDragable=d.jqplot.config.enablePlugins};d.jqplot.Dragable.postPlotDraw=function(){if(this.plugins.dragable&&this.plugins.dragable.highlightCanvas){this.plugins.dragable.highlightCanvas.resetCanvas();this.plugins.dragable.highlightCanvas=null}this.plugins.dragable={previousCursor:"auto",isOver:false};this.plugins.dragable.dragCanvas=new b();this.eventCanvas._elem.before(this.plugins.dragable.dragCanvas.createElement(this._gridPadding,"jqplot-dragable-canvas",this._plotDimensions,this));var g=this.plugins.dragable.dragCanvas.setContext()};d.jqplot.preParseSeriesOptionsHooks.push(d.jqplot.Dragable.parseOptions);d.jqplot.postDrawHooks.push(d.jqplot.Dragable.postPlotDraw);d.jqplot.eventListenerHooks.push(["jqplotMouseMove",e]);d.jqplot.eventListenerHooks.push(["jqplotMouseDown",c]);d.jqplot.eventListenerHooks.push(["jqplotMouseUp",a]);function f(n,p){var q=n.series[p.seriesIndex];var m=q.plugins.dragable;var h=q.markerRenderer;var i=m.markerRenderer;i.style=h.style;i.lineWidth=h.lineWidth+2.5;i.size=h.size+5;if(!m.color){var l=d.jqplot.getColorComponents(h.color);var o=[l[0],l[1],l[2]];var k=(l[3]>=0.6)?l[3]*0.6:l[3]*(2-l[3]);m.color="rgba("+o[0]+","+o[1]+","+o[2]+","+k+")"}i.color=m.color;i.init();var g=(p.pointIndex>0)?p.pointIndex-1:0;var j=p.pointIndex+2;m._gridData=q.gridData.slice(g,j)}function e(o,l,h,t,m){if(m.plugins.dragable.dragCanvas.isDragging){var u=m.plugins.dragable.dragCanvas;var i=u._neighbor;var w=m.series[i.seriesIndex];var k=w.plugins.dragable;var r=w.gridData;var p=(k.constrainTo=="y")?i.gridData[0]:l.x;var n=(k.constrainTo=="x")?i.gridData[1]:l.y;var g=w._xaxis.series_p2u(p);var q=w._yaxis.series_p2u(n);var v=u._ctx;v.clearRect(0,0,v.canvas.width,v.canvas.height);if(i.pointIndex>0){k._gridData[1]=[p,n]}else{k._gridData[0]=[p,n]}m.series[i.seriesIndex].draw(u._ctx,{gridData:k._gridData,shadow:false,preventJqPlotSeriesDrawTrigger:true,color:k.color,markerOptions:{color:k.color,shadow:false},trendline:{show:false}});m.target.trigger("jqplotSeriesPointChange",[i.seriesIndex,i.pointIndex,[g,q],[p,n]])}else{if(t!=null){var j=m.series[t.seriesIndex];if(j.isDragable){var u=m.plugins.dragable.dragCanvas;if(!u.isOver){u._cursors.push(o.target.style.cursor);o.target.style.cursor="pointer"}u.isOver=true}}else{if(t==null){var u=m.plugins.dragable.dragCanvas;if(u.isOver){o.target.style.cursor=u._cursors.pop();u.isOver=false}}}}}function c(k,i,g,l,j){var m=j.plugins.dragable.dragCanvas;m._cursors.push(k.target.style.cursor);if(l!=null){var o=j.series[l.seriesIndex];var h=o.plugins.dragable;if(o.isDragable&&!m.isDragging){m._neighbor=l;m.isDragging=true;f(j,l);h.markerRenderer.draw(o.gridData[l.pointIndex][0],o.gridData[l.pointIndex][1],m._ctx);k.target.style.cursor="move";j.target.trigger("jqplotDragStart",[l.seriesIndex,l.pointIndex,i,g])}}else{var n=m._ctx;n.clearRect(0,0,n.canvas.width,n.canvas.height);m.isDragging=false}}function a(m,j,g,o,k){if(k.plugins.dragable.dragCanvas.isDragging){var p=k.plugins.dragable.dragCanvas;var q=p._ctx;q.clearRect(0,0,q.canvas.width,q.canvas.height);p.isDragging=false;var h=p._neighbor;var r=k.series[h.seriesIndex];var i=r.plugins.dragable;var n=(i.constrainTo=="y")?h.data[0]:g[r.xaxis];var l=(i.constrainTo=="x")?h.data[1]:g[r.yaxis];r.data[h.pointIndex][0]=n;r.data[h.pointIndex][1]=l;k.drawSeries({preventJqPlotSeriesDrawTrigger:true},h.seriesIndex);p._neighbor=null;m.target.style.cursor=p._cursors.pop();k.target.trigger("jqplotDragStop",[j,g])}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.js
deleted file mode 100644
index a01770de..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.js
+++ /dev/null
@@ -1,305 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- // class $.jqplot.EnhancedLegendRenderer
- // Legend renderer which can specify the number of rows and/or columns in the legend.
- $.jqplot.EnhancedLegendRenderer = function(){
- $.jqplot.TableLegendRenderer.call(this);
- };
-
- $.jqplot.EnhancedLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.EnhancedLegendRenderer.prototype.constructor = $.jqplot.EnhancedLegendRenderer;
-
- // called with scope of legend.
- $.jqplot.EnhancedLegendRenderer.prototype.init = function(options) {
- // prop: numberRows
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // prop: numberColumns
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- // prop: seriesToggle
- // false to not enable series on/off toggling on the legend.
- // true or a fadein/fadeout speed (number of milliseconds or 'fast', 'normal', 'slow')
- // to enable show/hide of series on click of legend item.
- this.seriesToggle = 'normal';
- // prop: seriesToggleReplot
- // True to replot the chart after toggling series on/off.
- // This will set the series show property to false.
- // This allows for rescaling or other maniplation of chart.
- // Set to an options object (e.g. {resetAxes: true}) for replot options.
- this.seriesToggleReplot = false;
- // prop: disableIEFading
- // true to toggle series with a show/hide method only and not allow fading in/out.
- // This is to overcome poor performance of fade in some versions of IE.
- this.disableIEFading = true;
- $.extend(true, this, options);
-
- if (this.seriesToggle) {
- $.jqplot.postDrawHooks.push(postDraw);
- }
- };
-
- // called with scope of legend
- $.jqplot.EnhancedLegendRenderer.prototype.draw = function(offsets, plot) {
- var legend = this;
- if (this.show) {
- var series = this._series;
- var s;
- var ss = 'position:absolute;';
- ss += (this.background) ? 'background:'+this.background+';' : '';
- ss += (this.border) ? 'border:'+this.border+';' : '';
- ss += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- ss += (this.fontFamily) ? 'font-family:'+this.fontFamily+';' : '';
- ss += (this.textColor) ? 'color:'+this.textColor+';' : '';
- ss += (this.marginTop != null) ? 'margin-top:'+this.marginTop+';' : '';
- ss += (this.marginBottom != null) ? 'margin-bottom:'+this.marginBottom+';' : '';
- ss += (this.marginLeft != null) ? 'margin-left:'+this.marginLeft+';' : '';
- ss += (this.marginRight != null) ? 'margin-right:'+this.marginRight+';' : '';
- this._elem = $('<table class="jqplot-table-legend" style="'+ss+'"></table>');
- if (this.seriesToggle) {
- this._elem.css('z-index', '3');
- }
-
- var pad = false,
- reverse = false,
- nr, nc;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(series.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(series.length/this.numberColumns);
- }
- else {
- nr = series.length;
- nc = 1;
- }
-
- var i, j, tr, td1, td2, lt, rs, div, div0, div1;
- var idx = 0;
- // check to see if we need to reverse
- for (i=series.length-1; i>=0; i--) {
- if (nc == 1 && series[i]._stack || series[i].renderer.constructor == $.jqplot.BezierCurveRenderer){
- reverse = true;
- }
- }
-
- for (i=0; i<nr; i++) {
- tr = $(document.createElement('tr'));
- tr.addClass('jqplot-table-legend');
- if (reverse){
- tr.prependTo(this._elem);
- }
- else{
- tr.appendTo(this._elem);
- }
- for (j=0; j<nc; j++) {
- if (idx < series.length && (series[idx].show || series[idx].showLabel)){
- s = series[idx];
- lt = this.labels[idx] || s.label.toString();
- if (lt) {
- var color = s.color;
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
- td1 = $(document.createElement('td'));
- td1.addClass('jqplot-table-legend jqplot-table-legend-swatch');
- td1.css({textAlign: 'center', paddingTop: rs});
-
- div0 = $(document.createElement('div'));
- div0.addClass('jqplot-table-legend-swatch-outline');
- div1 = $(document.createElement('div'));
- div1.addClass('jqplot-table-legend-swatch');
- div1.css({backgroundColor: color, borderColor: color});
-
- td1.append(div0.append(div1));
-
- td2 = $(document.createElement('td'));
- td2.addClass('jqplot-table-legend jqplot-table-legend-label');
- td2.css('paddingTop', rs);
-
- // td1 = $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- // '<div><div class="jqplot-table-legend-swatch" style="background-color:'+color+';border-color:'+color+';"></div>'+
- // '</div></td>');
- // td2 = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- if (this.showLabels) {td2.prependTo(tr);}
- if (this.showSwatches) {td1.prependTo(tr);}
- }
- else {
- if (this.showSwatches) {td1.appendTo(tr);}
- if (this.showLabels) {td2.appendTo(tr);}
- }
-
- if (this.seriesToggle) {
-
- // add an overlay for clicking series on/off
- // div0 = $(document.createElement('div'));
- // div0.addClass('jqplot-table-legend-overlay');
- // div0.css({position:'relative', left:0, top:0, height:'100%', width:'100%'});
- // tr.append(div0);
-
- var speed;
- if (typeof(this.seriesToggle) === 'string' || typeof(this.seriesToggle) === 'number') {
- if (!$.jqplot.use_excanvas || !this.disableIEFading) {
- speed = this.seriesToggle;
- }
- }
- if (this.showSwatches) {
- td1.bind('click', {series:s, speed:speed, plot: plot, replot:this.seriesToggleReplot}, handleToggle);
- td1.addClass('jqplot-seriesToggle');
- }
- if (this.showLabels) {
- td2.bind('click', {series:s, speed:speed, plot: plot, replot:this.seriesToggleReplot}, handleToggle);
- td2.addClass('jqplot-seriesToggle');
- }
-
- // for series that are already hidden, add the hidden class
- if (!s.show && s.showLabel) {
- td1.addClass('jqplot-series-hidden');
- td2.addClass('jqplot-series-hidden');
- }
- }
-
- pad = true;
- }
- }
- idx++;
- }
-
- td1 = td2 = div0 = div1 = null;
- }
- }
- return this._elem;
- };
-
- var handleToggle = function (ev) {
- var d = ev.data,
- s = d.series,
- replot = d.replot,
- plot = d.plot,
- speed = d.speed,
- sidx = s.index,
- showing = false;
-
- if (s.canvas._elem.is(':hidden') || !s.show) {
- showing = true;
- }
-
- var doLegendToggle = function() {
-
- if (replot) {
- var opts = {};
-
- if ($.isPlainObject(replot)) {
- $.extend(true, opts, replot);
- }
-
- plot.replot(opts);
- // if showing, there was no canvas element to fade in, so hide here
- // and then do a fade in.
- if (showing && speed) {
- var s = plot.series[sidx];
-
- if (s.shadowCanvas._elem) {
- s.shadowCanvas._elem.hide().fadeIn(speed);
- }
- s.canvas._elem.hide().fadeIn(speed);
- s.canvas._elem.nextAll('.jqplot-point-label.jqplot-series-'+s.index).hide().fadeIn(speed);
- }
-
- }
-
- else {
- var s = plot.series[sidx];
-
- if (s.canvas._elem.is(':hidden') || !s.show) {
- // Not sure if there is a better way to check for showSwatches and showLabels === true.
- // Test for "undefined" since default values for both showSwatches and showLables is true.
- if (typeof plot.options.legend.showSwatches === 'undefined' || plot.options.legend.showSwatches === true) {
- plot.legend._elem.find('td').eq(sidx * 2).addClass('jqplot-series-hidden');
- }
- if (typeof plot.options.legend.showLabels === 'undefined' || plot.options.legend.showLabels === true) {
- plot.legend._elem.find('td').eq((sidx * 2) + 1).addClass('jqplot-series-hidden');
- }
- }
- else {
- if (typeof plot.options.legend.showSwatches === 'undefined' || plot.options.legend.showSwatches === true) {
- plot.legend._elem.find('td').eq(sidx * 2).removeClass('jqplot-series-hidden');
- }
- if (typeof plot.options.legend.showLabels === 'undefined' || plot.options.legend.showLabels === true) {
- plot.legend._elem.find('td').eq((sidx * 2) + 1).removeClass('jqplot-series-hidden');
- }
- }
-
- }
-
- };
-
- s.toggleDisplay(ev, doLegendToggle);
- };
-
- // called with scope of plot.
- var postDraw = function () {
- if (this.legend.renderer.constructor == $.jqplot.EnhancedLegendRenderer && this.legend.seriesToggle){
- var e = this.legend._elem.detach();
- this.eventCanvas._elem.after(e);
- }
- };
-})(jQuery);
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.min.js
deleted file mode 100644
index 029844e7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.enhancedLegendRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(c){c.jqplot.EnhancedLegendRenderer=function(){c.jqplot.TableLegendRenderer.call(this)};c.jqplot.EnhancedLegendRenderer.prototype=new c.jqplot.TableLegendRenderer();c.jqplot.EnhancedLegendRenderer.prototype.constructor=c.jqplot.EnhancedLegendRenderer;c.jqplot.EnhancedLegendRenderer.prototype.init=function(d){this.numberRows=null;this.numberColumns=null;this.seriesToggle="normal";this.seriesToggleReplot=false;this.disableIEFading=true;c.extend(true,this,d);if(this.seriesToggle){c.jqplot.postDrawHooks.push(b)}};c.jqplot.EnhancedLegendRenderer.prototype.draw=function(m,y){var f=this;if(this.show){var r=this._series;var u;var w="position:absolute;";w+=(this.background)?"background:"+this.background+";":"";w+=(this.border)?"border:"+this.border+";":"";w+=(this.fontSize)?"font-size:"+this.fontSize+";":"";w+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";w+=(this.textColor)?"color:"+this.textColor+";":"";w+=(this.marginTop!=null)?"margin-top:"+this.marginTop+";":"";w+=(this.marginBottom!=null)?"margin-bottom:"+this.marginBottom+";":"";w+=(this.marginLeft!=null)?"margin-left:"+this.marginLeft+";":"";w+=(this.marginRight!=null)?"margin-right:"+this.marginRight+";":"";this._elem=c('<table class="jqplot-table-legend" style="'+w+'"></table>');if(this.seriesToggle){this._elem.css("z-index","3")}var C=false,q=false,d,o;if(this.numberRows){d=this.numberRows;if(!this.numberColumns){o=Math.ceil(r.length/d)}else{o=this.numberColumns}}else{if(this.numberColumns){o=this.numberColumns;d=Math.ceil(r.length/this.numberColumns)}else{d=r.length;o=1}}var B,z,e,l,k,n,p,t,h,g;var v=0;for(B=r.length-1;B>=0;B--){if(o==1&&r[B]._stack||r[B].renderer.constructor==c.jqplot.BezierCurveRenderer){q=true}}for(B=0;B<d;B++){e=c(document.createElement("tr"));e.addClass("jqplot-table-legend");if(q){e.prependTo(this._elem)}else{e.appendTo(this._elem)}for(z=0;z<o;z++){if(v<r.length&&(r[v].show||r[v].showLabel)){u=r[v];n=this.labels[v]||u.label.toString();if(n){var x=u.color;if(!q){if(B>0){C=true}else{C=false}}else{if(B==d-1){C=false}else{C=true}}p=(C)?this.rowSpacing:"0";l=c(document.createElement("td"));l.addClass("jqplot-table-legend jqplot-table-legend-swatch");l.css({textAlign:"center",paddingTop:p});h=c(document.createElement("div"));h.addClass("jqplot-table-legend-swatch-outline");g=c(document.createElement("div"));g.addClass("jqplot-table-legend-swatch");g.css({backgroundColor:x,borderColor:x});l.append(h.append(g));k=c(document.createElement("td"));k.addClass("jqplot-table-legend jqplot-table-legend-label");k.css("paddingTop",p);if(this.escapeHtml){k.text(n)}else{k.html(n)}if(q){if(this.showLabels){k.prependTo(e)}if(this.showSwatches){l.prependTo(e)}}else{if(this.showSwatches){l.appendTo(e)}if(this.showLabels){k.appendTo(e)}}if(this.seriesToggle){var A;if(typeof(this.seriesToggle)==="string"||typeof(this.seriesToggle)==="number"){if(!c.jqplot.use_excanvas||!this.disableIEFading){A=this.seriesToggle}}if(this.showSwatches){l.bind("click",{series:u,speed:A,plot:y,replot:this.seriesToggleReplot},a);l.addClass("jqplot-seriesToggle")}if(this.showLabels){k.bind("click",{series:u,speed:A,plot:y,replot:this.seriesToggleReplot},a);k.addClass("jqplot-seriesToggle")}if(!u.show&&u.showLabel){l.addClass("jqplot-series-hidden");k.addClass("jqplot-series-hidden")}}C=true}}v++}l=k=h=g=null}}return this._elem};var a=function(j){var i=j.data,m=i.series,k=i.replot,h=i.plot,f=i.speed,l=m.index,g=false;if(m.canvas._elem.is(":hidden")||!m.show){g=true}var e=function(){if(k){var n={};if(c.isPlainObject(k)){c.extend(true,n,k)}h.replot(n);if(g&&f){var d=h.series[l];if(d.shadowCanvas._elem){d.shadowCanvas._elem.hide().fadeIn(f)}d.canvas._elem.hide().fadeIn(f);d.canvas._elem.nextAll(".jqplot-point-label.jqplot-series-"+d.index).hide().fadeIn(f)}}else{var d=h.series[l];if(d.canvas._elem.is(":hidden")||!d.show){if(typeof h.options.legend.showSwatches==="undefined"||h.options.legend.showSwatches===true){h.legend._elem.find("td").eq(l*2).addClass("jqplot-series-hidden")}if(typeof h.options.legend.showLabels==="undefined"||h.options.legend.showLabels===true){h.legend._elem.find("td").eq((l*2)+1).addClass("jqplot-series-hidden")}}else{if(typeof h.options.legend.showSwatches==="undefined"||h.options.legend.showSwatches===true){h.legend._elem.find("td").eq(l*2).removeClass("jqplot-series-hidden")}if(typeof h.options.legend.showLabels==="undefined"||h.options.legend.showLabels===true){h.legend._elem.find("td").eq((l*2)+1).removeClass("jqplot-series-hidden")}}}};m.toggleDisplay(j,e)};var b=function(){if(this.legend.renderer.constructor==c.jqplot.EnhancedLegendRenderer&&this.legend.seriesToggle){var d=this.legend._elem.detach();this.eventCanvas._elem.after(d)}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.js
deleted file mode 100644
index e79bf887..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.js
+++ /dev/null
@@ -1,942 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.FunnelRenderer
- * Plugin renderer to draw a funnel chart.
- * x values, if present, will be used as labels.
- * y values give area size.
- *
- * Funnel charts will draw a single series
- * only.
- *
- * To use this renderer, you need to include the
- * funnel renderer plugin, for example:
- *
- * > <script type="text/javascript" src="plugins/jqplot.funnelRenderer.js"></script>
- *
- * Properties described here are passed into the $.jqplot function
- * as options on the series renderer. For example:
- *
- * > plot2 = $.jqplot('chart2', [s1, s2], {
- * > seriesDefaults: {
- * > renderer:$.jqplot.FunnelRenderer,
- * > rendererOptions:{
- * > sectionMargin: 12,
- * > widthRatio: 0.3
- * > }
- * > }
- * > });
- *
- * IMPORTANT
- *
- * *The funnel renderer will reorder data in descending order* so the largest value in
- * the data set is first and displayed on top of the funnel. Data will then
- * be displayed in descending order down the funnel. The area of each funnel
- * section will correspond to the value of each data point relative to the sum
- * of all values. That is section area is proportional to section value divided by
- * sum of all section values.
- *
- * If your data is not in descending order when passed into the plot, *it will be
- * reordered* when stored in the series.data property. A copy of the unordered
- * data is kept in the series._unorderedData property.
- *
- * A funnel plot will trigger events on the plot target
- * according to user interaction. All events return the event object,
- * the series index, the point (section) index, and the point data for
- * the appropriate section. *Note* the point index will referr to the ordered
- * data, not the original unordered data.
- *
- * 'jqplotDataMouseOver' - triggered when mousing over a section.
- * 'jqplotDataHighlight' - triggered the first time user mouses over a section,
- * if highlighting is enabled.
- * 'jqplotDataUnhighlight' - triggered when a user moves the mouse out of
- * a highlighted section.
- * 'jqplotDataClick' - triggered when the user clicks on a section.
- * 'jqplotDataRightClick' - tiggered when the user right clicks on a section if
- * the "captureRightClick" option is set to true on the plot.
- */
- $.jqplot.FunnelRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.FunnelRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.FunnelRenderer.prototype.constructor = $.jqplot.FunnelRenderer;
-
- // called with scope of a series
- $.jqplot.FunnelRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- // prop: padding
- // padding between the funnel and plot edges, legend, etc.
- this.padding = {top: 20, right: 20, bottom: 20, left: 20};
- // prop: sectionMargin
- // spacing between funnel sections in pixels.
- this.sectionMargin = 6;
- // prop: fill
- // true or false, wether to fill the areas.
- this.fill = true;
- // prop: shadowOffset
- // offset of the shadow from the area and offset of
- // each succesive stroke of the shadow from the last.
- this.shadowOffset = 2;
- // prop: shadowAlpha
- // transparency of the shadow (0 = transparent, 1 = opaque)
- this.shadowAlpha = 0.07;
- // prop: shadowDepth
- // number of strokes to apply to the shadow,
- // each stroke offset shadowOffset from the last.
- this.shadowDepth = 5;
- // prop: highlightMouseOver
- // True to highlight area when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a area.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a area.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // array of colors to use when highlighting an area.
- this.highlightColors = [];
- // prop: widthRatio
- // The ratio of the width of the top of the funnel to the bottom.
- // a ratio of 0 will make an upside down pyramid.
- this.widthRatio = 0.2;
- // prop: lineWidth
- // width of line if areas are stroked and not filled.
- this.lineWidth = 2;
- // prop: dataLabels
- // Either 'label', 'value', 'percent' or an array of labels to place on the pie slices.
- // Defaults to percentage of each pie slice.
- this.dataLabels = 'percent';
- // prop: showDataLabels
- // true to show data labels on slices.
- this.showDataLabels = false;
- // prop: dataLabelFormatString
- // Format string for data labels. If none, '%s' is used for "label" and for arrays, '%d' for value and '%d%%' for percentage.
- this.dataLabelFormatString = null;
- // prop: dataLabelThreshold
- // Threshhold in percentage (0 - 100) of pie area, below which no label will be displayed.
- // This applies to all label types, not just to percentage labels.
- this.dataLabelThreshold = 3;
- this._type = 'funnel';
-
- this.tickRenderer = $.jqplot.FunnelTickRenderer;
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- $.extend(true, this, options);
-
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
-
- // lengths of bases, or horizontal sides of areas of trapezoid.
- this._bases = [];
- // total area
- this._atot;
- // areas of segments.
- this._areas = [];
- // vertical lengths of segments.
- this._lengths = [];
- // angle of the funnel to vertical.
- this._angle;
- this._dataIndices = [];
-
- // sort data
- this._unorderedData = $.extend(true, [], this.data);
- var idxs = $.extend(true, [], this.data);
- for (var i=0; i<idxs.length; i++) {
- idxs[i].push(i);
- }
- this.data.sort( function (a, b) { return b[1] - a[1]; } );
- idxs.sort( function (a, b) { return b[1] - a[1]; });
- for (var i=0; i<idxs.length; i++) {
- this._dataIndices.push(idxs[i][2]);
- }
-
- // set highlight colors if none provided
- if (this.highlightColors.length == 0) {
- for (var i=0; i<this.seriesColors.length; i++){
- var rgba = $.jqplot.getColorComponents(this.seriesColors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.4 * (255 - newrgb[j]);
- newrgb[j] = parseInt(newrgb[j], 10);
- }
- this.highlightColors.push('rgb('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+')');
- }
- }
-
- plot.postParseOptionsHooks.addOnce(postParseOptions);
- plot.postInitHooks.addOnce(postInit);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- plot.postDrawHooks.addOnce(postPlotDraw);
-
- };
-
- // gridData will be of form [label, percentage of total]
- $.jqplot.FunnelRenderer.prototype.setGridData = function(plot) {
- // set gridData property. This will hold angle in radians of each data point.
- var sum = 0;
- var td = [];
- for (var i=0; i<this.data.length; i++){
- sum += this.data[i][1];
- td.push([this.data[i][0], this.data[i][1]]);
- }
-
- // normalize y values, so areas are proportional.
- for (var i=0; i<td.length; i++) {
- td[i][1] = td[i][1]/sum;
- }
-
- this._bases = new Array(td.length + 1);
- this._lengths = new Array(td.length);
-
- this.gridData = td;
- };
-
- $.jqplot.FunnelRenderer.prototype.makeGridData = function(data, plot) {
- // set gridData property. This will hold angle in radians of each data point.
- var sum = 0;
- var td = [];
- for (var i=0; i<this.data.length; i++){
- sum += this.data[i][1];
- td.push([this.data[i][0], this.data[i][1]]);
- }
-
- // normalize y values, so areas are proportional.
- for (var i=0; i<td.length; i++) {
- td[i][1] = td[i][1]/sum;
- }
-
- this._bases = new Array(td.length + 1);
- this._lengths = new Array(td.length);
-
- return td;
- };
-
- $.jqplot.FunnelRenderer.prototype.drawSection = function (ctx, vertices, color, isShadow) {
- var fill = this.fill;
- var lineWidth = this.lineWidth;
- ctx.save();
-
- if (isShadow) {
- for (var i=0; i<this.shadowDepth; i++) {
- ctx.save();
- ctx.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI), this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));
- doDraw();
- }
- }
-
- else {
- doDraw();
- }
-
- function doDraw () {
- ctx.beginPath();
- ctx.fillStyle = color;
- ctx.strokeStyle = color;
- ctx.lineWidth = lineWidth;
- ctx.moveTo(vertices[0][0], vertices[0][1]);
- for (var i=1; i<4; i++) {
- ctx.lineTo(vertices[i][0], vertices[i][1]);
- }
- ctx.closePath();
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- }
-
- if (isShadow) {
- for (var i=0; i<this.shadowDepth; i++) {
- ctx.restore();
- }
- }
-
- ctx.restore();
- };
-
- // called with scope of series
- $.jqplot.FunnelRenderer.prototype.draw = function (ctx, gd, options, plot) {
- var i;
- var opts = (options != undefined) ? options : {};
- // offset and direction of offset due to legend placement
- var offx = 0;
- var offy = 0;
- var trans = 1;
- this._areas = [];
- // var colorGenerator = new this.colorGenerator(this.seriesColors);
- if (options.legendInfo && options.legendInfo.placement == 'insideGrid') {
- var li = options.legendInfo;
- switch (li.location) {
- case 'nw':
- offx = li.width + li.xoffset;
- break;
- case 'w':
- offx = li.width + li.xoffset;
- break;
- case 'sw':
- offx = li.width + li.xoffset;
- break;
- case 'ne':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'e':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'se':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'n':
- offy = li.height + li.yoffset;
- break;
- case 's':
- offy = li.height + li.yoffset;
- trans = -1;
- break;
- default:
- break;
- }
- }
-
- var loff = (trans==1) ? this.padding.left + offx : this.padding.left;
- var toff = (trans==1) ? this.padding.top + offy : this.padding.top;
- var roff = (trans==-1) ? this.padding.right + offx : this.padding.right;
- var boff = (trans==-1) ? this.padding.bottom + offy : this.padding.bottom;
-
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var cw = ctx.canvas.width;
- var ch = ctx.canvas.height;
- this._bases[0] = cw - loff - roff;
- var ltot = this._length = ch - toff - boff;
-
- var hend = this._bases[0]*this.widthRatio;
- this._atot = ltot/2 * (this._bases[0] + this._bases[0]*this.widthRatio);
-
- this._angle = Math.atan((this._bases[0] - hend)/2/ltot);
-
- for (i=0; i<gd.length; i++) {
- this._areas.push(gd[i][1] * this._atot);
- }
-
-
- var guess, err, count, lsum=0;
- var tolerance = 0.0001;
-
- for (i=0; i<this._areas.length; i++) {
- guess = this._areas[i]/this._bases[i];
- err = 999999;
- this._lengths[i] = guess;
- count = 0;
- while (err > this._lengths[i]*tolerance && count < 100) {
- this._lengths[i] = this._areas[i]/(this._bases[i] - this._lengths[i] * Math.tan(this._angle));
- err = Math.abs(this._lengths[i] - guess);
- this._bases[i+1] = this._bases[i] - (2*this._lengths[i]*Math.tan(this._angle));
- guess = this._lengths[i];
- count++;
- }
- lsum += this._lengths[i];
- }
-
- // figure out vertices of each section
- this._vertices = new Array(gd.length);
-
- // these are 4 coners of entire trapezoid
- var p0 = [loff, toff],
- p1 = [loff+this._bases[0], toff],
- p2 = [loff + (this._bases[0] - this._bases[this._bases.length-1])/2, toff + this._length],
- p3 = [p2[0] + this._bases[this._bases.length-1], p2[1]];
-
- // equations of right and left sides, returns x, y values given height of section (y value)
- function findleft (l) {
- var m = (p0[1] - p2[1])/(p0[0] - p2[0]);
- var b = p0[1] - m*p0[0];
- var y = l + p0[1];
-
- return [(y - b)/m, y];
- }
-
- function findright (l) {
- var m = (p1[1] - p3[1])/(p1[0] - p3[0]);
- var b = p1[1] - m*p1[0];
- var y = l + p1[1];
-
- return [(y - b)/m, y];
- }
-
- var x = offx, y = offy;
- var h=0, adj=0;
-
- for (i=0; i<gd.length; i++) {
- this._vertices[i] = new Array();
- var v = this._vertices[i];
- var sm = this.sectionMargin;
- if (i == 0) {
- adj = 0;
- }
- if (i == 1) {
- adj = sm/3;
- }
- else if (i > 0 && i < gd.length-1) {
- adj = sm/2;
- }
- else if (i == gd.length -1) {
- adj = 2*sm/3;
- }
- v.push(findleft(h+adj));
- v.push(findright(h+adj));
- h += this._lengths[i];
- if (i == 0) {
- adj = -2*sm/3;
- }
- else if (i > 0 && i < gd.length-1) {
- adj = -sm/2;
- }
- else if (i == gd.length - 1) {
- adj = 0;
- }
- v.push(findright(h+adj));
- v.push(findleft(h+adj));
-
- }
-
- if (this.shadow) {
- var shadowColor = 'rgba(0,0,0,'+this.shadowAlpha+')';
- for (var i=0; i<gd.length; i++) {
- this.renderer.drawSection.call (this, ctx, this._vertices[i], shadowColor, true);
- }
-
- }
- for (var i=0; i<gd.length; i++) {
- var v = this._vertices[i];
- this.renderer.drawSection.call (this, ctx, v, this.seriesColors[i]);
-
- if (this.showDataLabels && gd[i][1]*100 >= this.dataLabelThreshold) {
- var fstr, label;
-
- if (this.dataLabels == 'label') {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, gd[i][0]);
- }
- else if (this.dataLabels == 'value') {
- fstr = this.dataLabelFormatString || '%d';
- label = $.jqplot.sprintf(fstr, this.data[i][1]);
- }
- else if (this.dataLabels == 'percent') {
- fstr = this.dataLabelFormatString || '%d%%';
- label = $.jqplot.sprintf(fstr, gd[i][1]*100);
- }
- else if (this.dataLabels.constructor == Array) {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, this.dataLabels[this._dataIndices[i]]);
- }
-
- var fact = (this._radius ) * this.dataLabelPositionFactor + this.sliceMargin + this.dataLabelNudge;
-
- var x = (v[0][0] + v[1][0])/2 + this.canvas._offsets.left;
- var y = (v[1][1] + v[2][1])/2 + this.canvas._offsets.top;
-
- var labelelem = $('<span class="jqplot-funnel-series jqplot-data-label" style="position:absolute;">' + label + '</span>').insertBefore(plot.eventCanvas._elem);
- x -= labelelem.width()/2;
- y -= labelelem.height()/2;
- x = Math.round(x);
- y = Math.round(y);
- labelelem.css({left: x, top: y});
- }
-
- }
-
- };
-
- $.jqplot.FunnelAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.FunnelAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.FunnelAxisRenderer.prototype.constructor = $.jqplot.FunnelAxisRenderer;
-
-
- // There are no traditional axes on a funnel chart. We just need to provide
- // dummy objects with properties so the plot will render.
- // called with scope of axis object.
- $.jqplot.FunnelAxisRenderer.prototype.init = function(options){
- //
- this.tickRenderer = $.jqplot.FunnelTickRenderer;
- $.extend(true, this, options);
- // I don't think I'm going to need _dataBounds here.
- // have to go Axis scaling in a way to fit chart onto plot area
- // and provide u2p and p2u functionality for mouse cursor, etc.
- // for convienence set _dataBounds to 0 and 100 and
- // set min/max to 0 and 100.
- this._dataBounds = {min:0, max:100};
- this.min = 0;
- this.max = 100;
- this.showTicks = false;
- this.ticks = [];
- this.showMark = false;
- this.show = false;
- };
-
-
-
- /**
- * Class: $.jqplot.FunnelLegendRenderer
- * Legend Renderer specific to funnel plots. Set by default
- * when the user creates a funnel plot.
- */
- $.jqplot.FunnelLegendRenderer = function(){
- $.jqplot.TableLegendRenderer.call(this);
- };
-
- $.jqplot.FunnelLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.FunnelLegendRenderer.prototype.constructor = $.jqplot.FunnelLegendRenderer;
-
- $.jqplot.FunnelLegendRenderer.prototype.init = function(options) {
- // Group: Properties
- //
- // prop: numberRows
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // prop: numberColumns
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- $.extend(true, this, options);
- };
-
- // called with context of legend
- $.jqplot.FunnelLegendRenderer.prototype.draw = function() {
- var legend = this;
- if (this.show) {
- var series = this._series;
- var ss = 'position:absolute;';
- ss += (this.background) ? 'background:'+this.background+';' : '';
- ss += (this.border) ? 'border:'+this.border+';' : '';
- ss += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- ss += (this.fontFamily) ? 'font-family:'+this.fontFamily+';' : '';
- ss += (this.textColor) ? 'color:'+this.textColor+';' : '';
- ss += (this.marginTop != null) ? 'margin-top:'+this.marginTop+';' : '';
- ss += (this.marginBottom != null) ? 'margin-bottom:'+this.marginBottom+';' : '';
- ss += (this.marginLeft != null) ? 'margin-left:'+this.marginLeft+';' : '';
- ss += (this.marginRight != null) ? 'margin-right:'+this.marginRight+';' : '';
- this._elem = $('<table class="jqplot-table-legend" style="'+ss+'"></table>');
- // Funnel charts legends don't go by number of series, but by number of data points
- // in the series. Refactor things here for that.
-
- var pad = false,
- reverse = false,
- nr, nc;
- var s = series[0];
- var colorGenerator = new $.jqplot.ColorGenerator(s.seriesColors);
-
- if (s.show) {
- var pd = s.data;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(pd.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(pd.length/this.numberColumns);
- }
- else {
- nr = pd.length;
- nc = 1;
- }
-
- var i, j, tr, td1, td2, lt, rs, color;
- var idx = 0;
-
- for (i=0; i<nr; i++) {
- if (reverse){
- tr = $('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem);
- }
- else{
- tr = $('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem);
- }
- for (j=0; j<nc; j++) {
- if (idx < pd.length){
- lt = this.labels[idx] || pd[idx][0].toString();
- color = colorGenerator.next();
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
- td1 = $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- '<div><div class="jqplot-table-legend-swatch" style="border-color:'+color+';"></div>'+
- '</div></td>');
- td2 = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- td2.prependTo(tr);
- td1.prependTo(tr);
- }
- else {
- td1.appendTo(tr);
- td2.appendTo(tr);
- }
- pad = true;
- }
- idx++;
- }
- }
- }
- }
- return this._elem;
- };
-
- // $.jqplot.FunnelLegendRenderer.prototype.pack = function(offsets) {
- // if (this.show) {
- // // fake a grid for positioning
- // var grid = {_top:offsets.top, _left:offsets.left, _right:offsets.right, _bottom:this._plotDimensions.height - offsets.bottom};
- // if (this.placement == 'insideGrid') {
- // switch (this.location) {
- // case 'nw':
- // var a = grid._left + this.xoffset;
- // var b = grid._top + this.yoffset;
- // this._elem.css('left', a);
- // this._elem.css('top', b);
- // break;
- // case 'n':
- // var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- // var b = grid._top + this.yoffset;
- // this._elem.css('left', a);
- // this._elem.css('top', b);
- // break;
- // case 'ne':
- // var a = offsets.right + this.xoffset;
- // var b = grid._top + this.yoffset;
- // this._elem.css({right:a, top:b});
- // break;
- // case 'e':
- // var a = offsets.right + this.xoffset;
- // var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- // this._elem.css({right:a, top:b});
- // break;
- // case 'se':
- // var a = offsets.right + this.xoffset;
- // var b = offsets.bottom + this.yoffset;
- // this._elem.css({right:a, bottom:b});
- // break;
- // case 's':
- // var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- // var b = offsets.bottom + this.yoffset;
- // this._elem.css({left:a, bottom:b});
- // break;
- // case 'sw':
- // var a = grid._left + this.xoffset;
- // var b = offsets.bottom + this.yoffset;
- // this._elem.css({left:a, bottom:b});
- // break;
- // case 'w':
- // var a = grid._left + this.xoffset;
- // var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- // this._elem.css({left:a, top:b});
- // break;
- // default: // same as 'se'
- // var a = grid._right - this.xoffset;
- // var b = grid._bottom + this.yoffset;
- // this._elem.css({right:a, bottom:b});
- // break;
- // }
- //
- // }
- // else {
- // switch (this.location) {
- // case 'nw':
- // var a = this._plotDimensions.width - grid._left + this.xoffset;
- // var b = grid._top + this.yoffset;
- // this._elem.css('right', a);
- // this._elem.css('top', b);
- // break;
- // case 'n':
- // var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- // var b = this._plotDimensions.height - grid._top + this.yoffset;
- // this._elem.css('left', a);
- // this._elem.css('bottom', b);
- // break;
- // case 'ne':
- // var a = this._plotDimensions.width - offsets.right + this.xoffset;
- // var b = grid._top + this.yoffset;
- // this._elem.css({left:a, top:b});
- // break;
- // case 'e':
- // var a = this._plotDimensions.width - offsets.right + this.xoffset;
- // var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- // this._elem.css({left:a, top:b});
- // break;
- // case 'se':
- // var a = this._plotDimensions.width - offsets.right + this.xoffset;
- // var b = offsets.bottom + this.yoffset;
- // this._elem.css({left:a, bottom:b});
- // break;
- // case 's':
- // var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- // var b = this._plotDimensions.height - offsets.bottom + this.yoffset;
- // this._elem.css({left:a, top:b});
- // break;
- // case 'sw':
- // var a = this._plotDimensions.width - grid._left + this.xoffset;
- // var b = offsets.bottom + this.yoffset;
- // this._elem.css({right:a, bottom:b});
- // break;
- // case 'w':
- // var a = this._plotDimensions.width - grid._left + this.xoffset;
- // var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- // this._elem.css({right:a, top:b});
- // break;
- // default: // same as 'se'
- // var a = grid._right - this.xoffset;
- // var b = grid._bottom + this.yoffset;
- // this._elem.css({right:a, bottom:b});
- // break;
- // }
- // }
- // }
- // };
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- // only set these if there is a funnel series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.FunnelRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.FunnelRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.FunnelAxisRenderer;
- options.legend.renderer = $.jqplot.FunnelLegendRenderer;
- options.legend.preDraw = true;
- options.sortData = false;
- options.seriesDefaults.pointLabels = {show: false};
- }
- }
-
- function postInit(target, data, options) {
- // if multiple series, add a reference to the previous one so that
- // funnel rings can nest.
- for (var i=0; i<this.series.length; i++) {
- if (this.series[i].renderer.constructor == $.jqplot.FunnelRenderer) {
- // don't allow mouseover and mousedown at same time.
- if (this.series[i].highlightMouseOver) {
- this.series[i].highlightMouseDown = false;
- }
- }
- }
- }
-
- // called with scope of plot
- function postParseOptions(options) {
- for (var i=0; i<this.series.length; i++) {
- this.series[i].seriesColors = this.seriesColors;
- this.series[i].colorGenerator = $.jqplot.colorGenerator;
- }
- }
-
- function highlight (plot, sidx, pidx) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.funnelRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.funnelRenderer.highlightedSeriesIndex = sidx;
- s.renderer.drawSection.call(s, canvas._ctx, s._vertices[pidx], s.highlightColors[pidx], false);
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.funnelRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.funnelRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- }
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.funnelRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.funnelRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.funnelRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var idx = plot.plugins.funnelRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.funnelRenderer && this.plugins.funnelRenderer.highlightCanvas) {
- this.plugins.funnelRenderer.highlightCanvas.resetCanvas();
- this.plugins.funnelRenderer.highlightCanvas = null;
- }
-
- this.plugins.funnelRenderer = {};
- this.plugins.funnelRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
-
- // do we have any data labels? if so, put highlight canvas before those
- var labels = $(this.targetId+' .jqplot-data-label');
- if (labels.length) {
- $(labels[0]).before(this.plugins.funnelRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-funnelRenderer-highlight-canvas', this._plotDimensions, this));
- }
- // else put highlight canvas before event canvas.
- else {
- this.eventCanvas._elem.before(this.plugins.funnelRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-funnelRenderer-highlight-canvas', this._plotDimensions, this));
- }
- var hctx = this.plugins.funnelRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
- $.jqplot.FunnelTickRenderer = function() {
- $.jqplot.AxisTickRenderer.call(this);
- };
-
- $.jqplot.FunnelTickRenderer.prototype = new $.jqplot.AxisTickRenderer();
- $.jqplot.FunnelTickRenderer.prototype.constructor = $.jqplot.FunnelTickRenderer;
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.min.js
deleted file mode 100644
index 4261ce02..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.funnelRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(e){e.jqplot.FunnelRenderer=function(){e.jqplot.LineRenderer.call(this)};e.jqplot.FunnelRenderer.prototype=new e.jqplot.LineRenderer();e.jqplot.FunnelRenderer.prototype.constructor=e.jqplot.FunnelRenderer;e.jqplot.FunnelRenderer.prototype.init=function(p,t){this.padding={top:20,right:20,bottom:20,left:20};this.sectionMargin=6;this.fill=true;this.shadowOffset=2;this.shadowAlpha=0.07;this.shadowDepth=5;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.widthRatio=0.2;this.lineWidth=2;this.dataLabels="percent";this.showDataLabels=false;this.dataLabelFormatString=null;this.dataLabelThreshold=3;this._type="funnel";this.tickRenderer=e.jqplot.FunnelTickRenderer;if(p.highlightMouseDown&&p.highlightMouseOver==null){p.highlightMouseOver=false}e.extend(true,this,p);this._highlightedPoint=null;this._bases=[];this._atot;this._areas=[];this._lengths=[];this._angle;this._dataIndices=[];this._unorderedData=e.extend(true,[],this.data);var o=e.extend(true,[],this.data);for(var r=0;r<o.length;r++){o[r].push(r)}this.data.sort(function(v,u){return u[1]-v[1]});o.sort(function(v,u){return u[1]-v[1]});for(var r=0;r<o.length;r++){this._dataIndices.push(o[r][2])}if(this.highlightColors.length==0){for(var r=0;r<this.seriesColors.length;r++){var q=e.jqplot.getColorComponents(this.seriesColors[r]);var m=[q[0],q[1],q[2]];var s=m[0]+m[1]+m[2];for(var n=0;n<3;n++){m[n]=(s>570)?m[n]*0.8:m[n]+0.4*(255-m[n]);m[n]=parseInt(m[n],10)}this.highlightColors.push("rgb("+m[0]+","+m[1]+","+m[2]+")")}}t.postParseOptionsHooks.addOnce(k);t.postInitHooks.addOnce(g);t.eventListenerHooks.addOnce("jqplotMouseMove",a);t.eventListenerHooks.addOnce("jqplotMouseDown",b);t.eventListenerHooks.addOnce("jqplotMouseUp",j);t.eventListenerHooks.addOnce("jqplotClick",f);t.eventListenerHooks.addOnce("jqplotRightClick",l);t.postDrawHooks.addOnce(h)};e.jqplot.FunnelRenderer.prototype.setGridData=function(o){var n=0;var p=[];for(var m=0;m<this.data.length;m++){n+=this.data[m][1];p.push([this.data[m][0],this.data[m][1]])}for(var m=0;m<p.length;m++){p[m][1]=p[m][1]/n}this._bases=new Array(p.length+1);this._lengths=new Array(p.length);this.gridData=p};e.jqplot.FunnelRenderer.prototype.makeGridData=function(o,p){var n=0;var q=[];for(var m=0;m<this.data.length;m++){n+=this.data[m][1];q.push([this.data[m][0],this.data[m][1]])}for(var m=0;m<q.length;m++){q[m][1]=q[m][1]/n}this._bases=new Array(q.length+1);this._lengths=new Array(q.length);return q};e.jqplot.FunnelRenderer.prototype.drawSection=function(n,p,o,s){var t=this.fill;var m=this.lineWidth;n.save();if(s){for(var r=0;r<this.shadowDepth;r++){n.save();n.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI),this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));q()}}else{q()}function q(){n.beginPath();n.fillStyle=o;n.strokeStyle=o;n.lineWidth=m;n.moveTo(p[0][0],p[0][1]);for(var u=1;u<4;u++){n.lineTo(p[u][0],p[u][1])}n.closePath();if(t){n.fill()}else{n.stroke()}}if(s){for(var r=0;r<this.shadowDepth;r++){n.restore()}}n.restore()};e.jqplot.FunnelRenderer.prototype.draw=function(G,B,J,p){var Y;var L=(J!=undefined)?J:{};var w=0;var u=0;var R=1;this._areas=[];if(J.legendInfo&&J.legendInfo.placement=="insideGrid"){var O=J.legendInfo;switch(O.location){case"nw":w=O.width+O.xoffset;break;case"w":w=O.width+O.xoffset;break;case"sw":w=O.width+O.xoffset;break;case"ne":w=O.width+O.xoffset;R=-1;break;case"e":w=O.width+O.xoffset;R=-1;break;case"se":w=O.width+O.xoffset;R=-1;break;case"n":u=O.height+O.yoffset;break;case"s":u=O.height+O.yoffset;R=-1;break;default:break}}var t=(R==1)?this.padding.left+w:this.padding.left;var F=(R==1)?this.padding.top+u:this.padding.top;var M=(R==-1)?this.padding.right+w:this.padding.right;var o=(R==-1)?this.padding.bottom+u:this.padding.bottom;var P=(L.shadow!=undefined)?L.shadow:this.shadow;var q=(L.showLine!=undefined)?L.showLine:this.showLine;var C=(L.fill!=undefined)?L.fill:this.fill;var H=G.canvas.width;var N=G.canvas.height;this._bases[0]=H-t-M;var I=this._length=N-F-o;var r=this._bases[0]*this.widthRatio;this._atot=I/2*(this._bases[0]+this._bases[0]*this.widthRatio);this._angle=Math.atan((this._bases[0]-r)/2/I);for(Y=0;Y<B.length;Y++){this._areas.push(B[Y][1]*this._atot)}var E,aa,W,Q=0;var n=0.0001;for(Y=0;Y<this._areas.length;Y++){E=this._areas[Y]/this._bases[Y];aa=999999;this._lengths[Y]=E;W=0;while(aa>this._lengths[Y]*n&&W<100){this._lengths[Y]=this._areas[Y]/(this._bases[Y]-this._lengths[Y]*Math.tan(this._angle));aa=Math.abs(this._lengths[Y]-E);this._bases[Y+1]=this._bases[Y]-(2*this._lengths[Y]*Math.tan(this._angle));E=this._lengths[Y];W++}Q+=this._lengths[Y]}this._vertices=new Array(B.length);var ae=[t,F],ad=[t+this._bases[0],F],ac=[t+(this._bases[0]-this._bases[this._bases.length-1])/2,F+this._length],ab=[ac[0]+this._bases[this._bases.length-1],ac[1]];function V(ag){var x=(ae[1]-ac[1])/(ae[0]-ac[0]);var v=ae[1]-x*ae[0];var ah=ag+ae[1];return[(ah-v)/x,ah]}function D(ag){var x=(ad[1]-ab[1])/(ad[0]-ab[0]);var v=ad[1]-x*ad[0];var ah=ag+ad[1];return[(ah-v)/x,ah]}var T=w,S=u;var Z=0,m=0;for(Y=0;Y<B.length;Y++){this._vertices[Y]=new Array();var U=this._vertices[Y];var A=this.sectionMargin;if(Y==0){m=0}if(Y==1){m=A/3}else{if(Y>0&&Y<B.length-1){m=A/2}else{if(Y==B.length-1){m=2*A/3}}}U.push(V(Z+m));U.push(D(Z+m));Z+=this._lengths[Y];if(Y==0){m=-2*A/3}else{if(Y>0&&Y<B.length-1){m=-A/2}else{if(Y==B.length-1){m=0}}}U.push(D(Z+m));U.push(V(Z+m))}if(this.shadow){var af="rgba(0,0,0,"+this.shadowAlpha+")";for(var Y=0;Y<B.length;Y++){this.renderer.drawSection.call(this,G,this._vertices[Y],af,true)}}for(var Y=0;Y<B.length;Y++){var U=this._vertices[Y];this.renderer.drawSection.call(this,G,U,this.seriesColors[Y]);if(this.showDataLabels&&B[Y][1]*100>=this.dataLabelThreshold){var K,X;if(this.dataLabels=="label"){K=this.dataLabelFormatString||"%s";X=e.jqplot.sprintf(K,B[Y][0])}else{if(this.dataLabels=="value"){K=this.dataLabelFormatString||"%d";X=e.jqplot.sprintf(K,this.data[Y][1])}else{if(this.dataLabels=="percent"){K=this.dataLabelFormatString||"%d%%";X=e.jqplot.sprintf(K,B[Y][1]*100)}else{if(this.dataLabels.constructor==Array){K=this.dataLabelFormatString||"%s";X=e.jqplot.sprintf(K,this.dataLabels[this._dataIndices[Y]])}}}}var s=(this._radius)*this.dataLabelPositionFactor+this.sliceMargin+this.dataLabelNudge;var T=(U[0][0]+U[1][0])/2+this.canvas._offsets.left;var S=(U[1][1]+U[2][1])/2+this.canvas._offsets.top;var z=e('<span class="jqplot-funnel-series jqplot-data-label" style="position:absolute;">'+X+"</span>").insertBefore(p.eventCanvas._elem);T-=z.width()/2;S-=z.height()/2;T=Math.round(T);S=Math.round(S);z.css({left:T,top:S})}}};e.jqplot.FunnelAxisRenderer=function(){e.jqplot.LinearAxisRenderer.call(this)};e.jqplot.FunnelAxisRenderer.prototype=new e.jqplot.LinearAxisRenderer();e.jqplot.FunnelAxisRenderer.prototype.constructor=e.jqplot.FunnelAxisRenderer;e.jqplot.FunnelAxisRenderer.prototype.init=function(m){this.tickRenderer=e.jqplot.FunnelTickRenderer;e.extend(true,this,m);this._dataBounds={min:0,max:100};this.min=0;this.max=100;this.showTicks=false;this.ticks=[];this.showMark=false;this.show=false};e.jqplot.FunnelLegendRenderer=function(){e.jqplot.TableLegendRenderer.call(this)};e.jqplot.FunnelLegendRenderer.prototype=new e.jqplot.TableLegendRenderer();e.jqplot.FunnelLegendRenderer.prototype.constructor=e.jqplot.FunnelLegendRenderer;e.jqplot.FunnelLegendRenderer.prototype.init=function(m){this.numberRows=null;this.numberColumns=null;e.extend(true,this,m)};e.jqplot.FunnelLegendRenderer.prototype.draw=function(){var p=this;if(this.show){var x=this._series;var A="position:absolute;";A+=(this.background)?"background:"+this.background+";":"";A+=(this.border)?"border:"+this.border+";":"";A+=(this.fontSize)?"font-size:"+this.fontSize+";":"";A+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";A+=(this.textColor)?"color:"+this.textColor+";":"";A+=(this.marginTop!=null)?"margin-top:"+this.marginTop+";":"";A+=(this.marginBottom!=null)?"margin-bottom:"+this.marginBottom+";":"";A+=(this.marginLeft!=null)?"margin-left:"+this.marginLeft+";":"";A+=(this.marginRight!=null)?"margin-right:"+this.marginRight+";":"";this._elem=e('<table class="jqplot-table-legend" style="'+A+'"></table>');var E=false,w=false,m,u;var y=x[0];var n=new e.jqplot.ColorGenerator(y.seriesColors);if(y.show){var F=y.data;if(this.numberRows){m=this.numberRows;if(!this.numberColumns){u=Math.ceil(F.length/m)}else{u=this.numberColumns}}else{if(this.numberColumns){u=this.numberColumns;m=Math.ceil(F.length/this.numberColumns)}else{m=F.length;u=1}}var D,C,o,r,q,t,v,B;var z=0;for(D=0;D<m;D++){if(w){o=e('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem)}else{o=e('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem)}for(C=0;C<u;C++){if(z<F.length){t=this.labels[z]||F[z][0].toString();B=n.next();if(!w){if(D>0){E=true}else{E=false}}else{if(D==m-1){E=false}else{E=true}}v=(E)?this.rowSpacing:"0";r=e('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+v+';"><div><div class="jqplot-table-legend-swatch" style="border-color:'+B+';"></div></div></td>');q=e('<td class="jqplot-table-legend" style="padding-top:'+v+';"></td>');if(this.escapeHtml){q.text(t)}else{q.html(t)}if(w){q.prependTo(o);r.prependTo(o)}else{r.appendTo(o);q.appendTo(o)}E=true}z++}}}}return this._elem};function c(q,p,n){n=n||{};n.axesDefaults=n.axesDefaults||{};n.legend=n.legend||{};n.seriesDefaults=n.seriesDefaults||{};var m=false;if(n.seriesDefaults.renderer==e.jqplot.FunnelRenderer){m=true}else{if(n.series){for(var o=0;o<n.series.length;o++){if(n.series[o].renderer==e.jqplot.FunnelRenderer){m=true}}}}if(m){n.axesDefaults.renderer=e.jqplot.FunnelAxisRenderer;n.legend.renderer=e.jqplot.FunnelLegendRenderer;n.legend.preDraw=true;n.sortData=false;n.seriesDefaults.pointLabels={show:false}}}function g(p,o,m){for(var n=0;n<this.series.length;n++){if(this.series[n].renderer.constructor==e.jqplot.FunnelRenderer){if(this.series[n].highlightMouseOver){this.series[n].highlightMouseDown=false}}}}function k(m){for(var n=0;n<this.series.length;n++){this.series[n].seriesColors=this.seriesColors;this.series[n].colorGenerator=e.jqplot.colorGenerator}}function d(q,p,o){var n=q.series[p];var m=q.plugins.funnelRenderer.highlightCanvas;m._ctx.clearRect(0,0,m._ctx.canvas.width,m._ctx.canvas.height);n._highlightedPoint=o;q.plugins.funnelRenderer.highlightedSeriesIndex=p;n.renderer.drawSection.call(n,m._ctx,n._vertices[o],n.highlightColors[o],false)}function i(o){var m=o.plugins.funnelRenderer.highlightCanvas;m._ctx.clearRect(0,0,m._ctx.canvas.width,m._ctx.canvas.height);for(var n=0;n<o.series.length;n++){o.series[n]._highlightedPoint=null}o.plugins.funnelRenderer.highlightedSeriesIndex=null;o.target.trigger("jqplotDataUnhighlight")}function a(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];var n=jQuery.Event("jqplotDataMouseOver");n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o);if(r.series[o[0]].highlightMouseOver&&!(o[0]==r.plugins.funnelRenderer.highlightedSeriesIndex&&o[1]==r.series[o[0]]._highlightedPoint)){var m=jQuery.Event("jqplotDataHighlight");m.which=q.which;m.pageX=q.pageX;m.pageY=q.pageY;r.target.trigger(m,o);d(r,o[0],o[1])}}else{if(s==null){i(r)}}}function b(p,o,s,r,q){if(r){var n=[r.seriesIndex,r.pointIndex,r.data];if(q.series[n[0]].highlightMouseDown&&!(n[0]==q.plugins.funnelRenderer.highlightedSeriesIndex&&n[1]==q.series[n[0]]._highlightedPoint)){var m=jQuery.Event("jqplotDataHighlight");m.which=p.which;m.pageX=p.pageX;m.pageY=p.pageY;q.target.trigger(m,n);d(q,n[0],n[1])}}else{if(r==null){i(q)}}}function j(o,n,r,q,p){var m=p.plugins.funnelRenderer.highlightedSeriesIndex;if(m!=null&&p.series[m].highlightMouseDown){i(p)}}function f(p,o,s,r,q){if(r){var n=[r.seriesIndex,r.pointIndex,r.data];var m=jQuery.Event("jqplotDataClick");m.which=p.which;m.pageX=p.pageX;m.pageY=p.pageY;q.target.trigger(m,n)}}function l(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];var m=r.plugins.funnelRenderer.highlightedSeriesIndex;if(m!=null&&r.series[m].highlightMouseDown){i(r)}var n=jQuery.Event("jqplotDataRightClick");n.which=q.which;n.pageX=q.pageX;n.pageY=q.pageY;r.target.trigger(n,o)}}function h(){if(this.plugins.funnelRenderer&&this.plugins.funnelRenderer.highlightCanvas){this.plugins.funnelRenderer.highlightCanvas.resetCanvas();this.plugins.funnelRenderer.highlightCanvas=null}this.plugins.funnelRenderer={};this.plugins.funnelRenderer.highlightCanvas=new e.jqplot.GenericCanvas();var n=e(this.targetId+" .jqplot-data-label");if(n.length){e(n[0]).before(this.plugins.funnelRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-funnelRenderer-highlight-canvas",this._plotDimensions,this))}else{this.eventCanvas._elem.before(this.plugins.funnelRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-funnelRenderer-highlight-canvas",this._plotDimensions,this))}var m=this.plugins.funnelRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(o){i(o.data.plot)})}e.jqplot.preInitHooks.push(c);e.jqplot.FunnelTickRenderer=function(){e.jqplot.AxisTickRenderer.call(this)};e.jqplot.FunnelTickRenderer.prototype=new e.jqplot.AxisTickRenderer();e.jqplot.FunnelTickRenderer.prototype.constructor=e.jqplot.FunnelTickRenderer})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.js
deleted file mode 100644
index e1ef02fb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.js
+++ /dev/null
@@ -1,465 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- $.jqplot.eventListenerHooks.push(['jqplotMouseMove', handleMove]);
-
- /**
- * Class: $.jqplot.Highlighter
- * Plugin which will highlight data points when they are moused over.
- *
- * To use this plugin, include the js
- * file in your source:
- *
- * > <script type="text/javascript" src="plugins/jqplot.highlighter.js"></script>
- *
- * A tooltip providing information about the data point is enabled by default.
- * To disable the tooltip, set "showTooltip" to false.
- *
- * You can control what data is displayed in the tooltip with various
- * options. The "tooltipAxes" option controls wether the x, y or both
- * data values are displayed.
- *
- * Some chart types (e.g. hi-low-close) have more than one y value per
- * data point. To display the additional values in the tooltip, set the
- * "yvalues" option to the desired number of y values present (3 for a hlc chart).
- *
- * By default, data values will be formatted with the same formatting
- * specifiers as used to format the axis ticks. A custom format code
- * can be supplied with the tooltipFormatString option. This will apply
- * to all values in the tooltip.
- *
- * For more complete control, the "formatString" option can be set. This
- * Allows conplete control over tooltip formatting. Values are passed to
- * the format string in an order determined by the "tooltipAxes" and "yvalues"
- * options. So, if you have a hi-low-close chart and you just want to display
- * the hi-low-close values in the tooltip, you could set a formatString like:
- *
- * > highlighter: {
- * > tooltipAxes: 'y',
- * > yvalues: 3,
- * > formatString:'<table class="jqplot-highlighter">
- * > <tr><td>hi:</td><td>%s</td></tr>
- * > <tr><td>low:</td><td>%s</td></tr>
- * > <tr><td>close:</td><td>%s</td></tr></table>'
- * > }
- *
- */
- $.jqplot.Highlighter = function(options) {
- // Group: Properties
- //
- //prop: show
- // true to show the highlight.
- this.show = $.jqplot.config.enablePlugins;
- // prop: markerRenderer
- // Renderer used to draw the marker of the highlighted point.
- // Renderer will assimilate attributes from the data point being highlighted,
- // so no attributes need set on the renderer directly.
- // Default is to turn off shadow drawing on the highlighted point.
- this.markerRenderer = new $.jqplot.MarkerRenderer({shadow:false});
- // prop: showMarker
- // true to show the marker
- this.showMarker = true;
- // prop: lineWidthAdjust
- // Pixels to add to the lineWidth of the highlight.
- this.lineWidthAdjust = 2.5;
- // prop: sizeAdjust
- // Pixels to add to the overall size of the highlight.
- this.sizeAdjust = 5;
- // prop: showTooltip
- // Show a tooltip with data point values.
- this.showTooltip = true;
- // prop: tooltipLocation
- // Where to position tooltip, 'n', 'ne', 'e', 'se', 's', 'sw', 'w', 'nw'
- this.tooltipLocation = 'nw';
- // prop: fadeTooltip
- // true = fade in/out tooltip, flase = show/hide tooltip
- this.fadeTooltip = true;
- // prop: tooltipFadeSpeed
- // 'slow', 'def', 'fast', or number of milliseconds.
- this.tooltipFadeSpeed = "fast";
- // prop: tooltipOffset
- // Pixel offset of tooltip from the highlight.
- this.tooltipOffset = 2;
- // prop: tooltipAxes
- // Which axes to display in tooltip, 'x', 'y' or 'both', 'xy' or 'yx'
- // 'both' and 'xy' are equivalent, 'yx' reverses order of labels.
- this.tooltipAxes = 'both';
- // prop; tooltipSeparator
- // String to use to separate x and y axes in tooltip.
- this.tooltipSeparator = ', ';
- // prop; tooltipContentEditor
- // Function used to edit/augment/replace the formatted tooltip contents.
- // Called as str = tooltipContentEditor(str, seriesIndex, pointIndex)
- // where str is the generated tooltip html and seriesIndex and pointIndex identify
- // the data point being highlighted. Should return the html for the tooltip contents.
- this.tooltipContentEditor = null;
- // prop: useAxesFormatters
- // Use the x and y axes formatters to format the text in the tooltip.
- this.useAxesFormatters = true;
- // prop: tooltipFormatString
- // sprintf format string for the tooltip.
- // Uses Ash Searle's javascript sprintf implementation
- // found here: http://hexmen.com/blog/2007/03/printf-sprintf/
- // See http://perldoc.perl.org/functions/sprintf.html for reference.
- // Additional "p" and "P" format specifiers added by Chris Leonello.
- this.tooltipFormatString = '%.5P';
- // prop: formatString
- // alternative to tooltipFormatString
- // will format the whole tooltip text, populating with x, y values as
- // indicated by tooltipAxes option. So, you could have a tooltip like:
- // 'Date: %s, number of cats: %d' to format the whole tooltip at one go.
- // If useAxesFormatters is true, values will be formatted according to
- // Axes formatters and you can populate your tooltip string with
- // %s placeholders.
- this.formatString = null;
- // prop: yvalues
- // Number of y values to expect in the data point array.
- // Typically this is 1. Certain plots, like OHLC, will
- // have more y values in each data point array.
- this.yvalues = 1;
- // prop: bringSeriesToFront
- // This option requires jQuery 1.4+
- // True to bring the series of the highlighted point to the front
- // of other series.
- this.bringSeriesToFront = false;
- this._tooltipElem;
- this.isHighlighting = false;
- this.currentNeighbor = null;
-
- $.extend(true, this, options);
- };
-
- var locations = ['nw', 'n', 'ne', 'e', 'se', 's', 'sw', 'w'];
- var locationIndicies = {'nw':0, 'n':1, 'ne':2, 'e':3, 'se':4, 's':5, 'sw':6, 'w':7};
- var oppositeLocations = ['se', 's', 'sw', 'w', 'nw', 'n', 'ne', 'e'];
-
- // axis.renderer.tickrenderer.formatter
-
- // called with scope of plot
- $.jqplot.Highlighter.init = function (target, data, opts){
- var options = opts || {};
- // add a highlighter attribute to the plot
- this.plugins.highlighter = new $.jqplot.Highlighter(options.highlighter);
- };
-
- // called within scope of series
- $.jqplot.Highlighter.parseOptions = function (defaults, options) {
- // Add a showHighlight option to the series
- // and set it to true by default.
- this.showHighlight = true;
- };
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- $.jqplot.Highlighter.postPlotDraw = function() {
- // Memory Leaks patch
- if (this.plugins.highlighter && this.plugins.highlighter.highlightCanvas) {
- this.plugins.highlighter.highlightCanvas.resetCanvas();
- this.plugins.highlighter.highlightCanvas = null;
- }
-
- if (this.plugins.highlighter && this.plugins.highlighter._tooltipElem) {
- this.plugins.highlighter._tooltipElem.emptyForce();
- this.plugins.highlighter._tooltipElem = null;
- }
-
- this.plugins.highlighter.highlightCanvas = new $.jqplot.GenericCanvas();
-
- this.eventCanvas._elem.before(this.plugins.highlighter.highlightCanvas.createElement(this._gridPadding, 'jqplot-highlight-canvas', this._plotDimensions, this));
- this.plugins.highlighter.highlightCanvas.setContext();
-
- var elem = document.createElement('div');
- this.plugins.highlighter._tooltipElem = $(elem);
- elem = null;
- this.plugins.highlighter._tooltipElem.addClass('jqplot-highlighter-tooltip');
- this.plugins.highlighter._tooltipElem.css({position:'absolute', display:'none'});
-
- this.eventCanvas._elem.before(this.plugins.highlighter._tooltipElem);
- };
-
- $.jqplot.preInitHooks.push($.jqplot.Highlighter.init);
- $.jqplot.preParseSeriesOptionsHooks.push($.jqplot.Highlighter.parseOptions);
- $.jqplot.postDrawHooks.push($.jqplot.Highlighter.postPlotDraw);
-
- function draw(plot, neighbor) {
- var hl = plot.plugins.highlighter;
- var s = plot.series[neighbor.seriesIndex];
- var smr = s.markerRenderer;
- var mr = hl.markerRenderer;
- mr.style = smr.style;
- mr.lineWidth = smr.lineWidth + hl.lineWidthAdjust;
- mr.size = smr.size + hl.sizeAdjust;
- var rgba = $.jqplot.getColorComponents(smr.color);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var alpha = (rgba[3] >= 0.6) ? rgba[3]*0.6 : rgba[3]*(2-rgba[3]);
- mr.color = 'rgba('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+','+alpha+')';
- mr.init();
- mr.draw(s.gridData[neighbor.pointIndex][0], s.gridData[neighbor.pointIndex][1], hl.highlightCanvas._ctx);
- }
-
- function showTooltip(plot, series, neighbor) {
- // neighbor looks like: {seriesIndex: i, pointIndex:j, gridData:p, data:s.data[j]}
- // gridData should be x,y pixel coords on the grid.
- // add the plot._gridPadding to that to get x,y in the target.
- var hl = plot.plugins.highlighter;
- var elem = hl._tooltipElem;
- var serieshl = series.highlighter || {};
-
- var opts = $.extend(true, {}, hl, serieshl);
-
- if (opts.useAxesFormatters) {
- var xf = series._xaxis._ticks[0].formatter;
- var yf = series._yaxis._ticks[0].formatter;
- var xfstr = series._xaxis._ticks[0].formatString;
- var yfstr = series._yaxis._ticks[0].formatString;
- var str;
- var xstr = xf(xfstr, neighbor.data[0]);
- var ystrs = [];
- for (var i=1; i<opts.yvalues+1; i++) {
- ystrs.push(yf(yfstr, neighbor.data[i]));
- }
- if (typeof opts.formatString === 'string') {
- switch (opts.tooltipAxes) {
- case 'both':
- case 'xy':
- ystrs.unshift(xstr);
- ystrs.unshift(opts.formatString);
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, ystrs);
- break;
- case 'yx':
- ystrs.push(xstr);
- ystrs.unshift(opts.formatString);
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, ystrs);
- break;
- case 'x':
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, [opts.formatString, xstr]);
- break;
- case 'y':
- ystrs.unshift(opts.formatString);
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, ystrs);
- break;
- default: // same as xy
- ystrs.unshift(xstr);
- ystrs.unshift(opts.formatString);
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, ystrs);
- break;
- }
- }
- else {
- switch (opts.tooltipAxes) {
- case 'both':
- case 'xy':
- str = xstr;
- for (var i=0; i<ystrs.length; i++) {
- str += opts.tooltipSeparator + ystrs[i];
- }
- break;
- case 'yx':
- str = '';
- for (var i=0; i<ystrs.length; i++) {
- str += ystrs[i] + opts.tooltipSeparator;
- }
- str += xstr;
- break;
- case 'x':
- str = xstr;
- break;
- case 'y':
- str = ystrs.join(opts.tooltipSeparator);
- break;
- default: // same as 'xy'
- str = xstr;
- for (var i=0; i<ystrs.length; i++) {
- str += opts.tooltipSeparator + ystrs[i];
- }
- break;
-
- }
- }
- }
- else {
- var str;
- if (typeof opts.formatString === 'string') {
- str = $.jqplot.sprintf.apply($.jqplot.sprintf, [opts.formatString].concat(neighbor.data));
- }
-
- else {
- if (opts.tooltipAxes == 'both' || opts.tooltipAxes == 'xy') {
- str = $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[0]) + opts.tooltipSeparator + $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[1]);
- }
- else if (opts.tooltipAxes == 'yx') {
- str = $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[1]) + opts.tooltipSeparator + $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[0]);
- }
- else if (opts.tooltipAxes == 'x') {
- str = $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[0]);
- }
- else if (opts.tooltipAxes == 'y') {
- str = $.jqplot.sprintf(opts.tooltipFormatString, neighbor.data[1]);
- }
- }
- }
- if ($.isFunction(opts.tooltipContentEditor)) {
- // args str, seriesIndex, pointIndex are essential so the hook can look up
- // extra data for the point.
- str = opts.tooltipContentEditor(str, neighbor.seriesIndex, neighbor.pointIndex, plot);
- }
- elem.html(str);
- var gridpos = {x:neighbor.gridData[0], y:neighbor.gridData[1]};
- var ms = 0;
- var fact = 0.707;
- if (series.markerRenderer.show == true) {
- ms = (series.markerRenderer.size + opts.sizeAdjust)/2;
- }
-
- var loc = locations;
- if (series.fillToZero && series.fill && neighbor.data[1] < 0) {
- loc = oppositeLocations;
- }
-
- switch (loc[locationIndicies[opts.tooltipLocation]]) {
- case 'nw':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset - fact * ms;
- var y = gridpos.y + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true) - fact * ms;
- break;
- case 'n':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true)/2;
- var y = gridpos.y + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true) - ms;
- break;
- case 'ne':
- var x = gridpos.x + plot._gridPadding.left + opts.tooltipOffset + fact * ms;
- var y = gridpos.y + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true) - fact * ms;
- break;
- case 'e':
- var x = gridpos.x + plot._gridPadding.left + opts.tooltipOffset + ms;
- var y = gridpos.y + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- case 'se':
- var x = gridpos.x + plot._gridPadding.left + opts.tooltipOffset + fact * ms;
- var y = gridpos.y + plot._gridPadding.top + opts.tooltipOffset + fact * ms;
- break;
- case 's':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true)/2;
- var y = gridpos.y + plot._gridPadding.top + opts.tooltipOffset + ms;
- break;
- case 'sw':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset - fact * ms;
- var y = gridpos.y + plot._gridPadding.top + opts.tooltipOffset + fact * ms;
- break;
- case 'w':
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset - ms;
- var y = gridpos.y + plot._gridPadding.top - elem.outerHeight(true)/2;
- break;
- default: // same as 'nw'
- var x = gridpos.x + plot._gridPadding.left - elem.outerWidth(true) - opts.tooltipOffset - fact * ms;
- var y = gridpos.y + plot._gridPadding.top - opts.tooltipOffset - elem.outerHeight(true) - fact * ms;
- break;
- }
- elem.css('left', x);
- elem.css('top', y);
- if (opts.fadeTooltip) {
- // Fix for stacked up animations. Thnanks Trevor!
- elem.stop(true,true).fadeIn(opts.tooltipFadeSpeed);
- }
- else {
- elem.show();
- }
- elem = null;
-
- }
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- var hl = plot.plugins.highlighter;
- var c = plot.plugins.cursor;
- if (hl.show) {
- if (neighbor == null && hl.isHighlighting) {
- var evt = jQuery.Event('jqplotHighlighterUnhighlight');
- plot.target.trigger(evt);
-
- var ctx = hl.highlightCanvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- if (hl.fadeTooltip) {
- hl._tooltipElem.fadeOut(hl.tooltipFadeSpeed);
- }
- else {
- hl._tooltipElem.hide();
- }
- if (hl.bringSeriesToFront) {
- plot.restorePreviousSeriesOrder();
- }
- hl.isHighlighting = false;
- hl.currentNeighbor = null;
- ctx = null;
- }
- else if (neighbor != null && plot.series[neighbor.seriesIndex].showHighlight && !hl.isHighlighting) {
- var evt = jQuery.Event('jqplotHighlighterHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data, plot];
- plot.target.trigger(evt, ins);
-
- hl.isHighlighting = true;
- hl.currentNeighbor = neighbor;
- if (hl.showMarker) {
- draw(plot, neighbor);
- }
- if (hl.showTooltip && (!c || !c._zoom.started)) {
- showTooltip(plot, plot.series[neighbor.seriesIndex], neighbor);
- }
- if (hl.bringSeriesToFront) {
- plot.moveSeriesToFront(neighbor.seriesIndex);
- }
- }
- // check to see if we're highlighting the wrong point.
- else if (neighbor != null && hl.isHighlighting && hl.currentNeighbor != neighbor) {
- // highlighting the wrong point.
-
- // if new series allows highlighting, highlight new point.
- if (plot.series[neighbor.seriesIndex].showHighlight) {
- var ctx = hl.highlightCanvas._ctx;
- ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);
- hl.isHighlighting = true;
- hl.currentNeighbor = neighbor;
- if (hl.showMarker) {
- draw(plot, neighbor);
- }
- if (hl.showTooltip && (!c || !c._zoom.started)) {
- showTooltip(plot, plot.series[neighbor.seriesIndex], neighbor);
- }
- if (hl.bringSeriesToFront) {
- plot.moveSeriesToFront(neighbor.seriesIndex);
- }
- }
- }
- }
- }
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.min.js
deleted file mode 100644
index a67ebe3a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.highlighter.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(d){d.jqplot.eventListenerHooks.push(["jqplotMouseMove",f]);d.jqplot.Highlighter=function(h){this.show=d.jqplot.config.enablePlugins;this.markerRenderer=new d.jqplot.MarkerRenderer({shadow:false});this.showMarker=true;this.lineWidthAdjust=2.5;this.sizeAdjust=5;this.showTooltip=true;this.tooltipLocation="nw";this.fadeTooltip=true;this.tooltipFadeSpeed="fast";this.tooltipOffset=2;this.tooltipAxes="both";this.tooltipSeparator=", ";this.tooltipContentEditor=null;this.useAxesFormatters=true;this.tooltipFormatString="%.5P";this.formatString=null;this.yvalues=1;this.bringSeriesToFront=false;this._tooltipElem;this.isHighlighting=false;this.currentNeighbor=null;d.extend(true,this,h)};var b=["nw","n","ne","e","se","s","sw","w"];var e={nw:0,n:1,ne:2,e:3,se:4,s:5,sw:6,w:7};var c=["se","s","sw","w","nw","n","ne","e"];d.jqplot.Highlighter.init=function(k,j,i){var h=i||{};this.plugins.highlighter=new d.jqplot.Highlighter(h.highlighter)};d.jqplot.Highlighter.parseOptions=function(i,h){this.showHighlight=true};d.jqplot.Highlighter.postPlotDraw=function(){if(this.plugins.highlighter&&this.plugins.highlighter.highlightCanvas){this.plugins.highlighter.highlightCanvas.resetCanvas();this.plugins.highlighter.highlightCanvas=null}if(this.plugins.highlighter&&this.plugins.highlighter._tooltipElem){this.plugins.highlighter._tooltipElem.emptyForce();this.plugins.highlighter._tooltipElem=null}this.plugins.highlighter.highlightCanvas=new d.jqplot.GenericCanvas();this.eventCanvas._elem.before(this.plugins.highlighter.highlightCanvas.createElement(this._gridPadding,"jqplot-highlight-canvas",this._plotDimensions,this));this.plugins.highlighter.highlightCanvas.setContext();var h=document.createElement("div");this.plugins.highlighter._tooltipElem=d(h);h=null;this.plugins.highlighter._tooltipElem.addClass("jqplot-highlighter-tooltip");this.plugins.highlighter._tooltipElem.css({position:"absolute",display:"none"});this.eventCanvas._elem.before(this.plugins.highlighter._tooltipElem)};d.jqplot.preInitHooks.push(d.jqplot.Highlighter.init);d.jqplot.preParseSeriesOptionsHooks.push(d.jqplot.Highlighter.parseOptions);d.jqplot.postDrawHooks.push(d.jqplot.Highlighter.postPlotDraw);function a(m,o){var j=m.plugins.highlighter;var p=m.series[o.seriesIndex];var h=p.markerRenderer;var i=j.markerRenderer;i.style=h.style;i.lineWidth=h.lineWidth+j.lineWidthAdjust;i.size=h.size+j.sizeAdjust;var l=d.jqplot.getColorComponents(h.color);var n=[l[0],l[1],l[2]];var k=(l[3]>=0.6)?l[3]*0.6:l[3]*(2-l[3]);i.color="rgba("+n[0]+","+n[1]+","+n[2]+","+k+")";i.init();i.draw(p.gridData[o.pointIndex][0],p.gridData[o.pointIndex][1],j.highlightCanvas._ctx)}function g(A,q,m){var k=A.plugins.highlighter;var D=k._tooltipElem;var r=q.highlighter||{};var t=d.extend(true,{},k,r);if(t.useAxesFormatters){var w=q._xaxis._ticks[0].formatter;var h=q._yaxis._ticks[0].formatter;var E=q._xaxis._ticks[0].formatString;var s=q._yaxis._ticks[0].formatString;var z;var u=w(E,m.data[0]);var l=[];for(var B=1;B<t.yvalues+1;B++){l.push(h(s,m.data[B]))}if(typeof t.formatString==="string"){switch(t.tooltipAxes){case"both":case"xy":l.unshift(u);l.unshift(t.formatString);z=d.jqplot.sprintf.apply(d.jqplot.sprintf,l);break;case"yx":l.push(u);l.unshift(t.formatString);z=d.jqplot.sprintf.apply(d.jqplot.sprintf,l);break;case"x":z=d.jqplot.sprintf.apply(d.jqplot.sprintf,[t.formatString,u]);break;case"y":l.unshift(t.formatString);z=d.jqplot.sprintf.apply(d.jqplot.sprintf,l);break;default:l.unshift(u);l.unshift(t.formatString);z=d.jqplot.sprintf.apply(d.jqplot.sprintf,l);break}}else{switch(t.tooltipAxes){case"both":case"xy":z=u;for(var B=0;B<l.length;B++){z+=t.tooltipSeparator+l[B]}break;case"yx":z="";for(var B=0;B<l.length;B++){z+=l[B]+t.tooltipSeparator}z+=u;break;case"x":z=u;break;case"y":z=l.join(t.tooltipSeparator);break;default:z=u;for(var B=0;B<l.length;B++){z+=t.tooltipSeparator+l[B]}break}}}else{var z;if(typeof t.formatString==="string"){z=d.jqplot.sprintf.apply(d.jqplot.sprintf,[t.formatString].concat(m.data))}else{if(t.tooltipAxes=="both"||t.tooltipAxes=="xy"){z=d.jqplot.sprintf(t.tooltipFormatString,m.data[0])+t.tooltipSeparator+d.jqplot.sprintf(t.tooltipFormatString,m.data[1])}else{if(t.tooltipAxes=="yx"){z=d.jqplot.sprintf(t.tooltipFormatString,m.data[1])+t.tooltipSeparator+d.jqplot.sprintf(t.tooltipFormatString,m.data[0])}else{if(t.tooltipAxes=="x"){z=d.jqplot.sprintf(t.tooltipFormatString,m.data[0])}else{if(t.tooltipAxes=="y"){z=d.jqplot.sprintf(t.tooltipFormatString,m.data[1])}}}}}}if(d.isFunction(t.tooltipContentEditor)){z=t.tooltipContentEditor(z,m.seriesIndex,m.pointIndex,A)}D.html(z);var C={x:m.gridData[0],y:m.gridData[1]};var v=0;var j=0.707;if(q.markerRenderer.show==true){v=(q.markerRenderer.size+t.sizeAdjust)/2}var o=b;if(q.fillToZero&&q.fill&&m.data[1]<0){o=c}switch(o[e[t.tooltipLocation]]){case"nw":var p=C.x+A._gridPadding.left-D.outerWidth(true)-t.tooltipOffset-j*v;var n=C.y+A._gridPadding.top-t.tooltipOffset-D.outerHeight(true)-j*v;break;case"n":var p=C.x+A._gridPadding.left-D.outerWidth(true)/2;var n=C.y+A._gridPadding.top-t.tooltipOffset-D.outerHeight(true)-v;break;case"ne":var p=C.x+A._gridPadding.left+t.tooltipOffset+j*v;var n=C.y+A._gridPadding.top-t.tooltipOffset-D.outerHeight(true)-j*v;break;case"e":var p=C.x+A._gridPadding.left+t.tooltipOffset+v;var n=C.y+A._gridPadding.top-D.outerHeight(true)/2;break;case"se":var p=C.x+A._gridPadding.left+t.tooltipOffset+j*v;var n=C.y+A._gridPadding.top+t.tooltipOffset+j*v;break;case"s":var p=C.x+A._gridPadding.left-D.outerWidth(true)/2;var n=C.y+A._gridPadding.top+t.tooltipOffset+v;break;case"sw":var p=C.x+A._gridPadding.left-D.outerWidth(true)-t.tooltipOffset-j*v;var n=C.y+A._gridPadding.top+t.tooltipOffset+j*v;break;case"w":var p=C.x+A._gridPadding.left-D.outerWidth(true)-t.tooltipOffset-v;var n=C.y+A._gridPadding.top-D.outerHeight(true)/2;break;default:var p=C.x+A._gridPadding.left-D.outerWidth(true)-t.tooltipOffset-j*v;var n=C.y+A._gridPadding.top-t.tooltipOffset-D.outerHeight(true)-j*v;break}D.css("left",p);D.css("top",n);if(t.fadeTooltip){D.stop(true,true).fadeIn(t.tooltipFadeSpeed)}else{D.show()}D=null}function f(n,j,i,p,l){var h=l.plugins.highlighter;var m=l.plugins.cursor;if(h.show){if(p==null&&h.isHighlighting){var o=jQuery.Event("jqplotHighlighterUnhighlight");l.target.trigger(o);var q=h.highlightCanvas._ctx;q.clearRect(0,0,q.canvas.width,q.canvas.height);if(h.fadeTooltip){h._tooltipElem.fadeOut(h.tooltipFadeSpeed)}else{h._tooltipElem.hide()}if(h.bringSeriesToFront){l.restorePreviousSeriesOrder()}h.isHighlighting=false;h.currentNeighbor=null;q=null}else{if(p!=null&&l.series[p.seriesIndex].showHighlight&&!h.isHighlighting){var o=jQuery.Event("jqplotHighlighterHighlight");o.which=n.which;o.pageX=n.pageX;o.pageY=n.pageY;var k=[p.seriesIndex,p.pointIndex,p.data,l];l.target.trigger(o,k);h.isHighlighting=true;h.currentNeighbor=p;if(h.showMarker){a(l,p)}if(h.showTooltip&&(!m||!m._zoom.started)){g(l,l.series[p.seriesIndex],p)}if(h.bringSeriesToFront){l.moveSeriesToFront(p.seriesIndex)}}else{if(p!=null&&h.isHighlighting&&h.currentNeighbor!=p){if(l.series[p.seriesIndex].showHighlight){var q=h.highlightCanvas._ctx;q.clearRect(0,0,q.canvas.width,q.canvas.height);h.isHighlighting=true;h.currentNeighbor=p;if(h.showMarker){a(l,p)}if(h.showTooltip&&(!m||!m._zoom.started)){g(l,l.series[p.seriesIndex],p)}if(h.bringSeriesToFront){l.moveSeriesToFront(p.seriesIndex)}}}}}}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.js
deleted file mode 100644
index c4767b2a..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.js
+++ /dev/null
@@ -1,475 +0,0 @@
-/*
- 2010-11-01 Chris Leonello
-
- Slightly modified version of the original json2.js to put JSON
- functions under the $.jqplot namespace.
-
- licensing and orignal comments follow:
-
- http://www.JSON.org/json2.js
- 2010-08-25
-
- Public Domain.
-
- NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
-
- See http://www.JSON.org/js.html
-
-
- This code should be minified before deployment.
- See http://javascript.crockford.com/jsmin.html
-
- USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
- NOT CONTROL.
-
-
- This file creates a global JSON object containing two methods: stringify
- and parse.
-
- $.jqplot.JSON.stringify(value, replacer, space)
- value any JavaScript value, usually an object or array.
-
- replacer an optional parameter that determines how object
- values are stringified for objects. It can be a
- function or an array of strings.
-
- space an optional parameter that specifies the indentation
- of nested structures. If it is omitted, the text will
- be packed without extra whitespace. If it is a number,
- it will specify the number of spaces to indent at each
- level. If it is a string (such as '\t' or '&nbsp;'),
- it contains the characters used to indent at each level.
-
- This method produces a JSON text from a JavaScript value.
-
- When an object value is found, if the object contains a toJSON
- method, its toJSON method will be called and the result will be
- stringified. A toJSON method does not serialize: it returns the
- value represented by the name/value pair that should be serialized,
- or undefined if nothing should be serialized. The toJSON method
- will be passed the key associated with the value, and this will be
- bound to the value
-
- For example, this would serialize Dates as ISO strings.
-
- Date.prototype.toJSON = function (key) {
- function f(n) {
- // Format integers to have at least two digits.
- return n < 10 ? '0' + n : n;
- }
-
- return this.getUTCFullYear() + '-' +
- f(this.getUTCMonth() + 1) + '-' +
- f(this.getUTCDate()) + 'T' +
- f(this.getUTCHours()) + ':' +
- f(this.getUTCMinutes()) + ':' +
- f(this.getUTCSeconds()) + 'Z';
- };
-
- You can provide an optional replacer method. It will be passed the
- key and value of each member, with this bound to the containing
- object. The value that is returned from your method will be
- serialized. If your method returns undefined, then the member will
- be excluded from the serialization.
-
- If the replacer parameter is an array of strings, then it will be
- used to select the members to be serialized. It filters the results
- such that only members with keys listed in the replacer array are
- stringified.
-
- Values that do not have JSON representations, such as undefined or
- functions, will not be serialized. Such values in objects will be
- dropped; in arrays they will be replaced with null. You can use
- a replacer function to replace those with JSON values.
- $.jqplot.JSON.stringify(undefined) returns undefined.
-
- The optional space parameter produces a stringification of the
- value that is filled with line breaks and indentation to make it
- easier to read.
-
- If the space parameter is a non-empty string, then that string will
- be used for indentation. If the space parameter is a number, then
- the indentation will be that many spaces.
-
- Example:
-
- text = $.jqplot.JSON.stringify(['e', {pluribus: 'unum'}]);
- // text is '["e",{"pluribus":"unum"}]'
-
-
- text = $.jqplot.JSON.stringify(['e', {pluribus: 'unum'}], null, '\t');
- // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]'
-
- text = $.jqplot.JSON.stringify([new Date()], function (key, value) {
- return this[key] instanceof Date ?
- 'Date(' + this[key] + ')' : value;
- });
- // text is '["Date(---current time---)"]'
-
-
- $.jqplot.JSON.parse(text, reviver)
- This method parses a JSON text to produce an object or array.
- It can throw a SyntaxError exception.
-
- The optional reviver parameter is a function that can filter and
- transform the results. It receives each of the keys and values,
- and its return value is used instead of the original value.
- If it returns what it received, then the structure is not modified.
- If it returns undefined then the member is deleted.
-
- Example:
-
- // Parse the text. Values that look like ISO date strings will
- // be converted to Date objects.
-
- myData = $.jqplot.JSON.parse(text, function (key, value) {
- var a;
- if (typeof value === 'string') {
- a =
-/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
- if (a) {
- return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
- +a[5], +a[6]));
- }
- }
- return value;
- });
-
- myData = $.jqplot.JSON.parse('["Date(09/09/2001)"]', function (key, value) {
- var d;
- if (typeof value === 'string' &&
- value.slice(0, 5) === 'Date(' &&
- value.slice(-1) === ')') {
- d = new Date(value.slice(5, -1));
- if (d) {
- return d;
- }
- }
- return value;
- });
-
-
- This is a reference implementation. You are free to copy, modify, or
- redistribute.
-*/
-
-(function($) {
-
- $.jqplot.JSON = window.JSON;
-
- if (!window.JSON) {
- $.jqplot.JSON = {};
- }
-
- function f(n) {
- // Format integers to have at least two digits.
- return n < 10 ? '0' + n : n;
- }
-
- if (typeof Date.prototype.toJSON !== 'function') {
-
- Date.prototype.toJSON = function (key) {
-
- return isFinite(this.valueOf()) ?
- this.getUTCFullYear() + '-' +
- f(this.getUTCMonth() + 1) + '-' +
- f(this.getUTCDate()) + 'T' +
- f(this.getUTCHours()) + ':' +
- f(this.getUTCMinutes()) + ':' +
- f(this.getUTCSeconds()) + 'Z' : null;
- };
-
- String.prototype.toJSON =
- Number.prototype.toJSON =
- Boolean.prototype.toJSON = function (key) {
- return this.valueOf();
- };
- }
-
- var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
- escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
- gap,
- indent,
- meta = { // table of character substitutions
- '\b': '\\b',
- '\t': '\\t',
- '\n': '\\n',
- '\f': '\\f',
- '\r': '\\r',
- '"' : '\\"',
- '\\': '\\\\'
- },
- rep;
-
-
- function quote(string) {
-
-// If the string contains no control characters, no quote characters, and no
-// backslash characters, then we can safely slap some quotes around it.
-// Otherwise we must also replace the offending characters with safe escape
-// sequences.
-
- escapable.lastIndex = 0;
- return escapable.test(string) ?
- '"' + string.replace(escapable, function (a) {
- var c = meta[a];
- return typeof c === 'string' ? c :
- '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
- }) + '"' :
- '"' + string + '"';
- }
-
-
- function str(key, holder) {
-
-// Produce a string from holder[key].
-
- var i, // The loop counter.
- k, // The member key.
- v, // The member value.
- length,
- mind = gap,
- partial,
- value = holder[key];
-
-// If the value has a toJSON method, call it to obtain a replacement value.
-
- if (value && typeof value === 'object' &&
- typeof value.toJSON === 'function') {
- value = value.toJSON(key);
- }
-
-// If we were called with a replacer function, then call the replacer to
-// obtain a replacement value.
-
- if (typeof rep === 'function') {
- value = rep.call(holder, key, value);
- }
-
-// What happens next depends on the value's type.
-
- switch (typeof value) {
- case 'string':
- return quote(value);
-
- case 'number':
-
-// JSON numbers must be finite. Encode non-finite numbers as null.
-
- return isFinite(value) ? String(value) : 'null';
-
- case 'boolean':
- case 'null':
-
-// If the value is a boolean or null, convert it to a string. Note:
-// typeof null does not produce 'null'. The case is included here in
-// the remote chance that this gets fixed someday.
-
- return String(value);
-
-// If the type is 'object', we might be dealing with an object or an array or
-// null.
-
- case 'object':
-
-// Due to a specification blunder in ECMAScript, typeof null is 'object',
-// so watch out for that case.
-
- if (!value) {
- return 'null';
- }
-
-// Make an array to hold the partial results of stringifying this object value.
-
- gap += indent;
- partial = [];
-
-// Is the value an array?
-
- if (Object.prototype.toString.apply(value) === '[object Array]') {
-
-// The value is an array. Stringify every element. Use null as a placeholder
-// for non-JSON values.
-
- length = value.length;
- for (i = 0; i < length; i += 1) {
- partial[i] = str(i, value) || 'null';
- }
-
-// Join all of the elements together, separated with commas, and wrap them in
-// brackets.
-
- v = partial.length === 0 ? '[]' :
- gap ? '[\n' + gap +
- partial.join(',\n' + gap) + '\n' +
- mind + ']' :
- '[' + partial.join(',') + ']';
- gap = mind;
- return v;
- }
-
-// If the replacer is an array, use it to select the members to be stringified.
-
- if (rep && typeof rep === 'object') {
- length = rep.length;
- for (i = 0; i < length; i += 1) {
- k = rep[i];
- if (typeof k === 'string') {
- v = str(k, value);
- if (v) {
- partial.push(quote(k) + (gap ? ': ' : ':') + v);
- }
- }
- }
- } else {
-
-// Otherwise, iterate through all of the keys in the object.
-
- for (k in value) {
- if (Object.hasOwnProperty.call(value, k)) {
- v = str(k, value);
- if (v) {
- partial.push(quote(k) + (gap ? ': ' : ':') + v);
- }
- }
- }
- }
-
-// Join all of the member texts together, separated with commas,
-// and wrap them in braces.
-
- v = partial.length === 0 ? '{}' :
- gap ? '{\n' + gap + partial.join(',\n' + gap) + '\n' +
- mind + '}' : '{' + partial.join(',') + '}';
- gap = mind;
- return v;
- }
- }
-
-// If the JSON object does not yet have a stringify method, give it one.
-
- if (typeof $.jqplot.JSON.stringify !== 'function') {
- $.jqplot.JSON.stringify = function (value, replacer, space) {
-
-// The stringify method takes a value and an optional replacer, and an optional
-// space parameter, and returns a JSON text. The replacer can be a function
-// that can replace values, or an array of strings that will select the keys.
-// A default replacer method can be provided. Use of the space parameter can
-// produce text that is more easily readable.
-
- var i;
- gap = '';
- indent = '';
-
-// If the space parameter is a number, make an indent string containing that
-// many spaces.
-
- if (typeof space === 'number') {
- for (i = 0; i < space; i += 1) {
- indent += ' ';
- }
-
-// If the space parameter is a string, it will be used as the indent string.
-
- } else if (typeof space === 'string') {
- indent = space;
- }
-
-// If there is a replacer, it must be a function or an array.
-// Otherwise, throw an error.
-
- rep = replacer;
- if (replacer && typeof replacer !== 'function' &&
- (typeof replacer !== 'object' ||
- typeof replacer.length !== 'number')) {
- throw new Error('$.jqplot.JSON.stringify');
- }
-
-// Make a fake root object containing our value under the key of ''.
-// Return the result of stringifying the value.
-
- return str('', {'': value});
- };
- }
-
-
-// If the JSON object does not yet have a parse method, give it one.
-
- if (typeof $.jqplot.JSON.parse !== 'function') {
- $.jqplot.JSON.parse = function (text, reviver) {
-
-// The parse method takes a text and an optional reviver function, and returns
-// a JavaScript value if the text is a valid JSON text.
-
- var j;
-
- function walk(holder, key) {
-
-// The walk method is used to recursively walk the resulting structure so
-// that modifications can be made.
-
- var k, v, value = holder[key];
- if (value && typeof value === 'object') {
- for (k in value) {
- if (Object.hasOwnProperty.call(value, k)) {
- v = walk(value, k);
- if (v !== undefined) {
- value[k] = v;
- } else {
- delete value[k];
- }
- }
- }
- }
- return reviver.call(holder, key, value);
- }
-
-
-// Parsing happens in four stages. In the first stage, we replace certain
-// Unicode characters with escape sequences. JavaScript handles many characters
-// incorrectly, either silently deleting them, or treating them as line endings.
-
- text = String(text);
- cx.lastIndex = 0;
- if (cx.test(text)) {
- text = text.replace(cx, function (a) {
- return '\\u' +
- ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
- });
- }
-
-// In the second stage, we run the text against regular expressions that look
-// for non-JSON patterns. We are especially concerned with '()' and 'new'
-// because they can cause invocation, and '=' because it can cause mutation.
-// But just to be safe, we want to reject all unexpected forms.
-
-// We split the second stage into 4 regexp operations in order to work around
-// crippling inefficiencies in IE's and Safari's regexp engines. First we
-// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we
-// replace all simple value tokens with ']' characters. Third, we delete all
-// open brackets that follow a colon or comma or that begin the text. Finally,
-// we look to see that the remaining characters are only whitespace or ']' or
-// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.
-
- if (/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']').replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
-
-// In the third stage we use the eval function to compile the text into a
-// JavaScript structure. The '{' operator is subject to a syntactic ambiguity
-// in JavaScript: it can begin a block or an object literal. We wrap the text
-// in parens to eliminate the ambiguity.
-
- j = eval('(' + text + ')');
-
-// In the optional fourth stage, we recursively walk the new structure, passing
-// each name/value pair to a reviver function for possible transformation.
-
- return typeof reviver === 'function' ?
- walk({'': j}, '') : j;
- }
-
-// If the text is not JSON parseable, then a SyntaxError is thrown.
-
- throw new SyntaxError('$.jqplot.JSON.parse');
- };
- }
-})(jQuery);
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.min.js
deleted file mode 100644
index f6cc1928..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.json2.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function($){$.jqplot.JSON=window.JSON;if(!window.JSON){$.jqplot.JSON={}}function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof $.jqplot.JSON.stringify!=="function"){$.jqplot.JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("$.jqplot.JSON.stringify")}return str("",{"":value})}}if(typeof $.jqplot.JSON.parse!=="function"){$.jqplot.JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("$.jqplot.JSON.parse")}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.js
deleted file mode 100644
index 5ab51eae..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.js
+++ /dev/null
@@ -1,529 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * class: $.jqplot.LogAxisRenderer
- * A plugin for a jqPlot to render a logarithmic axis.
- *
- * To use this renderer, include the plugin in your source
- * > <script type="text/javascript" language="javascript" src="plugins/jqplot.logAxisRenderer.js"></script>
- *
- * and supply the appropriate options to your plot
- *
- * > {axes:{xaxis:{renderer:$.jqplot.LogAxisRenderer}}}
- **/
- $.jqplot.LogAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- // prop: axisDefaults
- // Default properties which will be applied directly to the series.
- //
- // Group: Properties
- //
- // Properties
- //
- // base - the logarithmic base, commonly 2, 10 or Math.E
- // tickDistribution - Deprecated. "power" distribution of ticks
- // always used. Option has no effect.
- this.axisDefaults = {
- base : 10,
- tickDistribution :'power'
- };
- };
-
- $.jqplot.LogAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.LogAxisRenderer.prototype.constructor = $.jqplot.LogAxisRenderer;
-
- $.jqplot.LogAxisRenderer.prototype.init = function(options) {
- // prop: drawBaseline
- // True to draw the axis baseline.
- this.drawBaseline = true;
- // prop: minorTicks
- // Number of ticks to add between "major" ticks.
- // Major ticks are ticks supplied by user or auto computed.
- // Minor ticks cannot be created by user.
- this.minorTicks = 'auto';
- this._scalefact = 1.0;
-
- $.extend(true, this, options);
-
- this._autoFormatString = '%d';
- this._overrideFormatString = false;
-
- for (var d in this.renderer.axisDefaults) {
- if (this[d] == null) {
- this[d] = this.renderer.axisDefaults[d];
- }
- }
-
- this.resetDataBounds();
- };
-
- $.jqplot.LogAxisRenderer.prototype.createTicks = function(plot) {
- // we're are operating on an axis here
- var ticks = this._ticks;
- var userTicks = this.ticks;
- var name = this.name;
- var db = this._dataBounds;
- var dim = (this.name.charAt(0) === 'x') ? this._plotDimensions.width : this._plotDimensions.height;
- var interval;
- var min, max;
- var pos1, pos2;
- var tt, i;
-
- var threshold = 30;
- // For some reason scalefactor is screwing up ticks.
- this._scalefact = (Math.max(dim, threshold+1) - threshold)/300;
-
- // if we already have ticks, use them.
- // ticks must be in order of increasing value.
- if (userTicks.length) {
- // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
- for (i=0; i<userTicks.length; i++){
- var ut = userTicks[i];
- var t = new this.tickRenderer(this.tickOptions);
- if (ut.constructor == Array) {
- t.value = ut[0];
- t.label = ut[1];
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(ut[0], this.name);
- this._ticks.push(t);
- }
-
- else if ($.isPlainObject(ut)) {
- $.extend(true, t, ut);
- t.axis = this.name;
- this._ticks.push(t);
- }
-
- else {
- t.value = ut;
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(ut, this.name);
- this._ticks.push(t);
- }
- }
- this.numberTicks = userTicks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this.numberTicks-1].value;
- }
-
- // we don't have any ticks yet, let's make some!
- else if (this.min == null && this.max == null) {
- min = db.min * (2 - this.padMin);
- max = db.max * this.padMax;
-
- // if min and max are same, space them out a bit
- if (min == max) {
- var adj = 0.05;
- min = min*(1-adj);
- max = max*(1+adj);
- }
-
- // perform some checks
- if (this.min != null && this.min <= 0) {
- throw('log axis minimum must be greater than 0');
- }
- if (this.max != null && this.max <= 0) {
- throw('log axis maximum must be greater than 0');
- }
-
- function findCeil (val) {
- var order = Math.pow(10, Math.floor(Math.log(val)/Math.LN10));
- return Math.ceil(val/order) * order;
- }
-
- function findFloor(val) {
- var order = Math.pow(10, Math.floor(Math.log(val)/Math.LN10));
- return Math.floor(val/order) * order;
- }
-
- // var range = max - min;
- var rmin, rmax;
-
- // for power distribution, open up range to get a nice power of axis.renderer.base.
- // power distribution won't respect the user's min/max settings.
- rmin = Math.pow(this.base, Math.floor(Math.log(min)/Math.log(this.base)));
- rmax = Math.pow(this.base, Math.ceil(Math.log(max)/Math.log(this.base)));
-
- // // if min and max are same, space them out a bit
- // if (rmin === rmax) {
- // var adj = 0.05;
- // rmin = rmin*(1-adj);
- // rmax = rmax*(1+adj);
- // }
-
- var order = Math.round(Math.log(rmin)/Math.LN10);
-
- if (this.tickOptions == null || !this.tickOptions.formatString) {
- this._overrideFormatString = true;
- }
-
- this.min = rmin;
- this.max = rmax;
- var range = this.max - this.min;
-
- var minorTicks = (this.minorTicks === 'auto') ? 0 : this.minorTicks;
- var numberTicks;
- if (this.numberTicks == null){
- if (dim > 140) {
- numberTicks = Math.round(Math.log(this.max/this.min)/Math.log(this.base) + 1);
- if (numberTicks < 2) {
- numberTicks = 2;
- }
- if (minorTicks === 0) {
- var temp = dim/(numberTicks - 1);
- if (temp < 100) {
- minorTicks = 0;
- }
- else if (temp < 190) {
- minorTicks = 1;
- }
- else if (temp < 250) {
- minorTicks = 3;
- }
- else if (temp < 600) {
- minorTicks = 4;
- }
- else {
- minorTicks = 9;
- }
- }
- }
- else {
- numberTicks = 2;
- if (minorTicks === 0) {
- minorTicks = 1;
- }
- minorTicks = 0;
- }
- }
- else {
- numberTicks = this.numberTicks;
- }
-
- if (order >= 0 && minorTicks !== 3) {
- this._autoFormatString = '%d';
- }
- // Adjust format string for case with 3 ticks where we'll have like 1, 2.5, 5, 7.5, 10
- else if (order <= 0 && minorTicks === 3) {
- var temp = -(order - 1);
- this._autoFormatString = '%.'+ Math.abs(order-1) + 'f';
- }
-
- // Adjust format string for values less than 1.
- else if (order < 0) {
- var temp = -order;
- this._autoFormatString = '%.'+ Math.abs(order) + 'f';
- }
-
- else {
- this._autoFormatString = '%d';
- }
-
- var to, t, val, tt1, spread, interval;
- for (var i=0; i<numberTicks; i++){
- tt = Math.pow(this.base, i - numberTicks + 1) * this.max;
-
- t = new this.tickRenderer(this.tickOptions);
-
- if (this._overrideFormatString) {
- t.formatString = this._autoFormatString;
- }
-
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(tt, this.name);
- this._ticks.push(t);
-
- if (minorTicks && i<numberTicks-1) {
- tt1 = Math.pow(this.base, i - numberTicks + 2) * this.max;
- spread = tt1 - tt;
- interval = tt1 / (minorTicks+1);
- for (var j=minorTicks-1; j>=0; j--) {
- val = tt1-interval*(j+1);
- t = new this.tickRenderer(this.tickOptions);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(val, this.name);
- this._ticks.push(t);
- }
- }
- }
- }
-
- // min and max are set as would be the case with zooming
- else if (this.min != null && this.max != null) {
- var opts = $.extend(true, {}, this.tickOptions, {name: this.name, value: null});
- var nt, ti;
- // don't have an interval yet, pick one that gives the most
- // "round" ticks we can get.
- if (this.numberTicks == null && this.tickInterval == null) {
- // var threshold = 30;
- var tdim = Math.max(dim, threshold+1);
- var nttarget = Math.ceil((tdim-threshold)/35 + 1);
-
- var ret = $.jqplot.LinearTickGenerator.bestConstrainedInterval(this.min, this.max, nttarget);
-
- this._autoFormatString = ret[3];
- nt = ret[2];
- ti = ret[4];
-
- for (var i=0; i<nt; i++) {
- opts.value = this.min + i * ti;
- t = new this.tickRenderer(opts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- this._ticks.push(t);
- }
- }
-
- // for loose zoom, number ticks and interval are also set.
- else if (this.numberTicks != null && this.tickInterval != null) {
- nt = this.numberTicks;
- for (var i=0; i<nt; i++) {
- opts.value = this.min + i * this.tickInterval;
- t = new this.tickRenderer(opts);
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- t.formatString = this._autoFormatString;
- }
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- this._ticks.push(t);
- }
- }
- }
- };
-
- $.jqplot.LogAxisRenderer.prototype.pack = function(pos, offsets) {
- var lb = parseInt(this.base, 10);
- var ticks = this._ticks;
- var trans = function (v) { return Math.log(v)/Math.log(lb); };
- var invtrans = function (v) { return Math.pow(Math.E, (Math.log(lb)*v)); };
- var max = trans(this.max);
- var min = trans(this.min);
- var offmax = offsets.max;
- var offmin = offsets.min;
- var lshow = (this._label == null) ? false : this._label.show;
-
- for (var p in pos) {
- this._elem.css(p, pos[p]);
- }
-
- this._offsets = offsets;
- // pixellength will be + for x axes and - for y axes becasue pixels always measured from top left.
- var pixellength = offmax - offmin;
- var unitlength = max - min;
-
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
- this.p2u = function(p){
- return invtrans((p - offmin) * unitlength / pixellength + min);
- };
-
- this.u2p = function(u){
- return (trans(u) - min) * pixellength / unitlength + offmin;
- };
-
- if (this.name == 'xaxis' || this.name == 'x2axis'){
- this.series_u2p = function(u){
- return (trans(u) - min) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return invtrans(p * unitlength / pixellength + min);
- };
- }
- // yaxis is max at top of canvas.
- else {
- this.series_u2p = function(u){
- return (trans(u) - max) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return invtrans(p * unitlength / pixellength + max);
- };
- }
-
- if (this.show) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
-
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- if (t.angle < 0) {
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- }
- // position at start
- else {
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- }
- break;
- case 'end':
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- case 'start':
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- break;
- case 'middle':
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- default:
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- }
- }
- else {
- shim = -t.getWidth()/2;
- }
- // var shim = t.getWidth()/2;
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('left', val);
- t.pack();
- }
- }
- if (lshow) {
- var w = this._label._elem.outerWidth(true);
- this._label._elem.css('left', offmin + pixellength/2 - w/2 + 'px');
- if (this.name == 'xaxis') {
- this._label._elem.css('bottom', '0px');
- }
- else {
- this._label._elem.css('top', '0px');
- }
- this._label.pack();
- }
- }
- else {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- case 'end':
- if (t.angle < 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'start':
- if (t.angle > 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'middle':
- // if (t.angle > 0) {
- // shim = -t.getHeight()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- // }
- // else {
- // shim = -t.getHeight()/2 - t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- // }
- shim = -t.getHeight()/2;
- break;
- default:
- shim = -t.getHeight()/2;
- break;
- }
- }
- else {
- shim = -t.getHeight()/2;
- }
-
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('top', val);
- t.pack();
- }
- }
- if (lshow) {
- var h = this._label._elem.outerHeight(true);
- this._label._elem.css('top', offmax - pixellength/2 - h/2 + 'px');
- if (this.name == 'yaxis') {
- this._label._elem.css('left', '0px');
- }
- else {
- this._label._elem.css('right', '0px');
- }
- this._label.pack();
- }
- }
- }
- };
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.min.js
deleted file mode 100644
index 64dc40eb..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.logAxisRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.LogAxisRenderer=function(){a.jqplot.LinearAxisRenderer.call(this);this.axisDefaults={base:10,tickDistribution:"power"}};a.jqplot.LogAxisRenderer.prototype=new a.jqplot.LinearAxisRenderer();a.jqplot.LogAxisRenderer.prototype.constructor=a.jqplot.LogAxisRenderer;a.jqplot.LogAxisRenderer.prototype.init=function(b){this.drawBaseline=true;this.minorTicks="auto";this._scalefact=1;a.extend(true,this,b);this._autoFormatString="%d";this._overrideFormatString=false;for(var c in this.renderer.axisDefaults){if(this[c]==null){this[c]=this.renderer.axisDefaults[c]}}this.resetDataBounds()};a.jqplot.LogAxisRenderer.prototype.createTicks=function(d){var G=this._ticks;var w=this.ticks;var s=this.name;var u=this._dataBounds;var b=(this.name.charAt(0)==="x")?this._plotDimensions.width:this._plotDimensions.height;var k;var N,v;var m,l;var M,K;var g=30;this._scalefact=(Math.max(b,g+1)-g)/300;if(w.length){for(K=0;K<w.length;K++){var A=w[K];var H=new this.tickRenderer(this.tickOptions);if(A.constructor==Array){H.value=A[0];H.label=A[1];if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}H.setTick(A[0],this.name);this._ticks.push(H)}else{if(a.isPlainObject(A)){a.extend(true,H,A);H.axis=this.name;this._ticks.push(H)}else{H.value=A;if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}H.setTick(A,this.name);this._ticks.push(H)}}}this.numberTicks=w.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value}else{if(this.min==null&&this.max==null){N=u.min*(2-this.padMin);v=u.max*this.padMax;if(N==v){var c=0.05;N=N*(1-c);v=v*(1+c)}if(this.min!=null&&this.min<=0){throw ("log axis minimum must be greater than 0")}if(this.max!=null&&this.max<=0){throw ("log axis maximum must be greater than 0")}function f(j){var i=Math.pow(10,Math.floor(Math.log(j)/Math.LN10));return Math.ceil(j/i)*i}function x(j){var i=Math.pow(10,Math.floor(Math.log(j)/Math.LN10));return Math.floor(j/i)*i}var F,r;F=Math.pow(this.base,Math.floor(Math.log(N)/Math.log(this.base)));r=Math.pow(this.base,Math.ceil(Math.log(v)/Math.log(this.base)));var E=Math.round(Math.log(F)/Math.LN10);if(this.tickOptions==null||!this.tickOptions.formatString){this._overrideFormatString=true}this.min=F;this.max=r;var q=this.max-this.min;var C=(this.minorTicks==="auto")?0:this.minorTicks;var h;if(this.numberTicks==null){if(b>140){h=Math.round(Math.log(this.max/this.min)/Math.log(this.base)+1);if(h<2){h=2}if(C===0){var o=b/(h-1);if(o<100){C=0}else{if(o<190){C=1}else{if(o<250){C=3}else{if(o<600){C=4}else{C=9}}}}}}else{h=2;if(C===0){C=1}C=0}}else{h=this.numberTicks}if(E>=0&&C!==3){this._autoFormatString="%d"}else{if(E<=0&&C===3){var o=-(E-1);this._autoFormatString="%."+Math.abs(E-1)+"f"}else{if(E<0){var o=-E;this._autoFormatString="%."+Math.abs(E)+"f"}else{this._autoFormatString="%d"}}}var O,H,z,p,n,k;for(var K=0;K<h;K++){M=Math.pow(this.base,K-h+1)*this.max;H=new this.tickRenderer(this.tickOptions);if(this._overrideFormatString){H.formatString=this._autoFormatString}if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}H.setTick(M,this.name);this._ticks.push(H);if(C&&K<h-1){p=Math.pow(this.base,K-h+2)*this.max;n=p-M;k=p/(C+1);for(var J=C-1;J>=0;J--){z=p-k*(J+1);H=new this.tickRenderer(this.tickOptions);if(this._overrideFormatString&&this._autoFormatString!=""){H.formatString=this._autoFormatString}if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}H.setTick(z,this.name);this._ticks.push(H)}}}}else{if(this.min!=null&&this.max!=null){var y=a.extend(true,{},this.tickOptions,{name:this.name,value:null});var I,e;if(this.numberTicks==null&&this.tickInterval==null){var D=Math.max(b,g+1);var L=Math.ceil((D-g)/35+1);var B=a.jqplot.LinearTickGenerator.bestConstrainedInterval(this.min,this.max,L);this._autoFormatString=B[3];I=B[2];e=B[4];for(var K=0;K<I;K++){y.value=this.min+K*e;H=new this.tickRenderer(y);if(this._overrideFormatString&&this._autoFormatString!=""){H.formatString=this._autoFormatString}if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}this._ticks.push(H)}}else{if(this.numberTicks!=null&&this.tickInterval!=null){I=this.numberTicks;for(var K=0;K<I;K++){y.value=this.min+K*this.tickInterval;H=new this.tickRenderer(y);if(this._overrideFormatString&&this._autoFormatString!=""){H.formatString=this._autoFormatString}if(!this.showTicks){H.showLabel=false;H.showMark=false}else{if(!this.showTickMarks){H.showMark=false}}this._ticks.push(H)}}}}}}};a.jqplot.LogAxisRenderer.prototype.pack=function(f,e){var r=parseInt(this.base,10);var y=this._ticks;var d=function(h){return Math.log(h)/Math.log(r)};var b=function(h){return Math.pow(Math.E,(Math.log(r)*h))};var u=d(this.max);var s=d(this.min);var m=e.max;var k=e.min;var o=(this._label==null)?false:this._label.show;for(var q in f){this._elem.css(q,f[q])}this._offsets=e;var g=m-k;var j=u-s;this.p2u=function(h){return b((h-k)*j/g+s)};this.u2p=function(h){return(d(h)-s)*g/j+k};if(this.name=="xaxis"||this.name=="x2axis"){this.series_u2p=function(h){return(d(h)-s)*g/j};this.series_p2u=function(h){return b(h*j/g+s)}}else{this.series_u2p=function(h){return(d(h)-u)*g/j};this.series_p2u=function(h){return b(h*j/g+u)}}if(this.show){if(this.name=="xaxis"||this.name=="x2axis"){for(var v=0;v<y.length;v++){var n=y[v];if(n.show&&n.showLabel){var c;if(n.constructor==a.jqplot.CanvasAxisTickRenderer&&n.angle){switch(n.labelPosition){case"auto":if(n.angle<0){c=-n.getWidth()+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2}else{c=-n._textRenderer.height*Math.sin(n._textRenderer.angle)/2}break;case"end":c=-n.getWidth()+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break;case"start":c=-n._textRenderer.height*Math.sin(n._textRenderer.angle)/2;break;case"middle":c=-n.getWidth()/2+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break;default:c=-n.getWidth()/2+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break}}else{c=-n.getWidth()/2}var z=this.u2p(n.value)+c+"px";n._elem.css("left",z);n.pack()}}if(o){var l=this._label._elem.outerWidth(true);this._label._elem.css("left",k+g/2-l/2+"px");if(this.name=="xaxis"){this._label._elem.css("bottom","0px")}else{this._label._elem.css("top","0px")}this._label.pack()}}else{for(var v=0;v<y.length;v++){var n=y[v];if(n.show&&n.showLabel){var c;if(n.constructor==a.jqplot.CanvasAxisTickRenderer&&n.angle){switch(n.labelPosition){case"auto":case"end":if(n.angle<0){c=-n._textRenderer.height*Math.cos(-n._textRenderer.angle)/2}else{c=-n.getHeight()+n._textRenderer.height*Math.cos(n._textRenderer.angle)/2}break;case"start":if(n.angle>0){c=-n._textRenderer.height*Math.cos(-n._textRenderer.angle)/2}else{c=-n.getHeight()+n._textRenderer.height*Math.cos(n._textRenderer.angle)/2}break;case"middle":c=-n.getHeight()/2;break;default:c=-n.getHeight()/2;break}}else{c=-n.getHeight()/2}var z=this.u2p(n.value)+c+"px";n._elem.css("top",z);n.pack()}}if(o){var x=this._label._elem.outerHeight(true);this._label._elem.css("top",m-g/2-x/2+"px");if(this.name=="yaxis"){this._label._elem.css("left","0px")}else{this._label._elem.css("right","0px")}this._label.pack()}}}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.js
deleted file mode 100644
index 74297685..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.js
+++ /dev/null
@@ -1,611 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- // class: $.jqplot.MekkoAxisRenderer
- // An axis renderer for a Mekko chart.
- // Should be used with a Mekko chart where the mekkoRenderer is used on the series.
- // Displays the Y axis as a range from 0 to 1 (0 to 100%) and the x axis with a tick
- // for each series scaled to the sum of all the y values.
- $.jqplot.MekkoAxisRenderer = function() {
- };
-
- // called with scope of axis object.
- $.jqplot.MekkoAxisRenderer.prototype.init = function(options){
- // prop: tickMode
- // How to space the ticks on the axis.
- // 'bar' will place a tick at the width of each bar.
- // This is the default for the x axis.
- // 'even' will place ticks at even intervals. This is
- // the default for x2 axis and y axis. y axis cannot be changed.
- this.tickMode;
- // prop: barLabelRenderer
- // renderer to use to draw labels under each bar.
- this.barLabelRenderer = $.jqplot.AxisLabelRenderer;
- // prop: barLabels
- // array of labels to put under each bar.
- this.barLabels = this.barLabels || [];
- // prop: barLabelOptions
- // options object to pass to the bar label renderer.
- this.barLabelOptions = {};
- this.tickOptions = $.extend(true, {showGridline:false}, this.tickOptions);
- this._barLabels = [];
- $.extend(true, this, options);
- if (this.name == 'yaxis') {
- this.tickOptions.formatString = this.tickOptions.formatString || "%d\%";
- }
- var db = this._dataBounds;
- db.min = 0;
- // for y axes, scale always go from 0 to 1 (0 to 100%)
- if (this.name == 'yaxis' || this.name == 'y2axis') {
- db.max = 100;
- this.tickMode = 'even';
- }
- // For x axes, scale goes from 0 to sum of all y values.
- else if (this.name == 'xaxis'){
- this.tickMode = (this.tickMode == null) ? 'bar' : this.tickMode;
- for (var i=0; i<this._series.length; i++) {
- db.max += this._series[i]._sumy;
- }
- }
- else if (this.name == 'x2axis'){
- this.tickMode = (this.tickMode == null) ? 'even' : this.tickMode;
- for (var i=0; i<this._series.length; i++) {
- db.max += this._series[i]._sumy;
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.MekkoAxisRenderer.prototype.draw = function(ctx, plot) {
- if (this.show) {
- // populate the axis label and value properties.
- // createTicks is a method on the renderer, but
- // call it within the scope of the axis.
- this.renderer.createTicks.call(this);
- // fill a div with axes labels in the right direction.
- // Need to pregenerate each axis to get it's bounds and
- // position it and the labels correctly on the plot.
- var dim=0;
- var temp;
-
- var elem = document.createElement('div');
- this._elem = $(elem);
- this._elem.addClass('jqplot-axis jqplot-'+this.name);
- this._elem.css('position', 'absolute');
- elem = null;
-
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- this._elem.width(this._plotDimensions.width);
- }
- else {
- this._elem.height(this._plotDimensions.height);
- }
-
- // draw the axis label
- // create a _label object.
- this.labelOptions.axis = this.name;
- this._label = new this.labelRenderer(this.labelOptions);
- if (this._label.show) {
- this._elem.append(this._label.draw(ctx));
- }
-
- var t, tick, elem;
- if (this.showTicks) {
- t = this._ticks;
- for (var i=0; i<t.length; i++) {
- tick = t[i];
- if (tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- this._elem.append(tick.draw(ctx));
- }
- }
- }
-
- // draw the series labels
- for (i=0; i<this.barLabels.length; i++) {
- this.barLabelOptions.axis = this.name;
- this.barLabelOptions.label = this.barLabels[i];
- this._barLabels.push(new this.barLabelRenderer(this.barLabelOptions));
- if (this.tickMode != 'bar') {
- this._barLabels[i].show = false;
- }
- if (this._barLabels[i].show) {
- var elem = this._barLabels[i].draw(ctx, plot);
- elem.removeClass('jqplot-'+this.name+'-label');
- elem.addClass('jqplot-'+this.name+'-tick');
- elem.addClass('jqplot-mekko-barLabel');
- elem.appendTo(this._elem);
- elem = null;
- }
- }
-
- }
- return this._elem;
- };
-
- // called with scope of an axis
- $.jqplot.MekkoAxisRenderer.prototype.reset = function() {
- this.min = this._min;
- this.max = this._max;
- this.tickInterval = this._tickInterval;
- this.numberTicks = this._numberTicks;
- // this._ticks = this.__ticks;
- };
-
- // called with scope of axis
- $.jqplot.MekkoAxisRenderer.prototype.set = function() {
- var dim = 0;
- var temp;
- var w = 0;
- var h = 0;
- var lshow = (this._label == null) ? false : this._label.show;
- if (this.show && this.showTicks) {
- var t = this._ticks;
- for (var i=0; i<t.length; i++) {
- var tick = t[i];
- if (tick.showLabel && (!tick.isMinorTick || this.showMinorTicks)) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- temp = tick._elem.outerHeight(true);
- }
- else {
- temp = tick._elem.outerWidth(true);
- }
- if (temp > dim) {
- dim = temp;
- }
- }
- }
-
- if (lshow) {
- w = this._label._elem.outerWidth(true);
- h = this._label._elem.outerHeight(true);
- }
- if (this.name == 'xaxis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', bottom:'0px'});
- }
- else if (this.name == 'x2axis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', top:'0px'});
- }
- else if (this.name == 'yaxis') {
- dim = dim + w;
- this._elem.css({'width':dim+'px', left:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- else {
- dim = dim + w;
- this._elem.css({'width':dim+'px', right:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.MekkoAxisRenderer.prototype.createTicks = function() {
- // we're are operating on an axis here
- var ticks = this._ticks;
- var userTicks = this.ticks;
- var name = this.name;
- // databounds were set on axis initialization.
- var db = this._dataBounds;
- var dim, interval;
- var min, max;
- var pos1, pos2;
- var t, tt, i, j;
-
- // if we already have ticks, use them.
- // ticks must be in order of increasing value.
-
- if (userTicks.length) {
- // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
- for (i=0; i<userTicks.length; i++){
- var ut = userTicks[i];
- var t = new this.tickRenderer(this.tickOptions);
- if (ut.constructor == Array) {
- t.value = ut[0];
- t.label = ut[1];
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(ut[0], this.name);
- this._ticks.push(t);
- }
-
- else {
- t.value = ut;
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(ut, this.name);
- this._ticks.push(t);
- }
- }
- this.numberTicks = userTicks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this.numberTicks-1].value;
- this.tickInterval = (this.max - this.min) / (this.numberTicks - 1);
- }
-
- // we don't have any ticks yet, let's make some!
- else {
- if (name == 'xaxis' || name == 'x2axis') {
- dim = this._plotDimensions.width;
- }
- else {
- dim = this._plotDimensions.height;
- }
-
- // if min, max and number of ticks specified, user can't specify interval.
- if (this.min != null && this.max != null && this.numberTicks != null) {
- this.tickInterval = null;
- }
-
- min = (this.min != null) ? this.min : db.min;
- max = (this.max != null) ? this.max : db.max;
-
- // if min and max are same, space them out a bit.+
- if (min == max) {
- var adj = 0.05;
- if (min > 0) {
- adj = Math.max(Math.log(min)/Math.LN10, 0.05);
- }
- min -= adj;
- max += adj;
- }
-
- var range = max - min;
- var rmin, rmax;
- var temp, prev, curr;
- var ynumticks = [3,5,6,11,21];
-
- // yaxis divide ticks in nice intervals from 0 to 1.
- if (this.name == 'yaxis' || this.name == 'y2axis') {
- this.min = 0;
- this.max = 100;
- // user didn't specify number of ticks.
- if (!this.numberTicks){
- if (this.tickInterval) {
- this.numberTicks = 3 + Math.ceil(range / this.tickInterval);
- }
- else {
- temp = 2 + Math.ceil((dim-(this.tickSpacing-1))/this.tickSpacing);
- for (i=0; i<ynumticks.length; i++) {
- curr = temp/ynumticks[i];
- if (curr == 1) {
- this.numberTicks = ynumticks[i];
- break;
- }
- else if (curr > 1) {
- prev = curr;
- continue;
- }
- else if (curr < 1) {
- // was prev or is curr closer to one?
- if (Math.abs(prev - 1) < Math.abs(curr - 1)) {
- this.numberTicks = ynumticks[i-1];
- break;
- }
- else {
- this.numberTicks = ynumticks[i];
- break;
- }
- }
- else if (i == ynumticks.length -1) {
- this.numberTicks = ynumticks[i];
- }
- }
- this.tickInterval = range / (this.numberTicks - 1);
- }
- }
-
- // user did specify number of ticks.
- else {
- this.tickInterval = range / (this.numberTicks - 1);
- }
-
- for (var i=0; i<this.numberTicks; i++){
- tt = this.min + i * this.tickInterval;
- t = new this.tickRenderer(this.tickOptions);
- // var t = new $.jqplot.AxisTickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(tt, this.name);
- this._ticks.push(t);
- }
- }
-
- // for x axes, have number ot ticks equal to number of series and ticks placed
- // at sum of y values for each series.
- else if (this.tickMode == 'bar') {
- this.min = 0;
- this.numberTicks = this._series.length + 1;
- t = new this.tickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(0, this.name);
- this._ticks.push(t);
-
- temp = 0;
-
- for (i=1; i<this.numberTicks; i++){
- temp += this._series[i-1]._sumy;
- t = new this.tickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(temp, this.name);
- this._ticks.push(t);
- }
- this.max = this.max || temp;
-
- // if user specified a max and it is greater than sum, add a tick
- if (this.max > temp) {
- t = new this.tickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(this.max, this.name);
- this._ticks.push(t);
-
- }
- }
-
- else if (this.tickMode == 'even') {
- this.min = 0;
- this.max = this.max || db.max;
- // get a desired number of ticks
- var nt = 2 + Math.ceil((dim-(this.tickSpacing-1))/this.tickSpacing);
- range = this.max - this.min;
- this.numberTicks = nt;
- this.tickInterval = range / (this.numberTicks - 1);
-
- for (i=0; i<this.numberTicks; i++){
- tt = this.min + i * this.tickInterval;
- t = new this.tickRenderer(this.tickOptions);
- // var t = new $.jqplot.AxisTickRenderer(this.tickOptions);
- if (!this.showTicks) {
- t.showLabel = false;
- t.showMark = false;
- }
- else if (!this.showTickMarks) {
- t.showMark = false;
- }
- t.setTick(tt, this.name);
- this._ticks.push(t);
- }
-
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.MekkoAxisRenderer.prototype.pack = function(pos, offsets) {
- var ticks = this._ticks;
- var max = this.max;
- var min = this.min;
- var offmax = offsets.max;
- var offmin = offsets.min;
- var lshow = (this._label == null) ? false : this._label.show;
-
- for (var p in pos) {
- this._elem.css(p, pos[p]);
- }
-
- this._offsets = offsets;
- // pixellength will be + for x axes and - for y axes becasue pixels always measured from top left.
- var pixellength = offmax - offmin;
- var unitlength = max - min;
-
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- this.u2p = function(u){
- return (u - min) * pixellength / unitlength + offmin;
- };
-
- if (this.name == 'xaxis' || this.name == 'x2axis'){
- this.series_u2p = function(u){
- return (u - min) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- else {
- this.series_u2p = function(u){
- return (u - max) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
-
- if (this.show) {
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
-
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'xaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- if (temp * t.angle < 0) {
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- }
- // position at start
- else {
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- }
- break;
- case 'end':
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- case 'start':
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- break;
- case 'middle':
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- default:
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- }
- }
- else {
- shim = -t.getWidth()/2;
- }
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('left', val);
- t.pack();
- }
- }
- var w;
- if (lshow) {
- w = this._label._elem.outerWidth(true);
- this._label._elem.css('left', offmin + pixellength/2 - w/2 + 'px');
- if (this.name == 'xaxis') {
- this._label._elem.css('bottom', '0px');
- }
- else {
- this._label._elem.css('top', '0px');
- }
- this._label.pack();
- }
- // now show the labels under the bars.
- var b, l, r;
- for (var i=0; i<this.barLabels.length; i++) {
- b = this._barLabels[i];
- if (b.show) {
- w = b.getWidth();
- l = this._ticks[i].getLeft() + this._ticks[i].getWidth();
- r = this._ticks[i+1].getLeft();
- b._elem.css('left', (r+l-w)/2+'px');
- b._elem.css('top', this._ticks[i]._elem.css('top'));
- b.pack();
- }
- }
- }
- else {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'yaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- case 'end':
- if (temp * t.angle < 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'start':
- if (t.angle > 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'middle':
- shim = -t.getHeight()/2;
- break;
- default:
- shim = -t.getHeight()/2;
- break;
- }
- }
- else {
- shim = -t.getHeight()/2;
- }
-
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('top', val);
- t.pack();
- }
- }
- if (lshow) {
- var h = this._label._elem.outerHeight(true);
- this._label._elem.css('top', offmax - pixellength/2 - h/2 + 'px');
- if (this.name == 'yaxis') {
- this._label._elem.css('left', '0px');
- }
- else {
- this._label._elem.css('right', '0px');
- }
- this._label.pack();
- }
- }
- }
- };
-})(jQuery);
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.min.js
deleted file mode 100644
index c3bb45bd..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoAxisRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.MekkoAxisRenderer=function(){};a.jqplot.MekkoAxisRenderer.prototype.init=function(c){this.tickMode;this.barLabelRenderer=a.jqplot.AxisLabelRenderer;this.barLabels=this.barLabels||[];this.barLabelOptions={};this.tickOptions=a.extend(true,{showGridline:false},this.tickOptions);this._barLabels=[];a.extend(true,this,c);if(this.name=="yaxis"){this.tickOptions.formatString=this.tickOptions.formatString||"%d%"}var b=this._dataBounds;b.min=0;if(this.name=="yaxis"||this.name=="y2axis"){b.max=100;this.tickMode="even"}else{if(this.name=="xaxis"){this.tickMode=(this.tickMode==null)?"bar":this.tickMode;for(var d=0;d<this._series.length;d++){b.max+=this._series[d]._sumy}}else{if(this.name=="x2axis"){this.tickMode=(this.tickMode==null)?"even":this.tickMode;for(var d=0;d<this._series.length;d++){b.max+=this._series[d]._sumy}}}}};a.jqplot.MekkoAxisRenderer.prototype.draw=function(b,j){if(this.show){this.renderer.createTicks.call(this);var h=0;var c;var g=document.createElement("div");this._elem=a(g);this._elem.addClass("jqplot-axis jqplot-"+this.name);this._elem.css("position","absolute");g=null;if(this.name=="xaxis"||this.name=="x2axis"){this._elem.width(this._plotDimensions.width)}else{this._elem.height(this._plotDimensions.height)}this.labelOptions.axis=this.name;this._label=new this.labelRenderer(this.labelOptions);if(this._label.show){this._elem.append(this._label.draw(b))}var f,e,g;if(this.showTicks){f=this._ticks;for(var d=0;d<f.length;d++){e=f[d];if(e.showLabel&&(!e.isMinorTick||this.showMinorTicks)){this._elem.append(e.draw(b))}}}for(d=0;d<this.barLabels.length;d++){this.barLabelOptions.axis=this.name;this.barLabelOptions.label=this.barLabels[d];this._barLabels.push(new this.barLabelRenderer(this.barLabelOptions));if(this.tickMode!="bar"){this._barLabels[d].show=false}if(this._barLabels[d].show){var g=this._barLabels[d].draw(b,j);g.removeClass("jqplot-"+this.name+"-label");g.addClass("jqplot-"+this.name+"-tick");g.addClass("jqplot-mekko-barLabel");g.appendTo(this._elem);g=null}}}return this._elem};a.jqplot.MekkoAxisRenderer.prototype.reset=function(){this.min=this._min;this.max=this._max;this.tickInterval=this._tickInterval;this.numberTicks=this._numberTicks};a.jqplot.MekkoAxisRenderer.prototype.set=function(){var k=0;var d;var c=0;var j=0;var b=(this._label==null)?false:this._label.show;if(this.show&&this.showTicks){var g=this._ticks;for(var f=0;f<g.length;f++){var e=g[f];if(e.showLabel&&(!e.isMinorTick||this.showMinorTicks)){if(this.name=="xaxis"||this.name=="x2axis"){d=e._elem.outerHeight(true)}else{d=e._elem.outerWidth(true)}if(d>k){k=d}}}if(b){c=this._label._elem.outerWidth(true);j=this._label._elem.outerHeight(true)}if(this.name=="xaxis"){k=k+j;this._elem.css({height:k+"px",left:"0px",bottom:"0px"})}else{if(this.name=="x2axis"){k=k+j;this._elem.css({height:k+"px",left:"0px",top:"0px"})}else{if(this.name=="yaxis"){k=k+c;this._elem.css({width:k+"px",left:"0px",top:"0px"});if(b&&this._label.constructor==a.jqplot.AxisLabelRenderer){this._label._elem.css("width",c+"px")}}else{k=k+c;this._elem.css({width:k+"px",right:"0px",top:"0px"});if(b&&this._label.constructor==a.jqplot.AxisLabelRenderer){this._label._elem.css("width",c+"px")}}}}}};a.jqplot.MekkoAxisRenderer.prototype.createTicks=function(){var z=this._ticks;var w=this.ticks;var B=this.name;var y=this._dataBounds;var p,x;var n,r;var d,c;var h,b,s,q;if(w.length){for(s=0;s<w.length;s++){var e=w[s];var h=new this.tickRenderer(this.tickOptions);if(e.constructor==Array){h.value=e[0];h.label=e[1];if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(e[0],this.name);this._ticks.push(h)}else{h.value=e;if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(e,this.name);this._ticks.push(h)}}this.numberTicks=w.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value;this.tickInterval=(this.max-this.min)/(this.numberTicks-1)}else{if(B=="xaxis"||B=="x2axis"){p=this._plotDimensions.width}else{p=this._plotDimensions.height}if(this.min!=null&&this.max!=null&&this.numberTicks!=null){this.tickInterval=null}n=(this.min!=null)?this.min:y.min;r=(this.max!=null)?this.max:y.max;if(n==r){var g=0.05;if(n>0){g=Math.max(Math.log(n)/Math.LN10,0.05)}n-=g;r+=g}var k=r-n;var m,o;var v,l,u;var f=[3,5,6,11,21];if(this.name=="yaxis"||this.name=="y2axis"){this.min=0;this.max=100;if(!this.numberTicks){if(this.tickInterval){this.numberTicks=3+Math.ceil(k/this.tickInterval)}else{v=2+Math.ceil((p-(this.tickSpacing-1))/this.tickSpacing);for(s=0;s<f.length;s++){u=v/f[s];if(u==1){this.numberTicks=f[s];break}else{if(u>1){l=u;continue}else{if(u<1){if(Math.abs(l-1)<Math.abs(u-1)){this.numberTicks=f[s-1];break}else{this.numberTicks=f[s];break}}else{if(s==f.length-1){this.numberTicks=f[s]}}}}}this.tickInterval=k/(this.numberTicks-1)}}else{this.tickInterval=k/(this.numberTicks-1)}for(var s=0;s<this.numberTicks;s++){b=this.min+s*this.tickInterval;h=new this.tickRenderer(this.tickOptions);if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(b,this.name);this._ticks.push(h)}}else{if(this.tickMode=="bar"){this.min=0;this.numberTicks=this._series.length+1;h=new this.tickRenderer(this.tickOptions);if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(0,this.name);this._ticks.push(h);v=0;for(s=1;s<this.numberTicks;s++){v+=this._series[s-1]._sumy;h=new this.tickRenderer(this.tickOptions);if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(v,this.name);this._ticks.push(h)}this.max=this.max||v;if(this.max>v){h=new this.tickRenderer(this.tickOptions);if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(this.max,this.name);this._ticks.push(h)}}else{if(this.tickMode=="even"){this.min=0;this.max=this.max||y.max;var A=2+Math.ceil((p-(this.tickSpacing-1))/this.tickSpacing);k=this.max-this.min;this.numberTicks=A;this.tickInterval=k/(this.numberTicks-1);for(s=0;s<this.numberTicks;s++){b=this.min+s*this.tickInterval;h=new this.tickRenderer(this.tickOptions);if(!this.showTicks){h.showLabel=false;h.showMark=false}else{if(!this.showTickMarks){h.showMark=false}}h.setTick(b,this.name);this._ticks.push(h)}}}}}};a.jqplot.MekkoAxisRenderer.prototype.pack=function(e,d){var C=this._ticks;var x=this.max;var v=this.min;var m=d.max;var j=d.min;var o=(this._label==null)?false:this._label.show;for(var s in e){this._elem.css(s,e[s])}this._offsets=d;var f=m-j;var g=x-v;this.p2u=function(b){return(b-j)*g/f+v};this.u2p=function(b){return(b-v)*f/g+j};if(this.name=="xaxis"||this.name=="x2axis"){this.series_u2p=function(b){return(b-v)*f/g};this.series_p2u=function(b){return b*g/f+v}}else{this.series_u2p=function(b){return(b-x)*f/g};this.series_p2u=function(b){return b*g/f+x}}if(this.show){if(this.name=="xaxis"||this.name=="x2axis"){for(var y=0;y<C.length;y++){var n=C[y];if(n.show&&n.showLabel){var c;if(n.constructor==a.jqplot.CanvasAxisTickRenderer&&n.angle){var A=(this.name=="xaxis")?1:-1;switch(n.labelPosition){case"auto":if(A*n.angle<0){c=-n.getWidth()+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2}else{c=-n._textRenderer.height*Math.sin(n._textRenderer.angle)/2}break;case"end":c=-n.getWidth()+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break;case"start":c=-n._textRenderer.height*Math.sin(n._textRenderer.angle)/2;break;case"middle":c=-n.getWidth()/2+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break;default:c=-n.getWidth()/2+n._textRenderer.height*Math.sin(-n._textRenderer.angle)/2;break}}else{c=-n.getWidth()/2}var D=this.u2p(n.value)+c+"px";n._elem.css("left",D);n.pack()}}var k;if(o){k=this._label._elem.outerWidth(true);this._label._elem.css("left",j+f/2-k/2+"px");if(this.name=="xaxis"){this._label._elem.css("bottom","0px")}else{this._label._elem.css("top","0px")}this._label.pack()}var B,u,q;for(var y=0;y<this.barLabels.length;y++){B=this._barLabels[y];if(B.show){k=B.getWidth();u=this._ticks[y].getLeft()+this._ticks[y].getWidth();q=this._ticks[y+1].getLeft();B._elem.css("left",(q+u-k)/2+"px");B._elem.css("top",this._ticks[y]._elem.css("top"));B.pack()}}}else{for(var y=0;y<C.length;y++){var n=C[y];if(n.show&&n.showLabel){var c;if(n.constructor==a.jqplot.CanvasAxisTickRenderer&&n.angle){var A=(this.name=="yaxis")?1:-1;switch(n.labelPosition){case"auto":case"end":if(A*n.angle<0){c=-n._textRenderer.height*Math.cos(-n._textRenderer.angle)/2}else{c=-n.getHeight()+n._textRenderer.height*Math.cos(n._textRenderer.angle)/2}break;case"start":if(n.angle>0){c=-n._textRenderer.height*Math.cos(-n._textRenderer.angle)/2}else{c=-n.getHeight()+n._textRenderer.height*Math.cos(n._textRenderer.angle)/2}break;case"middle":c=-n.getHeight()/2;break;default:c=-n.getHeight()/2;break}}else{c=-n.getHeight()/2}var D=this.u2p(n.value)+c+"px";n._elem.css("top",D);n.pack()}}if(o){var z=this._label._elem.outerHeight(true);this._label._elem.css("top",m-f/2-z/2+"px");if(this.name=="yaxis"){this._label._elem.css("left","0px")}else{this._label._elem.css("right","0px")}this._label.pack()}}}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.js
deleted file mode 100644
index 85d661d0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.js
+++ /dev/null
@@ -1,437 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.MekkoRenderer
- * Draws a Mekko style chart which shows 3 dimensional data on a 2 dimensional graph.
- * the <$.jqplot.MekkoAxisRenderer> should be used with mekko charts. The mekko renderer
- * overrides the default legend renderer with it's own $.jqplot.MekkoLegendRenderer
- * which allows more flexibility to specify number of rows and columns in the legend.
- *
- * Data is specified per bar in the chart. You can specify data as an array of y values, or as
- * an array of [label, value] pairs. Note that labels are used only on the first series.
- * Labels on subsequent series are ignored:
- *
- * > bar1 = [['shirts', 8],['hats', 14],['shoes', 6],['gloves', 16],['dolls', 12]];
- * > bar2 = [15,6,9,13,6];
- * > bar3 = [['grumpy',4],['sneezy',2],['happy',7],['sleepy',9],['doc',7]];
- *
- * If you want to place labels for each bar under the axis, you use the barLabels option on
- * the axes. The bar labels can be styled with the ".jqplot-mekko-barLabel" css class.
- *
- * > barLabels = ['Mickey Mouse', 'Donald Duck', 'Goofy'];
- * > axes:{xaxis:{barLabels:barLabels}}
- *
- */
-
-
- $.jqplot.MekkoRenderer = function(){
- this.shapeRenderer = new $.jqplot.ShapeRenderer();
- // prop: borderColor
- // color of the borders between areas on the chart
- this.borderColor = null;
- // prop: showBorders
- // True to draw borders lines between areas on the chart.
- // False will draw borders lines with the same color as the area.
- this.showBorders = true;
- };
-
- // called with scope of series.
- $.jqplot.MekkoRenderer.prototype.init = function(options, plot) {
- this.fill = false;
- this.fillRect = true;
- this.strokeRect = true;
- this.shadow = false;
- // width of bar on x axis.
- this._xwidth = 0;
- this._xstart = 0;
- $.extend(true, this.renderer, options);
- // set the shape renderer options
- var opts = {lineJoin:'miter', lineCap:'butt', isarc:false, fillRect:this.fillRect, strokeRect:this.strokeRect};
- this.renderer.shapeRenderer.init(opts);
- plot.axes.x2axis._series.push(this);
- this._type = 'mekko';
- };
-
- // Method: setGridData
- // converts the user data values to grid coordinates and stores them
- // in the gridData array. Will convert user data into appropriate
- // rectangles.
- // Called with scope of a series.
- $.jqplot.MekkoRenderer.prototype.setGridData = function(plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var data = this._plotData;
- this.gridData = [];
- // figure out width on x axis.
- // this._xwidth = this._sumy / plot._sumy * this.canvas.getWidth();
- this._xwidth = xp(this._sumy) - xp(0);
- if (this.index>0) {
- this._xstart = plot.series[this.index-1]._xstart + plot.series[this.index-1]._xwidth;
- }
- var totheight = this.canvas.getHeight();
- var sumy = 0;
- var cury;
- var curheight;
- for (var i=0; i<data.length; i++) {
- if (data[i] != null) {
- sumy += data[i][1];
- cury = totheight - (sumy / this._sumy * totheight);
- curheight = data[i][1] / this._sumy * totheight;
- this.gridData.push([this._xstart, cury, this._xwidth, curheight]);
- }
- }
- };
-
- // Method: makeGridData
- // converts any arbitrary data values to grid coordinates and
- // returns them. This method exists so that plugins can use a series'
- // linerenderer to generate grid data points without overwriting the
- // grid data associated with that series.
- // Called with scope of a series.
- $.jqplot.MekkoRenderer.prototype.makeGridData = function(data, plot) {
- // recalculate the grid data
- // figure out width on x axis.
- var xp = this._xaxis.series_u2p;
- var totheight = this.canvas.getHeight();
- var sumy = 0;
- var cury;
- var curheight;
- var gd = [];
- for (var i=0; i<data.length; i++) {
- if (data[i] != null) {
- sumy += data[i][1];
- cury = totheight - (sumy / this._sumy * totheight);
- curheight = data[i][1] / this._sumy * totheight;
- gd.push([this._xstart, cury, this._xwidth, curheight]);
- }
- }
- return gd;
- };
-
-
- // called within scope of series.
- $.jqplot.MekkoRenderer.prototype.draw = function(ctx, gd, options) {
- var i;
- var opts = (options != undefined) ? options : {};
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var colorGenerator = new $.jqplot.ColorGenerator(this.seriesColors);
- ctx.save();
- if (gd.length) {
- if (showLine) {
- for (i=0; i<gd.length; i++){
- opts.fillStyle = colorGenerator.next();
- if (this.renderer.showBorders) {
- opts.strokeStyle = this.renderer.borderColor;
- }
- else {
- opts.strokeStyle = opts.fillStyle;
- }
- this.renderer.shapeRenderer.draw(ctx, gd[i], opts);
- }
- }
- }
-
- ctx.restore();
- };
-
- $.jqplot.MekkoRenderer.prototype.drawShadow = function(ctx, gd, options) {
- // This is a no-op, no shadows on mekko charts.
- };
-
- /**
- * Class: $.jqplot.MekkoLegendRenderer
- * Legend renderer used by mekko charts with options for
- * controlling number or rows and columns as well as placement
- * outside of plot area.
- *
- */
- $.jqplot.MekkoLegendRenderer = function(){
- //
- };
-
- $.jqplot.MekkoLegendRenderer.prototype.init = function(options) {
- // prop: numberRows
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // prop: numberColumns
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- // this will override the placement option on the Legend object
- this.placement = "outside";
- $.extend(true, this, options);
- };
-
- // called with scope of legend
- $.jqplot.MekkoLegendRenderer.prototype.draw = function() {
- var legend = this;
- if (this.show) {
- var series = this._series;
- var ss = 'position:absolute;';
- ss += (this.background) ? 'background:'+this.background+';' : '';
- ss += (this.border) ? 'border:'+this.border+';' : '';
- ss += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- ss += (this.fontFamily) ? 'font-family:'+this.fontFamily+';' : '';
- ss += (this.textColor) ? 'color:'+this.textColor+';' : '';
- this._elem = $('<table class="jqplot-table-legend" style="'+ss+'"></table>');
- // Mekko charts legends don't go by number of series, but by number of data points
- // in the series. Refactor things here for that.
-
- var pad = false,
- reverse = true, // mekko charts are always stacked, so reverse
- nr, nc;
- var s = series[0];
- var colorGenerator = new $.jqplot.ColorGenerator(s.seriesColors);
-
- if (s.show) {
- var pd = s.data;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(pd.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(pd.length/this.numberColumns);
- }
- else {
- nr = pd.length;
- nc = 1;
- }
-
- var i, j, tr, td1, td2, lt, rs, color;
- var idx = 0;
-
- for (i=0; i<nr; i++) {
- if (reverse){
- tr = $('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem);
- }
- else{
- tr = $('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem);
- }
- for (j=0; j<nc; j++) {
- if (idx < pd.length) {
- lt = this.labels[idx] || pd[idx][0].toString();
- color = colorGenerator.next();
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
- td1 = $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- '<div><div class="jqplot-table-legend-swatch" style="border-color:'+color+';"></div>'+
- '</div></td>');
- td2 = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- td2.prependTo(tr);
- td1.prependTo(tr);
- }
- else {
- td1.appendTo(tr);
- td2.appendTo(tr);
- }
- pad = true;
- }
- idx++;
- }
- }
-
- tr = null;
- td1 = null;
- td2 = null;
- }
- }
- return this._elem;
- };
-
- $.jqplot.MekkoLegendRenderer.prototype.pack = function(offsets) {
- if (this.show) {
- // fake a grid for positioning
- var grid = {_top:offsets.top, _left:offsets.left, _right:offsets.right, _bottom:this._plotDimensions.height - offsets.bottom};
- if (this.placement == 'insideGrid') {
- switch (this.location) {
- case 'nw':
- var a = grid._left + this.xoffset;
- var b = grid._top + this.yoffset;
- this._elem.css('left', a);
- this._elem.css('top', b);
- break;
- case 'n':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = grid._top + this.yoffset;
- this._elem.css('left', a);
- this._elem.css('top', b);
- break;
- case 'ne':
- var a = offsets.right + this.xoffset;
- var b = grid._top + this.yoffset;
- this._elem.css({right:a, top:b});
- break;
- case 'e':
- var a = offsets.right + this.xoffset;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({right:a, top:b});
- break;
- case 'se':
- var a = offsets.right + this.xoffset;
- var b = offsets.bottom + this.yoffset;
- this._elem.css({right:a, bottom:b});
- break;
- case 's':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = offsets.bottom + this.yoffset;
- this._elem.css({left:a, bottom:b});
- break;
- case 'sw':
- var a = grid._left + this.xoffset;
- var b = offsets.bottom + this.yoffset;
- this._elem.css({left:a, bottom:b});
- break;
- case 'w':
- var a = grid._left + this.xoffset;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({left:a, top:b});
- break;
- default: // same as 'se'
- var a = grid._right - this.xoffset;
- var b = grid._bottom + this.yoffset;
- this._elem.css({right:a, bottom:b});
- break;
- }
-
- }
- else {
- switch (this.location) {
- case 'nw':
- var a = this._plotDimensions.width - grid._left + this.xoffset;
- var b = grid._top + this.yoffset;
- this._elem.css('right', a);
- this._elem.css('top', b);
- break;
- case 'n':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = this._plotDimensions.height - grid._top + this.yoffset;
- this._elem.css('left', a);
- this._elem.css('bottom', b);
- break;
- case 'ne':
- var a = this._plotDimensions.width - offsets.right + this.xoffset;
- var b = grid._top + this.yoffset;
- this._elem.css({left:a, top:b});
- break;
- case 'e':
- var a = this._plotDimensions.width - offsets.right + this.xoffset;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({left:a, top:b});
- break;
- case 'se':
- var a = this._plotDimensions.width - offsets.right + this.xoffset;
- var b = offsets.bottom + this.yoffset;
- this._elem.css({left:a, bottom:b});
- break;
- case 's':
- var a = (offsets.left + (this._plotDimensions.width - offsets.right))/2 - this.getWidth()/2;
- var b = this._plotDimensions.height - offsets.bottom + this.yoffset;
- this._elem.css({left:a, top:b});
- break;
- case 'sw':
- var a = this._plotDimensions.width - grid._left + this.xoffset;
- var b = offsets.bottom + this.yoffset;
- this._elem.css({right:a, bottom:b});
- break;
- case 'w':
- var a = this._plotDimensions.width - grid._left + this.xoffset;
- var b = (offsets.top + (this._plotDimensions.height - offsets.bottom))/2 - this.getHeight()/2;
- this._elem.css({right:a, top:b});
- break;
- default: // same as 'se'
- var a = grid._right - this.xoffset;
- var b = grid._bottom + this.yoffset;
- this._elem.css({right:a, bottom:b});
- break;
- }
- }
- }
- };
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.MekkoRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.MekkoRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.MekkoAxisRenderer;
- options.legend.renderer = $.jqplot.MekkoLegendRenderer;
- options.legend.preDraw = true;
- }
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.min.js
deleted file mode 100644
index b9131d2c..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mekkoRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(b){b.jqplot.MekkoRenderer=function(){this.shapeRenderer=new b.jqplot.ShapeRenderer();this.borderColor=null;this.showBorders=true};b.jqplot.MekkoRenderer.prototype.init=function(c,e){this.fill=false;this.fillRect=true;this.strokeRect=true;this.shadow=false;this._xwidth=0;this._xstart=0;b.extend(true,this.renderer,c);var d={lineJoin:"miter",lineCap:"butt",isarc:false,fillRect:this.fillRect,strokeRect:this.strokeRect};this.renderer.shapeRenderer.init(d);e.axes.x2axis._series.push(this);this._type="mekko"};b.jqplot.MekkoRenderer.prototype.setGridData=function(h){var e=this._xaxis.series_u2p;var c=this._yaxis.series_u2p;var g=this._plotData;this.gridData=[];this._xwidth=e(this._sumy)-e(0);if(this.index>0){this._xstart=h.series[this.index-1]._xstart+h.series[this.index-1]._xwidth}var l=this.canvas.getHeight();var d=0;var k;var j;for(var f=0;f<g.length;f++){if(g[f]!=null){d+=g[f][1];k=l-(d/this._sumy*l);j=g[f][1]/this._sumy*l;this.gridData.push([this._xstart,k,this._xwidth,j])}}};b.jqplot.MekkoRenderer.prototype.makeGridData=function(f,g){var d=this._xaxis.series_u2p;var l=this.canvas.getHeight();var c=0;var j;var h;var k=[];for(var e=0;e<f.length;e++){if(f[e]!=null){c+=f[e][1];j=l-(c/this._sumy*l);h=f[e][1]/this._sumy*l;k.push([this._xstart,j,this._xwidth,h])}}return k};b.jqplot.MekkoRenderer.prototype.draw=function(c,h,d){var e;var g=(d!=undefined)?d:{};var f=(g.showLine!=undefined)?g.showLine:this.showLine;var j=new b.jqplot.ColorGenerator(this.seriesColors);c.save();if(h.length){if(f){for(e=0;e<h.length;e++){g.fillStyle=j.next();if(this.renderer.showBorders){g.strokeStyle=this.renderer.borderColor}else{g.strokeStyle=g.fillStyle}this.renderer.shapeRenderer.draw(c,h[e],g)}}}c.restore()};b.jqplot.MekkoRenderer.prototype.drawShadow=function(c,e,d){};b.jqplot.MekkoLegendRenderer=function(){};b.jqplot.MekkoLegendRenderer.prototype.init=function(c){this.numberRows=null;this.numberColumns=null;this.placement="outside";b.extend(true,this,c)};b.jqplot.MekkoLegendRenderer.prototype.draw=function(){var f=this;if(this.show){var o=this._series;var r="position:absolute;";r+=(this.background)?"background:"+this.background+";":"";r+=(this.border)?"border:"+this.border+";":"";r+=(this.fontSize)?"font-size:"+this.fontSize+";":"";r+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";r+=(this.textColor)?"color:"+this.textColor+";":"";this._elem=b('<table class="jqplot-table-legend" style="'+r+'"></table>');var w=false,n=true,c,l;var p=o[0];var d=new b.jqplot.ColorGenerator(p.seriesColors);if(p.show){var x=p.data;if(this.numberRows){c=this.numberRows;if(!this.numberColumns){l=Math.ceil(x.length/c)}else{l=this.numberColumns}}else{if(this.numberColumns){l=this.numberColumns;c=Math.ceil(x.length/this.numberColumns)}else{c=x.length;l=1}}var v,u,e,h,g,k,m,t;var q=0;for(v=0;v<c;v++){if(n){e=b('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem)}else{e=b('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem)}for(u=0;u<l;u++){if(q<x.length){k=this.labels[q]||x[q][0].toString();t=d.next();if(!n){if(v>0){w=true}else{w=false}}else{if(v==c-1){w=false}else{w=true}}m=(w)?this.rowSpacing:"0";h=b('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+m+';"><div><div class="jqplot-table-legend-swatch" style="border-color:'+t+';"></div></div></td>');g=b('<td class="jqplot-table-legend" style="padding-top:'+m+';"></td>');if(this.escapeHtml){g.text(k)}else{g.html(k)}if(n){g.prependTo(e);h.prependTo(e)}else{h.appendTo(e);g.appendTo(e)}w=true}q++}}e=null;h=null;g=null}}return this._elem};b.jqplot.MekkoLegendRenderer.prototype.pack=function(f){if(this.show){var e={_top:f.top,_left:f.left,_right:f.right,_bottom:this._plotDimensions.height-f.bottom};if(this.placement=="insideGrid"){switch(this.location){case"nw":var d=e._left+this.xoffset;var c=e._top+this.yoffset;this._elem.css("left",d);this._elem.css("top",c);break;case"n":var d=(f.left+(this._plotDimensions.width-f.right))/2-this.getWidth()/2;var c=e._top+this.yoffset;this._elem.css("left",d);this._elem.css("top",c);break;case"ne":var d=f.right+this.xoffset;var c=e._top+this.yoffset;this._elem.css({right:d,top:c});break;case"e":var d=f.right+this.xoffset;var c=(f.top+(this._plotDimensions.height-f.bottom))/2-this.getHeight()/2;this._elem.css({right:d,top:c});break;case"se":var d=f.right+this.xoffset;var c=f.bottom+this.yoffset;this._elem.css({right:d,bottom:c});break;case"s":var d=(f.left+(this._plotDimensions.width-f.right))/2-this.getWidth()/2;var c=f.bottom+this.yoffset;this._elem.css({left:d,bottom:c});break;case"sw":var d=e._left+this.xoffset;var c=f.bottom+this.yoffset;this._elem.css({left:d,bottom:c});break;case"w":var d=e._left+this.xoffset;var c=(f.top+(this._plotDimensions.height-f.bottom))/2-this.getHeight()/2;this._elem.css({left:d,top:c});break;default:var d=e._right-this.xoffset;var c=e._bottom+this.yoffset;this._elem.css({right:d,bottom:c});break}}else{switch(this.location){case"nw":var d=this._plotDimensions.width-e._left+this.xoffset;var c=e._top+this.yoffset;this._elem.css("right",d);this._elem.css("top",c);break;case"n":var d=(f.left+(this._plotDimensions.width-f.right))/2-this.getWidth()/2;var c=this._plotDimensions.height-e._top+this.yoffset;this._elem.css("left",d);this._elem.css("bottom",c);break;case"ne":var d=this._plotDimensions.width-f.right+this.xoffset;var c=e._top+this.yoffset;this._elem.css({left:d,top:c});break;case"e":var d=this._plotDimensions.width-f.right+this.xoffset;var c=(f.top+(this._plotDimensions.height-f.bottom))/2-this.getHeight()/2;this._elem.css({left:d,top:c});break;case"se":var d=this._plotDimensions.width-f.right+this.xoffset;var c=f.bottom+this.yoffset;this._elem.css({left:d,bottom:c});break;case"s":var d=(f.left+(this._plotDimensions.width-f.right))/2-this.getWidth()/2;var c=this._plotDimensions.height-f.bottom+this.yoffset;this._elem.css({left:d,top:c});break;case"sw":var d=this._plotDimensions.width-e._left+this.xoffset;var c=f.bottom+this.yoffset;this._elem.css({right:d,bottom:c});break;case"w":var d=this._plotDimensions.width-e._left+this.xoffset;var c=(f.top+(this._plotDimensions.height-f.bottom))/2-this.getHeight()/2;this._elem.css({right:d,top:c});break;default:var d=e._right-this.xoffset;var c=e._bottom+this.yoffset;this._elem.css({right:d,bottom:c});break}}}};function a(g,f,d){d=d||{};d.axesDefaults=d.axesDefaults||{};d.legend=d.legend||{};d.seriesDefaults=d.seriesDefaults||{};var c=false;if(d.seriesDefaults.renderer==b.jqplot.MekkoRenderer){c=true}else{if(d.series){for(var e=0;e<d.series.length;e++){if(d.series[e].renderer==b.jqplot.MekkoRenderer){c=true}}}}if(c){d.axesDefaults.renderer=b.jqplot.MekkoAxisRenderer;d.legend.renderer=b.jqplot.MekkoLegendRenderer;d.legend.preDraw=true}}b.jqplot.preInitHooks.push(a)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.js
deleted file mode 100644
index 43a4c10f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.js
+++ /dev/null
@@ -1,1029 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.MeterGaugeRenderer
- * Plugin renderer to draw a meter gauge chart.
- *
- * Data consists of a single series with 1 data point to position the gauge needle.
- *
- * To use this renderer, you need to include the
- * meter gauge renderer plugin, for example:
- *
- * > <script type="text/javascript" src="plugins/jqplot.meterGaugeRenderer.js"></script>
- *
- * Properties described here are passed into the $.jqplot function
- * as options on the series renderer. For example:
- *
- * > plot0 = $.jqplot('chart0',[[18]],{
- * > title: 'Network Speed',
- * > seriesDefaults: {
- * > renderer: $.jqplot.MeterGaugeRenderer,
- * > rendererOptions: {
- * > label: 'MB/s'
- * > }
- * > }
- * > });
- *
- * A meterGauge plot does not support events.
- */
- $.jqplot.MeterGaugeRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.MeterGaugeRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.MeterGaugeRenderer.prototype.constructor = $.jqplot.MeterGaugeRenderer;
-
- // called with scope of a series
- $.jqplot.MeterGaugeRenderer.prototype.init = function(options) {
- // Group: Properties
- //
- // prop: diameter
- // Outer diameter of the meterGauge, auto computed by default
- this.diameter = null;
- // prop: padding
- // padding between the meterGauge and plot edges, auto
- // calculated by default.
- this.padding = null;
- // prop: shadowOffset
- // offset of the shadow from the gauge ring and offset of
- // each succesive stroke of the shadow from the last.
- this.shadowOffset = 2;
- // prop: shadowAlpha
- // transparency of the shadow (0 = transparent, 1 = opaque)
- this.shadowAlpha = 0.07;
- // prop: shadowDepth
- // number of strokes to apply to the shadow,
- // each stroke offset shadowOffset from the last.
- this.shadowDepth = 4;
- // prop: background
- // background color of the inside of the gauge.
- this.background = "#efefef";
- // prop: ringColor
- // color of the outer ring, hub, and needle of the gauge.
- this.ringColor = "#BBC6D0";
- // needle color not implemented yet.
- this.needleColor = "#C3D3E5";
- // prop: tickColor
- // color of the tick marks around the gauge.
- this.tickColor = "989898";
- // prop: ringWidth
- // width of the ring around the gauge. Auto computed by default.
- this.ringWidth = null;
- // prop: min
- // Minimum value on the gauge. Auto computed by default
- this.min;
- // prop: max
- // Maximum value on the gauge. Auto computed by default
- this.max;
- // prop: ticks
- // Array of tick values. Auto computed by default.
- this.ticks = [];
- // prop: showTicks
- // true to show ticks around gauge.
- this.showTicks = true;
- // prop: showTickLabels
- // true to show tick labels next to ticks.
- this.showTickLabels = true;
- // prop: label
- // A gauge label like 'kph' or 'Volts'
- this.label = null;
- // prop: labelHeightAdjust
- // Number of Pixels to offset the label up (-) or down (+) from its default position.
- this.labelHeightAdjust = 0;
- // prop: labelPosition
- // Where to position the label, either 'inside' or 'bottom'.
- this.labelPosition = 'inside';
- // prop: intervals
- // Array of ranges to be drawn around the gauge.
- // Array of form:
- // > [value1, value2, ...]
- // indicating the values for the first, second, ... intervals.
- this.intervals = [];
- // prop: intervalColors
- // Array of colors to use for the intervals.
- this.intervalColors = [ "#4bb2c5", "#EAA228", "#c5b47f", "#579575", "#839557", "#958c12", "#953579", "#4b5de4", "#d8b83f", "#ff5800", "#0085cc", "#c747a3", "#cddf54", "#FBD178", "#26B4E3", "#bd70c7"];
- // prop: intervalInnerRadius
- // Radius of the inner circle of the interval ring.
- this.intervalInnerRadius = null;
- // prop: intervalOuterRadius
- // Radius of the outer circle of the interval ring.
- this.intervalOuterRadius = null;
- this.tickRenderer = $.jqplot.MeterGaugeTickRenderer;
- // ticks spaced every 1, 2, 2.5, 5, 10, 20, .1, .2, .25, .5, etc.
- this.tickPositions = [1, 2, 2.5, 5, 10];
- // prop: tickSpacing
- // Degrees between ticks. This is a target number, if
- // incompatible span and ticks are supplied, a suitable
- // spacing close to this value will be computed.
- this.tickSpacing = 30;
- this.numberMinorTicks = null;
- // prop: hubRadius
- // Radius of the hub at the bottom center of gauge which the needle attaches to.
- // Auto computed by default
- this.hubRadius = null;
- // prop: tickPadding
- // padding of the tick marks to the outer ring and the tick labels to marks.
- // Auto computed by default.
- this.tickPadding = null;
- // prop: needleThickness
- // Maximum thickness the needle. Auto computed by default.
- this.needleThickness = null;
- // prop: needlePad
- // Padding between needle and inner edge of the ring when the needle is at the min or max gauge value.
- this.needlePad = 6;
- // prop: pegNeedle
- // True will stop needle just below/above the min/max values if data is below/above min/max,
- // as if the meter is "pegged".
- this.pegNeedle = true;
- this._type = 'meterGauge';
-
- $.extend(true, this, options);
- this.type = null;
- this.numberTicks = null;
- this.tickInterval = null;
- // span, the sweep (in degrees) from min to max. This gauge is
- // a semi-circle.
- this.span = 180;
- // get rid of this nonsense
- // this.innerSpan = this.span;
- if (this.type == 'circular') {
- this.semiCircular = false;
- }
- else if (this.type != 'circular') {
- this.semiCircular = true;
- }
- else {
- this.semiCircular = (this.span <= 180) ? true : false;
- }
- this._tickPoints = [];
- // reference to label element.
- this._labelElem = null;
-
- // start the gauge at the beginning of the span
- this.startAngle = (90 + (360 - this.span)/2) * Math.PI/180;
- this.endAngle = (90 - (360 - this.span)/2) * Math.PI/180;
-
- this.setmin = !!(this.min == null);
- this.setmax = !!(this.max == null);
-
- // if given intervals and is an array of values, create labels and colors.
- if (this.intervals.length) {
- if (this.intervals[0].length == null || this.intervals.length == 1) {
- for (var i=0; i<this.intervals.length; i++) {
- this.intervals[i] = [this.intervals[i], this.intervals[i], this.intervalColors[i]];
- }
- }
- else if (this.intervals[0].length == 2) {
- for (i=0; i<this.intervals.length; i++) {
- this.intervals[i] = [this.intervals[i][0], this.intervals[i][1], this.intervalColors[i]];
- }
- }
- }
-
- // compute min, max and ticks if not supplied:
- if (this.ticks.length) {
- if (this.ticks[0].length == null || this.ticks[0].length == 1) {
- for (var i=0; i<this.ticks.length; i++) {
- this.ticks[i] = [this.ticks[i], this.ticks[i]];
- }
- }
- this.min = (this.min == null) ? this.ticks[0][0] : this.min;
- this.max = (this.max == null) ? this.ticks[this.ticks.length-1][0] : this.max;
- this.setmin = false;
- this.setmax = false;
- this.numberTicks = this.ticks.length;
- this.tickInterval = this.ticks[1][0] - this.ticks[0][0];
- this.tickFactor = Math.floor(parseFloat((Math.log(this.tickInterval)/Math.log(10)).toFixed(11)));
- // use the first interal to calculate minor ticks;
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor);
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor-1);
- }
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = 1;
- }
- }
-
- else if (this.intervals.length) {
- this.min = (this.min == null) ? 0 : this.min;
- this.setmin = false;
- if (this.max == null) {
- if (this.intervals[this.intervals.length-1][0] >= this.data[0][1]) {
- this.max = this.intervals[this.intervals.length-1][0];
- this.setmax = false;
- }
- }
- else {
- this.setmax = false;
- }
- }
-
- else {
- // no ticks and no intervals supplied, put needle in middle
- this.min = (this.min == null) ? 0 : this.min;
- this.setmin = false;
- if (this.max == null) {
- this.max = this.data[0][1] * 1.25;
- this.setmax = true;
- }
- else {
- this.setmax = false;
- }
- }
- };
-
- $.jqplot.MeterGaugeRenderer.prototype.setGridData = function(plot) {
- // set gridData property. This will hold angle in radians of each data point.
- var stack = [];
- var td = [];
- var sa = this.startAngle;
- for (var i=0; i<this.data.length; i++){
- stack.push(this.data[i][1]);
- td.push([this.data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- }
- this.gridData = td;
- };
-
- $.jqplot.MeterGaugeRenderer.prototype.makeGridData = function(data, plot) {
- var stack = [];
- var td = [];
- var sa = this.startAngle;
- for (var i=0; i<data.length; i++){
- stack.push(data[i][1]);
- td.push([data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- }
- return td;
- };
-
-
- function getnmt(pos, interval, fact) {
- var temp;
- for (var i=pos.length-1; i>=0; i--) {
- temp = interval/(pos[i] * Math.pow(10, fact));
- if (temp == 4 || temp == 5) {
- return temp - 1;
- }
- }
- return null;
- }
-
- // called with scope of series
- $.jqplot.MeterGaugeRenderer.prototype.draw = function (ctx, gd, options) {
- var i;
- var opts = (options != undefined) ? options : {};
- // offset and direction of offset due to legend placement
- var offx = 0;
- var offy = 0;
- var trans = 1;
- if (options.legendInfo && options.legendInfo.placement == 'inside') {
- var li = options.legendInfo;
- switch (li.location) {
- case 'nw':
- offx = li.width + li.xoffset;
- break;
- case 'w':
- offx = li.width + li.xoffset;
- break;
- case 'sw':
- offx = li.width + li.xoffset;
- break;
- case 'ne':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'e':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'se':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'n':
- offy = li.height + li.yoffset;
- break;
- case 's':
- offy = li.height + li.yoffset;
- trans = -1;
- break;
- default:
- break;
- }
- }
-
-
-
- // pre-draw so can get it's dimensions.
- if (this.label) {
- this._labelElem = $('<div class="jqplot-meterGauge-label" style="position:absolute;">'+this.label+'</div>');
- this.canvas._elem.after(this._labelElem);
- }
-
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var cw = ctx.canvas.width;
- var ch = ctx.canvas.height;
- if (this.padding == null) {
- this.padding = Math.round(Math.min(cw, ch)/30);
- }
- var w = cw - offx - 2 * this.padding;
- var h = ch - offy - 2 * this.padding;
- if (this.labelPosition == 'bottom' && this.label) {
- h -= this._labelElem.outerHeight(true);
- }
- var mindim = Math.min(w,h);
- var d = mindim;
-
- if (!this.diameter) {
- if (this.semiCircular) {
- if ( w >= 2*h) {
- if (!this.ringWidth) {
- this.ringWidth = 2*h/35;
- }
- this.needleThickness = this.needleThickness || 2+Math.pow(this.ringWidth, 0.8);
- this.innerPad = this.ringWidth/2 + this.needleThickness/2 + this.needlePad;
- this.diameter = 2 * (h - 2*this.innerPad);
- }
- else {
- if (!this.ringWidth) {
- this.ringWidth = w/35;
- }
- this.needleThickness = this.needleThickness || 2+Math.pow(this.ringWidth, 0.8);
- this.innerPad = this.ringWidth/2 + this.needleThickness/2 + this.needlePad;
- this.diameter = w - 2*this.innerPad - this.ringWidth - this.padding;
- }
- // center taking into account legend and over draw for gauge bottom below hub.
- // this will be center of hub.
- this._center = [(cw - trans * offx)/2 + trans * offx, (ch + trans*offy - this.padding - this.ringWidth - this.innerPad)];
- }
- else {
- if (!this.ringWidth) {
- this.ringWidth = d/35;
- }
- this.needleThickness = this.needleThickness || 2+Math.pow(this.ringWidth, 0.8);
- this.innerPad = 0;
- this.diameter = d - this.ringWidth;
- // center in middle of canvas taking into account legend.
- // will be center of hub.
- this._center = [(cw-trans*offx)/2 + trans * offx, (ch-trans*offy)/2 + trans * offy];
- }
- }
-
-
- if (this._labelElem && this.labelPosition == 'bottom') {
- this._center[1] -= this._labelElem.outerHeight(true);
- }
-
- this._radius = this.diameter/2;
-
- this.tickSpacing = 6000/this.diameter;
-
- if (!this.hubRadius) {
- this.hubRadius = this.diameter/18;
- }
-
- this.shadowOffset = 0.5 + this.ringWidth/9;
- this.shadowWidth = this.ringWidth*1;
-
- this.tickPadding = 3 + Math.pow(this.diameter/20, 0.7);
- this.tickOuterRadius = this._radius - this.ringWidth/2 - this.tickPadding;
- this.tickLength = (this.showTicks) ? this._radius/13 : 0;
-
- if (this.ticks.length == 0) {
- // no ticks, lets make some.
- var max = this.max,
- min = this.min,
- setmax = this.setmax,
- setmin = this.setmin,
- ti = (max - min) * this.tickSpacing / this.span;
- var tf = Math.floor(parseFloat((Math.log(ti)/Math.log(10)).toFixed(11)));
- var tp = (ti/Math.pow(10, tf));
- (tp > 2 && tp <= 2.5) ? tp = 2.5 : tp = Math.ceil(tp);
- var t = this.tickPositions;
- var tpindex, nt;
-
- for (i=0; i<t.length; i++) {
- if (tp == t[i] || i && t[i-1] < tp && tp < t[i]) {
- ti = t[i]*Math.pow(10, tf);
- tpindex = i;
- }
- }
-
- for (i=0; i<t.length; i++) {
- if (tp == t[i] || i && t[i-1] < tp && tp < t[i]) {
- ti = t[i]*Math.pow(10, tf);
- nt = Math.ceil((max - min) / ti);
- }
- }
-
- // both max and min are free
- if (setmax && setmin) {
- var tmin = (min > 0) ? min - min % ti : min - min % ti - ti;
- if (!this.forceZero) {
- var diff = Math.min(min - tmin, 0.8*ti);
- var ntp = Math.floor(diff/t[tpindex]);
- if (ntp > 1) {
- tmin = tmin + t[tpindex] * (ntp-1);
- if (parseInt(tmin, 10) != tmin && parseInt(tmin-t[tpindex], 10) == tmin-t[tpindex]) {
- tmin = tmin - t[tpindex];
- }
- }
- }
- if (min == tmin) {
- min -= ti;
- }
- else {
- // tmin should always be lower than dataMin
- if (min - tmin > 0.23*ti) {
- min = tmin;
- }
- else {
- min = tmin -ti;
- nt += 1;
- }
- }
- nt += 1;
- var tmax = min + (nt - 1) * ti;
- if (max >= tmax) {
- tmax += ti;
- nt += 1;
- }
- // now tmax should always be mroe than dataMax
- if (tmax - max < 0.23*ti) {
- tmax += ti;
- nt += 1;
- }
- this.max = max = tmax;
- this.min = min;
-
- this.tickInterval = ti;
- this.numberTicks = nt;
- var it;
- for (i=0; i<nt; i++) {
- it = parseFloat((min+i*ti).toFixed(11));
- this.ticks.push([it, it]);
- }
- this.max = this.ticks[nt-1][1];
-
- this.tickFactor = tf;
- // determine number of minor ticks
-
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor);
-
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor-1);
- }
- }
- // max is free, min is fixed
- else if (setmax) {
- var tmax = min + (nt - 1) * ti;
- if (max >= tmax) {
- max = tmax + ti;
- nt += 1;
- }
- else {
- max = tmax;
- }
-
- this.tickInterval = this.tickInterval || ti;
- this.numberTicks = this.numberTicks || nt;
- var it;
- for (i=0; i<this.numberTicks; i++) {
- it = parseFloat((min+i*this.tickInterval).toFixed(11));
- this.ticks.push([it, it]);
- }
- this.max = this.ticks[this.numberTicks-1][1];
-
- this.tickFactor = tf;
- // determine number of minor ticks
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor);
-
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor-1);
- }
- }
-
- // not setting max or min
- if (!setmax && !setmin) {
- var range = this.max - this.min;
- tf = Math.floor(parseFloat((Math.log(range)/Math.log(10)).toFixed(11))) - 1;
- var nticks = [5,6,4,7,3,8,9,10,2], res, numticks, nonSigDigits=0, sigRange;
- // check to see how many zeros are at the end of the range
- if (range > 1) {
- var rstr = String(range);
- if (rstr.search(/\./) == -1) {
- var pos = rstr.search(/0+$/);
- nonSigDigits = (pos > 0) ? rstr.length - pos - 1 : 0;
- }
- }
- sigRange = range/Math.pow(10, nonSigDigits);
- for (i=0; i<nticks.length; i++) {
- res = sigRange/(nticks[i]-1);
- if (res == parseInt(res, 10)) {
- this.numberTicks = nticks[i];
- this.tickInterval = range/(this.numberTicks-1);
- this.tickFactor = tf+1;
- break;
- }
- }
- var it;
- for (i=0; i<this.numberTicks; i++) {
- it = parseFloat((this.min+i*this.tickInterval).toFixed(11));
- this.ticks.push([it, it]);
- }
- // determine number of minor ticks
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor);
-
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = getnmt(this.tickPositions, this.tickInterval, this.tickFactor-1);
- }
-
- if (!this.numberMinorTicks) {
- this.numberMinorTicks = 1;
- var nums = [4, 5, 3, 6, 2];
- for (i=0; i<5; i++) {
- var temp = this.tickInterval/nums[i];
- if (temp == parseInt(temp, 10)) {
- this.numberMinorTicks = nums[i]-1;
- break;
- }
- }
- }
- }
- }
-
-
- var r = this._radius,
- sa = this.startAngle,
- ea = this.endAngle,
- pi = Math.PI,
- hpi = Math.PI/2;
-
- if (this.semiCircular) {
- var overAngle = Math.atan(this.innerPad/r),
- outersa = this.outerStartAngle = sa - overAngle,
- outerea = this.outerEndAngle = ea + overAngle,
- hubsa = this.hubStartAngle = sa - Math.atan(this.innerPad/this.hubRadius*2),
- hubea = this.hubEndAngle = ea + Math.atan(this.innerPad/this.hubRadius*2);
-
- ctx.save();
-
- ctx.translate(this._center[0], this._center[1]);
- ctx.lineJoin = "round";
- ctx.lineCap = "round";
-
- // draw the innerbackground
- ctx.save();
- ctx.beginPath();
- ctx.fillStyle = this.background;
- ctx.arc(0, 0, r, outersa, outerea, false);
- ctx.closePath();
- ctx.fill();
- ctx.restore();
-
- // draw the shadow
- // the outer ring.
- var shadowColor = 'rgba(0,0,0,'+this.shadowAlpha+')';
- ctx.save();
- for (var i=0; i<this.shadowDepth; i++) {
- ctx.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI), this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));
- ctx.beginPath();
- ctx.strokeStyle = shadowColor;
- ctx.lineWidth = this.shadowWidth;
- ctx.arc(0 ,0, r, outersa, outerea, false);
- ctx.closePath();
- ctx.stroke();
- }
- ctx.restore();
-
- // the inner hub.
- ctx.save();
- var tempd = parseInt((this.shadowDepth+1)/2, 10);
- for (var i=0; i<tempd; i++) {
- ctx.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI), this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));
- ctx.beginPath();
- ctx.fillStyle = shadowColor;
- ctx.arc(0 ,0, this.hubRadius, hubsa, hubea, false);
- ctx.closePath();
- ctx.fill();
- }
- ctx.restore();
-
- // draw the outer ring.
- ctx.save();
- ctx.beginPath();
- ctx.strokeStyle = this.ringColor;
- ctx.lineWidth = this.ringWidth;
- ctx.arc(0 ,0, r, outersa, outerea, false);
- ctx.closePath();
- ctx.stroke();
- ctx.restore();
-
- // draw the hub
-
- ctx.save();
- ctx.beginPath();
- ctx.fillStyle = this.ringColor;
- ctx.arc(0 ,0, this.hubRadius,hubsa, hubea, false);
- ctx.closePath();
- ctx.fill();
- ctx.restore();
-
- // draw the ticks
- if (this.showTicks) {
- ctx.save();
- var orad = this.tickOuterRadius,
- tl = this.tickLength,
- mtl = tl/2,
- nmt = this.numberMinorTicks,
- ts = this.span * Math.PI / 180 / (this.ticks.length-1),
- mts = ts/(nmt + 1);
-
- for (i = 0; i<this.ticks.length; i++) {
- ctx.beginPath();
- ctx.lineWidth = 1.5 + this.diameter/360;
- ctx.strokeStyle = this.ringColor;
- var wps = ts*i+sa;
- ctx.moveTo(-orad * Math.cos(ts*i+sa), orad * Math.sin(ts*i+sa));
- ctx.lineTo(-(orad-tl) * Math.cos(ts*i+sa), (orad - tl) * Math.sin(ts*i+sa));
- this._tickPoints.push([(orad-tl) * Math.cos(ts*i+sa) + this._center[0] + this.canvas._offsets.left, (orad - tl) * Math.sin(ts*i+sa) + this._center[1] + this.canvas._offsets.top, ts*i+sa]);
- ctx.stroke();
- ctx.lineWidth = 1.0 + this.diameter/440;
- if (i<this.ticks.length-1) {
- for (var j=1; j<=nmt; j++) {
- ctx.beginPath();
- ctx.moveTo(-orad * Math.cos(ts*i+mts*j+sa), orad * Math.sin(ts*i+mts*j+sa));
- ctx.lineTo(-(orad-mtl) * Math.cos(ts*i+mts*j+sa), (orad-mtl) * Math.sin(ts*i+mts*j+sa));
- ctx.stroke();
- }
- }
- }
- ctx.restore();
- }
-
- // draw the tick labels
- if (this.showTickLabels) {
- var elem, l, t, ew, eh, dim, maxdim=0;
- var tp = this.tickPadding * (1 - 1/(this.diameter/80+1));
- for (i=0; i<this.ticks.length; i++) {
- elem = $('<div class="jqplot-meterGauge-tick" style="position:absolute;">'+this.ticks[i][1]+'</div>');
- this.canvas._elem.after(elem);
- ew = elem.outerWidth(true);
- eh = elem.outerHeight(true);
- l = this._tickPoints[i][0] - ew * (this._tickPoints[i][2]-Math.PI)/Math.PI - tp * Math.cos(this._tickPoints[i][2]);
- t = this._tickPoints[i][1] - eh/2 + eh/2 * Math.pow(Math.abs((Math.sin(this._tickPoints[i][2]))), 0.5) + tp/3 * Math.pow(Math.abs((Math.sin(this._tickPoints[i][2]))), 0.5) ;
- // t = this._tickPoints[i][1] - eh/2 - eh/2 * Math.sin(this._tickPoints[i][2]) - tp/2 * Math.sin(this._tickPoints[i][2]);
- elem.css({left:l, top:t});
- dim = ew*Math.cos(this._tickPoints[i][2]) + eh*Math.sin(Math.PI/2+this._tickPoints[i][2]/2);
- maxdim = (dim > maxdim) ? dim : maxdim;
- }
- }
-
- // draw the gauge label
- if (this.label && this.labelPosition == 'inside') {
- var l = this._center[0] + this.canvas._offsets.left;
- var tp = this.tickPadding * (1 - 1/(this.diameter/80+1));
- var t = 0.5*(this._center[1] + this.canvas._offsets.top - this.hubRadius) + 0.5*(this._center[1] + this.canvas._offsets.top - this.tickOuterRadius + this.tickLength + tp) + this.labelHeightAdjust;
- // this._labelElem = $('<div class="jqplot-meterGauge-label" style="position:absolute;">'+this.label+'</div>');
- // this.canvas._elem.after(this._labelElem);
- l -= this._labelElem.outerWidth(true)/2;
- t -= this._labelElem.outerHeight(true)/2;
- this._labelElem.css({left:l, top:t});
- }
-
- else if (this.label && this.labelPosition == 'bottom') {
- var l = this._center[0] + this.canvas._offsets.left - this._labelElem.outerWidth(true)/2;
- var t = this._center[1] + this.canvas._offsets.top + this.innerPad + + this.ringWidth + this.padding + this.labelHeightAdjust;
- this._labelElem.css({left:l, top:t});
-
- }
-
- // draw the intervals
-
- ctx.save();
- var inner = this.intervalInnerRadius || this.hubRadius * 1.5;
- if (this.intervalOuterRadius == null) {
- if (this.showTickLabels) {
- var outer = (this.tickOuterRadius - this.tickLength - this.tickPadding - this.diameter/8);
- }
- else {
- var outer = (this.tickOuterRadius - this.tickLength - this.diameter/16);
- }
- }
- else {
- var outer = this.intervalOuterRadius;
- }
- var range = this.max - this.min;
- var intrange = this.intervals[this.intervals.length-1] - this.min;
- var start, end, span = this.span*Math.PI/180;
- for (i=0; i<this.intervals.length; i++) {
- start = (i == 0) ? sa : sa + (this.intervals[i-1][0] - this.min)*span/range;
- if (start < 0) {
- start = 0;
- }
- end = sa + (this.intervals[i][0] - this.min)*span/range;
- if (end < 0) {
- end = 0;
- }
- ctx.beginPath();
- ctx.fillStyle = this.intervals[i][2];
- ctx.arc(0, 0, inner, start, end, false);
- ctx.lineTo(outer*Math.cos(end), outer*Math.sin(end));
- ctx.arc(0, 0, outer, end, start, true);
- ctx.lineTo(inner*Math.cos(start), inner*Math.sin(start));
- ctx.closePath();
- ctx.fill();
- }
- ctx.restore();
-
- // draw the needle
- var datapoint = this.data[0][1];
- var dataspan = this.max - this.min;
- if (this.pegNeedle) {
- if (this.data[0][1] > this.max + dataspan*3/this.span) {
- datapoint = this.max + dataspan*3/this.span;
- }
- if (this.data[0][1] < this.min - dataspan*3/this.span) {
- datapoint = this.min - dataspan*3/this.span;
- }
- }
- var dataang = (datapoint - this.min)/dataspan * this.span * Math.PI/180 + this.startAngle;
-
-
- ctx.save();
- ctx.beginPath();
- ctx.fillStyle = this.ringColor;
- ctx.strokeStyle = this.ringColor;
- this.needleLength = (this.tickOuterRadius - this.tickLength) * 0.85;
- this.needleThickness = (this.needleThickness < 2) ? 2 : this.needleThickness;
- var endwidth = this.needleThickness * 0.4;
-
-
- var dl = this.needleLength/10;
- var dt = (this.needleThickness - endwidth)/10;
- var templ;
- for (var i=0; i<10; i++) {
- templ = this.needleThickness - i*dt;
- ctx.moveTo(dl*i*Math.cos(dataang), dl*i*Math.sin(dataang));
- ctx.lineWidth = templ;
- ctx.lineTo(dl*(i+1)*Math.cos(dataang), dl*(i+1)*Math.sin(dataang));
- ctx.stroke();
- }
-
- ctx.restore();
- }
- else {
- this._center = [(cw - trans * offx)/2 + trans * offx, (ch - trans*offy)/2 + trans * offy];
- }
- };
-
- $.jqplot.MeterGaugeAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.MeterGaugeAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.MeterGaugeAxisRenderer.prototype.constructor = $.jqplot.MeterGaugeAxisRenderer;
-
-
- // There are no traditional axes on a gauge chart. We just need to provide
- // dummy objects with properties so the plot will render.
- // called with scope of axis object.
- $.jqplot.MeterGaugeAxisRenderer.prototype.init = function(options){
- //
- this.tickRenderer = $.jqplot.MeterGaugeTickRenderer;
- $.extend(true, this, options);
- // I don't think I'm going to need _dataBounds here.
- // have to go Axis scaling in a way to fit chart onto plot area
- // and provide u2p and p2u functionality for mouse cursor, etc.
- // for convienence set _dataBounds to 0 and 100 and
- // set min/max to 0 and 100.
- this._dataBounds = {min:0, max:100};
- this.min = 0;
- this.max = 100;
- this.showTicks = false;
- this.ticks = [];
- this.showMark = false;
- this.show = false;
- };
-
- $.jqplot.MeterGaugeLegendRenderer = function(){
- $.jqplot.TableLegendRenderer.call(this);
- };
-
- $.jqplot.MeterGaugeLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.MeterGaugeLegendRenderer.prototype.constructor = $.jqplot.MeterGaugeLegendRenderer;
-
- /**
- * Class: $.jqplot.MeterGaugeLegendRenderer
- *Meter gauges don't typically have a legend, this overrides the default legend renderer.
- */
- $.jqplot.MeterGaugeLegendRenderer.prototype.init = function(options) {
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- $.extend(true, this, options);
- };
-
- // called with context of legend
- $.jqplot.MeterGaugeLegendRenderer.prototype.draw = function() {
- if (this.show) {
- var series = this._series;
- var ss = 'position:absolute;';
- ss += (this.background) ? 'background:'+this.background+';' : '';
- ss += (this.border) ? 'border:'+this.border+';' : '';
- ss += (this.fontSize) ? 'font-size:'+this.fontSize+';' : '';
- ss += (this.fontFamily) ? 'font-family:'+this.fontFamily+';' : '';
- ss += (this.textColor) ? 'color:'+this.textColor+';' : '';
- ss += (this.marginTop != null) ? 'margin-top:'+this.marginTop+';' : '';
- ss += (this.marginBottom != null) ? 'margin-bottom:'+this.marginBottom+';' : '';
- ss += (this.marginLeft != null) ? 'margin-left:'+this.marginLeft+';' : '';
- ss += (this.marginRight != null) ? 'margin-right:'+this.marginRight+';' : '';
- this._elem = $('<table class="jqplot-table-legend" style="'+ss+'"></table>');
- // MeterGauge charts legends don't go by number of series, but by number of data points
- // in the series. Refactor things here for that.
-
- var pad = false,
- reverse = false,
- nr, nc;
- var s = series[0];
-
- if (s.show) {
- var pd = s.data;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(pd.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(pd.length/this.numberColumns);
- }
- else {
- nr = pd.length;
- nc = 1;
- }
-
- var i, j, tr, td1, td2, lt, rs, color;
- var idx = 0;
-
- for (i=0; i<nr; i++) {
- if (reverse){
- tr = $('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem);
- }
- else{
- tr = $('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem);
- }
- for (j=0; j<nc; j++) {
- if (idx < pd.length){
- // debugger
- lt = this.labels[idx] || pd[idx][0].toString();
- color = s.color;
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
- td1 = $('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+rs+';">'+
- '<div><div class="jqplot-table-legend-swatch" style="border-color:'+color+';"></div>'+
- '</div></td>');
- td2 = $('<td class="jqplot-table-legend" style="padding-top:'+rs+';"></td>');
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- td2.prependTo(tr);
- td1.prependTo(tr);
- }
- else {
- td1.appendTo(tr);
- td2.appendTo(tr);
- }
- pad = true;
- }
- idx++;
- }
- }
- }
- }
- return this._elem;
- };
-
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- // debugger
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- options.grid = options.grid || {};
-
- // only set these if there is a gauge series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.MeterGaugeRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.MeterGaugeRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.MeterGaugeAxisRenderer;
- options.legend.renderer = $.jqplot.MeterGaugeLegendRenderer;
- options.legend.preDraw = true;
- options.grid.background = options.grid.background || 'white';
- options.grid.drawGridlines = false;
- options.grid.borderWidth = (options.grid.borderWidth != null) ? options.grid.borderWidth : 0;
- options.grid.shadow = (options.grid.shadow != null) ? options.grid.shadow : false;
- }
- }
-
- // called with scope of plot
- function postParseOptions(options) {
- //
- }
-
- $.jqplot.preInitHooks.push(preInit);
- $.jqplot.postParseOptionsHooks.push(postParseOptions);
-
- $.jqplot.MeterGaugeTickRenderer = function() {
- $.jqplot.AxisTickRenderer.call(this);
- };
-
- $.jqplot.MeterGaugeTickRenderer.prototype = new $.jqplot.AxisTickRenderer();
- $.jqplot.MeterGaugeTickRenderer.prototype.constructor = $.jqplot.MeterGaugeTickRenderer;
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.min.js
deleted file mode 100644
index 2514b739..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.meterGaugeRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(c){c.jqplot.MeterGaugeRenderer=function(){c.jqplot.LineRenderer.call(this)};c.jqplot.MeterGaugeRenderer.prototype=new c.jqplot.LineRenderer();c.jqplot.MeterGaugeRenderer.prototype.constructor=c.jqplot.MeterGaugeRenderer;c.jqplot.MeterGaugeRenderer.prototype.init=function(e){this.diameter=null;this.padding=null;this.shadowOffset=2;this.shadowAlpha=0.07;this.shadowDepth=4;this.background="#efefef";this.ringColor="#BBC6D0";this.needleColor="#C3D3E5";this.tickColor="989898";this.ringWidth=null;this.min;this.max;this.ticks=[];this.showTicks=true;this.showTickLabels=true;this.label=null;this.labelHeightAdjust=0;this.labelPosition="inside";this.intervals=[];this.intervalColors=["#4bb2c5","#EAA228","#c5b47f","#579575","#839557","#958c12","#953579","#4b5de4","#d8b83f","#ff5800","#0085cc","#c747a3","#cddf54","#FBD178","#26B4E3","#bd70c7"];this.intervalInnerRadius=null;this.intervalOuterRadius=null;this.tickRenderer=c.jqplot.MeterGaugeTickRenderer;this.tickPositions=[1,2,2.5,5,10];this.tickSpacing=30;this.numberMinorTicks=null;this.hubRadius=null;this.tickPadding=null;this.needleThickness=null;this.needlePad=6;this.pegNeedle=true;this._type="meterGauge";c.extend(true,this,e);this.type=null;this.numberTicks=null;this.tickInterval=null;this.span=180;if(this.type=="circular"){this.semiCircular=false}else{if(this.type!="circular"){this.semiCircular=true}else{this.semiCircular=(this.span<=180)?true:false}}this._tickPoints=[];this._labelElem=null;this.startAngle=(90+(360-this.span)/2)*Math.PI/180;this.endAngle=(90-(360-this.span)/2)*Math.PI/180;this.setmin=!!(this.min==null);this.setmax=!!(this.max==null);if(this.intervals.length){if(this.intervals[0].length==null||this.intervals.length==1){for(var f=0;f<this.intervals.length;f++){this.intervals[f]=[this.intervals[f],this.intervals[f],this.intervalColors[f]]}}else{if(this.intervals[0].length==2){for(f=0;f<this.intervals.length;f++){this.intervals[f]=[this.intervals[f][0],this.intervals[f][1],this.intervalColors[f]]}}}}if(this.ticks.length){if(this.ticks[0].length==null||this.ticks[0].length==1){for(var f=0;f<this.ticks.length;f++){this.ticks[f]=[this.ticks[f],this.ticks[f]]}}this.min=(this.min==null)?this.ticks[0][0]:this.min;this.max=(this.max==null)?this.ticks[this.ticks.length-1][0]:this.max;this.setmin=false;this.setmax=false;this.numberTicks=this.ticks.length;this.tickInterval=this.ticks[1][0]-this.ticks[0][0];this.tickFactor=Math.floor(parseFloat((Math.log(this.tickInterval)/Math.log(10)).toFixed(11)));this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor);if(!this.numberMinorTicks){this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor-1)}if(!this.numberMinorTicks){this.numberMinorTicks=1}}else{if(this.intervals.length){this.min=(this.min==null)?0:this.min;this.setmin=false;if(this.max==null){if(this.intervals[this.intervals.length-1][0]>=this.data[0][1]){this.max=this.intervals[this.intervals.length-1][0];this.setmax=false}}else{this.setmax=false}}else{this.min=(this.min==null)?0:this.min;this.setmin=false;if(this.max==null){this.max=this.data[0][1]*1.25;this.setmax=true}else{this.setmax=false}}}};c.jqplot.MeterGaugeRenderer.prototype.setGridData=function(j){var f=[];var k=[];var e=this.startAngle;for(var h=0;h<this.data.length;h++){f.push(this.data[h][1]);k.push([this.data[h][0]]);if(h>0){f[h]+=f[h-1]}}var g=Math.PI*2/f[f.length-1];for(var h=0;h<f.length;h++){k[h][1]=f[h]*g}this.gridData=k};c.jqplot.MeterGaugeRenderer.prototype.makeGridData=function(j,k){var f=[];var l=[];var e=this.startAngle;for(var h=0;h<j.length;h++){f.push(j[h][1]);l.push([j[h][0]]);if(h>0){f[h]+=f[h-1]}}var g=Math.PI*2/f[f.length-1];for(var h=0;h<f.length;h++){l[h][1]=f[h]*g}return l};function b(j,f,g){var e;for(var h=j.length-1;h>=0;h--){e=f/(j[h]*Math.pow(10,g));if(e==4||e==5){return e-1}}return null}c.jqplot.MeterGaugeRenderer.prototype.draw=function(X,aC,ap){var aa;var aM=(ap!=undefined)?ap:{};var ai=0;var ah=0;var at=1;if(ap.legendInfo&&ap.legendInfo.placement=="inside"){var aI=ap.legendInfo;switch(aI.location){case"nw":ai=aI.width+aI.xoffset;break;case"w":ai=aI.width+aI.xoffset;break;case"sw":ai=aI.width+aI.xoffset;break;case"ne":ai=aI.width+aI.xoffset;at=-1;break;case"e":ai=aI.width+aI.xoffset;at=-1;break;case"se":ai=aI.width+aI.xoffset;at=-1;break;case"n":ah=aI.height+aI.yoffset;break;case"s":ah=aI.height+aI.yoffset;at=-1;break;default:break}}if(this.label){this._labelElem=c('<div class="jqplot-meterGauge-label" style="position:absolute;">'+this.label+"</div>");this.canvas._elem.after(this._labelElem)}var m=(aM.shadow!=undefined)?aM.shadow:this.shadow;var N=(aM.showLine!=undefined)?aM.showLine:this.showLine;var I=(aM.fill!=undefined)?aM.fill:this.fill;var K=X.canvas.width;var S=X.canvas.height;if(this.padding==null){this.padding=Math.round(Math.min(K,S)/30)}var Q=K-ai-2*this.padding;var ab=S-ah-2*this.padding;if(this.labelPosition=="bottom"&&this.label){ab-=this._labelElem.outerHeight(true)}var L=Math.min(Q,ab);var ad=L;if(!this.diameter){if(this.semiCircular){if(Q>=2*ab){if(!this.ringWidth){this.ringWidth=2*ab/35}this.needleThickness=this.needleThickness||2+Math.pow(this.ringWidth,0.8);this.innerPad=this.ringWidth/2+this.needleThickness/2+this.needlePad;this.diameter=2*(ab-2*this.innerPad)}else{if(!this.ringWidth){this.ringWidth=Q/35}this.needleThickness=this.needleThickness||2+Math.pow(this.ringWidth,0.8);this.innerPad=this.ringWidth/2+this.needleThickness/2+this.needlePad;this.diameter=Q-2*this.innerPad-this.ringWidth-this.padding}this._center=[(K-at*ai)/2+at*ai,(S+at*ah-this.padding-this.ringWidth-this.innerPad)]}else{if(!this.ringWidth){this.ringWidth=ad/35}this.needleThickness=this.needleThickness||2+Math.pow(this.ringWidth,0.8);this.innerPad=0;this.diameter=ad-this.ringWidth;this._center=[(K-at*ai)/2+at*ai,(S-at*ah)/2+at*ah]}}if(this._labelElem&&this.labelPosition=="bottom"){this._center[1]-=this._labelElem.outerHeight(true)}this._radius=this.diameter/2;this.tickSpacing=6000/this.diameter;if(!this.hubRadius){this.hubRadius=this.diameter/18}this.shadowOffset=0.5+this.ringWidth/9;this.shadowWidth=this.ringWidth*1;this.tickPadding=3+Math.pow(this.diameter/20,0.7);this.tickOuterRadius=this._radius-this.ringWidth/2-this.tickPadding;this.tickLength=(this.showTicks)?this._radius/13:0;if(this.ticks.length==0){var A=this.max,aL=this.min,q=this.setmax,aG=this.setmin,au=(A-aL)*this.tickSpacing/this.span;var aw=Math.floor(parseFloat((Math.log(au)/Math.log(10)).toFixed(11)));var an=(au/Math.pow(10,aw));(an>2&&an<=2.5)?an=2.5:an=Math.ceil(an);var T=this.tickPositions;var aA,ak;for(aa=0;aa<T.length;aa++){if(an==T[aa]||aa&&T[aa-1]<an&&an<T[aa]){au=T[aa]*Math.pow(10,aw);aA=aa}}for(aa=0;aa<T.length;aa++){if(an==T[aa]||aa&&T[aa-1]<an&&an<T[aa]){au=T[aa]*Math.pow(10,aw);ak=Math.ceil((A-aL)/au)}}if(q&&aG){var aP=(aL>0)?aL-aL%au:aL-aL%au-au;if(!this.forceZero){var D=Math.min(aL-aP,0.8*au);var o=Math.floor(D/T[aA]);if(o>1){aP=aP+T[aA]*(o-1);if(parseInt(aP,10)!=aP&&parseInt(aP-T[aA],10)==aP-T[aA]){aP=aP-T[aA]}}}if(aL==aP){aL-=au}else{if(aL-aP>0.23*au){aL=aP}else{aL=aP-au;ak+=1}}ak+=1;var E=aL+(ak-1)*au;if(A>=E){E+=au;ak+=1}if(E-A<0.23*au){E+=au;ak+=1}this.max=A=E;this.min=aL;this.tickInterval=au;this.numberTicks=ak;var O;for(aa=0;aa<ak;aa++){O=parseFloat((aL+aa*au).toFixed(11));this.ticks.push([O,O])}this.max=this.ticks[ak-1][1];this.tickFactor=aw;this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor);if(!this.numberMinorTicks){this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor-1)}}else{if(q){var E=aL+(ak-1)*au;if(A>=E){A=E+au;ak+=1}else{A=E}this.tickInterval=this.tickInterval||au;this.numberTicks=this.numberTicks||ak;var O;for(aa=0;aa<this.numberTicks;aa++){O=parseFloat((aL+aa*this.tickInterval).toFixed(11));this.ticks.push([O,O])}this.max=this.ticks[this.numberTicks-1][1];this.tickFactor=aw;this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor);if(!this.numberMinorTicks){this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor-1)}}}if(!q&&!aG){var P=this.max-this.min;aw=Math.floor(parseFloat((Math.log(P)/Math.log(10)).toFixed(11)))-1;var aN=[5,6,4,7,3,8,9,10,2],V,C,av=0,M;if(P>1){var aJ=String(P);if(aJ.search(/\./)==-1){var aF=aJ.search(/0+$/);av=(aF>0)?aJ.length-aF-1:0}}M=P/Math.pow(10,av);for(aa=0;aa<aN.length;aa++){V=M/(aN[aa]-1);if(V==parseInt(V,10)){this.numberTicks=aN[aa];this.tickInterval=P/(this.numberTicks-1);this.tickFactor=aw+1;break}}var O;for(aa=0;aa<this.numberTicks;aa++){O=parseFloat((this.min+aa*this.tickInterval).toFixed(11));this.ticks.push([O,O])}this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor);if(!this.numberMinorTicks){this.numberMinorTicks=b(this.tickPositions,this.tickInterval,this.tickFactor-1)}if(!this.numberMinorTicks){this.numberMinorTicks=1;var aH=[4,5,3,6,2];for(aa=0;aa<5;aa++){var ao=this.tickInterval/aH[aa];if(ao==parseInt(ao,10)){this.numberMinorTicks=aH[aa]-1;break}}}}}var U=this._radius,aE=this.startAngle,k=this.endAngle,H=Math.PI,e=Math.PI/2;if(this.semiCircular){var z=Math.atan(this.innerPad/U),ac=this.outerStartAngle=aE-z,aB=this.outerEndAngle=k+z,B=this.hubStartAngle=aE-Math.atan(this.innerPad/this.hubRadius*2),af=this.hubEndAngle=k+Math.atan(this.innerPad/this.hubRadius*2);X.save();X.translate(this._center[0],this._center[1]);X.lineJoin="round";X.lineCap="round";X.save();X.beginPath();X.fillStyle=this.background;X.arc(0,0,U,ac,aB,false);X.closePath();X.fill();X.restore();var aj="rgba(0,0,0,"+this.shadowAlpha+")";X.save();for(var aa=0;aa<this.shadowDepth;aa++){X.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI),this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));X.beginPath();X.strokeStyle=aj;X.lineWidth=this.shadowWidth;X.arc(0,0,U,ac,aB,false);X.closePath();X.stroke()}X.restore();X.save();var az=parseInt((this.shadowDepth+1)/2,10);for(var aa=0;aa<az;aa++){X.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI),this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));X.beginPath();X.fillStyle=aj;X.arc(0,0,this.hubRadius,B,af,false);X.closePath();X.fill()}X.restore();X.save();X.beginPath();X.strokeStyle=this.ringColor;X.lineWidth=this.ringWidth;X.arc(0,0,U,ac,aB,false);X.closePath();X.stroke();X.restore();X.save();X.beginPath();X.fillStyle=this.ringColor;X.arc(0,0,this.hubRadius,B,af,false);X.closePath();X.fill();X.restore();if(this.showTicks){X.save();var f=this.tickOuterRadius,aq=this.tickLength,v=aq/2,F=this.numberMinorTicks,am=this.span*Math.PI/180/(this.ticks.length-1),p=am/(F+1);for(aa=0;aa<this.ticks.length;aa++){X.beginPath();X.lineWidth=1.5+this.diameter/360;X.strokeStyle=this.ringColor;var ae=am*aa+aE;X.moveTo(-f*Math.cos(am*aa+aE),f*Math.sin(am*aa+aE));X.lineTo(-(f-aq)*Math.cos(am*aa+aE),(f-aq)*Math.sin(am*aa+aE));this._tickPoints.push([(f-aq)*Math.cos(am*aa+aE)+this._center[0]+this.canvas._offsets.left,(f-aq)*Math.sin(am*aa+aE)+this._center[1]+this.canvas._offsets.top,am*aa+aE]);X.stroke();X.lineWidth=1+this.diameter/440;if(aa<this.ticks.length-1){for(var Y=1;Y<=F;Y++){X.beginPath();X.moveTo(-f*Math.cos(am*aa+p*Y+aE),f*Math.sin(am*aa+p*Y+aE));X.lineTo(-(f-v)*Math.cos(am*aa+p*Y+aE),(f-v)*Math.sin(am*aa+p*Y+aE));X.stroke()}}}X.restore()}if(this.showTickLabels){var J,W,T,aO,g,G,n=0;var an=this.tickPadding*(1-1/(this.diameter/80+1));for(aa=0;aa<this.ticks.length;aa++){J=c('<div class="jqplot-meterGauge-tick" style="position:absolute;">'+this.ticks[aa][1]+"</div>");this.canvas._elem.after(J);aO=J.outerWidth(true);g=J.outerHeight(true);W=this._tickPoints[aa][0]-aO*(this._tickPoints[aa][2]-Math.PI)/Math.PI-an*Math.cos(this._tickPoints[aa][2]);T=this._tickPoints[aa][1]-g/2+g/2*Math.pow(Math.abs((Math.sin(this._tickPoints[aa][2]))),0.5)+an/3*Math.pow(Math.abs((Math.sin(this._tickPoints[aa][2]))),0.5);J.css({left:W,top:T});G=aO*Math.cos(this._tickPoints[aa][2])+g*Math.sin(Math.PI/2+this._tickPoints[aa][2]/2);n=(G>n)?G:n}}if(this.label&&this.labelPosition=="inside"){var W=this._center[0]+this.canvas._offsets.left;var an=this.tickPadding*(1-1/(this.diameter/80+1));var T=0.5*(this._center[1]+this.canvas._offsets.top-this.hubRadius)+0.5*(this._center[1]+this.canvas._offsets.top-this.tickOuterRadius+this.tickLength+an)+this.labelHeightAdjust;W-=this._labelElem.outerWidth(true)/2;T-=this._labelElem.outerHeight(true)/2;this._labelElem.css({left:W,top:T})}else{if(this.label&&this.labelPosition=="bottom"){var W=this._center[0]+this.canvas._offsets.left-this._labelElem.outerWidth(true)/2;var T=this._center[1]+this.canvas._offsets.top+this.innerPad+ +this.ringWidth+this.padding+this.labelHeightAdjust;this._labelElem.css({left:W,top:T})}}X.save();var ax=this.intervalInnerRadius||this.hubRadius*1.5;if(this.intervalOuterRadius==null){if(this.showTickLabels){var ag=(this.tickOuterRadius-this.tickLength-this.tickPadding-this.diameter/8)}else{var ag=(this.tickOuterRadius-this.tickLength-this.diameter/16)}}else{var ag=this.intervalOuterRadius}var P=this.max-this.min;var aD=this.intervals[this.intervals.length-1]-this.min;var y,Z,u=this.span*Math.PI/180;for(aa=0;aa<this.intervals.length;aa++){y=(aa==0)?aE:aE+(this.intervals[aa-1][0]-this.min)*u/P;if(y<0){y=0}Z=aE+(this.intervals[aa][0]-this.min)*u/P;if(Z<0){Z=0}X.beginPath();X.fillStyle=this.intervals[aa][2];X.arc(0,0,ax,y,Z,false);X.lineTo(ag*Math.cos(Z),ag*Math.sin(Z));X.arc(0,0,ag,Z,y,true);X.lineTo(ax*Math.cos(y),ax*Math.sin(y));X.closePath();X.fill()}X.restore();var ay=this.data[0][1];var R=this.max-this.min;if(this.pegNeedle){if(this.data[0][1]>this.max+R*3/this.span){ay=this.max+R*3/this.span}if(this.data[0][1]<this.min-R*3/this.span){ay=this.min-R*3/this.span}}var al=(ay-this.min)/R*this.span*Math.PI/180+this.startAngle;X.save();X.beginPath();X.fillStyle=this.ringColor;X.strokeStyle=this.ringColor;this.needleLength=(this.tickOuterRadius-this.tickLength)*0.85;this.needleThickness=(this.needleThickness<2)?2:this.needleThickness;var aK=this.needleThickness*0.4;var x=this.needleLength/10;var s=(this.needleThickness-aK)/10;var ar;for(var aa=0;aa<10;aa++){ar=this.needleThickness-aa*s;X.moveTo(x*aa*Math.cos(al),x*aa*Math.sin(al));X.lineWidth=ar;X.lineTo(x*(aa+1)*Math.cos(al),x*(aa+1)*Math.sin(al));X.stroke()}X.restore()}else{this._center=[(K-at*ai)/2+at*ai,(S-at*ah)/2+at*ah]}};c.jqplot.MeterGaugeAxisRenderer=function(){c.jqplot.LinearAxisRenderer.call(this)};c.jqplot.MeterGaugeAxisRenderer.prototype=new c.jqplot.LinearAxisRenderer();c.jqplot.MeterGaugeAxisRenderer.prototype.constructor=c.jqplot.MeterGaugeAxisRenderer;c.jqplot.MeterGaugeAxisRenderer.prototype.init=function(e){this.tickRenderer=c.jqplot.MeterGaugeTickRenderer;c.extend(true,this,e);this._dataBounds={min:0,max:100};this.min=0;this.max=100;this.showTicks=false;this.ticks=[];this.showMark=false;this.show=false};c.jqplot.MeterGaugeLegendRenderer=function(){c.jqplot.TableLegendRenderer.call(this)};c.jqplot.MeterGaugeLegendRenderer.prototype=new c.jqplot.TableLegendRenderer();c.jqplot.MeterGaugeLegendRenderer.prototype.constructor=c.jqplot.MeterGaugeLegendRenderer;c.jqplot.MeterGaugeLegendRenderer.prototype.init=function(e){this.numberRows=null;this.numberColumns=null;c.extend(true,this,e)};c.jqplot.MeterGaugeLegendRenderer.prototype.draw=function(){if(this.show){var p=this._series;var x="position:absolute;";x+=(this.background)?"background:"+this.background+";":"";x+=(this.border)?"border:"+this.border+";":"";x+=(this.fontSize)?"font-size:"+this.fontSize+";":"";x+=(this.fontFamily)?"font-family:"+this.fontFamily+";":"";x+=(this.textColor)?"color:"+this.textColor+";":"";x+=(this.marginTop!=null)?"margin-top:"+this.marginTop+";":"";x+=(this.marginBottom!=null)?"margin-bottom:"+this.marginBottom+";":"";x+=(this.marginLeft!=null)?"margin-left:"+this.marginLeft+";":"";x+=(this.marginRight!=null)?"margin-right:"+this.marginRight+";":"";this._elem=c('<table class="jqplot-table-legend" style="'+x+'"></table>');var f=false,q=false,u,o;var w=p[0];if(w.show){var t=w.data;if(this.numberRows){u=this.numberRows;if(!this.numberColumns){o=Math.ceil(t.length/u)}else{o=this.numberColumns}}else{if(this.numberColumns){o=this.numberColumns;u=Math.ceil(t.length/this.numberColumns)}else{u=t.length;o=1}}var n,m,r,g,e,l,k,h;var v=0;for(n=0;n<u;n++){if(q){r=c('<tr class="jqplot-table-legend"></tr>').prependTo(this._elem)}else{r=c('<tr class="jqplot-table-legend"></tr>').appendTo(this._elem)}for(m=0;m<o;m++){if(v<t.length){l=this.labels[v]||t[v][0].toString();h=w.color;if(!q){if(n>0){f=true}else{f=false}}else{if(n==u-1){f=false}else{f=true}}k=(f)?this.rowSpacing:"0";g=c('<td class="jqplot-table-legend" style="text-align:center;padding-top:'+k+';"><div><div class="jqplot-table-legend-swatch" style="border-color:'+h+';"></div></div></td>');e=c('<td class="jqplot-table-legend" style="padding-top:'+k+';"></td>');if(this.escapeHtml){e.text(l)}else{e.html(l)}if(q){e.prependTo(r);g.prependTo(r)}else{g.appendTo(r);e.appendTo(r)}f=true}v++}}}}return this._elem};function a(j,h,f){f=f||{};f.axesDefaults=f.axesDefaults||{};f.legend=f.legend||{};f.seriesDefaults=f.seriesDefaults||{};f.grid=f.grid||{};var e=false;if(f.seriesDefaults.renderer==c.jqplot.MeterGaugeRenderer){e=true}else{if(f.series){for(var g=0;g<f.series.length;g++){if(f.series[g].renderer==c.jqplot.MeterGaugeRenderer){e=true}}}}if(e){f.axesDefaults.renderer=c.jqplot.MeterGaugeAxisRenderer;f.legend.renderer=c.jqplot.MeterGaugeLegendRenderer;f.legend.preDraw=true;f.grid.background=f.grid.background||"white";f.grid.drawGridlines=false;f.grid.borderWidth=(f.grid.borderWidth!=null)?f.grid.borderWidth:0;f.grid.shadow=(f.grid.shadow!=null)?f.grid.shadow:false}}function d(e){}c.jqplot.preInitHooks.push(a);c.jqplot.postParseOptionsHooks.push(d);c.jqplot.MeterGaugeTickRenderer=function(){c.jqplot.AxisTickRenderer.call(this)};c.jqplot.MeterGaugeTickRenderer.prototype=new c.jqplot.AxisTickRenderer();c.jqplot.MeterGaugeTickRenderer.prototype.constructor=c.jqplot.MeterGaugeTickRenderer})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.js
deleted file mode 100644
index 221f92d0..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * jqplot.jquerymobile plugin
- * jQuery Mobile virtual event support.
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2011 Takashi Okamoto
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- */
-(function($) {
- function postInit(target, data, options){
- this.bindCustomEvents = function() {
- this.eventCanvas._elem.bind('vclick', {plot:this}, this.onClick);
- this.eventCanvas._elem.bind('dblclick', {plot:this}, this.onDblClick);
- this.eventCanvas._elem.bind('taphold', {plot:this}, this.onDblClick);
- this.eventCanvas._elem.bind('vmousedown', {plot:this}, this.onMouseDown);
- this.eventCanvas._elem.bind('vmousemove', {plot:this}, this.onMouseMove);
- this.eventCanvas._elem.bind('mouseenter', {plot:this}, this.onMouseEnter);
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, this.onMouseLeave);
- if (this.captureRightClick) {
- this.eventCanvas._elem.bind('vmouseup', {plot:this}, this.onRightClick);
- this.eventCanvas._elem.get(0).oncontextmenu = function() {
- return false;
- };
- }
- else {
- this.eventCanvas._elem.bind('vmouseup', {plot:this}, this.onMouseUp);
- }
- };
- this.plugins.mobile = true;
- }
- $.jqplot.postInitHooks.push(postInit);
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.min.js
deleted file mode 100644
index 41ebe00f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.mobile.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(b){function a(e,d,c){this.bindCustomEvents=function(){this.eventCanvas._elem.bind("vclick",{plot:this},this.onClick);this.eventCanvas._elem.bind("dblclick",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("taphold",{plot:this},this.onDblClick);this.eventCanvas._elem.bind("vmousedown",{plot:this},this.onMouseDown);this.eventCanvas._elem.bind("vmousemove",{plot:this},this.onMouseMove);this.eventCanvas._elem.bind("mouseenter",{plot:this},this.onMouseEnter);this.eventCanvas._elem.bind("mouseleave",{plot:this},this.onMouseLeave);if(this.captureRightClick){this.eventCanvas._elem.bind("vmouseup",{plot:this},this.onRightClick);this.eventCanvas._elem.get(0).oncontextmenu=function(){return false}}else{this.eventCanvas._elem.bind("vmouseup",{plot:this},this.onMouseUp)}};this.plugins.mobile=true}b.jqplot.postInitHooks.push(a)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.js
deleted file mode 100644
index 0fd1de36..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.js
+++ /dev/null
@@ -1,373 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.OHLCRenderer
- * jqPlot Plugin to draw Open Hi Low Close, Candlestick and Hi Low Close charts.
- *
- * To use this plugin, include the renderer js file in
- * your source:
- *
- * > <script type="text/javascript" src="plugins/jqplot.ohlcRenderer.js"></script>
- *
- * You will most likely want to use a date axis renderer
- * for the x axis also, so include the date axis render js file also:
- *
- * > <script type="text/javascript" src="plugins/jqplot.dateAxisRenderer.js"></script>
- *
- * Then you set the renderer in the series options on your plot:
- *
- * > series: [{renderer:$.jqplot.OHLCRenderer}]
- *
- * For OHLC and candlestick charts, data should be specified
- * like so:
- *
- * > dat = [['07/06/2009',138.7,139.68,135.18,135.4], ['06/29/2009',143.46,144.66,139.79,140.02], ...]
- *
- * If the data array has only 4 values per point instead of 5,
- * the renderer will create a Hi Low Close chart instead. In that case,
- * data should be supplied like:
- *
- * > dat = [['07/06/2009',139.68,135.18,135.4], ['06/29/2009',144.66,139.79,140.02], ...]
- *
- * To generate a candlestick chart instead of an OHLC chart,
- * set the "candlestick" option to true:
- *
- * > series: [{renderer:$.jqplot.OHLCRenderer, rendererOptions:{candleStick:true}}],
- *
- */
- $.jqplot.OHLCRenderer = function(){
- // subclass line renderer to make use of some of it's methods.
- $.jqplot.LineRenderer.call(this);
- // prop: candleStick
- // true to render chart as candleStick.
- // Must have an open price, cannot be a hlc chart.
- this.candleStick = false;
- // prop: tickLength
- // length of the line in pixels indicating open and close price.
- // Default will auto calculate based on plot width and
- // number of points displayed.
- this.tickLength = 'auto';
- // prop: bodyWidth
- // width of the candlestick body in pixels. Default will auto calculate
- // based on plot width and number of candlesticks displayed.
- this.bodyWidth = 'auto';
- // prop: openColor
- // color of the open price tick mark. Default is series color.
- this.openColor = null;
- // prop: closeColor
- // color of the close price tick mark. Default is series color.
- this.closeColor = null;
- // prop: wickColor
- // color of the hi-lo line thorugh the candlestick body.
- // Default is the series color.
- this.wickColor = null;
- // prop: fillUpBody
- // true to render an "up" day (close price greater than open price)
- // with a filled candlestick body.
- this.fillUpBody = false;
- // prop: fillDownBody
- // true to render a "down" day (close price lower than open price)
- // with a filled candlestick body.
- this.fillDownBody = true;
- // prop: upBodyColor
- // Color of candlestick body of an "up" day. Default is series color.
- this.upBodyColor = null;
- // prop: downBodyColor
- // Color of candlestick body on a "down" day. Default is series color.
- this.downBodyColor = null;
- // prop: hlc
- // true if is a hi-low-close chart (no open price).
- // This is determined automatically from the series data.
- this.hlc = false;
- // prop: lineWidth
- // Width of the hi-low line and open/close ticks.
- // Must be set in the rendererOptions for the series.
- this.lineWidth = 1.5;
- this._tickLength;
- this._bodyWidth;
- };
-
- $.jqplot.OHLCRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.OHLCRenderer.prototype.constructor = $.jqplot.OHLCRenderer;
-
- // called with scope of series.
- $.jqplot.OHLCRenderer.prototype.init = function(options) {
- options = options || {};
- // lineWidth has to be set on the series, changes in renderer
- // constructor have no effect. set the default here
- // if no renderer option for lineWidth is specified.
- this.lineWidth = options.lineWidth || 1.5;
- $.jqplot.LineRenderer.prototype.init.call(this, options);
- this._type = 'ohlc';
- // set the yaxis data bounds here to account for hi and low values
- var db = this._yaxis._dataBounds;
- var d = this._plotData;
- // if data points have less than 5 values, force a hlc chart.
- if (d[0].length < 5) {
- this.renderer.hlc = true;
-
- for (var j=0; j<d.length; j++) {
- if (d[j][2] < db.min || db.min == null) {
- db.min = d[j][2];
- }
- if (d[j][1] > db.max || db.max == null) {
- db.max = d[j][1];
- }
- }
- }
- else {
- for (var j=0; j<d.length; j++) {
- if (d[j][3] < db.min || db.min == null) {
- db.min = d[j][3];
- }
- if (d[j][2] > db.max || db.max == null) {
- db.max = d[j][2];
- }
- }
- }
-
- };
-
- // called within scope of series.
- $.jqplot.OHLCRenderer.prototype.draw = function(ctx, gd, options) {
- var d = this.data;
- var xmin = this._xaxis.min;
- var xmax = this._xaxis.max;
- // index of last value below range of plot.
- var xminidx = 0;
- // index of first value above range of plot.
- var xmaxidx = d.length;
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var i, prevColor, ops, b, h, w, a, points;
- var o;
- var r = this.renderer;
- var opts = (options != undefined) ? options : {};
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var fillAndStroke = (opts.fillAndStroke != undefined) ? opts.fillAndStroke : this.fillAndStroke;
- r.bodyWidth = (opts.bodyWidth != undefined) ? opts.bodyWidth : r.bodyWidth;
- r.tickLength = (opts.tickLength != undefined) ? opts.tickLength : r.tickLength;
- ctx.save();
- if (this.show) {
- var x, open, hi, low, close;
- // need to get widths based on number of points shown,
- // not on total number of points. Use the results
- // to speed up drawing in next step.
- for (var i=0; i<d.length; i++) {
- if (d[i][0] < xmin) {
- xminidx = i;
- }
- else if (d[i][0] < xmax) {
- xmaxidx = i+1;
- }
- }
-
- var dwidth = this.gridData[xmaxidx-1][0] - this.gridData[xminidx][0];
- var nvisiblePoints = xmaxidx - xminidx;
- try {
- var dinterval = Math.abs(this._xaxis.series_u2p(parseInt(this._xaxis._intervalStats[0].sortedIntervals[0].interval, 10)) - this._xaxis.series_u2p(0));
- }
-
- catch (e) {
- var dinterval = dwidth / nvisiblePoints;
- }
-
- if (r.candleStick) {
- if (typeof(r.bodyWidth) == 'number') {
- r._bodyWidth = r.bodyWidth;
- }
- else {
- r._bodyWidth = Math.min(20, dinterval/1.65);
- }
- }
- else {
- if (typeof(r.tickLength) == 'number') {
- r._tickLength = r.tickLength;
- }
- else {
- r._tickLength = Math.min(10, dinterval/3.5);
- }
- }
-
- for (var i=xminidx; i<xmaxidx; i++) {
- x = xp(d[i][0]);
- if (r.hlc) {
- open = null;
- hi = yp(d[i][1]);
- low = yp(d[i][2]);
- close = yp(d[i][3]);
- }
- else {
- open = yp(d[i][1]);
- hi = yp(d[i][2]);
- low = yp(d[i][3]);
- close = yp(d[i][4]);
- }
- o = {};
- if (r.candleStick && !r.hlc) {
- w = r._bodyWidth;
- a = x - w/2;
- // draw candle
- // determine if candle up or down
- // up, remember grid coordinates increase downward
- if (close < open) {
- // draw wick
- if (r.wickColor) {
- o.color = r.wickColor;
- }
- else if (r.downBodyColor) {
- o.color = r.upBodyColor;
- }
- ops = $.extend(true, {}, opts, o);
- r.shapeRenderer.draw(ctx, [[x, hi], [x, close]], ops);
- r.shapeRenderer.draw(ctx, [[x, open], [x, low]], ops);
- o = {};
- b = close;
- h = open - close;
- // if color specified, use it
- if (r.fillUpBody) {
- o.fillRect = true;
- }
- else {
- o.strokeRect = true;
- w = w - this.lineWidth;
- a = x - w/2;
- }
- if (r.upBodyColor) {
- o.color = r.upBodyColor;
- o.fillStyle = r.upBodyColor;
- }
- points = [a, b, w, h];
- }
- // down
- else if (close > open) {
- // draw wick
- if (r.wickColor) {
- o.color = r.wickColor;
- }
- else if (r.downBodyColor) {
- o.color = r.downBodyColor;
- }
- ops = $.extend(true, {}, opts, o);
- r.shapeRenderer.draw(ctx, [[x, hi], [x, open]], ops);
- r.shapeRenderer.draw(ctx, [[x, close], [x, low]], ops);
-
- o = {};
-
- b = open;
- h = close - open;
- // if color specified, use it
- if (r.fillDownBody) {
- o.fillRect = true;
- }
- else {
- o.strokeRect = true;
- w = w - this.lineWidth;
- a = x - w/2;
- }
- if (r.downBodyColor) {
- o.color = r.downBodyColor;
- o.fillStyle = r.downBodyColor;
- }
- points = [a, b, w, h];
- }
- // even, open = close
- else {
- // draw wick
- if (r.wickColor) {
- o.color = r.wickColor;
- }
- ops = $.extend(true, {}, opts, o);
- r.shapeRenderer.draw(ctx, [[x, hi], [x, low]], ops);
- o = {};
- o.fillRect = false;
- o.strokeRect = false;
- a = [x - w/2, open];
- b = [x + w/2, close];
- w = null;
- h = null;
- points = [a, b];
- }
- ops = $.extend(true, {}, opts, o);
- r.shapeRenderer.draw(ctx, points, ops);
- }
- else {
- prevColor = opts.color;
- if (r.openColor) {
- opts.color = r.openColor;
- }
- // draw open tick
- if (!r.hlc) {
- r.shapeRenderer.draw(ctx, [[x-r._tickLength, open], [x, open]], opts);
- }
- opts.color = prevColor;
- // draw wick
- if (r.wickColor) {
- opts.color = r.wickColor;
- }
- r.shapeRenderer.draw(ctx, [[x, hi], [x, low]], opts);
- opts.color = prevColor;
- // draw close tick
- if (r.closeColor) {
- opts.color = r.closeColor;
- }
- r.shapeRenderer.draw(ctx, [[x, close], [x+r._tickLength, close]], opts);
- opts.color = prevColor;
- }
- }
- }
-
- ctx.restore();
- };
-
- $.jqplot.OHLCRenderer.prototype.drawShadow = function(ctx, gd, options) {
- // This is a no-op, shadows drawn with lines.
- };
-
- // called with scope of plot.
- $.jqplot.OHLCRenderer.checkOptions = function(target, data, options) {
- // provide some sensible highlighter options by default
- // These aren't good for hlc, only for ohlc or candlestick
- if (!options.highlighter) {
- options.highlighter = {
- showMarker:false,
- tooltipAxes: 'y',
- yvalues: 4,
- formatString:'<table class="jqplot-highlighter"><tr><td>date:</td><td>%s</td></tr><tr><td>open:</td><td>%s</td></tr><tr><td>hi:</td><td>%s</td></tr><tr><td>low:</td><td>%s</td></tr><tr><td>close:</td><td>%s</td></tr></table>'
- };
- }
- };
-
- //$.jqplot.preInitHooks.push($.jqplot.OHLCRenderer.checkOptions);
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.min.js
deleted file mode 100644
index 61cd8b88..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.ohlcRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.OHLCRenderer=function(){a.jqplot.LineRenderer.call(this);this.candleStick=false;this.tickLength="auto";this.bodyWidth="auto";this.openColor=null;this.closeColor=null;this.wickColor=null;this.fillUpBody=false;this.fillDownBody=true;this.upBodyColor=null;this.downBodyColor=null;this.hlc=false;this.lineWidth=1.5;this._tickLength;this._bodyWidth};a.jqplot.OHLCRenderer.prototype=new a.jqplot.LineRenderer();a.jqplot.OHLCRenderer.prototype.constructor=a.jqplot.OHLCRenderer;a.jqplot.OHLCRenderer.prototype.init=function(e){e=e||{};this.lineWidth=e.lineWidth||1.5;a.jqplot.LineRenderer.prototype.init.call(this,e);this._type="ohlc";var b=this._yaxis._dataBounds;var f=this._plotData;if(f[0].length<5){this.renderer.hlc=true;for(var c=0;c<f.length;c++){if(f[c][2]<b.min||b.min==null){b.min=f[c][2]}if(f[c][1]>b.max||b.max==null){b.max=f[c][1]}}}else{for(var c=0;c<f.length;c++){if(f[c][3]<b.min||b.min==null){b.min=f[c][3]}if(f[c][2]>b.max||b.max==null){b.max=f[c][2]}}}};a.jqplot.OHLCRenderer.prototype.draw=function(A,N,j){var J=this.data;var v=this._xaxis.min;var z=this._xaxis.max;var l=0;var K=J.length;var p=this._xaxis.series_u2p;var G=this._yaxis.series_u2p;var D,E,f,M,F,n,O,C;var y;var u=this.renderer;var s=(j!=undefined)?j:{};var k=(s.shadow!=undefined)?s.shadow:this.shadow;var B=(s.fill!=undefined)?s.fill:this.fill;var c=(s.fillAndStroke!=undefined)?s.fillAndStroke:this.fillAndStroke;u.bodyWidth=(s.bodyWidth!=undefined)?s.bodyWidth:u.bodyWidth;u.tickLength=(s.tickLength!=undefined)?s.tickLength:u.tickLength;A.save();if(this.show){var m,q,g,Q,t;for(var D=0;D<J.length;D++){if(J[D][0]<v){l=D}else{if(J[D][0]<z){K=D+1}}}var I=this.gridData[K-1][0]-this.gridData[l][0];var L=K-l;try{var P=Math.abs(this._xaxis.series_u2p(parseInt(this._xaxis._intervalStats[0].sortedIntervals[0].interval,10))-this._xaxis.series_u2p(0))}catch(H){var P=I/L}if(u.candleStick){if(typeof(u.bodyWidth)=="number"){u._bodyWidth=u.bodyWidth}else{u._bodyWidth=Math.min(20,P/1.65)}}else{if(typeof(u.tickLength)=="number"){u._tickLength=u.tickLength}else{u._tickLength=Math.min(10,P/3.5)}}for(var D=l;D<K;D++){m=p(J[D][0]);if(u.hlc){q=null;g=G(J[D][1]);Q=G(J[D][2]);t=G(J[D][3])}else{q=G(J[D][1]);g=G(J[D][2]);Q=G(J[D][3]);t=G(J[D][4])}y={};if(u.candleStick&&!u.hlc){n=u._bodyWidth;O=m-n/2;if(t<q){if(u.wickColor){y.color=u.wickColor}else{if(u.downBodyColor){y.color=u.upBodyColor}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,t]],f);u.shapeRenderer.draw(A,[[m,q],[m,Q]],f);y={};M=t;F=q-t;if(u.fillUpBody){y.fillRect=true}else{y.strokeRect=true;n=n-this.lineWidth;O=m-n/2}if(u.upBodyColor){y.color=u.upBodyColor;y.fillStyle=u.upBodyColor}C=[O,M,n,F]}else{if(t>q){if(u.wickColor){y.color=u.wickColor}else{if(u.downBodyColor){y.color=u.downBodyColor}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,q]],f);u.shapeRenderer.draw(A,[[m,t],[m,Q]],f);y={};M=q;F=t-q;if(u.fillDownBody){y.fillRect=true}else{y.strokeRect=true;n=n-this.lineWidth;O=m-n/2}if(u.downBodyColor){y.color=u.downBodyColor;y.fillStyle=u.downBodyColor}C=[O,M,n,F]}else{if(u.wickColor){y.color=u.wickColor}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,[[m,g],[m,Q]],f);y={};y.fillRect=false;y.strokeRect=false;O=[m-n/2,q];M=[m+n/2,t];n=null;F=null;C=[O,M]}}f=a.extend(true,{},s,y);u.shapeRenderer.draw(A,C,f)}else{E=s.color;if(u.openColor){s.color=u.openColor}if(!u.hlc){u.shapeRenderer.draw(A,[[m-u._tickLength,q],[m,q]],s)}s.color=E;if(u.wickColor){s.color=u.wickColor}u.shapeRenderer.draw(A,[[m,g],[m,Q]],s);s.color=E;if(u.closeColor){s.color=u.closeColor}u.shapeRenderer.draw(A,[[m,t],[m+u._tickLength,t]],s);s.color=E}}}A.restore()};a.jqplot.OHLCRenderer.prototype.drawShadow=function(b,d,c){};a.jqplot.OHLCRenderer.checkOptions=function(d,c,b){if(!b.highlighter){b.highlighter={showMarker:false,tooltipAxes:"y",yvalues:4,formatString:'<table class="jqplot-highlighter"><tr><td>date:</td><td>%s</td></tr><tr><td>open:</td><td>%s</td></tr><tr><td>hi:</td><td>%s</td></tr><tr><td>low:</td><td>%s</td></tr><tr><td>close:</td><td>%s</td></tr></table>'}}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.js
deleted file mode 100644
index 6a991aa1..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.js
+++ /dev/null
@@ -1,903 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- /**
- * Class: $.jqplot.PieRenderer
- * Plugin renderer to draw a pie chart.
- * x values, if present, will be used as slice labels.
- * y values give slice size.
- *
- * To use this renderer, you need to include the
- * pie renderer plugin, for example:
- *
- * > <script type="text/javascript" src="plugins/jqplot.pieRenderer.js"></script>
- *
- * Properties described here are passed into the $.jqplot function
- * as options on the series renderer. For example:
- *
- * > plot2 = $.jqplot('chart2', [s1, s2], {
- * > seriesDefaults: {
- * > renderer:$.jqplot.PieRenderer,
- * > rendererOptions:{
- * > sliceMargin: 2,
- * > startAngle: -90
- * > }
- * > }
- * > });
- *
- * A pie plot will trigger events on the plot target
- * according to user interaction. All events return the event object,
- * the series index, the point (slice) index, and the point data for
- * the appropriate slice.
- *
- * 'jqplotDataMouseOver' - triggered when user mouseing over a slice.
- * 'jqplotDataHighlight' - triggered the first time user mouses over a slice,
- * if highlighting is enabled.
- * 'jqplotDataUnhighlight' - triggered when a user moves the mouse out of
- * a highlighted slice.
- * 'jqplotDataClick' - triggered when the user clicks on a slice.
- * 'jqplotDataRightClick' - tiggered when the user right clicks on a slice if
- * the "captureRightClick" option is set to true on the plot.
- */
- $.jqplot.PieRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.PieRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.PieRenderer.prototype.constructor = $.jqplot.PieRenderer;
-
- // called with scope of a series
- $.jqplot.PieRenderer.prototype.init = function(options, plot) {
- // Group: Properties
- //
- // prop: diameter
- // Outer diameter of the pie, auto computed by default
- this.diameter = null;
- // prop: padding
- // padding between the pie and plot edges, legend, etc.
- this.padding = 20;
- // prop: sliceMargin
- // angular spacing between pie slices in degrees.
- this.sliceMargin = 0;
- // prop: fill
- // true or false, wether to fil the slices.
- this.fill = true;
- // prop: shadowOffset
- // offset of the shadow from the slice and offset of
- // each succesive stroke of the shadow from the last.
- this.shadowOffset = 2;
- // prop: shadowAlpha
- // transparency of the shadow (0 = transparent, 1 = opaque)
- this.shadowAlpha = 0.07;
- // prop: shadowDepth
- // number of strokes to apply to the shadow,
- // each stroke offset shadowOffset from the last.
- this.shadowDepth = 5;
- // prop: highlightMouseOver
- // True to highlight slice when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a slice.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a slice.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // an array of colors to use when highlighting a slice.
- this.highlightColors = [];
- // prop: dataLabels
- // Either 'label', 'value', 'percent' or an array of labels to place on the pie slices.
- // Defaults to percentage of each pie slice.
- this.dataLabels = 'percent';
- // prop: showDataLabels
- // true to show data labels on slices.
- this.showDataLabels = false;
- // prop: dataLabelFormatString
- // Format string for data labels. If none, '%s' is used for "label" and for arrays, '%d' for value and '%d%%' for percentage.
- this.dataLabelFormatString = null;
- // prop: dataLabelThreshold
- // Threshhold in percentage (0-100) of pie area, below which no label will be displayed.
- // This applies to all label types, not just to percentage labels.
- this.dataLabelThreshold = 3;
- // prop: dataLabelPositionFactor
- // A Multiplier (0-1) of the pie radius which controls position of label on slice.
- // Increasing will slide label toward edge of pie, decreasing will slide label toward center of pie.
- this.dataLabelPositionFactor = 0.52;
- // prop: dataLabelNudge
- // Number of pixels to slide the label away from (+) or toward (-) the center of the pie.
- this.dataLabelNudge = 2;
- // prop: dataLabelCenterOn
- // True to center the data label at its position.
- // False to set the inside facing edge of the label at its position.
- this.dataLabelCenterOn = true;
- // prop: startAngle
- // Angle to start drawing pie in degrees.
- // According to orientation of canvas coordinate system:
- // 0 = on the positive x axis
- // -90 = on the positive y axis.
- // 90 = on the negaive y axis.
- // 180 or - 180 = on the negative x axis.
- this.startAngle = 0;
- this.tickRenderer = $.jqplot.PieTickRenderer;
- // Used as check for conditions where pie shouldn't be drawn.
- this._drawData = true;
- this._type = 'pie';
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- $.extend(true, this, options);
-
- if (this.sliceMargin < 0) {
- this.sliceMargin = 0;
- }
-
- this._diameter = null;
- this._radius = null;
- // array of [start,end] angles arrays, one for each slice. In radians.
- this._sliceAngles = [];
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
-
- // set highlight colors if none provided
- if (this.highlightColors.length == 0) {
- for (var i=0; i<this.seriesColors.length; i++){
- var rgba = $.jqplot.getColorComponents(this.seriesColors[i]);
- var newrgb = [rgba[0], rgba[1], rgba[2]];
- var sum = newrgb[0] + newrgb[1] + newrgb[2];
- for (var j=0; j<3; j++) {
- // when darkening, lowest color component can be is 60.
- newrgb[j] = (sum > 570) ? newrgb[j] * 0.8 : newrgb[j] + 0.3 * (255 - newrgb[j]);
- newrgb[j] = parseInt(newrgb[j], 10);
- }
- this.highlightColors.push('rgb('+newrgb[0]+','+newrgb[1]+','+newrgb[2]+')');
- }
- }
-
- this.highlightColorGenerator = new $.jqplot.ColorGenerator(this.highlightColors);
-
- plot.postParseOptionsHooks.addOnce(postParseOptions);
- plot.postInitHooks.addOnce(postInit);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
- plot.eventListenerHooks.addOnce('jqplotMouseDown', handleMouseDown);
- plot.eventListenerHooks.addOnce('jqplotMouseUp', handleMouseUp);
- plot.eventListenerHooks.addOnce('jqplotClick', handleClick);
- plot.eventListenerHooks.addOnce('jqplotRightClick', handleRightClick);
- plot.postDrawHooks.addOnce(postPlotDraw);
- };
-
- $.jqplot.PieRenderer.prototype.setGridData = function(plot) {
- // set gridData property. This will hold angle in radians of each data point.
- var stack = [];
- var td = [];
- var sa = this.startAngle/180*Math.PI;
- var tot = 0;
- // don't know if we have any valid data yet, so set plot to not draw.
- this._drawData = false;
- for (var i=0; i<this.data.length; i++){
- if (this.data[i][1] != 0) {
- // we have data, O.K. to draw.
- this._drawData = true;
- }
- stack.push(this.data[i][1]);
- td.push([this.data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- tot += this.data[i][1];
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- td[i][2] = this.data[i][1]/tot;
- }
- this.gridData = td;
- };
-
- $.jqplot.PieRenderer.prototype.makeGridData = function(data, plot) {
- var stack = [];
- var td = [];
- var tot = 0;
- var sa = this.startAngle/180*Math.PI;
- // don't know if we have any valid data yet, so set plot to not draw.
- this._drawData = false;
- for (var i=0; i<data.length; i++){
- if (this.data[i][1] != 0) {
- // we have data, O.K. to draw.
- this._drawData = true;
- }
- stack.push(data[i][1]);
- td.push([data[i][0]]);
- if (i>0) {
- stack[i] += stack[i-1];
- }
- tot += data[i][1];
- }
- var fact = Math.PI*2/stack[stack.length - 1];
-
- for (var i=0; i<stack.length; i++) {
- td[i][1] = stack[i] * fact;
- td[i][2] = data[i][1]/tot;
- }
- return td;
- };
-
- function calcRadiusAdjustment(ang) {
- return Math.sin((ang - (ang-Math.PI) / 8 / Math.PI )/2.0);
- }
-
- function calcRPrime(ang1, ang2, sliceMargin, fill, lineWidth) {
- var rprime = 0;
- var ang = ang2 - ang1;
- var absang = Math.abs(ang);
- var sm = sliceMargin;
- if (fill == false) {
- sm += lineWidth;
- }
-
- if (sm > 0 && absang > 0.01 && absang < 6.282) {
- rprime = parseFloat(sm) / 2.0 / calcRadiusAdjustment(ang);
- }
-
- return rprime;
- }
-
- $.jqplot.PieRenderer.prototype.drawSlice = function (ctx, ang1, ang2, color, isShadow) {
- if (this._drawData) {
- var r = this._radius;
- var fill = this.fill;
- var lineWidth = this.lineWidth;
- var sm = this.sliceMargin;
- if (this.fill == false) {
- sm += this.lineWidth;
- }
- ctx.save();
- ctx.translate(this._center[0], this._center[1]);
-
- var rprime = calcRPrime(ang1, ang2, this.sliceMargin, this.fill, this.lineWidth);
-
- var transx = rprime * Math.cos((ang1 + ang2) / 2.0);
- var transy = rprime * Math.sin((ang1 + ang2) / 2.0);
-
- if ((ang2 - ang1) <= Math.PI) {
- r -= rprime;
- }
- else {
- r += rprime;
- }
-
- ctx.translate(transx, transy);
-
- if (isShadow) {
- for (var i=0, l=this.shadowDepth; i<l; i++) {
- ctx.save();
- ctx.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI), this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));
- doDraw(r);
- }
- for (var i=0, l=this.shadowDepth; i<l; i++) {
- ctx.restore();
- }
- }
-
- else {
- doDraw(r);
- }
- ctx.restore();
- }
-
- function doDraw (rad) {
- // Fix for IE and Chrome that can't seem to draw circles correctly.
- // ang2 should always be <= 2 pi since that is the way the data is converted.
- // 2Pi = 6.2831853, Pi = 3.1415927
- if (ang2 > 6.282 + this.startAngle) {
- ang2 = 6.282 + this.startAngle;
- if (ang1 > ang2) {
- ang1 = 6.281 + this.startAngle;
- }
- }
- // Fix for IE, where it can't seem to handle 0 degree angles. Also avoids
- // ugly line on unfilled pies.
- if (ang1 >= ang2) {
- return;
- }
-
- ctx.beginPath();
- ctx.fillStyle = color;
- ctx.strokeStyle = color;
- ctx.lineWidth = lineWidth;
- ctx.arc(0, 0, rad, ang1, ang2, false);
- ctx.lineTo(0,0);
- ctx.closePath();
-
- if (fill) {
- ctx.fill();
- }
- else {
- ctx.stroke();
- }
- }
- };
-
- // called with scope of series
- $.jqplot.PieRenderer.prototype.draw = function (ctx, gd, options, plot) {
- var i;
- var opts = (options != undefined) ? options : {};
- // offset and direction of offset due to legend placement
- var offx = 0;
- var offy = 0;
- var trans = 1;
- var colorGenerator = new $.jqplot.ColorGenerator(this.seriesColors);
- if (options.legendInfo && options.legendInfo.placement == 'insideGrid') {
- var li = options.legendInfo;
- switch (li.location) {
- case 'nw':
- offx = li.width + li.xoffset;
- break;
- case 'w':
- offx = li.width + li.xoffset;
- break;
- case 'sw':
- offx = li.width + li.xoffset;
- break;
- case 'ne':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'e':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'se':
- offx = li.width + li.xoffset;
- trans = -1;
- break;
- case 'n':
- offy = li.height + li.yoffset;
- break;
- case 's':
- offy = li.height + li.yoffset;
- trans = -1;
- break;
- default:
- break;
- }
- }
-
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var cw = ctx.canvas.width;
- var ch = ctx.canvas.height;
- var w = cw - offx - 2 * this.padding;
- var h = ch - offy - 2 * this.padding;
- var mindim = Math.min(w,h);
- var d = mindim;
-
- // Fixes issue #272. Thanks hugwijst!
- // reset slice angles array.
- this._sliceAngles = [];
-
- var sm = this.sliceMargin;
- if (this.fill == false) {
- sm += this.lineWidth;
- }
-
- var rprime;
- var maxrprime = 0;
-
- var ang, ang1, ang2, shadowColor;
- var sa = this.startAngle / 180 * Math.PI;
-
- // have to pre-draw shadows, so loop throgh here and calculate some values also.
- for (var i=0, l=gd.length; i<l; i++) {
- ang1 = (i == 0) ? sa : gd[i-1][1] + sa;
- ang2 = gd[i][1] + sa;
-
- this._sliceAngles.push([ang1, ang2]);
-
- rprime = calcRPrime(ang1, ang2, this.sliceMargin, this.fill, this.lineWidth);
-
- if (Math.abs(ang2-ang1) > Math.PI) {
- maxrprime = Math.max(rprime, maxrprime);
- }
- }
-
- if (this.diameter != null && this.diameter > 0) {
- this._diameter = this.diameter - 2*maxrprime;
- }
- else {
- this._diameter = d - 2*maxrprime;
- }
-
- // Need to check for undersized pie. This can happen if
- // plot area too small and legend is too big.
- if (this._diameter < 6) {
- $.jqplot.log('Diameter of pie too small, not rendering.');
- return;
- }
-
- var r = this._radius = this._diameter/2;
-
- this._center = [(cw - trans * offx)/2 + trans * offx + maxrprime * Math.cos(sa), (ch - trans*offy)/2 + trans * offy + maxrprime * Math.sin(sa)];
-
- if (this.shadow) {
- for (var i=0, l=gd.length; i<l; i++) {
- shadowColor = 'rgba(0,0,0,'+this.shadowAlpha+')';
- this.renderer.drawSlice.call (this, ctx, this._sliceAngles[i][0], this._sliceAngles[i][1], shadowColor, true);
- }
- }
-
- for (var i=0; i<gd.length; i++) {
-
- this.renderer.drawSlice.call (this, ctx, this._sliceAngles[i][0], this._sliceAngles[i][1], colorGenerator.next(), false);
-
- if (this.showDataLabels && gd[i][2]*100 >= this.dataLabelThreshold) {
- var fstr, avgang = (this._sliceAngles[i][0] + this._sliceAngles[i][1])/2, label;
-
- if (this.dataLabels == 'label') {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, gd[i][0]);
- }
- else if (this.dataLabels == 'value') {
- fstr = this.dataLabelFormatString || '%d';
- label = $.jqplot.sprintf(fstr, this.data[i][1]);
- }
- else if (this.dataLabels == 'percent') {
- fstr = this.dataLabelFormatString || '%d%%';
- label = $.jqplot.sprintf(fstr, gd[i][2]*100);
- }
- else if (this.dataLabels.constructor == Array) {
- fstr = this.dataLabelFormatString || '%s';
- label = $.jqplot.sprintf(fstr, this.dataLabels[i]);
- }
-
- var fact = (this._radius ) * this.dataLabelPositionFactor + this.sliceMargin + this.dataLabelNudge;
-
- var x = this._center[0] + Math.cos(avgang) * fact + this.canvas._offsets.left;
- var y = this._center[1] + Math.sin(avgang) * fact + this.canvas._offsets.top;
-
- var labelelem = $('<div class="jqplot-pie-series jqplot-data-label" style="position:absolute;">' + label + '</div>').insertBefore(plot.eventCanvas._elem);
- if (this.dataLabelCenterOn) {
- x -= labelelem.width()/2;
- y -= labelelem.height()/2;
- }
- else {
- x -= labelelem.width() * Math.sin(avgang/2);
- y -= labelelem.height()/2;
- }
- x = Math.round(x);
- y = Math.round(y);
- labelelem.css({left: x, top: y});
- }
- }
- };
-
- $.jqplot.PieAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.PieAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.PieAxisRenderer.prototype.constructor = $.jqplot.PieAxisRenderer;
-
-
- // There are no traditional axes on a pie chart. We just need to provide
- // dummy objects with properties so the plot will render.
- // called with scope of axis object.
- $.jqplot.PieAxisRenderer.prototype.init = function(options){
- //
- this.tickRenderer = $.jqplot.PieTickRenderer;
- $.extend(true, this, options);
- // I don't think I'm going to need _dataBounds here.
- // have to go Axis scaling in a way to fit chart onto plot area
- // and provide u2p and p2u functionality for mouse cursor, etc.
- // for convienence set _dataBounds to 0 and 100 and
- // set min/max to 0 and 100.
- this._dataBounds = {min:0, max:100};
- this.min = 0;
- this.max = 100;
- this.showTicks = false;
- this.ticks = [];
- this.showMark = false;
- this.show = false;
- };
-
-
-
-
- $.jqplot.PieLegendRenderer = function(){
- $.jqplot.TableLegendRenderer.call(this);
- };
-
- $.jqplot.PieLegendRenderer.prototype = new $.jqplot.TableLegendRenderer();
- $.jqplot.PieLegendRenderer.prototype.constructor = $.jqplot.PieLegendRenderer;
-
- /**
- * Class: $.jqplot.PieLegendRenderer
- * Legend Renderer specific to pie plots. Set by default
- * when user creates a pie plot.
- */
- $.jqplot.PieLegendRenderer.prototype.init = function(options) {
- // Group: Properties
- //
- // prop: numberRows
- // Maximum number of rows in the legend. 0 or null for unlimited.
- this.numberRows = null;
- // prop: numberColumns
- // Maximum number of columns in the legend. 0 or null for unlimited.
- this.numberColumns = null;
- $.extend(true, this, options);
- };
-
- // called with context of legend
- $.jqplot.PieLegendRenderer.prototype.draw = function() {
- var legend = this;
- if (this.show) {
- var series = this._series;
-
-
- this._elem = $(document.createElement('table'));
- this._elem.addClass('jqplot-table-legend');
-
- var ss = {position:'absolute'};
- if (this.background) {
- ss['background'] = this.background;
- }
- if (this.border) {
- ss['border'] = this.border;
- }
- if (this.fontSize) {
- ss['fontSize'] = this.fontSize;
- }
- if (this.fontFamily) {
- ss['fontFamily'] = this.fontFamily;
- }
- if (this.textColor) {
- ss['textColor'] = this.textColor;
- }
- if (this.marginTop != null) {
- ss['marginTop'] = this.marginTop;
- }
- if (this.marginBottom != null) {
- ss['marginBottom'] = this.marginBottom;
- }
- if (this.marginLeft != null) {
- ss['marginLeft'] = this.marginLeft;
- }
- if (this.marginRight != null) {
- ss['marginRight'] = this.marginRight;
- }
-
- this._elem.css(ss);
-
- // Pie charts legends don't go by number of series, but by number of data points
- // in the series. Refactor things here for that.
-
- var pad = false,
- reverse = false,
- nr,
- nc;
- var s = series[0];
- var colorGenerator = new $.jqplot.ColorGenerator(s.seriesColors);
-
- if (s.show) {
- var pd = s.data;
- if (this.numberRows) {
- nr = this.numberRows;
- if (!this.numberColumns){
- nc = Math.ceil(pd.length/nr);
- }
- else{
- nc = this.numberColumns;
- }
- }
- else if (this.numberColumns) {
- nc = this.numberColumns;
- nr = Math.ceil(pd.length/this.numberColumns);
- }
- else {
- nr = pd.length;
- nc = 1;
- }
-
- var i, j;
- var tr, td1, td2;
- var lt, rs, color;
- var idx = 0;
- var div0, div1;
-
- for (i=0; i<nr; i++) {
- tr = $(document.createElement('tr'));
- tr.addClass('jqplot-table-legend');
-
- if (reverse){
- tr.prependTo(this._elem);
- }
-
- else{
- tr.appendTo(this._elem);
- }
-
- for (j=0; j<nc; j++) {
- if (idx < pd.length){
- lt = this.labels[idx] || pd[idx][0].toString();
- color = colorGenerator.next();
- if (!reverse){
- if (i>0){
- pad = true;
- }
- else{
- pad = false;
- }
- }
- else{
- if (i == nr -1){
- pad = false;
- }
- else{
- pad = true;
- }
- }
- rs = (pad) ? this.rowSpacing : '0';
-
-
-
- td1 = $(document.createElement('td'));
- td1.addClass('jqplot-table-legend jqplot-table-legend-swatch');
- td1.css({textAlign: 'center', paddingTop: rs});
-
- div0 = $(document.createElement('div'));
- div0.addClass('jqplot-table-legend-swatch-outline');
- div1 = $(document.createElement('div'));
- div1.addClass('jqplot-table-legend-swatch');
- div1.css({backgroundColor: color, borderColor: color});
- td1.append(div0.append(div1));
-
- td2 = $(document.createElement('td'));
- td2.addClass('jqplot-table-legend jqplot-table-legend-label');
- td2.css('paddingTop', rs);
-
- if (this.escapeHtml){
- td2.text(lt);
- }
- else {
- td2.html(lt);
- }
- if (reverse) {
- td2.prependTo(tr);
- td1.prependTo(tr);
- }
- else {
- td1.appendTo(tr);
- td2.appendTo(tr);
- }
- pad = true;
- }
- idx++;
- }
- }
- }
- }
- return this._elem;
- };
-
- $.jqplot.PieRenderer.prototype.handleMove = function(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- plot.target.trigger('jqplotDataMouseOver', ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.pieRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- plot.target.trigger('jqplotDataHighlight', ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- };
-
-
- // this.eventCanvas._elem.bind($.jqplot.eventListenerHooks[i][0], {plot:this}, $.jqplot.eventListenerHooks[i][1]);
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- // only set these if there is a pie series
- var setopts = false;
- if (options.seriesDefaults.renderer == $.jqplot.PieRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer == $.jqplot.PieRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.PieAxisRenderer;
- options.legend.renderer = $.jqplot.PieLegendRenderer;
- options.legend.preDraw = true;
- options.seriesDefaults.pointLabels = {show: false};
- }
- }
-
- function postInit(target, data, options) {
- for (var i=0; i<this.series.length; i++) {
- if (this.series[i].renderer.constructor == $.jqplot.PieRenderer) {
- // don't allow mouseover and mousedown at same time.
- if (this.series[i].highlightMouseOver) {
- this.series[i].highlightMouseDown = false;
- }
- }
- }
- }
-
- // called with scope of plot
- function postParseOptions(options) {
- for (var i=0; i<this.series.length; i++) {
- this.series[i].seriesColors = this.seriesColors;
- this.series[i].colorGenerator = $.jqplot.colorGenerator;
- }
- }
-
- function highlight (plot, sidx, pidx) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.pieRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.pieRenderer.highlightedSeriesIndex = sidx;
- s.renderer.drawSlice.call(s, canvas._ctx, s._sliceAngles[pidx][0], s._sliceAngles[pidx][1], s.highlightColorGenerator.get(pidx), false);
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.pieRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.pieRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- }
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.pieRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseDown(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- if (plot.series[ins[0]].highlightMouseDown && !(ins[0] == plot.plugins.pieRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, ins[0], ins[1]);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- function handleMouseUp(ev, gridpos, datapos, neighbor, plot) {
- var idx = plot.plugins.pieRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- }
-
- function handleClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt = jQuery.Event('jqplotDataClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- function handleRightClick(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var idx = plot.plugins.pieRenderer.highlightedSeriesIndex;
- if (idx != null && plot.series[idx].highlightMouseDown) {
- unhighlight(plot);
- }
- var evt = jQuery.Event('jqplotDataRightClick');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.pieRenderer && this.plugins.pieRenderer.highlightCanvas) {
- this.plugins.pieRenderer.highlightCanvas.resetCanvas();
- this.plugins.pieRenderer.highlightCanvas = null;
- }
-
- this.plugins.pieRenderer = {highlightedSeriesIndex:null};
- this.plugins.pieRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
-
- // do we have any data labels? if so, put highlight canvas before those
- var labels = $(this.targetId+' .jqplot-data-label');
- if (labels.length) {
- $(labels[0]).before(this.plugins.pieRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-pieRenderer-highlight-canvas', this._plotDimensions, this));
- }
- // else put highlight canvas before event canvas.
- else {
- this.eventCanvas._elem.before(this.plugins.pieRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-pieRenderer-highlight-canvas', this._plotDimensions, this));
- }
-
- var hctx = this.plugins.pieRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- $.jqplot.preInitHooks.push(preInit);
-
- $.jqplot.PieTickRenderer = function() {
- $.jqplot.AxisTickRenderer.call(this);
- };
-
- $.jqplot.PieTickRenderer.prototype = new $.jqplot.AxisTickRenderer();
- $.jqplot.PieTickRenderer.prototype.constructor = $.jqplot.PieTickRenderer;
-
-})(jQuery);
-
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.min.js
deleted file mode 100644
index 0c5738a7..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pieRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(e){e.jqplot.PieRenderer=function(){e.jqplot.LineRenderer.call(this)};e.jqplot.PieRenderer.prototype=new e.jqplot.LineRenderer();e.jqplot.PieRenderer.prototype.constructor=e.jqplot.PieRenderer;e.jqplot.PieRenderer.prototype.init=function(q,u){this.diameter=null;this.padding=20;this.sliceMargin=0;this.fill=true;this.shadowOffset=2;this.shadowAlpha=0.07;this.shadowDepth=5;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.dataLabels="percent";this.showDataLabels=false;this.dataLabelFormatString=null;this.dataLabelThreshold=3;this.dataLabelPositionFactor=0.52;this.dataLabelNudge=2;this.dataLabelCenterOn=true;this.startAngle=0;this.tickRenderer=e.jqplot.PieTickRenderer;this._drawData=true;this._type="pie";if(q.highlightMouseDown&&q.highlightMouseOver==null){q.highlightMouseOver=false}e.extend(true,this,q);if(this.sliceMargin<0){this.sliceMargin=0}this._diameter=null;this._radius=null;this._sliceAngles=[];this._highlightedPoint=null;if(this.highlightColors.length==0){for(var s=0;s<this.seriesColors.length;s++){var r=e.jqplot.getColorComponents(this.seriesColors[s]);var o=[r[0],r[1],r[2]];var t=o[0]+o[1]+o[2];for(var p=0;p<3;p++){o[p]=(t>570)?o[p]*0.8:o[p]+0.3*(255-o[p]);o[p]=parseInt(o[p],10)}this.highlightColors.push("rgb("+o[0]+","+o[1]+","+o[2]+")")}}this.highlightColorGenerator=new e.jqplot.ColorGenerator(this.highlightColors);u.postParseOptionsHooks.addOnce(m);u.postInitHooks.addOnce(g);u.eventListenerHooks.addOnce("jqplotMouseMove",b);u.eventListenerHooks.addOnce("jqplotMouseDown",a);u.eventListenerHooks.addOnce("jqplotMouseUp",l);u.eventListenerHooks.addOnce("jqplotClick",f);u.eventListenerHooks.addOnce("jqplotRightClick",n);u.postDrawHooks.addOnce(i)};e.jqplot.PieRenderer.prototype.setGridData=function(t){var p=[];var u=[];var o=this.startAngle/180*Math.PI;var s=0;this._drawData=false;for(var r=0;r<this.data.length;r++){if(this.data[r][1]!=0){this._drawData=true}p.push(this.data[r][1]);u.push([this.data[r][0]]);if(r>0){p[r]+=p[r-1]}s+=this.data[r][1]}var q=Math.PI*2/p[p.length-1];for(var r=0;r<p.length;r++){u[r][1]=p[r]*q;u[r][2]=this.data[r][1]/s}this.gridData=u};e.jqplot.PieRenderer.prototype.makeGridData=function(t,u){var p=[];var v=[];var s=0;var o=this.startAngle/180*Math.PI;this._drawData=false;for(var r=0;r<t.length;r++){if(this.data[r][1]!=0){this._drawData=true}p.push(t[r][1]);v.push([t[r][0]]);if(r>0){p[r]+=p[r-1]}s+=t[r][1]}var q=Math.PI*2/p[p.length-1];for(var r=0;r<p.length;r++){v[r][1]=p[r]*q;v[r][2]=t[r][1]/s}return v};function h(o){return Math.sin((o-(o-Math.PI)/8/Math.PI)/2)}function j(u,t,o,v,r){var w=0;var q=t-u;var s=Math.abs(q);var p=o;if(v==false){p+=r}if(p>0&&s>0.01&&s<6.282){w=parseFloat(p)/2/h(q)}return w}e.jqplot.PieRenderer.prototype.drawSlice=function(B,z,y,u,w){if(this._drawData){var p=this._radius;var A=this.fill;var x=this.lineWidth;var s=this.sliceMargin;if(this.fill==false){s+=this.lineWidth}B.save();B.translate(this._center[0],this._center[1]);var D=j(z,y,this.sliceMargin,this.fill,this.lineWidth);var o=D*Math.cos((z+y)/2);var C=D*Math.sin((z+y)/2);if((y-z)<=Math.PI){p-=D}else{p+=D}B.translate(o,C);if(w){for(var v=0,t=this.shadowDepth;v<t;v++){B.save();B.translate(this.shadowOffset*Math.cos(this.shadowAngle/180*Math.PI),this.shadowOffset*Math.sin(this.shadowAngle/180*Math.PI));q(p)}for(var v=0,t=this.shadowDepth;v<t;v++){B.restore()}}else{q(p)}B.restore()}function q(r){if(y>6.282+this.startAngle){y=6.282+this.startAngle;if(z>y){z=6.281+this.startAngle}}if(z>=y){return}B.beginPath();B.fillStyle=u;B.strokeStyle=u;B.lineWidth=x;B.arc(0,0,r,z,y,false);B.lineTo(0,0);B.closePath();if(A){B.fill()}else{B.stroke()}}};e.jqplot.PieRenderer.prototype.draw=function(B,z,E,o){var W;var H=(E!=undefined)?E:{};var t=0;var s=0;var N=1;var L=new e.jqplot.ColorGenerator(this.seriesColors);if(E.legendInfo&&E.legendInfo.placement=="insideGrid"){var J=E.legendInfo;switch(J.location){case"nw":t=J.width+J.xoffset;break;case"w":t=J.width+J.xoffset;break;case"sw":t=J.width+J.xoffset;break;case"ne":t=J.width+J.xoffset;N=-1;break;case"e":t=J.width+J.xoffset;N=-1;break;case"se":t=J.width+J.xoffset;N=-1;break;case"n":s=J.height+J.yoffset;break;case"s":s=J.height+J.yoffset;N=-1;break;default:break}}var K=(H.shadow!=undefined)?H.shadow:this.shadow;var A=(H.fill!=undefined)?H.fill:this.fill;var C=B.canvas.width;var I=B.canvas.height;var Q=C-t-2*this.padding;var X=I-s-2*this.padding;var M=Math.min(Q,X);var Y=M;this._sliceAngles=[];var v=this.sliceMargin;if(this.fill==false){v+=this.lineWidth}var q;var G=0;var R,aa,Z,ab;var D=this.startAngle/180*Math.PI;for(var W=0,V=z.length;W<V;W++){aa=(W==0)?D:z[W-1][1]+D;Z=z[W][1]+D;this._sliceAngles.push([aa,Z]);q=j(aa,Z,this.sliceMargin,this.fill,this.lineWidth);if(Math.abs(Z-aa)>Math.PI){G=Math.max(q,G)}}if(this.diameter!=null&&this.diameter>0){this._diameter=this.diameter-2*G}else{this._diameter=Y-2*G}if(this._diameter<6){e.jqplot.log("Diameter of pie too small, not rendering.");return}var S=this._radius=this._diameter/2;this._center=[(C-N*t)/2+N*t+G*Math.cos(D),(I-N*s)/2+N*s+G*Math.sin(D)];if(this.shadow){for(var W=0,V=z.length;W<V;W++){ab="rgba(0,0,0,"+this.shadowAlpha+")";this.renderer.drawSlice.call(this,B,this._sliceAngles[W][0],this._sliceAngles[W][1],ab,true)}}for(var W=0;W<z.length;W++){this.renderer.drawSlice.call(this,B,this._sliceAngles[W][0],this._sliceAngles[W][1],L.next(),false);if(this.showDataLabels&&z[W][2]*100>=this.dataLabelThreshold){var F,U=(this._sliceAngles[W][0]+this._sliceAngles[W][1])/2,T;if(this.dataLabels=="label"){F=this.dataLabelFormatString||"%s";T=e.jqplot.sprintf(F,z[W][0])}else{if(this.dataLabels=="value"){F=this.dataLabelFormatString||"%d";T=e.jqplot.sprintf(F,this.data[W][1])}else{if(this.dataLabels=="percent"){F=this.dataLabelFormatString||"%d%%";T=e.jqplot.sprintf(F,z[W][2]*100)}else{if(this.dataLabels.constructor==Array){F=this.dataLabelFormatString||"%s";T=e.jqplot.sprintf(F,this.dataLabels[W])}}}}var p=(this._radius)*this.dataLabelPositionFactor+this.sliceMargin+this.dataLabelNudge;var P=this._center[0]+Math.cos(U)*p+this.canvas._offsets.left;var O=this._center[1]+Math.sin(U)*p+this.canvas._offsets.top;var u=e('<div class="jqplot-pie-series jqplot-data-label" style="position:absolute;">'+T+"</div>").insertBefore(o.eventCanvas._elem);if(this.dataLabelCenterOn){P-=u.width()/2;O-=u.height()/2}else{P-=u.width()*Math.sin(U/2);O-=u.height()/2}P=Math.round(P);O=Math.round(O);u.css({left:P,top:O})}}};e.jqplot.PieAxisRenderer=function(){e.jqplot.LinearAxisRenderer.call(this)};e.jqplot.PieAxisRenderer.prototype=new e.jqplot.LinearAxisRenderer();e.jqplot.PieAxisRenderer.prototype.constructor=e.jqplot.PieAxisRenderer;e.jqplot.PieAxisRenderer.prototype.init=function(o){this.tickRenderer=e.jqplot.PieTickRenderer;e.extend(true,this,o);this._dataBounds={min:0,max:100};this.min=0;this.max=100;this.showTicks=false;this.ticks=[];this.showMark=false;this.show=false};e.jqplot.PieLegendRenderer=function(){e.jqplot.TableLegendRenderer.call(this)};e.jqplot.PieLegendRenderer.prototype=new e.jqplot.TableLegendRenderer();e.jqplot.PieLegendRenderer.prototype.constructor=e.jqplot.PieLegendRenderer;e.jqplot.PieLegendRenderer.prototype.init=function(o){this.numberRows=null;this.numberColumns=null;e.extend(true,this,o)};e.jqplot.PieLegendRenderer.prototype.draw=function(){var r=this;if(this.show){var B=this._series;this._elem=e(document.createElement("table"));this._elem.addClass("jqplot-table-legend");var E={position:"absolute"};if(this.background){E.background=this.background}if(this.border){E.border=this.border}if(this.fontSize){E.fontSize=this.fontSize}if(this.fontFamily){E.fontFamily=this.fontFamily}if(this.textColor){E.textColor=this.textColor}if(this.marginTop!=null){E.marginTop=this.marginTop}if(this.marginBottom!=null){E.marginBottom=this.marginBottom}if(this.marginLeft!=null){E.marginLeft=this.marginLeft}if(this.marginRight!=null){E.marginRight=this.marginRight}this._elem.css(E);var I=false,A=false,o,y;var C=B[0];var p=new e.jqplot.ColorGenerator(C.seriesColors);if(C.show){var J=C.data;if(this.numberRows){o=this.numberRows;if(!this.numberColumns){y=Math.ceil(J.length/o)}else{y=this.numberColumns}}else{if(this.numberColumns){y=this.numberColumns;o=Math.ceil(J.length/this.numberColumns)}else{o=J.length;y=1}}var H,G;var q,w,v;var x,z,F;var D=0;var u,t;for(H=0;H<o;H++){q=e(document.createElement("tr"));q.addClass("jqplot-table-legend");if(A){q.prependTo(this._elem)}else{q.appendTo(this._elem)}for(G=0;G<y;G++){if(D<J.length){x=this.labels[D]||J[D][0].toString();F=p.next();if(!A){if(H>0){I=true}else{I=false}}else{if(H==o-1){I=false}else{I=true}}z=(I)?this.rowSpacing:"0";w=e(document.createElement("td"));w.addClass("jqplot-table-legend jqplot-table-legend-swatch");w.css({textAlign:"center",paddingTop:z});u=e(document.createElement("div"));u.addClass("jqplot-table-legend-swatch-outline");t=e(document.createElement("div"));t.addClass("jqplot-table-legend-swatch");t.css({backgroundColor:F,borderColor:F});w.append(u.append(t));v=e(document.createElement("td"));v.addClass("jqplot-table-legend jqplot-table-legend-label");v.css("paddingTop",z);if(this.escapeHtml){v.text(x)}else{v.html(x)}if(A){v.prependTo(q);w.prependTo(q)}else{w.appendTo(q);v.appendTo(q)}I=true}D++}}}}return this._elem};e.jqplot.PieRenderer.prototype.handleMove=function(q,p,t,s,r){if(s){var o=[s.seriesIndex,s.pointIndex,s.data];r.target.trigger("jqplotDataMouseOver",o);if(r.series[o[0]].highlightMouseOver&&!(o[0]==r.plugins.pieRenderer.highlightedSeriesIndex&&o[1]==r.series[o[0]]._highlightedPoint)){r.target.trigger("jqplotDataHighlight",o);d(r,o[0],o[1])}}else{if(s==null){k(r)}}};function c(s,r,p){p=p||{};p.axesDefaults=p.axesDefaults||{};p.legend=p.legend||{};p.seriesDefaults=p.seriesDefaults||{};var o=false;if(p.seriesDefaults.renderer==e.jqplot.PieRenderer){o=true}else{if(p.series){for(var q=0;q<p.series.length;q++){if(p.series[q].renderer==e.jqplot.PieRenderer){o=true}}}}if(o){p.axesDefaults.renderer=e.jqplot.PieAxisRenderer;p.legend.renderer=e.jqplot.PieLegendRenderer;p.legend.preDraw=true;p.seriesDefaults.pointLabels={show:false}}}function g(r,q,o){for(var p=0;p<this.series.length;p++){if(this.series[p].renderer.constructor==e.jqplot.PieRenderer){if(this.series[p].highlightMouseOver){this.series[p].highlightMouseDown=false}}}}function m(o){for(var p=0;p<this.series.length;p++){this.series[p].seriesColors=this.seriesColors;this.series[p].colorGenerator=e.jqplot.colorGenerator}}function d(t,r,q){var p=t.series[r];var o=t.plugins.pieRenderer.highlightCanvas;o._ctx.clearRect(0,0,o._ctx.canvas.width,o._ctx.canvas.height);p._highlightedPoint=q;t.plugins.pieRenderer.highlightedSeriesIndex=r;p.renderer.drawSlice.call(p,o._ctx,p._sliceAngles[q][0],p._sliceAngles[q][1],p.highlightColorGenerator.get(q),false)}function k(q){var o=q.plugins.pieRenderer.highlightCanvas;o._ctx.clearRect(0,0,o._ctx.canvas.width,o._ctx.canvas.height);for(var p=0;p<q.series.length;p++){q.series[p]._highlightedPoint=null}q.plugins.pieRenderer.highlightedSeriesIndex=null;q.target.trigger("jqplotDataUnhighlight")}function b(s,r,v,u,t){if(u){var q=[u.seriesIndex,u.pointIndex,u.data];var p=jQuery.Event("jqplotDataMouseOver");p.pageX=s.pageX;p.pageY=s.pageY;t.target.trigger(p,q);if(t.series[q[0]].highlightMouseOver&&!(q[0]==t.plugins.pieRenderer.highlightedSeriesIndex&&q[1]==t.series[q[0]]._highlightedPoint)){var o=jQuery.Event("jqplotDataHighlight");o.which=s.which;o.pageX=s.pageX;o.pageY=s.pageY;t.target.trigger(o,q);d(t,q[0],q[1])}}else{if(u==null){k(t)}}}function a(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];if(s.series[p[0]].highlightMouseDown&&!(p[0]==s.plugins.pieRenderer.highlightedSeriesIndex&&p[1]==s.series[p[0]]._highlightedPoint)){var o=jQuery.Event("jqplotDataHighlight");o.which=r.which;o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p);d(s,p[0],p[1])}}else{if(t==null){k(s)}}}function l(q,p,t,s,r){var o=r.plugins.pieRenderer.highlightedSeriesIndex;if(o!=null&&r.series[o].highlightMouseDown){k(r)}}function f(r,q,u,t,s){if(t){var p=[t.seriesIndex,t.pointIndex,t.data];var o=jQuery.Event("jqplotDataClick");o.which=r.which;o.pageX=r.pageX;o.pageY=r.pageY;s.target.trigger(o,p)}}function n(s,r,v,u,t){if(u){var q=[u.seriesIndex,u.pointIndex,u.data];var o=t.plugins.pieRenderer.highlightedSeriesIndex;if(o!=null&&t.series[o].highlightMouseDown){k(t)}var p=jQuery.Event("jqplotDataRightClick");p.which=s.which;p.pageX=s.pageX;p.pageY=s.pageY;t.target.trigger(p,q)}}function i(){if(this.plugins.pieRenderer&&this.plugins.pieRenderer.highlightCanvas){this.plugins.pieRenderer.highlightCanvas.resetCanvas();this.plugins.pieRenderer.highlightCanvas=null}this.plugins.pieRenderer={highlightedSeriesIndex:null};this.plugins.pieRenderer.highlightCanvas=new e.jqplot.GenericCanvas();var p=e(this.targetId+" .jqplot-data-label");if(p.length){e(p[0]).before(this.plugins.pieRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-pieRenderer-highlight-canvas",this._plotDimensions,this))}else{this.eventCanvas._elem.before(this.plugins.pieRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-pieRenderer-highlight-canvas",this._plotDimensions,this))}var o=this.plugins.pieRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(q){k(q.data.plot)})}e.jqplot.preInitHooks.push(c);e.jqplot.PieTickRenderer=function(){e.jqplot.AxisTickRenderer.call(this)};e.jqplot.PieTickRenderer.prototype=new e.jqplot.AxisTickRenderer();e.jqplot.PieTickRenderer.prototype.constructor=e.jqplot.PieTickRenderer})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.js
deleted file mode 100644
index 0cc44443..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.js
+++ /dev/null
@@ -1,379 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- /**
- * Class: $.jqplot.PointLabels
- * Plugin for putting labels at the data points.
- *
- * To use this plugin, include the js
- * file in your source:
- *
- * > <script type="text/javascript" src="plugins/jqplot.pointLabels.js"></script>
- *
- * By default, the last value in the data ponit array in the data series is used
- * for the label. For most series renderers, extra data can be added to the
- * data point arrays and the last value will be used as the label.
- *
- * For instance,
- * this series:
- *
- * > [[1,4], [3,5], [7,2]]
- *
- * Would, by default, use the y values in the labels.
- * Extra data can be added to the series like so:
- *
- * > [[1,4,'mid'], [3 5,'hi'], [7,2,'low']]
- *
- * And now the point labels would be 'mid', 'low', and 'hi'.
- *
- * Options to the point labels and a custom labels array can be passed into the
- * "pointLabels" option on the series option like so:
- *
- * > series:[{pointLabels:{
- * > labels:['mid', 'hi', 'low'],
- * > location:'se',
- * > ypadding: 12
- * > }
- * > }]
- *
- * A custom labels array in the options takes precendence over any labels
- * in the series data. If you have a custom labels array in the options,
- * but still want to use values from the series array as labels, set the
- * "labelsFromSeries" option to true.
- *
- * By default, html entities (<, >, etc.) are escaped in point labels.
- * If you want to include actual html markup in the labels,
- * set the "escapeHTML" option to false.
- *
- */
- $.jqplot.PointLabels = function(options) {
- // Group: Properties
- //
- // prop: show
- // show the labels or not.
- this.show = $.jqplot.config.enablePlugins;
- // prop: location
- // compass location where to position the label around the point.
- // 'n', 'ne', 'e', 'se', 's', 'sw', 'w', 'nw'
- this.location = 'n';
- // prop: labelsFromSeries
- // true to use labels within data point arrays.
- this.labelsFromSeries = false;
- // prop: seriesLabelIndex
- // array index for location of labels within data point arrays.
- // if null, will use the last element of the data point array.
- this.seriesLabelIndex = null;
- // prop: labels
- // array of arrays of labels, one array for each series.
- this.labels = [];
- // actual labels that will get displayed.
- // needed to preserve user specified labels in labels array.
- this._labels = [];
- // prop: stackedValue
- // true to display value as stacked in a stacked plot.
- // no effect if labels is specified.
- this.stackedValue = false;
- // prop: ypadding
- // vertical padding in pixels between point and label
- this.ypadding = 6;
- // prop: xpadding
- // horizontal padding in pixels between point and label
- this.xpadding = 6;
- // prop: escapeHTML
- // true to escape html entities in the labels.
- // If you want to include markup in the labels, set to false.
- this.escapeHTML = true;
- // prop: edgeTolerance
- // Number of pixels that the label must be away from an axis
- // boundary in order to be drawn. Negative values will allow overlap
- // with the grid boundaries.
- this.edgeTolerance = -5;
- // prop: formatter
- // A class of a formatter for the tick text. sprintf by default.
- this.formatter = $.jqplot.DefaultTickFormatter;
- // prop: formatString
- // string passed to the formatter.
- this.formatString = '';
- // prop: hideZeros
- // true to not show a label for a value which is 0.
- this.hideZeros = false;
- this._elems = [];
-
- $.extend(true, this, options);
- };
-
- var locations = ['nw', 'n', 'ne', 'e', 'se', 's', 'sw', 'w'];
- var locationIndicies = {'nw':0, 'n':1, 'ne':2, 'e':3, 'se':4, 's':5, 'sw':6, 'w':7};
- var oppositeLocations = ['se', 's', 'sw', 'w', 'nw', 'n', 'ne', 'e'];
-
- // called with scope of a series
- $.jqplot.PointLabels.init = function (target, data, seriesDefaults, opts, plot){
- var options = $.extend(true, {}, seriesDefaults, opts);
- options.pointLabels = options.pointLabels || {};
- if (this.renderer.constructor === $.jqplot.BarRenderer && this.barDirection === 'horizontal' && !options.pointLabels.location) {
- options.pointLabels.location = 'e';
- }
- // add a pointLabels attribute to the series plugins
- this.plugins.pointLabels = new $.jqplot.PointLabels(options.pointLabels);
- this.plugins.pointLabels.setLabels.call(this);
- };
-
- // called with scope of series
- $.jqplot.PointLabels.prototype.setLabels = function() {
- var p = this.plugins.pointLabels;
- var labelIdx;
- if (p.seriesLabelIndex != null) {
- labelIdx = p.seriesLabelIndex;
- }
- else if (this.renderer.constructor === $.jqplot.BarRenderer && this.barDirection === 'horizontal') {
- labelIdx = 0;
- }
- else {
- labelIdx = (this._plotData.length === 0) ? 0 : this._plotData[0].length -1;
- }
- p._labels = [];
- if (p.labels.length === 0 || p.labelsFromSeries) {
- if (p.stackedValue) {
- if (this._plotData.length && this._plotData[0].length){
- // var idx = p.seriesLabelIndex || this._plotData[0].length -1;
- for (var i=0; i<this._plotData.length; i++) {
- p._labels.push(this._plotData[i][labelIdx]);
- }
- }
- }
- else {
- // var d = this._plotData;
- var d = this.data;
- if (this.renderer.constructor === $.jqplot.BarRenderer && this.waterfall) {
- d = this._data;
- }
- if (d.length && d[0].length) {
- // var idx = p.seriesLabelIndex || d[0].length -1;
- for (var i=0; i<d.length; i++) {
- p._labels.push(d[i][labelIdx]);
- }
- }
- d = null;
- }
- }
- else if (p.labels.length){
- p._labels = p.labels;
- }
- };
-
- $.jqplot.PointLabels.prototype.xOffset = function(elem, location, padding) {
- location = location || this.location;
- padding = padding || this.xpadding;
- var offset;
-
- switch (location) {
- case 'nw':
- offset = -elem.outerWidth(true) - this.xpadding;
- break;
- case 'n':
- offset = -elem.outerWidth(true)/2;
- break;
- case 'ne':
- offset = this.xpadding;
- break;
- case 'e':
- offset = this.xpadding;
- break;
- case 'se':
- offset = this.xpadding;
- break;
- case 's':
- offset = -elem.outerWidth(true)/2;
- break;
- case 'sw':
- offset = -elem.outerWidth(true) - this.xpadding;
- break;
- case 'w':
- offset = -elem.outerWidth(true) - this.xpadding;
- break;
- default: // same as 'nw'
- offset = -elem.outerWidth(true) - this.xpadding;
- break;
- }
- return offset;
- };
-
- $.jqplot.PointLabels.prototype.yOffset = function(elem, location, padding) {
- location = location || this.location;
- padding = padding || this.xpadding;
- var offset;
-
- switch (location) {
- case 'nw':
- offset = -elem.outerHeight(true) - this.ypadding;
- break;
- case 'n':
- offset = -elem.outerHeight(true) - this.ypadding;
- break;
- case 'ne':
- offset = -elem.outerHeight(true) - this.ypadding;
- break;
- case 'e':
- offset = -elem.outerHeight(true)/2;
- break;
- case 'se':
- offset = this.ypadding;
- break;
- case 's':
- offset = this.ypadding;
- break;
- case 'sw':
- offset = this.ypadding;
- break;
- case 'w':
- offset = -elem.outerHeight(true)/2;
- break;
- default: // same as 'nw'
- offset = -elem.outerHeight(true) - this.ypadding;
- break;
- }
- return offset;
- };
-
- // called with scope of series
- $.jqplot.PointLabels.draw = function (sctx, options, plot) {
- var p = this.plugins.pointLabels;
- // set labels again in case they have changed.
- p.setLabels.call(this);
- // remove any previous labels
- for (var i=0; i<p._elems.length; i++) {
- // Memory Leaks patch
- // p._elems[i].remove();
- p._elems[i].emptyForce();
- }
- p._elems.splice(0, p._elems.length);
-
- if (p.show) {
- var ax = '_'+this._stackAxis+'axis';
-
- if (!p.formatString) {
- p.formatString = this[ax]._ticks[0].formatString;
- p.formatter = this[ax]._ticks[0].formatter;
- }
-
- var pd = this._plotData;
- var ppd = this._prevPlotData;
- var xax = this._xaxis;
- var yax = this._yaxis;
- var elem, helem;
-
- for (var i=0, l=p._labels.length; i < l; i++) {
- var label = p._labels[i];
-
- if (p.hideZeros && parseInt(p._labels[i], 10) == 0) {
- label = '';
- }
-
- if (label != null) {
- label = p.formatter(p.formatString, label);
- }
-
- helem = document.createElement('div');
- p._elems[i] = $(helem);
-
- elem = p._elems[i];
-
-
- elem.addClass('jqplot-point-label jqplot-series-'+this.index+' jqplot-point-'+i);
- elem.css('position', 'absolute');
- elem.insertAfter(sctx.canvas);
-
- if (p.escapeHTML) {
- elem.text(label);
- }
- else {
- elem.html(label);
- }
- var location = p.location;
- if ((this.fillToZero && pd[i][1] < 0) || (this.fillToZero && this._type === 'bar' && this.barDirection === 'horizontal' && pd[i][0] < 0) || (this.waterfall && parseInt(label, 10)) < 0) {
- location = oppositeLocations[locationIndicies[location]];
- }
-
-
- var ell = xax.u2p(pd[i][0]) + p.xOffset(elem, location);
- var elt = yax.u2p(pd[i][1]) + p.yOffset(elem, location);
-
- // we have stacked chart but are not showing stacked values,
- // place labels in center.
- if (this._stack && !p.stackedValue) {
- if (this.barDirection === "vertical") {
- elt = (this._barPoints[i][0][1] + this._barPoints[i][1][1]) / 2 + plot._gridPadding.top - 0.5 * elem.outerHeight(true);
- }
- else {
- ell = (this._barPoints[i][2][0] + this._barPoints[i][0][0]) / 2 + plot._gridPadding.left - 0.5 * elem.outerWidth(true);
- }
- }
-
- if (this.renderer.constructor == $.jqplot.BarRenderer) {
- if (this.barDirection == "vertical") {
- ell += this._barNudge;
- }
- else {
- elt -= this._barNudge;
- }
- }
- elem.css('left', ell);
- elem.css('top', elt);
- var elr = ell + elem.width();
- var elb = elt + elem.height();
- var et = p.edgeTolerance;
- var scl = $(sctx.canvas).position().left;
- var sct = $(sctx.canvas).position().top;
- var scr = sctx.canvas.width + scl;
- var scb = sctx.canvas.height + sct;
- // if label is outside of allowed area, remove it
- if (ell - et < scl || elt - et < sct || elr + et > scr || elb + et > scb) {
- elem.remove();
- }
-
- elem = null;
- helem = null;
- }
-
- // finally, animate them if the series is animated
- // if (this.renderer.animation && this.renderer.animation._supported && this.renderer.animation.show && plot._drawCount < 2) {
- // var sel = '.jqplot-point-label.jqplot-series-'+this.index;
- // $(sel).hide();
- // $(sel).fadeIn(1000);
- // }
-
- }
- };
-
- $.jqplot.postSeriesInitHooks.push($.jqplot.PointLabels.init);
- $.jqplot.postDrawSeriesHooks.push($.jqplot.PointLabels.draw);
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.min.js
deleted file mode 100644
index d4fa0b51..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pointLabels.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(c){c.jqplot.PointLabels=function(e){this.show=c.jqplot.config.enablePlugins;this.location="n";this.labelsFromSeries=false;this.seriesLabelIndex=null;this.labels=[];this._labels=[];this.stackedValue=false;this.ypadding=6;this.xpadding=6;this.escapeHTML=true;this.edgeTolerance=-5;this.formatter=c.jqplot.DefaultTickFormatter;this.formatString="";this.hideZeros=false;this._elems=[];c.extend(true,this,e)};var a=["nw","n","ne","e","se","s","sw","w"];var d={nw:0,n:1,ne:2,e:3,se:4,s:5,sw:6,w:7};var b=["se","s","sw","w","nw","n","ne","e"];c.jqplot.PointLabels.init=function(j,h,f,g,i){var e=c.extend(true,{},f,g);e.pointLabels=e.pointLabels||{};if(this.renderer.constructor===c.jqplot.BarRenderer&&this.barDirection==="horizontal"&&!e.pointLabels.location){e.pointLabels.location="e"}this.plugins.pointLabels=new c.jqplot.PointLabels(e.pointLabels);this.plugins.pointLabels.setLabels.call(this)};c.jqplot.PointLabels.prototype.setLabels=function(){var f=this.plugins.pointLabels;var h;if(f.seriesLabelIndex!=null){h=f.seriesLabelIndex}else{if(this.renderer.constructor===c.jqplot.BarRenderer&&this.barDirection==="horizontal"){h=0}else{h=(this._plotData.length===0)?0:this._plotData[0].length-1}}f._labels=[];if(f.labels.length===0||f.labelsFromSeries){if(f.stackedValue){if(this._plotData.length&&this._plotData[0].length){for(var e=0;e<this._plotData.length;e++){f._labels.push(this._plotData[e][h])}}}else{var g=this.data;if(this.renderer.constructor===c.jqplot.BarRenderer&&this.waterfall){g=this._data}if(g.length&&g[0].length){for(var e=0;e<g.length;e++){f._labels.push(g[e][h])}}g=null}}else{if(f.labels.length){f._labels=f.labels}}};c.jqplot.PointLabels.prototype.xOffset=function(f,e,g){e=e||this.location;g=g||this.xpadding;var h;switch(e){case"nw":h=-f.outerWidth(true)-this.xpadding;break;case"n":h=-f.outerWidth(true)/2;break;case"ne":h=this.xpadding;break;case"e":h=this.xpadding;break;case"se":h=this.xpadding;break;case"s":h=-f.outerWidth(true)/2;break;case"sw":h=-f.outerWidth(true)-this.xpadding;break;case"w":h=-f.outerWidth(true)-this.xpadding;break;default:h=-f.outerWidth(true)-this.xpadding;break}return h};c.jqplot.PointLabels.prototype.yOffset=function(f,e,g){e=e||this.location;g=g||this.xpadding;var h;switch(e){case"nw":h=-f.outerHeight(true)-this.ypadding;break;case"n":h=-f.outerHeight(true)-this.ypadding;break;case"ne":h=-f.outerHeight(true)-this.ypadding;break;case"e":h=-f.outerHeight(true)/2;break;case"se":h=this.ypadding;break;case"s":h=this.ypadding;break;case"sw":h=this.ypadding;break;case"w":h=-f.outerHeight(true)/2;break;default:h=-f.outerHeight(true)-this.ypadding;break}return h};c.jqplot.PointLabels.draw=function(x,j,v){var t=this.plugins.pointLabels;t.setLabels.call(this);for(var w=0;w<t._elems.length;w++){t._elems[w].emptyForce()}t._elems.splice(0,t._elems.length);if(t.show){var r="_"+this._stackAxis+"axis";if(!t.formatString){t.formatString=this[r]._ticks[0].formatString;t.formatter=this[r]._ticks[0].formatter}var E=this._plotData;var D=this._prevPlotData;var A=this._xaxis;var q=this._yaxis;var z,f;for(var w=0,u=t._labels.length;w<u;w++){var o=t._labels[w];if(t.hideZeros&&parseInt(t._labels[w],10)==0){o=""}if(o!=null){o=t.formatter(t.formatString,o)}f=document.createElement("div");t._elems[w]=c(f);z=t._elems[w];z.addClass("jqplot-point-label jqplot-series-"+this.index+" jqplot-point-"+w);z.css("position","absolute");z.insertAfter(x.canvas);if(t.escapeHTML){z.text(o)}else{z.html(o)}var g=t.location;if((this.fillToZero&&E[w][1]<0)||(this.fillToZero&&this._type==="bar"&&this.barDirection==="horizontal"&&E[w][0]<0)||(this.waterfall&&parseInt(o,10))<0){g=b[d[g]]}var n=A.u2p(E[w][0])+t.xOffset(z,g);var h=q.u2p(E[w][1])+t.yOffset(z,g);if(this._stack&&!t.stackedValue){if(this.barDirection==="vertical"){h=(this._barPoints[w][0][1]+this._barPoints[w][1][1])/2+v._gridPadding.top-0.5*z.outerHeight(true)}else{n=(this._barPoints[w][2][0]+this._barPoints[w][0][0])/2+v._gridPadding.left-0.5*z.outerWidth(true)}}if(this.renderer.constructor==c.jqplot.BarRenderer){if(this.barDirection=="vertical"){n+=this._barNudge}else{h-=this._barNudge}}z.css("left",n);z.css("top",h);var k=n+z.width();var s=h+z.height();var C=t.edgeTolerance;var e=c(x.canvas).position().left;var y=c(x.canvas).position().top;var B=x.canvas.width+e;var m=x.canvas.height+y;if(n-C<e||h-C<y||k+C>B||s+C>m){z.remove()}z=null;f=null}}};c.jqplot.postSeriesInitHooks.push(c.jqplot.PointLabels.init);c.jqplot.postDrawSeriesHooks.push(c.jqplot.PointLabels.draw)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.js
deleted file mode 100644
index e43f6bda..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.js
+++ /dev/null
@@ -1,728 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- $.jqplot.PyramidAxisRenderer = function() {
- $.jqplot.LinearAxisRenderer.call(this);
- };
-
- $.jqplot.PyramidAxisRenderer.prototype = new $.jqplot.LinearAxisRenderer();
- $.jqplot.PyramidAxisRenderer.prototype.constructor = $.jqplot.PyramidAxisRenderer;
-
- // called with scope of axis
- $.jqplot.PyramidAxisRenderer.prototype.init = function(options){
- // Group: Properties
- //
- // prop: position
- // Position of axis. Values are: top, bottom , left, center, right.
- // By default, x and x2 axes are bottom, y axis is center.
- this.position = null;
- // prop: drawBaseline
- // True to draw the axis baseline.
- this.drawBaseline = true;
- // prop: baselineWidth
- // width of the baseline in pixels.
- this.baselineWidth = null;
- // prop: baselineColor
- // CSS color spec for the baseline.
- this.baselineColor = null;
- this.tickSpacingFactor = 25;
- this._type = 'pyramid';
- this._splitAxis = false;
- this._splitLength = null;
- this.category = false;
- this._autoFormatString = '';
- this._overrideFormatString = false;
-
- $.extend(true, this, options);
- this.renderer.options = options;
-
- this.resetDataBounds = this.renderer.resetDataBounds;
- this.resetDataBounds();
-
- };
-
- $.jqplot.PyramidAxisRenderer.prototype.resetDataBounds = function() {
- // Go through all the series attached to this axis and find
- // the min/max bounds for this axis.
- var db = this._dataBounds;
- db.min = null;
- db.max = null;
- var temp;
- for (var i=0; i<this._series.length; i++) {
- var s = this._series[i];
- var d = s._plotData;
-
- for (var j=0, l=d.length; j<l; j++) {
- if (this.name.charAt(0) === 'x') {
- temp = d[j][1];
- if ((temp !== null && temp < db.min) || db.min === null) {
- db.min = temp;
- }
- if ((temp !== null && temp > db.max) || db.max === null) {
- db.max = temp;
- }
- }
- else {
- temp = d[j][0];
- if ((temp !== null && temp < db.min) || db.min === null) {
- db.min = temp;
- }
- if ((temp !== null && temp > db.max) || db.max === null) {
- db.max = temp;
- }
- }
- }
- }
- };
-
- // called with scope of axis
- $.jqplot.PyramidAxisRenderer.prototype.draw = function(ctx, plot) {
- if (this.show) {
- // populate the axis label and value properties.
- // createTicks is a method on the renderer, but
- // call it within the scope of the axis.
- this.renderer.createTicks.call(this, plot);
- // fill a div with axes labels in the right direction.
- // Need to pregenerate each axis to get it's bounds and
- // position it and the labels correctly on the plot.
- var dim=0;
- var temp;
- // Added for theming.
- if (this._elem) {
- // Memory Leaks patch
- //this._elem.empty();
- this._elem.emptyForce();
- this._elem = null;
- }
-
- this._elem = $(document.createElement('div'));
- this._elem.addClass('jqplot-axis jqplot-'+this.name);
- this._elem.css('position', 'absolute');
-
-
- if (this.name == 'xaxis' || this.name == 'x2axis') {
- this._elem.width(this._plotDimensions.width);
- }
- else {
- this._elem.height(this._plotDimensions.height);
- }
-
- // create a _label object.
- this.labelOptions.axis = this.name;
- this._label = new this.labelRenderer(this.labelOptions);
- if (this._label.show) {
- var elem = this._label.draw(ctx, plot);
- elem.appendTo(this._elem);
- elem = null;
- }
-
- var t = this._ticks;
- var tick;
- for (var i=0; i<t.length; i++) {
- tick = t[i];
- if (tick.show && tick.showLabel && (!tick.isMinorTick)) {
- this._elem.append(tick.draw(ctx, plot));
- }
- }
- tick = null;
- t = null;
- }
- return this._elem;
- };
-
- // Note, primes can be found on http://primes.utm.edu/
- var _primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];
-
-
- var _primesHash = {};
-
- for (var i =0, l = _primes.length; i < l; i++) {
- _primesHash[_primes[i]] = _primes[i];
- }
-
- // called with scope of axis
- $.jqplot.PyramidAxisRenderer.prototype.createTicks = function(plot) {
- // we're are operating on an axis here
- var userTicks = this.ticks;
- // databounds were set on axis initialization.
- var db = this._dataBounds;
- var dim;
- var interval;
- var min;
- var max;
- var range;
- var pos1;
- var pos2;
- var tt;
- var i;
- var l;
- var s;
- // get a copy of user's settings for min/max.
- var userMin = this.min;
- var userMax = this.max;
- var ut;
- var t;
- var threshold;
- var tdim;
- var scalefact;
- var ret;
- var tumin;
- var tumax;
- var maxVisibleTicks;
- var val;
- var skip = null;
- var temp;
-
- // if we already have ticks, use them.
- // ticks must be in order of increasing value.
-
- if (userTicks.length) {
- // ticks could be 1D or 2D array of [val, val, ,,,] or [[val, label], [val, label], ...] or mixed
- for (i=0, l=userTicks.length; i<l; i++){
- ut = userTicks[i];
- t = new this.tickRenderer(this.tickOptions);
- if ($.isArray(ut)) {
- t.value = ut[0];
- t.label = ut[1];
- t.setTick(ut[0], this.name);
- this._ticks.push(t);
- }
-
- else if ($.isPlainObject(ut)) {
- $.extend(true, t, ut);
- t.axis = this.name;
- this._ticks.push(t);
- }
-
- else {
- if (typeof ut === 'string') {
- val = i + plot.defaultAxisStart;
- }
- else {
- val = ut;
- }
- t.value = val;
- t.label = ut;
- t.axis = this.name;
- this._ticks.push(t);
- }
- }
- this.numberTicks = userTicks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this.numberTicks-1].value;
- this.tickInterval = (this.max - this.min) / (this.numberTicks - 1);
-
- // use user specified tickInterval if there is one
- if (this._options.tickInterval) {
- // hide every tick except for ticks on interval
- var ti = this._options.tickInterval;
- for (i=0; i<this.numberTicks; i++) {
- if (i%ti !== 0) {
- // this._ticks[i].show = false;
- this._ticks[i].isMinorTick = true;
- }
- }
- }
-
- else {
- // check if we have too many ticks
- dim = (this.name.charAt(0) === 'x') ? this._plotDimensions.width : this._plotDimensions.height;
- maxVisibleTicks = Math.round(2.0 + dim/this.tickSpacingFactor);
-
- if (this.numberTicks > maxVisibleTicks) {
- // check for number of ticks we can skip
- temp = this.numberTicks - 1;
- for (i=2; i<temp; i++) {
- if (temp % i === 0 && temp/i < maxVisibleTicks) {
- skip = i-1;
- break;
- }
- }
-
- if (skip !== null) {
- var count = 1;
- for (i=1, l=this._ticks.length; i<l; i++) {
- if (count <= skip) {
- this._ticks[i].show = false;
- count += 1;
- }
- else {
- count = 1;
- }
- }
- }
- }
- }
-
- // if category style, add minor ticks in between
- temp = [];
- if (this.category) {
- // turn off gridline and mark on first tick
- this._ticks[0].showGridline = false;
- this._ticks[0].showMark = false;
-
- for (i=this._ticks.length-1; i>0; i--) {
- t = new this.tickRenderer(this.tickOptions);
- t.value = this._ticks[i-1].value + this.tickInterval/2.0;
- t.label = '';
- t.showLabel = false;
- t.axis = this.name;
- this._ticks[i].showGridline = false;
- this._ticks[i].showMark = false;
- this._ticks.splice(i, 0, t);
- // temp.push(t);
- }
-
- // merge in the new ticks
- // for (i=1, l=temp.length; i<l; i++) {
- // this._ticks.splice(i, 0, temp[i]);
- // }
-
- // now add a tick at beginning and end
- t = new this.tickRenderer(this.tickOptions);
- t.value = this._ticks[0].value - this.tickInterval/2.0;
- t.label = '';
- t.showLabel = false;
- t.axis = this.name;
- this._ticks.unshift(t);
-
- t = new this.tickRenderer(this.tickOptions);
- t.value = this._ticks[this._ticks.length-1].value + this.tickInterval/2.0;
- t.label = '';
- t.showLabel = false;
- t.axis = this.name;
- this._ticks.push(t);
-
- this.tickInterval = this.tickInterval / 2.0;
- this.numberTicks = this._ticks.length;
- this.min = this._ticks[0].value;
- this.max = this._ticks[this._ticks.length-1].value;
- }
- }
-
- // we don't have any ticks yet, let's make some!
- else {
- if (this.name.charAt(0) === 'x') {
- dim = this._plotDimensions.width;
- // make sure x axis is symetric about 0.
- var tempmax = Math.max(db.max, Math.abs(db.min));
- var tempmin = Math.min(db.min, -tempmax);
- // min = ((this.min != null) ? this.min : tempmin);
- // max = ((this.max != null) ? this.max : tempmax);
- min = tempmin;
- max = tempmax;
- range = max - min;
-
- if (this.tickOptions == null || !this.tickOptions.formatString) {
- this._overrideFormatString = true;
- }
-
- threshold = 30;
- tdim = Math.max(dim, threshold+1);
- scalefact = (tdim-threshold)/300.0;
- ret = $.jqplot.LinearTickGenerator(min, max, scalefact);
- // calculate a padded max and min, points should be less than these
- // so that they aren't too close to the edges of the plot.
- // User can adjust how much padding is allowed with pad, padMin and PadMax options.
- tumin = min + range*(this.padMin - 1);
- tumax = max - range*(this.padMax - 1);
-
- if (min < tumin || max > tumax) {
- tumin = min - range*(this.padMin - 1);
- tumax = max + range*(this.padMax - 1);
- ret = $.jqplot.LinearTickGenerator(tumin, tumax, scalefact);
- }
-
- this.min = ret[0];
- this.max = ret[1];
- this.numberTicks = ret[2];
- this._autoFormatString = ret[3];
- this.tickInterval = ret[4];
- }
- else {
- dim = this._plotDimensions.height;
-
- // ticks will be on whole integers like 1, 2, 3, ... or 1, 4, 7, ...
- min = db.min;
- max = db.max;
- s = this._series[0];
- this._ticks = [];
-
- range = max - min;
-
- // if range is a prime, will get only 2 ticks, expand range in that case.
- if (_primesHash[range]) {
- range += 1;
- max += 1;
- }
-
- this.max = max;
- this.min = min;
-
- maxVisibleTicks = Math.round(2.0 + dim/this.tickSpacingFactor);
-
- if (range + 1 <= maxVisibleTicks) {
- this.numberTicks = range + 1;
- this.tickInterval = 1.0;
- }
-
- else {
- // figure out a round number of ticks to skip in every interval
- // range / ti + 1 = nt
- // ti = range / (nt - 1)
- for (var i=maxVisibleTicks; i>1; i--) {
- if (range/(i - 1) === Math.round(range/(i - 1))) {
- this.numberTicks = i;
- this.tickInterval = range/(i - 1);
- break;
- }
-
- }
- }
- }
-
- if (this._overrideFormatString && this._autoFormatString != '') {
- this.tickOptions = this.tickOptions || {};
- this.tickOptions.formatString = this._autoFormatString;
- }
-
- var labelval;
- for (i=0; i<this.numberTicks; i++) {
- this.tickOptions.axis = this.name;
- labelval = this.min + this.tickInterval * i;
- if (this.name.charAt(0) === 'x') {
- labelval = Math.abs(labelval);
- }
- // this.tickOptions.label = String (labelval);
- this.tickOptions.value = this.min + this.tickInterval * i;
- t = new this.tickRenderer(this.tickOptions);
-
- t.label = t.prefix + t.formatter(t.formatString, labelval);
-
- this._ticks.push(t);
- // for x axis, if y axis is in middle, add a symetrical 0 tick
- if (this.name.charAt(0) === 'x' && plot.axes.yMidAxis.show && this.tickOptions.value === 0) {
- this._splitAxis = true;
- this._splitLength = plot.axes.yMidAxis.getWidth();
- // t.value = -this.max/2000.0;
- t = new this.tickRenderer(this.tickOptions);
- this._ticks.push(t);
- t.value = this.max/2000.0;
- }
- }
- t = null;
- }
- };
-
- // called with scope of axis
- $.jqplot.PyramidAxisRenderer.prototype.set = function() {
- var dim = 0;
- var temp;
- var w = 0;
- var h = 0;
- var i;
- var t;
- var tick;
- var lshow = (this._label == null) ? false : this._label.show;
- if (this.show) {
- t = this._ticks;
- l = t.length;
- for (i=0; i<l; i++) {
- tick = t[i];
- if (!tick._breakTick && tick.show && tick.showLabel && !tick.isMinorTick) {
- if (this.name.charAt(0) === 'x') {
- temp = tick._elem.outerHeight(true);
- }
- else {
- temp = tick._elem.outerWidth(true);
- }
- if (temp > dim) {
- dim = temp;
- }
- }
- }
-
- if (this.name === 'yMidAxis') {
- for (i=0; i<l; i++) {
- tick = t[i];
- if (tick._elem) {
- temp = (dim - tick._elem.outerWidth(true))/2.0;
- tick._elem.css('left', temp);
- }
- }
- }
- tick = null;
- t = null;
-
- if (lshow) {
- w = this._label._elem.outerWidth(true);
- h = this._label._elem.outerHeight(true);
- }
- if (this.name === 'xaxis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', bottom:'0px'});
- }
- else if (this.name === 'x2axis') {
- dim = dim + h;
- this._elem.css({'height':dim+'px', left:'0px', top:'0px'});
- }
- else if (this.name === 'yaxis') {
- dim = dim + w;
- this._elem.css({'width':dim+'px', left:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- else if (this.name === 'yMidAxis') {
- // don't include width of label at all in width of axis?
- // dim = (dim > w) ? dim : w;
- var temp = dim/2.0 - w/2.0;
- this._elem.css({'width':dim+'px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css({width: w, left: temp, top: 0});
- }
- }
- else {
- dim = dim + w;
- this._elem.css({'width':dim+'px', right:'0px', top:'0px'});
- if (lshow && this._label.constructor == $.jqplot.AxisLabelRenderer) {
- this._label._elem.css('width', w+'px');
- }
- }
- }
- };
-
- $.jqplot.PyramidAxisRenderer.prototype.pack = function(pos, offsets) {
- // Add defaults for repacking from resetTickValues function.
- pos = pos || {};
- offsets = offsets || this._offsets;
-
- var ticks = this._ticks;
- var max = this.max;
- var min = this.min;
- var offmax = offsets.max;
- var offmin = offsets.min;
- var lshow = (this._label == null) ? false : this._label.show;
-
- for (var p in pos) {
- this._elem.css(p, pos[p]);
- }
-
- this._offsets = offsets;
- // pixellength will be + for x axes and - for y axes becasue pixels always measured from top left.
- var pixellength = offmax - offmin;
- var unitlength = max - min;
- var sl = this._splitLength;
-
- // point to unit and unit to point conversions references to Plot DOM element top left corner.
- if (this._splitAxis) {
- pixellength -= this._splitLength;
-
- // don't know that this one is correct.
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- this.u2p = function(u){
- if (u <= 0) {
- return (u - min) * pixellength / unitlength + offmin;
- }
- else {
- return (u - min) * pixellength / unitlength + offmin + sl;
- }
- };
-
- this.series_u2p = function(u){
- if (u <= 0) {
- return (u - min) * pixellength / unitlength;
- }
- else {
- return (u - min) * pixellength / unitlength + sl;
- }
- };
-
- // don't know that this one is correct.
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
- else {
- this.p2u = function(p){
- return (p - offmin) * unitlength / pixellength + min;
- };
-
- this.u2p = function(u){
- return (u - min) * pixellength / unitlength + offmin;
- };
-
- if (this.name.charAt(0) === 'x'){
- this.series_u2p = function(u){
- return (u - min) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + min;
- };
- }
-
- else {
- this.series_u2p = function(u){
- return (u - max) * pixellength / unitlength;
- };
- this.series_p2u = function(p){
- return p * unitlength / pixellength + max;
- };
- }
- }
-
- if (this.show) {
- if (this.name.charAt(0) === 'x') {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel) {
- var shim;
-
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'xaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- if (temp * t.angle < 0) {
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- }
- // position at start
- else {
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- }
- break;
- case 'end':
- shim = -t.getWidth() + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- case 'start':
- shim = -t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- break;
- case 'middle':
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- default:
- shim = -t.getWidth()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- break;
- }
- }
- else {
- shim = -t.getWidth()/2;
- }
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('left', val);
- t.pack();
- }
- }
- if (lshow) {
- var w = this._label._elem.outerWidth(true);
- this._label._elem.css('left', offmin + pixellength/2 - w/2 + 'px');
- if (this.name == 'xaxis') {
- this._label._elem.css('bottom', '0px');
- }
- else {
- this._label._elem.css('top', '0px');
- }
- this._label.pack();
- }
- }
- else {
- for (var i=0; i<ticks.length; i++) {
- var t = ticks[i];
- if (t.show && t.showLabel && !t.isMinorTick) {
- var shim;
- if (t.constructor == $.jqplot.CanvasAxisTickRenderer && t.angle) {
- // will need to adjust auto positioning based on which axis this is.
- var temp = (this.name == 'yaxis') ? 1 : -1;
- switch (t.labelPosition) {
- case 'auto':
- // position at end
- case 'end':
- if (temp * t.angle < 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'start':
- if (t.angle > 0) {
- shim = -t._textRenderer.height * Math.cos(-t._textRenderer.angle) / 2;
- }
- else {
- shim = -t.getHeight() + t._textRenderer.height * Math.cos(t._textRenderer.angle) / 2;
- }
- break;
- case 'middle':
- // if (t.angle > 0) {
- // shim = -t.getHeight()/2 + t._textRenderer.height * Math.sin(-t._textRenderer.angle) / 2;
- // }
- // else {
- // shim = -t.getHeight()/2 - t._textRenderer.height * Math.sin(t._textRenderer.angle) / 2;
- // }
- shim = -t.getHeight()/2;
- break;
- default:
- shim = -t.getHeight()/2;
- break;
- }
- }
- else {
- shim = -t.getHeight()/2;
- }
-
- var val = this.u2p(t.value) + shim + 'px';
- t._elem.css('top', val);
- t.pack();
- }
- }
- if (lshow) {
- var h = this._label._elem.outerHeight(true);
- if (this.name !== 'yMidAxis') {
- this._label._elem.css('top', offmax - pixellength/2 - h/2 + 'px');
- }
- if (this.name == 'yaxis') {
- this._label._elem.css('left', '0px');
- }
- else if (this.name !== 'yMidAxis') {
- this._label._elem.css('right', '0px');
- }
- this._label.pack();
- }
- }
- }
-
- ticks = null;
- };
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.min.js
deleted file mode 100644
index bcb184a6..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidAxisRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(e){e.jqplot.PyramidAxisRenderer=function(){e.jqplot.LinearAxisRenderer.call(this)};e.jqplot.PyramidAxisRenderer.prototype=new e.jqplot.LinearAxisRenderer();e.jqplot.PyramidAxisRenderer.prototype.constructor=e.jqplot.PyramidAxisRenderer;e.jqplot.PyramidAxisRenderer.prototype.init=function(f){this.position=null;this.drawBaseline=true;this.baselineWidth=null;this.baselineColor=null;this.tickSpacingFactor=25;this._type="pyramid";this._splitAxis=false;this._splitLength=null;this.category=false;this._autoFormatString="";this._overrideFormatString=false;e.extend(true,this,f);this.renderer.options=f;this.resetDataBounds=this.renderer.resetDataBounds;this.resetDataBounds()};e.jqplot.PyramidAxisRenderer.prototype.resetDataBounds=function(){var h=this._dataBounds;h.min=null;h.max=null;var g;for(var m=0;m<this._series.length;m++){var n=this._series[m];var o=n._plotData;for(var k=0,f=o.length;k<f;k++){if(this.name.charAt(0)==="x"){g=o[k][1];if((g!==null&&g<h.min)||h.min===null){h.min=g}if((g!==null&&g>h.max)||h.max===null){h.max=g}}else{g=o[k][0];if((g!==null&&g<h.min)||h.min===null){h.min=g}if((g!==null&&g>h.max)||h.max===null){h.max=g}}}}};e.jqplot.PyramidAxisRenderer.prototype.draw=function(f,n){if(this.show){this.renderer.createTicks.call(this,n);var m=0;var g;if(this._elem){this._elem.emptyForce();this._elem=null}this._elem=e(document.createElement("div"));this._elem.addClass("jqplot-axis jqplot-"+this.name);this._elem.css("position","absolute");if(this.name=="xaxis"||this.name=="x2axis"){this._elem.width(this._plotDimensions.width)}else{this._elem.height(this._plotDimensions.height)}this.labelOptions.axis=this.name;this._label=new this.labelRenderer(this.labelOptions);if(this._label.show){var l=this._label.draw(f,n);l.appendTo(this._elem);l=null}var k=this._ticks;var j;for(var h=0;h<k.length;h++){j=k[h];if(j.show&&j.showLabel&&(!j.isMinorTick)){this._elem.append(j.draw(f,n))}}j=null;k=null}return this._elem};var b=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997];var d={};for(var c=0,a=b.length;c<a;c++){d[b[c]]=b[c]}e.jqplot.PyramidAxisRenderer.prototype.createTicks=function(D){var J=this.ticks;var M=this._dataBounds;var E;var K;var B;var G;var y;var n;var k;var h;var H;var C;var x;var L=this.min;var N=this.max;var q;var v;var m;var g;var j;var O;var A;var F;var r;var P;var z=null;var I;if(J.length){for(H=0,C=J.length;H<C;H++){q=J[H];v=new this.tickRenderer(this.tickOptions);if(e.isArray(q)){v.value=q[0];v.label=q[1];v.setTick(q[0],this.name);this._ticks.push(v)}else{if(e.isPlainObject(q)){e.extend(true,v,q);v.axis=this.name;this._ticks.push(v)}else{if(typeof q==="string"){P=H+D.defaultAxisStart}else{P=q}v.value=P;v.label=q;v.axis=this.name;this._ticks.push(v)}}}this.numberTicks=J.length;this.min=this._ticks[0].value;this.max=this._ticks[this.numberTicks-1].value;this.tickInterval=(this.max-this.min)/(this.numberTicks-1);if(this._options.tickInterval){var o=this._options.tickInterval;for(H=0;H<this.numberTicks;H++){if(H%o!==0){this._ticks[H].isMinorTick=true}}}else{E=(this.name.charAt(0)==="x")?this._plotDimensions.width:this._plotDimensions.height;r=Math.round(2+E/this.tickSpacingFactor);if(this.numberTicks>r){I=this.numberTicks-1;for(H=2;H<I;H++){if(I%H===0&&I/H<r){z=H-1;break}}if(z!==null){var p=1;for(H=1,C=this._ticks.length;H<C;H++){if(p<=z){this._ticks[H].show=false;p+=1}else{p=1}}}}}I=[];if(this.category){this._ticks[0].showGridline=false;this._ticks[0].showMark=false;for(H=this._ticks.length-1;H>0;H--){v=new this.tickRenderer(this.tickOptions);v.value=this._ticks[H-1].value+this.tickInterval/2;v.label="";v.showLabel=false;v.axis=this.name;this._ticks[H].showGridline=false;this._ticks[H].showMark=false;this._ticks.splice(H,0,v)}v=new this.tickRenderer(this.tickOptions);v.value=this._ticks[0].value-this.tickInterval/2;v.label="";v.showLabel=false;v.axis=this.name;this._ticks.unshift(v);v=new this.tickRenderer(this.tickOptions);v.value=this._ticks[this._ticks.length-1].value+this.tickInterval/2;v.label="";v.showLabel=false;v.axis=this.name;this._ticks.push(v);this.tickInterval=this.tickInterval/2;this.numberTicks=this._ticks.length;this.min=this._ticks[0].value;this.max=this._ticks[this._ticks.length-1].value}}else{if(this.name.charAt(0)==="x"){E=this._plotDimensions.width;var w=Math.max(M.max,Math.abs(M.min));var u=Math.min(M.min,-w);B=u;G=w;y=G-B;if(this.tickOptions==null||!this.tickOptions.formatString){this._overrideFormatString=true}m=30;g=Math.max(E,m+1);j=(g-m)/300;O=e.jqplot.LinearTickGenerator(B,G,j);A=B+y*(this.padMin-1);F=G-y*(this.padMax-1);if(B<A||G>F){A=B-y*(this.padMin-1);F=G+y*(this.padMax-1);O=e.jqplot.LinearTickGenerator(A,F,j)}this.min=O[0];this.max=O[1];this.numberTicks=O[2];this._autoFormatString=O[3];this.tickInterval=O[4]}else{E=this._plotDimensions.height;B=M.min;G=M.max;x=this._series[0];this._ticks=[];y=G-B;if(d[y]){y+=1;G+=1}this.max=G;this.min=B;r=Math.round(2+E/this.tickSpacingFactor);if(y+1<=r){this.numberTicks=y+1;this.tickInterval=1}else{for(var H=r;H>1;H--){if(y/(H-1)===Math.round(y/(H-1))){this.numberTicks=H;this.tickInterval=y/(H-1);break}}}}if(this._overrideFormatString&&this._autoFormatString!=""){this.tickOptions=this.tickOptions||{};this.tickOptions.formatString=this._autoFormatString}var f;for(H=0;H<this.numberTicks;H++){this.tickOptions.axis=this.name;f=this.min+this.tickInterval*H;if(this.name.charAt(0)==="x"){f=Math.abs(f)}this.tickOptions.value=this.min+this.tickInterval*H;v=new this.tickRenderer(this.tickOptions);v.label=v.prefix+v.formatter(v.formatString,f);this._ticks.push(v);if(this.name.charAt(0)==="x"&&D.axes.yMidAxis.show&&this.tickOptions.value===0){this._splitAxis=true;this._splitLength=D.axes.yMidAxis.getWidth();v=new this.tickRenderer(this.tickOptions);this._ticks.push(v);v.value=this.max/2000}}v=null}};e.jqplot.PyramidAxisRenderer.prototype.set=function(){var o=0;var j;var g=0;var n=0;var m;var l;var k;var f=(this._label==null)?false:this._label.show;if(this.show){l=this._ticks;a=l.length;for(m=0;m<a;m++){k=l[m];if(!k._breakTick&&k.show&&k.showLabel&&!k.isMinorTick){if(this.name.charAt(0)==="x"){j=k._elem.outerHeight(true)}else{j=k._elem.outerWidth(true)}if(j>o){o=j}}}if(this.name==="yMidAxis"){for(m=0;m<a;m++){k=l[m];if(k._elem){j=(o-k._elem.outerWidth(true))/2;k._elem.css("left",j)}}}k=null;l=null;if(f){g=this._label._elem.outerWidth(true);n=this._label._elem.outerHeight(true)}if(this.name==="xaxis"){o=o+n;this._elem.css({height:o+"px",left:"0px",bottom:"0px"})}else{if(this.name==="x2axis"){o=o+n;this._elem.css({height:o+"px",left:"0px",top:"0px"})}else{if(this.name==="yaxis"){o=o+g;this._elem.css({width:o+"px",left:"0px",top:"0px"});if(f&&this._label.constructor==e.jqplot.AxisLabelRenderer){this._label._elem.css("width",g+"px")}}else{if(this.name==="yMidAxis"){var j=o/2-g/2;this._elem.css({width:o+"px",top:"0px"});if(f&&this._label.constructor==e.jqplot.AxisLabelRenderer){this._label._elem.css({width:g,left:j,top:0})}}else{o=o+g;this._elem.css({width:o+"px",right:"0px",top:"0px"});if(f&&this._label.constructor==e.jqplot.AxisLabelRenderer){this._label._elem.css("width",g+"px")}}}}}}};e.jqplot.PyramidAxisRenderer.prototype.pack=function(j,g){j=j||{};g=g||this._offsets;var B=this._ticks;var v=this.max;var u=this.min;var o=g.max;var m=g.min;var r=(this._label==null)?false:this._label.show;for(var s in j){this._elem.css(s,j[s])}this._offsets=g;var k=o-m;var l=v-u;var z=this._splitLength;if(this._splitAxis){k-=this._splitLength;this.p2u=function(h){return(h-m)*l/k+u};this.u2p=function(h){if(h<=0){return(h-u)*k/l+m}else{return(h-u)*k/l+m+z}};this.series_u2p=function(h){if(h<=0){return(h-u)*k/l}else{return(h-u)*k/l+z}};this.series_p2u=function(h){return h*l/k+u}}else{this.p2u=function(h){return(h-m)*l/k+u};this.u2p=function(h){return(h-u)*k/l+m};if(this.name.charAt(0)==="x"){this.series_u2p=function(h){return(h-u)*k/l};this.series_p2u=function(h){return h*l/k+u}}else{this.series_u2p=function(h){return(h-v)*k/l};this.series_p2u=function(h){return h*l/k+v}}}if(this.show){if(this.name.charAt(0)==="x"){for(var x=0;x<B.length;x++){var q=B[x];if(q.show&&q.showLabel){var f;if(q.constructor==e.jqplot.CanvasAxisTickRenderer&&q.angle){var A=(this.name=="xaxis")?1:-1;switch(q.labelPosition){case"auto":if(A*q.angle<0){f=-q.getWidth()+q._textRenderer.height*Math.sin(-q._textRenderer.angle)/2}else{f=-q._textRenderer.height*Math.sin(q._textRenderer.angle)/2}break;case"end":f=-q.getWidth()+q._textRenderer.height*Math.sin(-q._textRenderer.angle)/2;break;case"start":f=-q._textRenderer.height*Math.sin(q._textRenderer.angle)/2;break;case"middle":f=-q.getWidth()/2+q._textRenderer.height*Math.sin(-q._textRenderer.angle)/2;break;default:f=-q.getWidth()/2+q._textRenderer.height*Math.sin(-q._textRenderer.angle)/2;break}}else{f=-q.getWidth()/2}var C=this.u2p(q.value)+f+"px";q._elem.css("left",C);q.pack()}}if(r){var n=this._label._elem.outerWidth(true);this._label._elem.css("left",m+k/2-n/2+"px");if(this.name=="xaxis"){this._label._elem.css("bottom","0px")}else{this._label._elem.css("top","0px")}this._label.pack()}}else{for(var x=0;x<B.length;x++){var q=B[x];if(q.show&&q.showLabel&&!q.isMinorTick){var f;if(q.constructor==e.jqplot.CanvasAxisTickRenderer&&q.angle){var A=(this.name=="yaxis")?1:-1;switch(q.labelPosition){case"auto":case"end":if(A*q.angle<0){f=-q._textRenderer.height*Math.cos(-q._textRenderer.angle)/2}else{f=-q.getHeight()+q._textRenderer.height*Math.cos(q._textRenderer.angle)/2}break;case"start":if(q.angle>0){f=-q._textRenderer.height*Math.cos(-q._textRenderer.angle)/2}else{f=-q.getHeight()+q._textRenderer.height*Math.cos(q._textRenderer.angle)/2}break;case"middle":f=-q.getHeight()/2;break;default:f=-q.getHeight()/2;break}}else{f=-q.getHeight()/2}var C=this.u2p(q.value)+f+"px";q._elem.css("top",C);q.pack()}}if(r){var y=this._label._elem.outerHeight(true);if(this.name!=="yMidAxis"){this._label._elem.css("top",o-k/2-y/2+"px")}if(this.name=="yaxis"){this._label._elem.css("left","0px")}else{if(this.name!=="yMidAxis"){this._label._elem.css("right","0px")}}this._label.pack()}}}B=null}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.js
deleted file mode 100644
index 64fa2acc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.js
+++ /dev/null
@@ -1,429 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
- // Class: $.jqplot.CanvasGridRenderer
- // The default jqPlot grid renderer, creating a grid on a canvas element.
- // The renderer has no additional options beyond the <Grid> class.
- $.jqplot.PyramidGridRenderer = function(){
- $.jqplot.CanvasGridRenderer.call(this);
- };
-
- $.jqplot.PyramidGridRenderer.prototype = new $.jqplot.CanvasGridRenderer();
- $.jqplot.PyramidGridRenderer.prototype.constructor = $.jqplot.PyramidGridRenderer;
-
- // called with context of Grid object
- $.jqplot.CanvasGridRenderer.prototype.init = function(options) {
- this._ctx;
- this.plotBands = {
- show: false,
- color: 'rgb(230, 219, 179)',
- axis: 'y',
- start: null,
- interval: 10
- };
- $.extend(true, this, options);
- // set the shadow renderer options
- var sopts = {lineJoin:'miter', lineCap:'round', fill:false, isarc:false, angle:this.shadowAngle, offset:this.shadowOffset, alpha:this.shadowAlpha, depth:this.shadowDepth, lineWidth:this.shadowWidth, closePath:false, strokeStyle:this.shadowColor};
- this.renderer.shadowRenderer.init(sopts);
- };
-
- $.jqplot.PyramidGridRenderer.prototype.draw = function() {
- this._ctx = this._elem.get(0).getContext("2d");
- var ctx = this._ctx;
- var axes = this._axes;
- var xp = axes.xaxis.u2p;
- var yp = axes.yMidAxis.u2p;
- var xnudge = axes.xaxis.max/1000.0;
- var xp0 = xp(0);
- var xpn = xp(xnudge);
- var ax = ['xaxis', 'yaxis', 'x2axis', 'y2axis','yMidAxis'];
- // Add the grid onto the grid canvas. This is the bottom most layer.
- ctx.save();
- ctx.clearRect(0, 0, this._plotDimensions.width, this._plotDimensions.height);
- ctx.fillStyle = this.backgroundColor || this.background;
-
- ctx.fillRect(this._left, this._top, this._width, this._height);
-
- if (this.plotBands.show) {
- ctx.save();
- var pb = this.plotBands;
- ctx.fillStyle = pb.color;
- var axis;
- var x, y, w, h;
- // find axis to work with
- if (pb.axis.charAt(0) === 'x') {
- if (axes.xaxis.show) {
- axis = axes.xaxis;
- }
- }
- else if (pb.axis.charAt(0) === 'y') {
- if (axes.yaxis.show) {
- axis = axes.yaxis;
- }
- else if (axes.y2axis.show) {
- axis = axes.y2axis;
- }
- else if (axes.yMidAxis.show) {
- axis = axes.yMidAxis;
- }
- }
-
- if (axis !== undefined) {
- // draw some rectangles
- var start = pb.start;
- if (start === null) {
- start = axis.min;
- }
- for (var i = start; i < axis.max; i += 2 * pb.interval) {
- if (axis.name.charAt(0) === 'y') {
- x = this._left;
- if ((i + pb.interval) < axis.max) {
- y = axis.series_u2p(i + pb.interval) + this._top;
- }
- else {
- y = axis.series_u2p(axis.max) + this._top;
- }
- w = this._right - this._left;
- h = axis.series_u2p(start) - axis.series_u2p(start + pb.interval);
- ctx.fillRect(x, y, w, h);
- }
- // else {
- // y = 0;
- // x = axis.series_u2p(i);
- // h = this._height;
- // w = axis.series_u2p(start + pb.interval) - axis.series_u2p(start);
- // }
-
- }
- }
- ctx.restore();
- }
-
- ctx.save();
- ctx.lineJoin = 'miter';
- ctx.lineCap = 'butt';
- ctx.lineWidth = this.gridLineWidth;
- ctx.strokeStyle = this.gridLineColor;
- var b, e, s, m;
- for (var i=5; i>0; i--) {
- var name = ax[i-1];
- var axis = axes[name];
- var ticks = axis._ticks;
- var numticks = ticks.length;
- if (axis.show) {
- if (axis.drawBaseline) {
- var bopts = {};
- if (axis.baselineWidth !== null) {
- bopts.lineWidth = axis.baselineWidth;
- }
- if (axis.baselineColor !== null) {
- bopts.strokeStyle = axis.baselineColor;
- }
- switch (name) {
- case 'xaxis':
- if (axes.yMidAxis.show) {
- drawLine (this._left, this._bottom, xp0, this._bottom, bopts);
- drawLine (xpn, this._bottom, this._right, this._bottom, bopts);
- }
- else {
- drawLine (this._left, this._bottom, this._right, this._bottom, bopts);
- }
- break;
- case 'yaxis':
- drawLine (this._left, this._bottom, this._left, this._top, bopts);
- break;
- case 'yMidAxis':
- drawLine(xp0, this._bottom, xp0, this._top, bopts);
- drawLine(xpn, this._bottom, xpn, this._top, bopts);
- break;
- case 'x2axis':
- if (axes.yMidAxis.show) {
- drawLine (this._left, this._top, xp0, this._top, bopts);
- drawLine (xpn, this._top, this._right, this._top, bopts);
- }
- else {
- drawLine (this._left, this._bottom, this._right, this._bottom, bopts);
- }
- break;
- case 'y2axis':
- drawLine (this._right, this._bottom, this._right, this._top, bopts);
- break;
-
- }
- }
- for (var j=numticks; j>0; j--) {
- var t = ticks[j-1];
- if (t.show) {
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (name) {
- case 'xaxis':
- // draw the grid line if we should
- if (t.showGridline && this.drawGridlines && (!t.isMinorTick || axis.showMinorTicks)) {
- drawLine(pos, this._top, pos, this._bottom);
- }
-
- // draw the mark
- if (t.showMark && t.mark && (!t.isMinorTick || axis.showMinorTicks)) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._bottom;
- e = this._bottom+s;
- break;
- case 'inside':
- b = this._bottom-s;
- e = this._bottom;
- break;
- case 'cross':
- b = this._bottom-s;
- e = this._bottom+s;
- break;
- default:
- b = this._bottom;
- e = this._bottom+s;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[pos,b],[pos,e]], {lineCap:'butt', lineWidth:this.gridLineWidth, offset:this.gridLineWidth*0.75, depth:2, fill:false, closePath:false});
- }
- // draw the line
- drawLine(pos, b, pos, e);
- }
- break;
- case 'yaxis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && (!t.isMinorTick || axis.showMinorTicks)) {
- drawLine(this._right, pos, this._left, pos);
- }
-
- // draw the mark
- if (t.showMark && t.mark && (!t.isMinorTick || axis.showMinorTicks)) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._left-s;
- e = this._left;
- break;
- case 'inside':
- b = this._left;
- e = this._left+s;
- break;
- case 'cross':
- b = this._left-s;
- e = this._left+s;
- break;
- default:
- b = this._left-s;
- e = this._left;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- break;
- case 'yMidAxis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && (!t.isMinorTick || axis.showMinorTicks)) {
- drawLine(this._left, pos, xp0, pos);
- drawLine(xpn, pos, this._right, pos);
- }
- // draw the mark
- if (t.showMark && t.mark && (!t.isMinorTick || axis.showMinorTicks)) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
-
- b = xp0;
- e = xp0 + s;
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
-
- b = xpn - s;
- e = xpn;
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- break;
- case 'x2axis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && (!t.isMinorTick || axis.showMinorTicks)) {
- drawLine(pos, this._bottom, pos, this._top);
- }
-
- // draw the mark
- if (t.showMark && t.mark && (!t.isMinorTick || axis.showMinorTicks)) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._top-s;
- e = this._top;
- break;
- case 'inside':
- b = this._top;
- e = this._top+s;
- break;
- case 'cross':
- b = this._top-s;
- e = this._top+s;
- break;
- default:
- b = this._top-s;
- e = this._top;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[pos,b],[pos,e]], {lineCap:'butt', lineWidth:this.gridLineWidth, offset:this.gridLineWidth*0.75, depth:2, fill:false, closePath:false});
- }
- drawLine(pos, b, pos, e);
- }
- break;
- case 'y2axis':
- // draw the grid line
- if (t.showGridline && this.drawGridlines && (!t.isMinorTick || axis.showMinorTicks)) {
- drawLine(this._left, pos, this._right, pos);
- }
-
- // draw the mark
- if (t.showMark && t.mark && (!t.isMinorTick || axis.showMinorTicks)) {
- s = t.markSize;
- m = t.mark;
- var pos = Math.round(axis.u2p(t.value)) + 0.5;
- switch (m) {
- case 'outside':
- b = this._right;
- e = this._right+s;
- break;
- case 'inside':
- b = this._right-s;
- e = this._right;
- break;
- case 'cross':
- b = this._right-s;
- e = this._right+s;
- break;
- default:
- b = this._right;
- e = this._right+s;
- break;
- }
- // draw the shadow
- if (this.shadow) {
- this.renderer.shadowRenderer.draw(ctx, [[b, pos], [e, pos]], {lineCap:'butt', lineWidth:this.gridLineWidth*1.5, offset:this.gridLineWidth*0.75, fill:false, closePath:false});
- }
- drawLine(b, pos, e, pos, {strokeStyle:axis.borderColor});
- }
- break;
- default:
- break;
- }
- }
- }
- t = null;
- }
- axis = null;
- ticks = null;
- }
-
- ctx.restore();
-
- function drawLine(bx, by, ex, ey, opts) {
- ctx.save();
- opts = opts || {};
- if (opts.lineWidth == null || opts.lineWidth != 0){
- $.extend(true, ctx, opts);
- ctx.beginPath();
- ctx.moveTo(bx, by);
- ctx.lineTo(ex, ey);
- ctx.stroke();
- }
- ctx.restore();
- }
-
- if (this.shadow) {
- if (axes.yMidAxis.show) {
- var points = [[this._left, this._bottom], [xp0, this._bottom]];
- this.renderer.shadowRenderer.draw(ctx, points);
- var points = [[xpn, this._bottom], [this._right, this._bottom], [this._right, this._top]];
- this.renderer.shadowRenderer.draw(ctx, points);
- var points = [[xp0, this._bottom], [xp0, this._top]];
- this.renderer.shadowRenderer.draw(ctx, points);
- }
- else {
- var points = [[this._left, this._bottom], [this._right, this._bottom], [this._right, this._top]];
- this.renderer.shadowRenderer.draw(ctx, points);
- }
- }
- // Now draw border around grid. Use axis border definitions. start at
- // upper left and go clockwise.
- if (this.borderWidth != 0 && this.drawBorder) {
- if (axes.yMidAxis.show) {
- drawLine (this._left, this._top, xp0, this._top, {lineCap:'round', strokeStyle:axes.x2axis.borderColor, lineWidth:axes.x2axis.borderWidth});
- drawLine (xpn, this._top, this._right, this._top, {lineCap:'round', strokeStyle:axes.x2axis.borderColor, lineWidth:axes.x2axis.borderWidth});
- drawLine (this._right, this._top, this._right, this._bottom, {lineCap:'round', strokeStyle:axes.y2axis.borderColor, lineWidth:axes.y2axis.borderWidth});
- drawLine (this._right, this._bottom, xpn, this._bottom, {lineCap:'round', strokeStyle:axes.xaxis.borderColor, lineWidth:axes.xaxis.borderWidth});
- drawLine (xp0, this._bottom, this._left, this._bottom, {lineCap:'round', strokeStyle:axes.xaxis.borderColor, lineWidth:axes.xaxis.borderWidth});
- drawLine (this._left, this._bottom, this._left, this._top, {lineCap:'round', strokeStyle:axes.yaxis.borderColor, lineWidth:axes.yaxis.borderWidth});
- drawLine (xp0, this._bottom, xp0, this._top, {lineCap:'round', strokeStyle:axes.yaxis.borderColor, lineWidth:axes.yaxis.borderWidth});
- drawLine (xpn, this._bottom, xpn, this._top, {lineCap:'round', strokeStyle:axes.yaxis.borderColor, lineWidth:axes.yaxis.borderWidth});
- }
- else {
- drawLine (this._left, this._top, this._right, this._top, {lineCap:'round', strokeStyle:axes.x2axis.borderColor, lineWidth:axes.x2axis.borderWidth});
- drawLine (this._right, this._top, this._right, this._bottom, {lineCap:'round', strokeStyle:axes.y2axis.borderColor, lineWidth:axes.y2axis.borderWidth});
- drawLine (this._right, this._bottom, this._left, this._bottom, {lineCap:'round', strokeStyle:axes.xaxis.borderColor, lineWidth:axes.xaxis.borderWidth});
- drawLine (this._left, this._bottom, this._left, this._top, {lineCap:'round', strokeStyle:axes.yaxis.borderColor, lineWidth:axes.yaxis.borderWidth});
- }
- }
- // ctx.lineWidth = this.borderWidth;
- // ctx.strokeStyle = this.borderColor;
- // ctx.strokeRect(this._left, this._top, this._width, this._height);
-
- ctx.restore();
- ctx = null;
- axes = null;
- };
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.min.js
deleted file mode 100644
index ebf6ee44..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidGridRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(a){a.jqplot.PyramidGridRenderer=function(){a.jqplot.CanvasGridRenderer.call(this)};a.jqplot.PyramidGridRenderer.prototype=new a.jqplot.CanvasGridRenderer();a.jqplot.PyramidGridRenderer.prototype.constructor=a.jqplot.PyramidGridRenderer;a.jqplot.CanvasGridRenderer.prototype.init=function(c){this._ctx;this.plotBands={show:false,color:"rgb(230, 219, 179)",axis:"y",start:null,interval:10};a.extend(true,this,c);var b={lineJoin:"miter",lineCap:"round",fill:false,isarc:false,angle:this.shadowAngle,offset:this.shadowOffset,alpha:this.shadowAlpha,depth:this.shadowDepth,lineWidth:this.shadowWidth,closePath:false,strokeStyle:this.shadowColor};this.renderer.shadowRenderer.init(b)};a.jqplot.PyramidGridRenderer.prototype.draw=function(){this._ctx=this._elem.get(0).getContext("2d");var D=this._ctx;var G=this._axes;var q=G.xaxis.u2p;var J=G.yMidAxis.u2p;var l=G.xaxis.max/1000;var u=q(0);var f=q(l);var r=["xaxis","yaxis","x2axis","y2axis","yMidAxis"];D.save();D.clearRect(0,0,this._plotDimensions.width,this._plotDimensions.height);D.fillStyle=this.backgroundColor||this.background;D.fillRect(this._left,this._top,this._width,this._height);if(this.plotBands.show){D.save();var c=this.plotBands;D.fillStyle=c.color;var d;var o,n,p,I;if(c.axis.charAt(0)==="x"){if(G.xaxis.show){d=G.xaxis}}else{if(c.axis.charAt(0)==="y"){if(G.yaxis.show){d=G.yaxis}else{if(G.y2axis.show){d=G.y2axis}else{if(G.yMidAxis.show){d=G.yMidAxis}}}}}if(d!==undefined){var g=c.start;if(g===null){g=d.min}for(var H=g;H<d.max;H+=2*c.interval){if(d.name.charAt(0)==="y"){o=this._left;if((H+c.interval)<d.max){n=d.series_u2p(H+c.interval)+this._top}else{n=d.series_u2p(d.max)+this._top}p=this._right-this._left;I=d.series_u2p(g)-d.series_u2p(g+c.interval);D.fillRect(o,n,p,I)}}}D.restore()}D.save();D.lineJoin="miter";D.lineCap="butt";D.lineWidth=this.gridLineWidth;D.strokeStyle=this.gridLineColor;var L,K,A,C;for(var H=5;H>0;H--){var O=r[H-1];var d=G[O];var M=d._ticks;var B=M.length;if(d.show){if(d.drawBaseline){var N={};if(d.baselineWidth!==null){N.lineWidth=d.baselineWidth}if(d.baselineColor!==null){N.strokeStyle=d.baselineColor}switch(O){case"xaxis":if(G.yMidAxis.show){z(this._left,this._bottom,u,this._bottom,N);z(f,this._bottom,this._right,this._bottom,N)}else{z(this._left,this._bottom,this._right,this._bottom,N)}break;case"yaxis":z(this._left,this._bottom,this._left,this._top,N);break;case"yMidAxis":z(u,this._bottom,u,this._top,N);z(f,this._bottom,f,this._top,N);break;case"x2axis":if(G.yMidAxis.show){z(this._left,this._top,u,this._top,N);z(f,this._top,this._right,this._top,N)}else{z(this._left,this._bottom,this._right,this._bottom,N)}break;case"y2axis":z(this._right,this._bottom,this._right,this._top,N);break}}for(var E=B;E>0;E--){var v=M[E-1];if(v.show){var k=Math.round(d.u2p(v.value))+0.5;switch(O){case"xaxis":if(v.showGridline&&this.drawGridlines&&(!v.isMinorTick||d.showMinorTicks)){z(k,this._top,k,this._bottom)}if(v.showMark&&v.mark&&(!v.isMinorTick||d.showMinorTicks)){A=v.markSize;C=v.mark;var k=Math.round(d.u2p(v.value))+0.5;switch(C){case"outside":L=this._bottom;K=this._bottom+A;break;case"inside":L=this._bottom-A;K=this._bottom;break;case"cross":L=this._bottom-A;K=this._bottom+A;break;default:L=this._bottom;K=this._bottom+A;break}if(this.shadow){this.renderer.shadowRenderer.draw(D,[[k,L],[k,K]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}z(k,L,k,K)}break;case"yaxis":if(v.showGridline&&this.drawGridlines&&(!v.isMinorTick||d.showMinorTicks)){z(this._right,k,this._left,k)}if(v.showMark&&v.mark&&(!v.isMinorTick||d.showMinorTicks)){A=v.markSize;C=v.mark;var k=Math.round(d.u2p(v.value))+0.5;switch(C){case"outside":L=this._left-A;K=this._left;break;case"inside":L=this._left;K=this._left+A;break;case"cross":L=this._left-A;K=this._left+A;break;default:L=this._left-A;K=this._left;break}if(this.shadow){this.renderer.shadowRenderer.draw(D,[[L,k],[K,k]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}z(L,k,K,k,{strokeStyle:d.borderColor})}break;case"yMidAxis":if(v.showGridline&&this.drawGridlines&&(!v.isMinorTick||d.showMinorTicks)){z(this._left,k,u,k);z(f,k,this._right,k)}if(v.showMark&&v.mark&&(!v.isMinorTick||d.showMinorTicks)){A=v.markSize;C=v.mark;var k=Math.round(d.u2p(v.value))+0.5;L=u;K=u+A;if(this.shadow){this.renderer.shadowRenderer.draw(D,[[L,k],[K,k]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}z(L,k,K,k,{strokeStyle:d.borderColor});L=f-A;K=f;if(this.shadow){this.renderer.shadowRenderer.draw(D,[[L,k],[K,k]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}z(L,k,K,k,{strokeStyle:d.borderColor})}break;case"x2axis":if(v.showGridline&&this.drawGridlines&&(!v.isMinorTick||d.showMinorTicks)){z(k,this._bottom,k,this._top)}if(v.showMark&&v.mark&&(!v.isMinorTick||d.showMinorTicks)){A=v.markSize;C=v.mark;var k=Math.round(d.u2p(v.value))+0.5;switch(C){case"outside":L=this._top-A;K=this._top;break;case"inside":L=this._top;K=this._top+A;break;case"cross":L=this._top-A;K=this._top+A;break;default:L=this._top-A;K=this._top;break}if(this.shadow){this.renderer.shadowRenderer.draw(D,[[k,L],[k,K]],{lineCap:"butt",lineWidth:this.gridLineWidth,offset:this.gridLineWidth*0.75,depth:2,fill:false,closePath:false})}z(k,L,k,K)}break;case"y2axis":if(v.showGridline&&this.drawGridlines&&(!v.isMinorTick||d.showMinorTicks)){z(this._left,k,this._right,k)}if(v.showMark&&v.mark&&(!v.isMinorTick||d.showMinorTicks)){A=v.markSize;C=v.mark;var k=Math.round(d.u2p(v.value))+0.5;switch(C){case"outside":L=this._right;K=this._right+A;break;case"inside":L=this._right-A;K=this._right;break;case"cross":L=this._right-A;K=this._right+A;break;default:L=this._right;K=this._right+A;break}if(this.shadow){this.renderer.shadowRenderer.draw(D,[[L,k],[K,k]],{lineCap:"butt",lineWidth:this.gridLineWidth*1.5,offset:this.gridLineWidth*0.75,fill:false,closePath:false})}z(L,k,K,k,{strokeStyle:d.borderColor})}break;default:break}}}v=null}d=null;M=null}D.restore();function z(j,i,e,b,h){D.save();h=h||{};if(h.lineWidth==null||h.lineWidth!=0){a.extend(true,D,h);D.beginPath();D.moveTo(j,i);D.lineTo(e,b);D.stroke()}D.restore()}if(this.shadow){if(G.yMidAxis.show){var F=[[this._left,this._bottom],[u,this._bottom]];this.renderer.shadowRenderer.draw(D,F);var F=[[f,this._bottom],[this._right,this._bottom],[this._right,this._top]];this.renderer.shadowRenderer.draw(D,F);var F=[[u,this._bottom],[u,this._top]];this.renderer.shadowRenderer.draw(D,F)}else{var F=[[this._left,this._bottom],[this._right,this._bottom],[this._right,this._top]];this.renderer.shadowRenderer.draw(D,F)}}if(this.borderWidth!=0&&this.drawBorder){if(G.yMidAxis.show){z(this._left,this._top,u,this._top,{lineCap:"round",strokeStyle:G.x2axis.borderColor,lineWidth:G.x2axis.borderWidth});z(f,this._top,this._right,this._top,{lineCap:"round",strokeStyle:G.x2axis.borderColor,lineWidth:G.x2axis.borderWidth});z(this._right,this._top,this._right,this._bottom,{lineCap:"round",strokeStyle:G.y2axis.borderColor,lineWidth:G.y2axis.borderWidth});z(this._right,this._bottom,f,this._bottom,{lineCap:"round",strokeStyle:G.xaxis.borderColor,lineWidth:G.xaxis.borderWidth});z(u,this._bottom,this._left,this._bottom,{lineCap:"round",strokeStyle:G.xaxis.borderColor,lineWidth:G.xaxis.borderWidth});z(this._left,this._bottom,this._left,this._top,{lineCap:"round",strokeStyle:G.yaxis.borderColor,lineWidth:G.yaxis.borderWidth});z(u,this._bottom,u,this._top,{lineCap:"round",strokeStyle:G.yaxis.borderColor,lineWidth:G.yaxis.borderWidth});z(f,this._bottom,f,this._top,{lineCap:"round",strokeStyle:G.yaxis.borderColor,lineWidth:G.yaxis.borderWidth})}else{z(this._left,this._top,this._right,this._top,{lineCap:"round",strokeStyle:G.x2axis.borderColor,lineWidth:G.x2axis.borderWidth});z(this._right,this._top,this._right,this._bottom,{lineCap:"round",strokeStyle:G.y2axis.borderColor,lineWidth:G.y2axis.borderWidth});z(this._right,this._bottom,this._left,this._bottom,{lineCap:"round",strokeStyle:G.xaxis.borderColor,lineWidth:G.xaxis.borderWidth});z(this._left,this._bottom,this._left,this._top,{lineCap:"round",strokeStyle:G.yaxis.borderColor,lineWidth:G.yaxis.borderWidth})}}D.restore();D=null;G=null}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.js
deleted file mode 100644
index d4cc48c9..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.js
+++ /dev/null
@@ -1,514 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- // Need to ensure pyramid axis and grid renderers are loaded.
- // You should load these with script tags in the html head, that is more efficient
- // as the browser will cache the request.
- // Note, have to block with synchronous request in order to execute bar renderer code.
- if ($.jqplot.PyramidAxisRenderer === undefined) {
- $.ajax({
- url: $.jqplot.pluginLocation + 'jqplot.pyramidAxisRenderer.js',
- dataType: "script",
- async: false
- });
- }
-
- if ($.jqplot.PyramidGridRenderer === undefined) {
- $.ajax({
- url: $.jqplot.pluginLocation + 'jqplot.pyramidGridRenderer.js',
- dataType: "script",
- async: false
- });
- }
-
- $.jqplot.PyramidRenderer = function(){
- $.jqplot.LineRenderer.call(this);
- };
-
- $.jqplot.PyramidRenderer.prototype = new $.jqplot.LineRenderer();
- $.jqplot.PyramidRenderer.prototype.constructor = $.jqplot.PyramidRenderer;
-
- // called with scope of a series
- $.jqplot.PyramidRenderer.prototype.init = function(options, plot) {
- options = options || {};
- this._type = 'pyramid';
- // Group: Properties
- //
- // prop: barPadding
- this.barPadding = 10;
- this.barWidth = null;
- // prop: fill
- // True to fill the bars.
- this.fill = true;
- // prop: highlightMouseOver
- // True to highlight slice when moused over.
- // This must be false to enable highlightMouseDown to highlight when clicking on a slice.
- this.highlightMouseOver = true;
- // prop: highlightMouseDown
- // True to highlight when a mouse button is pressed over a slice.
- // This will be disabled if highlightMouseOver is true.
- this.highlightMouseDown = false;
- // prop: highlightColors
- // an array of colors to use when highlighting a slice.
- this.highlightColors = [];
- // prop highlightThreshold
- // Expand the highlightable region in the x direction.
- // E.g. a value of 3 will highlight a bar when the mouse is
- // within 3 pixels of the bar in the x direction.
- this.highlightThreshold = 2;
- // prop: synchronizeHighlight
- // Index of another series to highlight when this series is highlighted.
- // null or false to not synchronize.
- this.synchronizeHighlight = false;
- // prop: offsetBars
- // False will center bars on their y value.
- // True will push bars up by 1/2 bar width to fill between their y values.
- // If true, there needs to be 1 more tick than there are bars.
- this.offsetBars = false;
-
- // if user has passed in highlightMouseDown option and not set highlightMouseOver, disable highlightMouseOver
- if (options.highlightMouseDown && options.highlightMouseOver == null) {
- options.highlightMouseOver = false;
- }
-
- this.side = 'right';
-
- $.extend(true, this, options);
-
- // if (this.fill === false) {
- // this.shadow = false;
- // }
-
- if (this.side === 'left') {
- this._highlightThreshold = [[-this.highlightThreshold, 0], [-this.highlightThreshold, 0], [0,0], [0,0]];
- }
-
- else {
- this._highlightThreshold = [[0,0], [0,0], [this.highlightThreshold, 0], [this.highlightThreshold, 0]];
- }
-
- this.renderer.options = options;
- // index of the currenty highlighted point, if any
- this._highlightedPoint = null;
- // Array of actual data colors used for each data point.
- this._dataColors = [];
- this._barPoints = [];
- this.fillAxis = 'y';
- this._primaryAxis = '_yaxis';
- this._xnudge = 0;
-
- // set the shape renderer options
- var opts = {lineJoin:'miter', lineCap:'butt', fill:this.fill, fillRect:this.fill, isarc:false, strokeStyle:this.color, fillStyle:this.color, closePath:this.fill, lineWidth: this.lineWidth};
- this.renderer.shapeRenderer.init(opts);
- // set the shadow renderer options
- var shadow_offset = options.shadowOffset;
- // set the shadow renderer options
- if (shadow_offset == null) {
- // scale the shadowOffset to the width of the line.
- if (this.lineWidth > 2.5) {
- shadow_offset = 1.25 * (1 + (Math.atan((this.lineWidth/2.5))/0.785398163 - 1)*0.6);
- // var shadow_offset = this.shadowOffset;
- }
- // for skinny lines, don't make such a big shadow.
- else {
- shadow_offset = 1.25 * Math.atan((this.lineWidth/2.5))/0.785398163;
- }
- }
- var sopts = {lineJoin:'miter', lineCap:'butt', fill:this.fill, fillRect:this.fill, isarc:false, angle:this.shadowAngle, offset:shadow_offset, alpha:this.shadowAlpha, depth:this.shadowDepth, closePath:this.fill, lineWidth: this.lineWidth};
- this.renderer.shadowRenderer.init(sopts);
-
- plot.postDrawHooks.addOnce(postPlotDraw);
- plot.eventListenerHooks.addOnce('jqplotMouseMove', handleMove);
-
- // if this is the left side of pyramid, set y values to negative.
- if (this.side === 'left') {
- for (var i=0, l=this.data.length; i<l; i++) {
- this.data[i][1] = -Math.abs(this.data[i][1]);
- }
- }
- };
-
- // setGridData
- // converts the user data values to grid coordinates and stores them
- // in the gridData array.
- // Called with scope of a series.
- $.jqplot.PyramidRenderer.prototype.setGridData = function(plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var data = this._plotData;
- var pdata = this._prevPlotData;
- this.gridData = [];
- this._prevGridData = [];
- var l = data.length;
- var adjust = false;
- var i;
-
- // if any data values are < 0, consider this a negative series
- for (i = 0; i < l; i++) {
- if (data[i][1] < 0) {
- this.side = 'left';
- }
- }
-
- if (this._yaxis.name === 'yMidAxis' && this.side === 'right') {
- this._xnudge = this._xaxis.max/2000.0;
- adjust = true;
- }
-
- for (i = 0; i < l; i++) {
- // if not a line series or if no nulls in data, push the converted point onto the array.
- if (data[i][0] != null && data[i][1] != null) {
- this.gridData.push([xp(data[i][1]), yp(data[i][0])]);
- }
- // else if there is a null, preserve it.
- else if (data[i][0] == null) {
- this.gridData.push([xp(data[i][1]), null]);
- }
- else if (data[i][1] == null) {
- this.gridData.push(null, [yp(data[i][0])]);
- }
- // finally, adjust x grid data if have to
- if (data[i][1] === 0 && adjust) {
- this.gridData[i][0] = xp(this._xnudge);
- }
- }
- };
-
- // makeGridData
- // converts any arbitrary data values to grid coordinates and
- // returns them. This method exists so that plugins can use a series'
- // linerenderer to generate grid data points without overwriting the
- // grid data associated with that series.
- // Called with scope of a series.
- $.jqplot.PyramidRenderer.prototype.makeGridData = function(data, plot) {
- // recalculate the grid data
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var gd = [];
- var l = data.length;
- var adjust = false;
- var i;
-
- // if any data values are < 0, consider this a negative series
- for (i = 0; i < l; i++) {
- if (data[i][1] < 0) {
- this.side = 'left';
- }
- }
-
- if (this._yaxis.name === 'yMidAxis' && this.side === 'right') {
- this._xnudge = this._xaxis.max/2000.0;
- adjust = true;
- }
-
- for (i = 0; i < l; i++) {
- // if not a line series or if no nulls in data, push the converted point onto the array.
- if (data[i][0] != null && data[i][1] != null) {
- gd.push([xp(data[i][1]), yp(data[i][0])]);
- }
- // else if there is a null, preserve it.
- else if (data[i][0] == null) {
- gd.push([xp(data[i][1]), null]);
- }
- else if (data[i][1] == null) {
- gd.push([null, yp(data[i][0])]);
- }
- // finally, adjust x grid data if have to
- if (data[i][1] === 0 && adjust) {
- gd[i][0] = xp(this._xnudge);
- }
- }
-
- return gd;
- };
-
- $.jqplot.PyramidRenderer.prototype.setBarWidth = function() {
- // need to know how many data values we have on the approprate axis and figure it out.
- var i;
- var nvals = 0;
- var nseries = 0;
- var paxis = this[this._primaryAxis];
- var s, series, pos;
- nvals = paxis.max - paxis.min;
- var nticks = paxis.numberTicks;
- var nbins = (nticks-1)/2;
- // so, now we have total number of axis values.
- var temp = (this.barPadding === 0) ? 1.0 : 0;
- if (paxis.name == 'xaxis' || paxis.name == 'x2axis') {
- this.barWidth = (paxis._offsets.max - paxis._offsets.min) / nvals - this.barPadding + temp;
- }
- else {
- if (this.fill) {
- this.barWidth = (paxis._offsets.min - paxis._offsets.max) / nvals - this.barPadding + temp;
- }
- else {
- this.barWidth = (paxis._offsets.min - paxis._offsets.max) / nvals;
- }
- }
- };
-
- $.jqplot.PyramidRenderer.prototype.draw = function(ctx, gridData, options) {
- var i;
- // Ughhh, have to make a copy of options b/c it may be modified later.
- var opts = $.extend({}, options);
- var shadow = (opts.shadow != undefined) ? opts.shadow : this.shadow;
- var showLine = (opts.showLine != undefined) ? opts.showLine : this.showLine;
- var fill = (opts.fill != undefined) ? opts.fill : this.fill;
- var xp = this._xaxis.series_u2p;
- var yp = this._yaxis.series_u2p;
- var pointx, pointy;
- // clear out data colors.
- this._dataColors = [];
- this._barPoints = [];
-
- if (this.renderer.options.barWidth == null) {
- this.renderer.setBarWidth.call(this);
- }
-
- // var temp = this._plotSeriesInfo = this.renderer.calcSeriesNumbers.call(this);
- // var nvals = temp[0];
- // var nseries = temp[1];
- // var pos = temp[2];
- var points = [],
- w,
- h;
-
- // this._barNudge = 0;
-
- if (showLine) {
- var negativeColors = new $.jqplot.ColorGenerator(this.negativeSeriesColors);
- var positiveColors = new $.jqplot.ColorGenerator(this.seriesColors);
- var negativeColor = negativeColors.get(this.index);
- if (! this.useNegativeColors) {
- negativeColor = opts.fillStyle;
- }
- var positiveColor = opts.fillStyle;
- var base;
- var xstart = this._xaxis.series_u2p(this._xnudge);
- var ystart = this._yaxis.series_u2p(this._yaxis.min);
- var yend = this._yaxis.series_u2p(this._yaxis.max);
- var bw = this.barWidth;
- var bw2 = bw/2.0;
- var points = [];
- var yadj = this.offsetBars ? bw2 : 0;
-
- for (var i=0, l=gridData.length; i<l; i++) {
- if (this.data[i][0] == null) {
- continue;
- }
- base = gridData[i][1];
- // not stacked and first series in stack
-
- if (this._plotData[i][1] < 0) {
- if (this.varyBarColor && !this._stack) {
- if (this.useNegativeColors) {
- opts.fillStyle = negativeColors.next();
- }
- else {
- opts.fillStyle = positiveColors.next();
- }
- }
- }
- else {
- if (this.varyBarColor && !this._stack) {
- opts.fillStyle = positiveColors.next();
- }
- else {
- opts.fillStyle = positiveColor;
- }
- }
-
- if (this.fill) {
-
- if (this._plotData[i][1] >= 0) {
- // xstart = this._xaxis.series_u2p(this._xnudge);
- w = gridData[i][0] - xstart;
- h = this.barWidth;
- points = [xstart, base - bw2 - yadj, w, h];
- }
- else {
- // xstart = this._xaxis.series_u2p(0);
- w = xstart - gridData[i][0];
- h = this.barWidth;
- points = [gridData[i][0], base - bw2 - yadj, w, h];
- }
-
- this._barPoints.push([[points[0], points[1] + h], [points[0], points[1]], [points[0] + w, points[1]], [points[0] + w, points[1] + h]]);
-
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, points);
- }
- var clr = opts.fillStyle || this.color;
- this._dataColors.push(clr);
- this.renderer.shapeRenderer.draw(ctx, points, opts);
- }
-
- else {
- if (i === 0) {
- points =[[xstart, ystart], [gridData[i][0], ystart], [gridData[i][0], gridData[i][1] - bw2 - yadj]];
- }
-
- else if (i < l-1) {
- points = points.concat([[gridData[i-1][0], gridData[i-1][1] - bw2 - yadj], [gridData[i][0], gridData[i][1] + bw2 - yadj], [gridData[i][0], gridData[i][1] - bw2 - yadj]]);
- }
-
- // finally, draw the line
- else {
- points = points.concat([[gridData[i-1][0], gridData[i-1][1] - bw2 - yadj], [gridData[i][0], gridData[i][1] + bw2 - yadj], [gridData[i][0], yend], [xstart, yend]]);
-
- if (shadow) {
- this.renderer.shadowRenderer.draw(ctx, points);
- }
- var clr = opts.fillStyle || this.color;
- this._dataColors.push(clr);
- this.renderer.shapeRenderer.draw(ctx, points, opts);
- }
- }
- }
- }
-
- if (this.highlightColors.length == 0) {
- this.highlightColors = $.jqplot.computeHighlightColors(this._dataColors);
- }
-
- else if (typeof(this.highlightColors) == 'string') {
- this.highlightColors = [];
- for (var i=0; i<this._dataColors.length; i++) {
- this.highlightColors.push(this.highlightColors);
- }
- }
-
- };
-
-
- // setup default renderers for axes and legend so user doesn't have to
- // called with scope of plot
- function preInit(target, data, options) {
- options = options || {};
- options.axesDefaults = options.axesDefaults || {};
- options.grid = options.grid || {};
- options.legend = options.legend || {};
- options.seriesDefaults = options.seriesDefaults || {};
- // only set these if there is a pie series
- var setopts = false;
- if (options.seriesDefaults.renderer === $.jqplot.PyramidRenderer) {
- setopts = true;
- }
- else if (options.series) {
- for (var i=0; i < options.series.length; i++) {
- if (options.series[i].renderer === $.jqplot.PyramidRenderer) {
- setopts = true;
- }
- }
- }
-
- if (setopts) {
- options.axesDefaults.renderer = $.jqplot.PyramidAxisRenderer;
- options.grid.renderer = $.jqplot.PyramidGridRenderer;
- options.seriesDefaults.pointLabels = {show: false};
- }
- }
-
- // called within context of plot
- // create a canvas which we can draw on.
- // insert it before the eventCanvas, so eventCanvas will still capture events.
- function postPlotDraw() {
- // Memory Leaks patch
- if (this.plugins.pyramidRenderer && this.plugins.pyramidRenderer.highlightCanvas) {
-
- this.plugins.pyramidRenderer.highlightCanvas.resetCanvas();
- this.plugins.pyramidRenderer.highlightCanvas = null;
- }
-
- this.plugins.pyramidRenderer = {highlightedSeriesIndex:null};
- this.plugins.pyramidRenderer.highlightCanvas = new $.jqplot.GenericCanvas();
-
- this.eventCanvas._elem.before(this.plugins.pyramidRenderer.highlightCanvas.createElement(this._gridPadding, 'jqplot-pyramidRenderer-highlight-canvas', this._plotDimensions, this));
- this.plugins.pyramidRenderer.highlightCanvas.setContext();
- this.eventCanvas._elem.bind('mouseleave', {plot:this}, function (ev) { unhighlight(ev.data.plot); });
- }
-
- function highlight (plot, sidx, pidx, points) {
- var s = plot.series[sidx];
- var canvas = plot.plugins.pyramidRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0,canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- s._highlightedPoint = pidx;
- plot.plugins.pyramidRenderer.highlightedSeriesIndex = sidx;
- var opts = {fillStyle: s.highlightColors[pidx], fillRect: false};
- s.renderer.shapeRenderer.draw(canvas._ctx, points, opts);
- if (s.synchronizeHighlight !== false && plot.series.length >= s.synchronizeHighlight && s.synchronizeHighlight !== sidx) {
- s = plot.series[s.synchronizeHighlight];
- opts = {fillStyle: s.highlightColors[pidx], fillRect: false};
- s.renderer.shapeRenderer.draw(canvas._ctx, s._barPoints[pidx], opts);
- }
- canvas = null;
- }
-
- function unhighlight (plot) {
- var canvas = plot.plugins.pyramidRenderer.highlightCanvas;
- canvas._ctx.clearRect(0,0, canvas._ctx.canvas.width, canvas._ctx.canvas.height);
- for (var i=0; i<plot.series.length; i++) {
- plot.series[i]._highlightedPoint = null;
- }
- plot.plugins.pyramidRenderer.highlightedSeriesIndex = null;
- plot.target.trigger('jqplotDataUnhighlight');
- canvas = null;
- }
-
-
- function handleMove(ev, gridpos, datapos, neighbor, plot) {
- if (neighbor) {
- var ins = [neighbor.seriesIndex, neighbor.pointIndex, neighbor.data];
- var evt1 = jQuery.Event('jqplotDataMouseOver');
- evt1.pageX = ev.pageX;
- evt1.pageY = ev.pageY;
- plot.target.trigger(evt1, ins);
- if (plot.series[ins[0]].highlightMouseOver && !(ins[0] == plot.plugins.pyramidRenderer.highlightedSeriesIndex && ins[1] == plot.series[ins[0]]._highlightedPoint)) {
- var evt = jQuery.Event('jqplotDataHighlight');
- evt.which = ev.which;
- evt.pageX = ev.pageX;
- evt.pageY = ev.pageY;
- plot.target.trigger(evt, ins);
- highlight (plot, neighbor.seriesIndex, neighbor.pointIndex, neighbor.points);
- }
- }
- else if (neighbor == null) {
- unhighlight (plot);
- }
- }
-
- // Have to add hook here, becuase it needs called before series is inited.
- $.jqplot.preInitHooks.push(preInit);
-
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.min.js
deleted file mode 100644
index 968303cc..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.pyramidRenderer.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(c){if(c.jqplot.PyramidAxisRenderer===undefined){c.ajax({url:c.jqplot.pluginLocation+"jqplot.pyramidAxisRenderer.js",dataType:"script",async:false})}if(c.jqplot.PyramidGridRenderer===undefined){c.ajax({url:c.jqplot.pluginLocation+"jqplot.pyramidGridRenderer.js",dataType:"script",async:false})}c.jqplot.PyramidRenderer=function(){c.jqplot.LineRenderer.call(this)};c.jqplot.PyramidRenderer.prototype=new c.jqplot.LineRenderer();c.jqplot.PyramidRenderer.prototype.constructor=c.jqplot.PyramidRenderer;c.jqplot.PyramidRenderer.prototype.init=function(j,o){j=j||{};this._type="pyramid";this.barPadding=10;this.barWidth=null;this.fill=true;this.highlightMouseOver=true;this.highlightMouseDown=false;this.highlightColors=[];this.highlightThreshold=2;this.synchronizeHighlight=false;this.offsetBars=false;if(j.highlightMouseDown&&j.highlightMouseOver==null){j.highlightMouseOver=false}this.side="right";c.extend(true,this,j);if(this.side==="left"){this._highlightThreshold=[[-this.highlightThreshold,0],[-this.highlightThreshold,0],[0,0],[0,0]]}else{this._highlightThreshold=[[0,0],[0,0],[this.highlightThreshold,0],[this.highlightThreshold,0]]}this.renderer.options=j;this._highlightedPoint=null;this._dataColors=[];this._barPoints=[];this.fillAxis="y";this._primaryAxis="_yaxis";this._xnudge=0;var n={lineJoin:"miter",lineCap:"butt",fill:this.fill,fillRect:this.fill,isarc:false,strokeStyle:this.color,fillStyle:this.color,closePath:this.fill,lineWidth:this.lineWidth};this.renderer.shapeRenderer.init(n);var m=j.shadowOffset;if(m==null){if(this.lineWidth>2.5){m=1.25*(1+(Math.atan((this.lineWidth/2.5))/0.785398163-1)*0.6)}else{m=1.25*Math.atan((this.lineWidth/2.5))/0.785398163}}var h={lineJoin:"miter",lineCap:"butt",fill:this.fill,fillRect:this.fill,isarc:false,angle:this.shadowAngle,offset:m,alpha:this.shadowAlpha,depth:this.shadowDepth,closePath:this.fill,lineWidth:this.lineWidth};this.renderer.shadowRenderer.init(h);o.postDrawHooks.addOnce(f);o.eventListenerHooks.addOnce("jqplotMouseMove",e);if(this.side==="left"){for(var k=0,g=this.data.length;k<g;k++){this.data[k][1]=-Math.abs(this.data[k][1])}}};c.jqplot.PyramidRenderer.prototype.setGridData=function(p){var j=this._xaxis.series_u2p;var o=this._yaxis.series_u2p;var k=this._plotData;var n=this._prevPlotData;this.gridData=[];this._prevGridData=[];var g=k.length;var m=false;var h;for(h=0;h<g;h++){if(k[h][1]<0){this.side="left"}}if(this._yaxis.name==="yMidAxis"&&this.side==="right"){this._xnudge=this._xaxis.max/2000;m=true}for(h=0;h<g;h++){if(k[h][0]!=null&&k[h][1]!=null){this.gridData.push([j(k[h][1]),o(k[h][0])])}else{if(k[h][0]==null){this.gridData.push([j(k[h][1]),null])}else{if(k[h][1]==null){this.gridData.push(null,[o(k[h][0])])}}}if(k[h][1]===0&&m){this.gridData[h][0]=j(this._xnudge)}}};c.jqplot.PyramidRenderer.prototype.makeGridData=function(m,p){var k=this._xaxis.series_u2p;var o=this._yaxis.series_u2p;var j=[];var g=m.length;var n=false;var h;for(h=0;h<g;h++){if(m[h][1]<0){this.side="left"}}if(this._yaxis.name==="yMidAxis"&&this.side==="right"){this._xnudge=this._xaxis.max/2000;n=true}for(h=0;h<g;h++){if(m[h][0]!=null&&m[h][1]!=null){j.push([k(m[h][1]),o(m[h][0])])}else{if(m[h][0]==null){j.push([k(m[h][1]),null])}else{if(m[h][1]==null){j.push([null,o(m[h][0])])}}}if(m[h][1]===0&&n){j[h][0]=k(this._xnudge)}}return j};c.jqplot.PyramidRenderer.prototype.setBarWidth=function(){var k;var g=0;var h=0;var m=this[this._primaryAxis];var q,l,o;g=m.max-m.min;var n=m.numberTicks;var j=(n-1)/2;var p=(this.barPadding===0)?1:0;if(m.name=="xaxis"||m.name=="x2axis"){this.barWidth=(m._offsets.max-m._offsets.min)/g-this.barPadding+p}else{if(this.fill){this.barWidth=(m._offsets.min-m._offsets.max)/g-this.barPadding+p}else{this.barWidth=(m._offsets.min-m._offsets.max)/g}}};c.jqplot.PyramidRenderer.prototype.draw=function(B,I,k){var E;var u=c.extend({},k);var p=(u.shadow!=undefined)?u.shadow:this.shadow;var K=(u.showLine!=undefined)?u.showLine:this.showLine;var C=(u.fill!=undefined)?u.fill:this.fill;var t=this._xaxis.series_u2p;var G=this._yaxis.series_u2p;var z,x;this._dataColors=[];this._barPoints=[];if(this.renderer.options.barWidth==null){this.renderer.setBarWidth.call(this)}var D=[],s,F;if(K){var q=new c.jqplot.ColorGenerator(this.negativeSeriesColors);var v=new c.jqplot.ColorGenerator(this.seriesColors);var J=q.get(this.index);if(!this.useNegativeColors){J=u.fillStyle}var o=u.fillStyle;var n;var L=this._xaxis.series_u2p(this._xnudge);var j=this._yaxis.series_u2p(this._yaxis.min);var m=this._yaxis.series_u2p(this._yaxis.max);var H=this.barWidth;var y=H/2;var D=[];var r=this.offsetBars?y:0;for(var E=0,A=I.length;E<A;E++){if(this.data[E][0]==null){continue}n=I[E][1];if(this._plotData[E][1]<0){if(this.varyBarColor&&!this._stack){if(this.useNegativeColors){u.fillStyle=q.next()}else{u.fillStyle=v.next()}}}else{if(this.varyBarColor&&!this._stack){u.fillStyle=v.next()}else{u.fillStyle=o}}if(this.fill){if(this._plotData[E][1]>=0){s=I[E][0]-L;F=this.barWidth;D=[L,n-y-r,s,F]}else{s=L-I[E][0];F=this.barWidth;D=[I[E][0],n-y-r,s,F]}this._barPoints.push([[D[0],D[1]+F],[D[0],D[1]],[D[0]+s,D[1]],[D[0]+s,D[1]+F]]);if(p){this.renderer.shadowRenderer.draw(B,D)}var g=u.fillStyle||this.color;this._dataColors.push(g);this.renderer.shapeRenderer.draw(B,D,u)}else{if(E===0){D=[[L,j],[I[E][0],j],[I[E][0],I[E][1]-y-r]]}else{if(E<A-1){D=D.concat([[I[E-1][0],I[E-1][1]-y-r],[I[E][0],I[E][1]+y-r],[I[E][0],I[E][1]-y-r]])}else{D=D.concat([[I[E-1][0],I[E-1][1]-y-r],[I[E][0],I[E][1]+y-r],[I[E][0],m],[L,m]]);if(p){this.renderer.shadowRenderer.draw(B,D)}var g=u.fillStyle||this.color;this._dataColors.push(g);this.renderer.shapeRenderer.draw(B,D,u)}}}}}if(this.highlightColors.length==0){this.highlightColors=c.jqplot.computeHighlightColors(this._dataColors)}else{if(typeof(this.highlightColors)=="string"){this.highlightColors=[];for(var E=0;E<this._dataColors.length;E++){this.highlightColors.push(this.highlightColors)}}}};function b(l,k,h){h=h||{};h.axesDefaults=h.axesDefaults||{};h.grid=h.grid||{};h.legend=h.legend||{};h.seriesDefaults=h.seriesDefaults||{};var g=false;if(h.seriesDefaults.renderer===c.jqplot.PyramidRenderer){g=true}else{if(h.series){for(var j=0;j<h.series.length;j++){if(h.series[j].renderer===c.jqplot.PyramidRenderer){g=true}}}}if(g){h.axesDefaults.renderer=c.jqplot.PyramidAxisRenderer;h.grid.renderer=c.jqplot.PyramidGridRenderer;h.seriesDefaults.pointLabels={show:false}}}function f(){if(this.plugins.pyramidRenderer&&this.plugins.pyramidRenderer.highlightCanvas){this.plugins.pyramidRenderer.highlightCanvas.resetCanvas();this.plugins.pyramidRenderer.highlightCanvas=null}this.plugins.pyramidRenderer={highlightedSeriesIndex:null};this.plugins.pyramidRenderer.highlightCanvas=new c.jqplot.GenericCanvas();this.eventCanvas._elem.before(this.plugins.pyramidRenderer.highlightCanvas.createElement(this._gridPadding,"jqplot-pyramidRenderer-highlight-canvas",this._plotDimensions,this));this.plugins.pyramidRenderer.highlightCanvas.setContext();this.eventCanvas._elem.bind("mouseleave",{plot:this},function(g){d(g.data.plot)})}function a(m,l,j,i){var h=m.series[l];var g=m.plugins.pyramidRenderer.highlightCanvas;g._ctx.clearRect(0,0,g._ctx.canvas.width,g._ctx.canvas.height);h._highlightedPoint=j;m.plugins.pyramidRenderer.highlightedSeriesIndex=l;var k={fillStyle:h.highlightColors[j],fillRect:false};h.renderer.shapeRenderer.draw(g._ctx,i,k);if(h.synchronizeHighlight!==false&&m.series.length>=h.synchronizeHighlight&&h.synchronizeHighlight!==l){h=m.series[h.synchronizeHighlight];k={fillStyle:h.highlightColors[j],fillRect:false};h.renderer.shapeRenderer.draw(g._ctx,h._barPoints[j],k)}g=null}function d(j){var g=j.plugins.pyramidRenderer.highlightCanvas;g._ctx.clearRect(0,0,g._ctx.canvas.width,g._ctx.canvas.height);for(var h=0;h<j.series.length;h++){j.series[h]._highlightedPoint=null}j.plugins.pyramidRenderer.highlightedSeriesIndex=null;j.target.trigger("jqplotDataUnhighlight");g=null}function e(k,j,n,m,l){if(m){var i=[m.seriesIndex,m.pointIndex,m.data];var h=jQuery.Event("jqplotDataMouseOver");h.pageX=k.pageX;h.pageY=k.pageY;l.target.trigger(h,i);if(l.series[i[0]].highlightMouseOver&&!(i[0]==l.plugins.pyramidRenderer.highlightedSeriesIndex&&i[1]==l.series[i[0]]._highlightedPoint)){var g=jQuery.Event("jqplotDataHighlight");g.which=k.which;g.pageX=k.pageX;g.pageY=k.pageY;l.target.trigger(g,i);a(l,m.seriesIndex,m.pointIndex,m.points)}}else{if(m==null){d(l)}}}c.jqplot.preInitHooks.push(b)})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.js
deleted file mode 100644
index dc5c7554..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.js
+++ /dev/null
@@ -1,223 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4
- * Revision: 1121
- *
- * Copyright (c) 2009-2012 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- */
-(function($) {
-
- /**
- * Class: $.jqplot.Trendline
- * Plugin which will automatically compute and draw trendlines for plotted data.
- */
- $.jqplot.Trendline = function() {
- // Group: Properties
-
- // prop: show
- // Wether or not to show the trend line.
- this.show = $.jqplot.config.enablePlugins;
- // prop: color
- // CSS color spec for the trend line.
- // By default this wil be the same color as the primary line.
- this.color = '#666666';
- // prop: renderer
- // Renderer to use to draw the trend line.
- // The data series that is plotted may not be rendered as a line.
- // Therefore, we use our own line renderer here to draw a trend line.
- this.renderer = new $.jqplot.LineRenderer();
- // prop: rendererOptions
- // Options to pass to the line renderer.
- // By default, markers are not shown on trend lines.
- this.rendererOptions = {marker:{show:false}};
- // prop: label
- // Label for the trend line to use in the legend.
- this.label = '';
- // prop: type
- // Either 'exponential', 'exp', or 'linear'.
- this.type = 'linear';
- // prop: shadow
- // true or false, wether or not to show the shadow.
- this.shadow = true;
- // prop: markerRenderer
- // Renderer to use to draw markers on the line.
- // I think this is wrong.
- this.markerRenderer = {show:false};
- // prop: lineWidth
- // Width of the trend line.
- this.lineWidth = 1.5;
- // prop: shadowAngle
- // Angle of the shadow on the trend line.
- this.shadowAngle = 45;
- // prop: shadowOffset
- // pixel offset for each stroke of the shadow.
- this.shadowOffset = 1.0;
- // prop: shadowAlpha
- // Alpha transparency of the shadow.
- this.shadowAlpha = 0.07;
- // prop: shadowDepth
- // number of strokes to make of the shadow.
- this.shadowDepth = 3;
- this.isTrendline = true;
-
- };
-
- $.jqplot.postSeriesInitHooks.push(parseTrendLineOptions);
- $.jqplot.postDrawSeriesHooks.push(drawTrendline);
- $.jqplot.addLegendRowHooks.push(addTrendlineLegend);
-
- // called witin scope of the legend object
- // current series passed in
- // must return null or an object {label:label, color:color}
- function addTrendlineLegend(series) {
- var ret = null;
- if (series.trendline && series.trendline.show) {
- var lt = series.trendline.label.toString();
- if (lt) {
- ret = {label:lt, color:series.trendline.color};
- }
- }
- return ret;
- }
-
- // called within scope of a series
- function parseTrendLineOptions (target, data, seriesDefaults, options, plot) {
- if (this._type && (this._type === 'line' || this._type == 'bar')) {
- this.trendline = new $.jqplot.Trendline();
- options = options || {};
- $.extend(true, this.trendline, {color:this.color}, seriesDefaults.trendline, options.trendline);
- this.trendline.renderer.init.call(this.trendline, null);
- }
- }
-
- // called within scope of series object
- function drawTrendline(sctx, options) {
- // if we have options, merge trendline options in with precedence
- options = $.extend(true, {}, this.trendline, options);
-
- if (this.trendline && options.show) {
- var fit;
- // this.renderer.setGridData.call(this);
- var data = options.data || this.data;
- fit = fitData(data, this.trendline.type);
- var gridData = options.gridData || this.renderer.makeGridData.call(this, fit.data);
- this.trendline.renderer.draw.call(this.trendline, sctx, gridData, {showLine:true, shadow:this.trendline.shadow});
- }
- }
-
- function regression(x, y, typ) {
- var type = (typ == null) ? 'linear' : typ;
- var N = x.length;
- var slope;
- var intercept;
- var SX = 0;
- var SY = 0;
- var SXX = 0;
- var SXY = 0;
- var SYY = 0;
- var Y = [];
- var X = [];
-
- if (type == 'linear') {
- X = x;
- Y = y;
- }
- else if (type == 'exp' || type == 'exponential') {
- for ( var i=0; i<y.length; i++) {
- // ignore points <= 0, log undefined.
- if (y[i] <= 0) {
- N--;
- }
- else {
- X.push(x[i]);
- Y.push(Math.log(y[i]));
- }
- }
- }
-
- for ( var i = 0; i < N; i++) {
- SX = SX + X[i];
- SY = SY + Y[i];
- SXY = SXY + X[i]* Y[i];
- SXX = SXX + X[i]* X[i];
- SYY = SYY + Y[i]* Y[i];
- }
-
- slope = (N*SXY - SX*SY)/(N*SXX - SX*SX);
- intercept = (SY - slope*SX)/N;
-
- return [slope, intercept];
- }
-
- function linearRegression(X,Y) {
- var ret;
- ret = regression(X,Y,'linear');
- return [ret[0],ret[1]];
- }
-
- function expRegression(X,Y) {
- var ret;
- var x = X;
- var y = Y;
- ret = regression(x, y,'exp');
- var base = Math.exp(ret[0]);
- var coeff = Math.exp(ret[1]);
- return [base, coeff];
- }
-
- function fitData(data, typ) {
- var type = (typ == null) ? 'linear' : typ;
- var ret;
- var res;
- var x = [];
- var y = [];
- var ypred = [];
-
- for (i=0; i<data.length; i++){
- if (data[i] != null && data[i][0] != null && data[i][1] != null) {
- x.push(data[i][0]);
- y.push(data[i][1]);
- }
- }
-
- if (type == 'linear') {
- ret = linearRegression(x,y);
- for ( var i=0; i<x.length; i++){
- res = ret[0]*x[i] + ret[1];
- ypred.push([x[i], res]);
- }
- }
- else if (type == 'exp' || type == 'exponential') {
- ret = expRegression(x,y);
- for ( var i=0; i<x.length; i++){
- res = ret[1]*Math.pow(ret[0],x[i]);
- ypred.push([x[i], res]);
- }
- }
- return {data: ypred, slope: ret[0], intercept: ret[1]};
- }
-
-})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.min.js b/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.min.js
deleted file mode 100644
index 07105a4f..00000000
--- a/wqflask/wqflask/static/packages/jqplot/plugins/jqplot.trendline.min.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * jqPlot
- * Pure JavaScript plotting plugin using jQuery
- *
- * Version: 1.0.4r1121
- *
- * Copyright (c) 2009-2011 Chris Leonello
- * jqPlot is currently available for use in all personal or commercial projects
- * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
- * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * Although not required, the author would appreciate an email letting him
- * know of any substantial use of jqPlot. You can reach the author at:
- * chris at jqplot dot com or see http://www.jqplot.com/info.php .
- *
- * If you are feeling kind and generous, consider supporting the project by
- * making a donation at: http://www.jqplot.com/donate.php .
- *
- * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
- *
- * version 2007.04.27
- * author Ash Searle
- * http://hexmen.com/blog/2007/03/printf-sprintf/
- * http://hexmen.com/js/sprintf.js
- * The author (Ash Searle) has placed this code in the public domain:
- * "This code is unrestricted: you are free to use it however you like."
- *
- * included jsDate library by Chris Leonello:
- *
- * Copyright (c) 2010-2011 Chris Leonello
- *
- * jsDate is currently available for use in all personal or commercial projects
- * under both the MIT and GPL version 2.0 licenses. This means that you can
- * choose the license that best suits your project and use it accordingly.
- *
- * jsDate borrows many concepts and ideas from the Date Instance
- * Methods by Ken Snyder along with some parts of Ken's actual code.
- *
- * Ken's origianl Date Instance Methods and copyright notice:
- *
- * Ken Snyder (ken d snyder at gmail dot com)
- * 2008-09-10
- * version 2.0.2 (http://kendsnyder.com/sandbox/date/)
- * Creative Commons Attribution License 3.0 (http://creativecommons.org/licenses/by/3.0/)
- *
- * jqplotToImage function based on Larry Siden's export-jqplot-to-png.js.
- * Larry has generously given permission to adapt his code for inclusion
- * into jqPlot.
- *
- * Larry's original code can be found here:
- *
- * https://github.com/lsiden/export-jqplot-to-png
- *
- *
- */
-(function(f){f.jqplot.Trendline=function(){this.show=f.jqplot.config.enablePlugins;this.color="#666666";this.renderer=new f.jqplot.LineRenderer();this.rendererOptions={marker:{show:false}};this.label="";this.type="linear";this.shadow=true;this.markerRenderer={show:false};this.lineWidth=1.5;this.shadowAngle=45;this.shadowOffset=1;this.shadowAlpha=0.07;this.shadowDepth=3;this.isTrendline=true};f.jqplot.postSeriesInitHooks.push(e);f.jqplot.postDrawSeriesHooks.push(g);f.jqplot.addLegendRowHooks.push(a);function a(k){var j=null;if(k.trendline&&k.trendline.show){var i=k.trendline.label.toString();if(i){j={label:i,color:k.trendline.color}}}return j}function e(m,k,j,i,l){if(this._type&&(this._type==="line"||this._type=="bar")){this.trendline=new f.jqplot.Trendline();i=i||{};f.extend(true,this.trendline,{color:this.color},j.trendline,i.trendline);this.trendline.renderer.init.call(this.trendline,null)}}function g(m,i){i=f.extend(true,{},this.trendline,i);if(this.trendline&&i.show){var k;var l=i.data||this.data;k=c(l,this.trendline.type);var j=i.gridData||this.renderer.makeGridData.call(this,k.data);this.trendline.renderer.draw.call(this.trendline,m,j,{showLine:true,shadow:this.trendline.shadow})}}function b(w,v,n){var u=(n==null)?"linear":n;var s=w.length;var t;var z;var o=0;var m=0;var r=0;var q=0;var l=0;var j=[];var k=[];if(u=="linear"){k=w;j=v}else{if(u=="exp"||u=="exponential"){for(var p=0;p<v.length;p++){if(v[p]<=0){s--}else{k.push(w[p]);j.push(Math.log(v[p]))}}}}for(var p=0;p<s;p++){o=o+k[p];m=m+j[p];q=q+k[p]*j[p];r=r+k[p]*k[p];l=l+j[p]*j[p]}t=(s*q-o*m)/(s*r-o*o);z=(m-t*o)/s;return[t,z]}function h(k,j){var i;i=b(k,j,"linear");return[i[0],i[1]]}function d(o,m){var k;var i=o;var n=m;k=b(i,n,"exp");var l=Math.exp(k[0]);var j=Math.exp(k[1]);return[l,j]}function c(l,j){var p=(j==null)?"linear":j;var n;var o;var r=[];var q=[];var m=[];for(k=0;k<l.length;k++){if(l[k]!=null&&l[k][0]!=null&&l[k][1]!=null){r.push(l[k][0]);q.push(l[k][1])}}if(p=="linear"){n=h(r,q);for(var k=0;k<r.length;k++){o=n[0]*r[k]+n[1];m.push([r[k],o])}}else{if(p=="exp"||p=="exponential"){n=d(r,q);for(var k=0;k<r.length;k++){o=n[1]*Math.pow(n[0],r[k]);m.push([r[k],o])}}}return{data:m,slope:n[0],intercept:n[1]}}})(jQuery); \ No newline at end of file
diff --git a/wqflask/wqflask/static/packages/jqplot/usage.txt b/wqflask/wqflask/static/packages/jqplot/usage.txt
deleted file mode 100644
index 01f82d27..00000000
--- a/wqflask/wqflask/static/packages/jqplot/usage.txt
+++ /dev/null
@@ -1,126 +0,0 @@
-Title: jqPlot Usage
-
-Usage Documentation:
-
-Introduction:
-
-jqPlot is a jQuery plugin to generate pure client-side javascript charts in your web pages.
-
-The jqPlot home page is at <http://www.jqplot.com/>.
-
-The project page and downloads are at <http://www.bitbucket.org/cleonello/jqplot/>.
-
-Below are a few examples to demonstrate jqPlot usage. These plots are shown as static images.
-Many more examples of dynamically rendered plots can be seen on the test and examples pages here: <../../tests/>.
-
-Include the Files:
-
-jqPlot requires jQuery (1.4+ required for certain features). jQuery is included in the distribution.
-To use jqPlot include jquery, the jqPlot jQuery plugin, jqPlot css file and optionally the excanvas
-script for IE support in your web page. Note, excanvas is required only for IE versions below 9. IE 9 includes
-native support for the canvas element and does not require excanvas:
-
-> <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
-> <script language="javascript" type="text/javascript" src="jquery.min.js"></script>
-> <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script>
-> <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
-
-Add a plot container:
-
-Add a container (target) to your web page where you want your plot to show up.
-Be sure to give your target a width and a height:
-
-> <div id="chartdiv" style="height:400px;width:300px; "></div>
-
-Create a plot:
-
-Then, create the actual plot by calling the
-$.jqplot plugin with the id of your target and some data:
-
-> $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]]);
-
-Which will produce a
-chart like:
-
-(see images/basicline.png)
-
-Plot Options:
-
-You can customize the plot by passing options to the $.jqplot function. Options are described in
-<jqPlot Options> in the jqPlotOptions.txt file. An example of options usage:
-
-> $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-> { title:'Exponential Line',
-> axes:{yaxis:{min:-10, max:240}},
-> series:[{color:'#5FAB78'}]
-> });
-
-Which will produce
-a plot like:
-
-(see images/basicoptions.png)
-
-Using Plugins:
-
-You can use jqPlot plugins (that is, plugins to the jqPlot plugin) by including them in your html
-after you include the jqPlot plugin. Here is how to include the log axis plugin:
-
-> <link rel="stylesheet" type="text/css" href="jquery.jqplot.css" />
-> <!--[if IE]><script language="javascript" type="text/javascript" src="excanvas.js"></script><![endif]-->
-> <script language="javascript" type="text/javascript" src="jquery.min.js"></script>
-> <script language="javascript" type="text/javascript" src="jquery.jqplot.min.js"></script>
-> <script language="javascript" type="text/javascript" src="jqplot.logAxisRenderer.js"></script>
-
-Important note: For jqplot builds r529 and above (0.9.7r529 and higher), you must explicitly
-enable plugins via either the { show: true } plugin option to the plot or by using
-the $.jqplot.config.enablePlugins = true; config options set on the page before plot creation.
-Only plugins that can be immediately active upon loading are affected. This includes
-non-renderer plugins like cursor, dragable, highlighter, and trendline.
-
-Here is a the same $.jqplot call
-but with a log y axis:
-
-> $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-> { title:'Exponential Line',
-> axes:{yaxis:{renderer: $.jqplot.LogAxisRenderer}},
-> series:[{color:'#5FAB78'}]
-> });
-
-Which produces
-a plot like:
-
-(see images/basiclogaxis.png)
-
-You can further customize with options specific
-to the log axis plugin:
-
-> $.jqplot('chartdiv', [[[1, 2],[3,5.12],[5,13.1],[7,33.6],[9,85.9],[11,219.9]]],
-> { title:'Exponential Line',
-> axes:{yaxis:{renderer: $.jqplot.LogAxisRenderer, tickDistribution:'power'}},
-> series:[{color:'#5FAB78'}]
-> });
-
-Which makes a
-plot like:
-
-(see images/basiclogoptions.png)
-
-For a full list of options, see <jqPlot Options> in the jqPlotOptions.txt file.
-
-You can add as many plugins as you wish. Order is generally not important.
-Some plugins, like the highlighter plugin which highlights data points near the
-mouse, don't need any extra options or setup to function. Highlighter does have
-additional options which the user can set.
-
-Other plugins, the barRenderer for example, provide functionality the must be specified
-in the chart options object. To render a series as a bar graph with the bar renderer,
-you would first include the plugin after jqPlot:
-
-> <script language="javascript" type="text/javascript" src="plugins/jqplot.barRenderer.min.js"></script>
-
-Then you would create
-a chart like:
-
-> $.jqplot('chartdiv', [[34.53, 56.32, 25.1, 18.6]], {series:[{renderer:$.jqplot.BarRenderer}]});
-
-Here the default LineRenderer is replaced by a BarRenderer to generate a bar graph for the first (an only) series. \ No newline at end of file
diff --git a/wqflask/wqflask/templates/base.html b/wqflask/wqflask/templates/base.html
index 237a65f3..64daa1cc 100644
--- a/wqflask/wqflask/templates/base.html
+++ b/wqflask/wqflask/templates/base.html
@@ -77,6 +77,9 @@
{% endif %}
</li>
<li style="margin-left: 20px;">
+ <a href="http://gn2-staging.genenetwork.org" style="font-weight: bold;" >Use Staging Branch</a>
+ </li>
+ <li style="margin-left: 20px;">
<a href="http://www.genenetwork.org" style="font-weight: bold;" >Use GeneNetwork 1</a>
</li>
</ul>
diff --git a/wqflask/wqflask/templates/corr_scatterplot.html b/wqflask/wqflask/templates/corr_scatterplot.html
index bb509270..87588534 100644
--- a/wqflask/wqflask/templates/corr_scatterplot.html
+++ b/wqflask/wqflask/templates/corr_scatterplot.html
@@ -1,7 +1,6 @@
{% extends "base.html" %}
{% block css %}
- <link rel="stylesheet" type="text/css" href="/static/packages/jqplot/jquery.jqplot.min.css" />
<link rel="stylesheet" type="text/css" href="/static/new/packages/DataTables/css/jquery.dataTables.css" />
<link rel="stylesheet" type="text/css" href="/static/packages/DT_bootstrap/DT_bootstrap.css" />
<link rel="stylesheet" type="text/css" href="/static/packages/TableTools/media/css/TableTools.css" />
diff --git a/wqflask/wqflask/templates/correlation_matrix.html b/wqflask/wqflask/templates/correlation_matrix.html
index d27788a8..c4668e05 100644
--- a/wqflask/wqflask/templates/correlation_matrix.html
+++ b/wqflask/wqflask/templates/correlation_matrix.html
@@ -1,6 +1,5 @@
{% extends "base.html" %}
{% block css %}
- <link rel="stylesheet" type="text/css" href="/static/packages/jqplot/jquery.jqplot.min.css" />
<link rel="stylesheet" type="text/css" href="/static/new/packages/DataTables/css/jquery.dataTables.css" />
<link rel="stylesheet" type="text/css" href="/static/packages/DT_bootstrap/DT_bootstrap.css" />
<link rel="stylesheet" type="text/css" href="/static/packages/TableTools/media/css/TableTools.css" />
diff --git a/wqflask/wqflask/templates/marker_regression_gn1.html b/wqflask/wqflask/templates/marker_regression_gn1.html
index 08a934a6..fd083983 100644
--- a/wqflask/wqflask/templates/marker_regression_gn1.html
+++ b/wqflask/wqflask/templates/marker_regression_gn1.html
@@ -183,6 +183,13 @@
{% if selectedChr == -1 %}
<div class="container" style="padding-left: 30px; width:{% if 'additive' in trimmed_markers[0] %}45%{% else %}35%{% endif %};">
<h2>Mapping Statistics</h2>
+ <br />
+ <button class="btn btn-default" id="select_all"><span class="glyphicon glyphicon-ok"></span> Select All</button>
+ <button class="btn btn-default" id="deselect_all"><span class="glyphicon glyphicon-remove"></span> Deselect All</button>
+ <button class="btn btn-default" id="invert"><span class="glyphicon glyphicon-resize-vertical"></span> Invert</button>
+ <button class="btn btn-default" id="add" disabled><span class="glyphicon glyphicon-plus-sign"></span> Add</button>
+ <br />
+ <br />
<div id="table_container" style="border-style: solid; border-width: 1px; border-color: black;">
<table id="trait_table" class="table table-hover table-striped nowrap">
<thead>
@@ -211,7 +218,7 @@
<td align="center" style="padding-right: 0px;">
<input type="checkbox" name="selectCheck"
class="checkbox trait_checkbox"
- value="{{ marker.name }}">
+ value="{{ data_hmac('{}:{}Geno'.format(marker.name, dataset.group.name)) }}">
</td>
<td align="right">{{ loop.index }}</td>
<td>{% if geno_db_exists == "True" %}<a href="/show_trait?trait_id={{ marker.name }}&dataset={{ dataset.group.name }}Geno">{{ marker.name }}</a>{% else %}{{ marker.name }}{% endif %}</td>
diff --git a/wqflask/wqflask/templates/show_trait.html b/wqflask/wqflask/templates/show_trait.html
index dd4325e7..5d128b4a 100644
--- a/wqflask/wqflask/templates/show_trait.html
+++ b/wqflask/wqflask/templates/show_trait.html
@@ -133,34 +133,21 @@
<script type="text/javascript" src="/static/new/js_external/jstat.min.js"></script>
<script type="text/javascript" src="/static/new/js_external/shapiro-wilk.js"></script>
<script type="text/javascript" src="/static/new/js_external/plotly-latest.min.js"></script>
- <script type="text/javascript" src="/static/new/js_external/saveSvgAsPng.js"></script>
<script type="text/javascript" src="/static/new/javascript/colorbrewer.js"></script>
<script type="text/javascript" src="/static/new/javascript/stats.js"></script>
- <script type="text/javascript" src="/static/new/javascript/box.js"></script>
- <script type="text/javascript" src="/static/new/javascript/bar_chart.js"></script>
- <script type="text/javascript" src="/static/new/javascript/histogram.js"></script>
- <script type="text/javascript" src="/static/new/javascript/box_plot.js"></script>
- <script type="text/javascript" src="/static/new/javascript/scatterplot.js"></script>
<script type="text/javascript" src="/static/new/javascript/scatter-matrix.js"></script>
- <script type="text/javascript" src="/static/new/javascript/draw_probability_plot.js"></script>
- <!--<script type="text/javascript" src="/static/new/javascript/plotly_probability_plot.js"></script>-->
+ <script type="text/javascript" src="/static/new/javascript/plotly_probability_plot.js"></script>
<script type="text/javascript" src="/static/new/javascript/compare_traits_scatterplot.js"></script>
<script language="javascript" type="text/javascript" src="/static/new/javascript/get_covariates_from_collection.js"></script>
<script type="text/javascript" src="/static/new/javascript/show_trait_mapping_tools.js"></script>
<script type="text/javascript" src="/static/new/javascript/show_trait.js"></script>
<script type="text/javascript" src="/static/new/javascript/validation.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/jsPDF/libs/FileSaver.js/FileSaver.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/jsPDF/libs/Blob.js/BlobBuilder.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/jsPDF/jspdf.plugin.standard_fonts_metrics.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/jsPDF/jspdf.plugin.from_html.js"></script>
<script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/jquery.dataTables.js"></script>
<script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/dataTables.scientific.js"></script>
<script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/js/dataTables.naturalSort.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/extensions/dataTables.colResize.js"></script>
- <script language="javascript" type="text/javascript" src="/static/new/packages/DataTables/extensions/dataTables.colReorder.js"></script>
<script language="javascript" type="text/javascript" src="/static/new/packages/noUiSlider/nouislider.js"></script>
<script type="text/javascript" charset="utf-8">
diff --git a/wqflask/wqflask/templates/show_trait_statistics.html b/wqflask/wqflask/templates/show_trait_statistics.html
index aa95b083..09df3245 100644
--- a/wqflask/wqflask/templates/show_trait_statistics.html
+++ b/wqflask/wqflask/templates/show_trait_statistics.html
@@ -110,9 +110,7 @@
{% endif %}
<div id="prob_plot_container">
- <div id="prob_plot_title"></div>
- <svg></svg>
- <!--<div id="prob_plot_div"></div>-->
+ <div id="prob_plot_div"></div>
</div>
<div id="shapiro_wilk_text"></div>
<div>
diff --git a/wqflask/wqflask/user_manager.py b/wqflask/wqflask/user_manager.py
index ebca4807..5f6c818e 100644
--- a/wqflask/wqflask/user_manager.py
+++ b/wqflask/wqflask/user_manager.py
@@ -1,52 +1,33 @@
from __future__ import print_function, division, absolute_import
-"""Used to Access things in template like this:
-(BUT NOW OUT OF DATE)
-
- x: {{ g.identity.name }}
- security: {{ security.__dict__ }}
-
-"""
-
import os
import hashlib
import datetime
import time
import logging
-
import uuid
import hashlib
import hmac
import base64
-
import urlparse
import simplejson as json
-import sqlalchemy
-from sqlalchemy import orm
-
#from redis import StrictRedis
-import redis
+import redis # used for collections
Redis = redis.StrictRedis()
-
from flask import (Flask, g, render_template, url_for, request, make_response,
redirect, flash, abort)
from wqflask import app
-
-
from pprint import pformat as pf
-from wqflask import pbkdf2
-
+from wqflask import pbkdf2 # password hashing
from wqflask.database import db_session
-
from wqflask import model
from utility import Bunch, Struct, after
-from utility.tools import LOG_SQL, LOG_SQL_ALCHEMY
import logging
from utility.logger import getLogger
@@ -58,7 +39,7 @@ import requests
from utility.elasticsearch_tools import get_elasticsearch_connection, get_user_by_unique_column, get_item_by_unique_column, save_user, es_save_data
from smtplib import SMTP
-from utility.tools import SMTP_CONNECT, SMTP_USERNAME, SMTP_PASSWORD
+from utility.tools import SMTP_CONNECT, SMTP_USERNAME, SMTP_PASSWORD, LOG_SQL_ALCHEMY
THREE_DAYS = 60 * 60 * 24 * 3
#THREE_DAYS = 45
@@ -66,8 +47,8 @@ THREE_DAYS = 60 * 60 * 24 * 3
def timestamp():
return datetime.datetime.utcnow().isoformat()
-
class AnonUser(object):
+ """Anonymous user handling"""
cookie_name = 'anon_user_v8'
def __init__(self):
@@ -173,6 +154,8 @@ def create_signed_cookie():
return the_uuid, uuid_signed
class UserSession(object):
+ """Logged in user handling"""
+
cookie_name = 'session_id_v2'
def __init__(self):
@@ -223,6 +206,7 @@ class UserSession(object):
def user_ob(self):
"""Actual sqlalchemy record"""
# Only look it up once if needed, then store it
+ # raise "OBSOLETE: use ElasticSearch instead"
try:
if LOG_SQL_ALCHEMY:
logging.getLogger('sqlalchemy.pool').setLevel(logging.DEBUG)
@@ -440,6 +424,7 @@ def verify_email():
@app.route("/n/password_reset", methods=['GET'])
def password_reset():
+ """Entry point after user clicks link in E-mail"""
logger.debug("in password_reset request.url is:", request.url)
# We do this mainly just to assert that it's in proper form for displaying next page
# Really not necessary but doesn't hurt
@@ -470,6 +455,7 @@ def password_reset():
@app.route("/n/password_reset_step2", methods=('POST',))
def password_reset_step2():
+ """Handle confirmation E-mail for password reset"""
logger.debug("in password_reset request.url is:", request.url)
errors = []
@@ -666,8 +652,6 @@ class LoginUser(object):
VerificationEmail(user)
return render_template("new_security/verification_still_needed.html",
subject=VerificationEmail.subject)
-
-
if valid:
if params.get('remember'):
logger.debug("I will remember you")
@@ -745,12 +729,15 @@ def logout():
@app.route("/n/forgot_password")
def forgot_password():
+ """Entry point for forgotten password"""
return render_template("new_security/forgot_password.html")
@app.route("/n/forgot_password_submit", methods=('POST',))
def forgot_password_submit():
+ """When a forgotten password form is submitted we get here"""
params = request.form
email_address = params['email_address']
+ logger.debug("Wants to send password E-mail to ",email_address)
es = get_elasticsearch_connection()
user_details = get_user_by_unique_column(es, "email_address", email_address)
if user_details:
@@ -844,19 +831,6 @@ def register():
return render_template("new_security/register_user.html", values=params, errors=errors)
-
-
-#@app.route("/n/login", methods=('GET', 'POST'))
-#def login():
-# return user_manager.login()
-#
-#@app.route("/manage/verify")
-#def verify():
-# user_manager.verify_email()
-# return render_template("new_security/verified.html")
-
-
-
################################# Sign and unsign #####################################
def url_for_hmac(endpoint, **values):